ef92fa980b6d516d9009cc5ed350ebcf.ppt
- Количество слайдов: 14
Investigating and Improving a COTSBased Process M. Morisio UMD, College Park C. Seaman UMD, Baltimore County and Fraunhofer Center MD A. Parra, S. Condon - Computer Science Corporation V. Basili UMD, College Park Fraunhofer Center MD S. Kraft NASA Goddard Space Flight Center
Context z NASA Goddard - Flight Dynamic Division z 150 -200 Software staff z Relatively stable domain y ground software - flight dynamic for earth satellites z Good software maturity y SEL started in the 80 s y recommended approach to software development z High levels of reuse from project to project y up to 90% reuse level z Shift to COTS based development in the mid 90 s z Evidence that existing process did not fit
SEL COTS study z COTS Definition y software product, supplied by a vendor, y integrated into the system to provide operational functionality y or delivered with the system to sustain maintenance efforts. z COTS encountered y Domain specific packages for attitude and orbit determination, mission control, mission planning z Goal y Understand issues in COTS based development and improve the process y To improve it xproposed process(1995) xthe actual process (1996 -7) xnew proposed process (1998 -9)
Proposed Process z From literature and recommended approach Vendor Requirements COTS identification Design COTS selection Coding, Integration
The actual process Vendor Non-COTS development Requirements COTS identification Design Coding COTS selection Design glueware and integration Glueware, interfaces Integration
Activity Change z Key activities y Integration of COTS y Evaluation/selection of COTS and modification of requirements y Interaction with vendor - documentation of product, commercial negotiations, procurement z Modified activities y Requirements - COTS provided vs. built internally y Design - how to integrate vs. how to decompose z Reduced Activities y Coding, debugging - less code produced y Unit testing and code inspections no source code available
Other Issues z Dependence on vendor y slippage in release of COTS y documentation (unavailable, incorrect, vaporware, . . ) y upgrades to COTS y vendor not responsive z Learning curve for COTS z Less formal process y when traditional process is not suitable
New Proposed Process Review make vs. buy Requirements Design Make vs. Buy Requirements analysis COTS identification and selection Feasibility study Coding Design glueware and integration Incompatibility analysis Integration Glueware, interfaces
Recommendations y Make vs. buy decision x. Can the project use COTS? • Formalize this decision, considering xflexibility in requirements xvendor dependence xfeasibility of integration xcost/schedule/effort • development • maintenance y COTS Selection x. Anticipated in requirements phase x. In parallel with requirement analysis, COTS familiarization
Recommendations y Feasibility study x. Prototype high level architecture, x. First hand experience with • COTS (functionality, vendor) • Integration problems • Costs, risks y Design x. Deeper level design of glueware and integration x. Integration issues • interaction / dependency model • incompatibility analysis x. Review costs and risks
The COTS Selection Process Dealing with Integration Issues z Evaluate candidate COTS products y with respect to potential incompatibilities z Identify the integration problems y caused by the incompatibilities z Identify the integration solutions y with respect to their estimated size z Compute the effort y based on the solution size and the organization productivity z Compare the candidate COTS products y with respect to the total integration effort
Recommendations z New roles y COTS team xkeeps history of COTS usage xconsults to projects on • COTS evaluation and selection techniques • procurement • licensing y Interface with vendor xat project level
Research method z Structured interviews to 15 projects z Interviewer + scribe z Quality checks y interviewer and scribe y interviewer and interviewee z Modeling of actual process y constant comparison method
Conclusion z 15 projects using COTS analyzed at NASA z Issues y requirements, COTS selection and design are closely linked y vendor interaction and dependency y integration z To address these issues y make vs. buy decision y requirements, (part of) design and COTS selection together y prototype
ef92fa980b6d516d9009cc5ed350ebcf.ppt