VIEWS: 56 PAGES: 21 POSTED ON: 7/7/2009
Presents the commpon problems of software delivery, causes of the problems and strategic options to deal with problems.
Major Challenges in Improving the Software j g p g Delivery and Recommended Solution Prepared By S.M. Saiful Islam & Team School of Engineering & Computer Science Independent University Bangladesh Common Problems Product delivery time exceeds the planned delivery deadline Too many changes in requirements during y g q g development Too many reported defects after delivery Cost of delivery far exceeds the estimated cost Customization cost is too high Employee turnover impact is high 1. New employee takes too long to pick up the work 1 2. Too complex to handover one’s work to others Common Causes Requirements are not well understood Resource estimation is poorly done and resource allocation is inadequate & inappropriate Lack of modularity and poor documentation in product design and implementation Absence of review and inspection for verification for early defect detection Lack of conformance to standards in different stages of development Lack of clarification of methodology in performing different development tasks Emphasis is on testing for quality control instead of defect prevention at early stages Actions to be taken Reduce rework level at different stages of software development Reduce defects of major types: requirements, design, code, and user’s manual Increase reusability of requirements, d i and code I bilit f i t design d d Increase interchangeability of work products among developers Decrease employee turnover i D l impact Strategic option: g p Disciplined Practices p Requirements are not well understood Best Practice: 1. 2. 3. 4. Developing the Customer Requirements Establishing h Product and P d E bli hi the P d d Product-Component R C Requirements i Establishing the Operation Concepts and Scenarios Understanding the Product -Component Requirements Practice Gap: 1. 2. 3. 4. 5. Customer Requirements capturing not thoroughly done Product and Product-Component Requirements done but not thoroughly analyzed by different scenarios at the beginning of the project Operational Concepts done but no Use Case defined Product – Component Requirements done but no formal documentation exists d t ti i t Lack of validation and verification Implication of These Gap 1. 2. Increase defect I d f t Increase rework Proposed improvement in work products Detailed requirement document. 1. SI1 2. As the detailed requirement document is missing, company should assign recommended persons to prepare detailed requirement document by properly elicitation or elaborating the primary requirements. This document should be verified by the clients and change if required. Versions of Requirement specification document 1. 2. Versioning of requirement specification document is required to validate, verify and authorized from the clients by the management. For each version payment should be charged. Test Plan 1. 2. 1. Proper test plan should be prepared which should include all kind of scenarios. Company should dedicate extra resources for test purpose. Test Result Document The result of the test should be written the in the test result document including what test what is remaining to be tested , what are the test, bugs, is this module is passed to deliver etc. Slide 7 SI1 Changed the order S.M. Saiful Islam, 2008-12-03 Resource estimation is poorly done and resource allocation is inadequate & inappropriate Best Practice: 1. Following the models for estimation of resources 1. 2. 3. 4. 5. 5 Creating the matrix of distribution effort over phases Follow complexity guideline Development team experience guideline Team size guideline Guideline for development team composition 2. 1. 2. Following good project management for resource allocation Estimation is based on assumption Poor project management Practice Gap: Implication of These Gap 1. Product delivery time exceeds y 2. Cost of delivery far exceeds the estimated cost Proposed improvement in work products P di ti k d t Collect historical data of employee and create a matrix Modeling the resource estimation by following different guideline id li Assign project managers based on their capabilities in order to maintain a good project management Lack of modularity and poor documentation y in product design and implementation Best Practice 1. 2. 3. 4. 5. Establish Product and Product-Component Requirements. Determine Integration Sequence Perform Make, Buy, or Reuse Analyses. Select product component solutions. Establish Validation Procedures and Criteria for developing and testing. Practice Gap 1. 2. 3. 4. 4 Gap of understanding and documentation of integration sequence for developing the product component component. Gap of make, buy and reuse analysis process for a product component. No selection process for product solution as taking consideration of alternative solution. No validation process is defined for the development and the documentation of product design, code and testing. Implication 1. 2. 2 Employee turnover impact is high Customization C t i ti cost is hi h t i high Proposed improvement in work products Follow corporate standard for designing class and method in terms of size and other parameters Follow the standard documentation in product development Product and product component relation establishment is required to y p y p identify the need of component accurately so that it will help us to design and implement more modular component. If we analyze the buy, sell or reuse analysis it will help us to reuse the component and develop modular component. We need to follow the validation process. It will help us to develop process modularize way and document our developed product at each stage of development. Work done check list is required at each level of development from design, code, t t and d l d i d test d deployment f maintaining d t for i t i i documentation. t ti Need to use the peer review process to make the documentation and modular component. Each company should have their own policy and standard for maintaining documentation and modular component development. Absence of review and inspection for verification for early defect detection Best Practice 1. 2. Peer Review, Inspection, Walkthrough after each phases of development Approve the BRS, SRS, Design Documents after resolving Review Defects Practice Gap 1. 2. 2 Not any type of review is available after completion of phase Document approval process is not followed Implication 1. 2. 3. 4. 5. Product delivery time exceeds the planned delivery deadline Too many changes in requirements during development y g q g p Too many reported defects after delivery Cost of delivery far exceeds the estimated cost Early defects remain un discovered, which are found at testing phase, which causes many rework. Proposed improvement in work products Follow the methods of validating and verifying 1. Peer reviews, Inspection on documents 2. Peer review/ Inspection on Defect resolving activity 3. Scenarios figure out and simulation 4. M 4 Move t th next phase only after approving th to the t h l ft i the reviewed documents. Lack of conformance to standards in different stages of development Best Practices Maintain development through Organizational Policy, Process, Standards and Templates for Multiple documents. 2. Lesson Learned Database 3. Software Process Improvement Activity 1. Practice Gap No organizational Standard process, policy followed during software development / maintenance etc. 2. No lesson learn database is used 1. Implication I li ti Employee turnover impact 2. Same defect/mistakes repeated in every project 1. Proposed improvement in work products Following could be the improvement step’s Develop Organizational Policy, Process, Standards, Guidelines p and Artifacts for the Software development and Service 2. Implement independent QA Department to develop & maintain the Process, Standard etc 3. Initiate Internal Audits/Inspections to Verify & Validate compliance of current practice to the Organizational Standards 1. Lack of clarification of methodology in performing different development tasks Best Practices 1. 2. Clarify each work after performing the task with the stakeholder Dedicated time and resource should be given to map the g p requirements with the components during different development tasks. Practice Gap 1. 2. No Clarification No dedicated time and resources is allocated for mapping Implication 1. 2. Too many changes in requirements during development Too many reported defects after delivery Proposed improvement in work products A company guideline for different methodology of Software Development tasks. An inspection guideline f monitoring or review th A i ti id li for it i i the employers/developers Emphasis is on testing for quality control instead of defect prevention at early stages Best Practice 1. 2. 2 3. System Testing, Performance Testing, Integration Testing, Unit Testing Testing through Test Specification / Test Case Test Result, Defect Register Practice Gap 1. 1 2. 3. Testing is not perform in systematic way Test case, test specification not developed in maximum company Test result , Defect Register is not developed in maximum company Implication p 1. 2. 3. 3 4. Maximum defects remain undiscovered even after testing. Defect/Bug root cause analysis for preventive action remain impossible Actual system remain unverified for Quality Control Cost of delivery far exceeds the estimated cost Proposed improvement in work products Prepare Test Plan, Test Cases/ Test Specification to perform better testing. Develop T t result and update D f t/B Register D l Test lt d d t Defect/Bug R i t after testing. Perform root cause analysis on defects found in Testing to prevent the defect for next time. The End
Pages to are hidden for
"Major Challenges in Improving the Software Delivery and Recommended Solution"Please download to view full document