1 / 14

Investigating and Improving a COTS-Based Process

Investigating and Improving a COTS-Based 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 .

adamdaniel
Download Presentation

Investigating and Improving a COTS-Based Process

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Investigating and Improving a COTS-Based 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

  2. Context • NASA Goddard - Flight Dynamic Division • 150-200 Software staff • Relatively stable domain • ground software - flight dynamic for earth satellites • Good software maturity • SEL started in the 80s • recommended approach to software development • High levels of reuse from project to project • up to 90% reuse level • Shift to COTS based development in the mid 90s • Evidence that existing process did not fit

  3. SEL COTS study • COTS Definition • software product, supplied by a vendor, • integrated into the system to provide operational functionality • or delivered with the system to sustain maintenance efforts. • COTS encountered • Domain specific packages for attitude and orbit determination, mission control, mission planning • Goal • Understand issues in COTS based development and improve the process • To improve it • proposed process(1995) • the actual process (1996-7) • new proposed process (1998-9)

  4. Proposed Process • From literature and recommended approach Vendor Requirements Design Coding, Integration COTS identification COTS selection

  5. The actual process Vendor Non-COTS development Requirements Design Coding Integration COTS identification COTS selection Design glueware and integration Glueware, interfaces

  6. Activity Change • Key activities • Integration of COTS • Evaluation/selection of COTS and modification of requirements • Interaction with vendor - documentation of product, commercial negotiations, procurement • Modified activities • Requirements - COTS provided vs. built internally • Design - how to integrate vs. how to decompose • Reduced Activities • Coding, debugging - less code produced • Unit testing and code inspections no source code available

  7. Other Issues • Dependence on vendor • slippage in release of COTS • documentation (unavailable, incorrect, vaporware, ..) • upgrades to COTS • vendor not responsive • Learning curve for COTS • Less formal process • when traditional process is not suitable

  8. New Proposed Process Review make vs. buy Requirements Design Coding Integration Make vs. Buy Requirements analysis COTS identification and selection Feasibility study Design glueware and integration Incompatibility analysis Glueware, interfaces

  9. Recommendations • Make vs. buy decision • Can the project use COTS? • Formalize this decision, considering • flexibility in requirements • vendor dependence • feasibility of integration • cost/schedule/effort • development • maintenance • COTS Selection • Anticipated in requirements phase • In parallel with requirement analysis, COTS familiarization

  10. Recommendations • Feasibility study • Prototype high level architecture, • First hand experience with • COTS (functionality, vendor) • Integration problems • Costs, risks • Design • Deeper level design of glueware and integration • Integration issues • interaction / dependency model • incompatibility analysis • Review costs and risks

  11. The COTS Selection ProcessDealing with Integration Issues • Evaluate candidate COTS products • with respect to potential incompatibilities • Identify the integration problems • caused by the incompatibilities • Identify the integration solutions • with respect to their estimated size • Compute the effort • based on the solution size and the organization productivity • Compare the candidate COTS products • with respect to the total integration effort

  12. Recommendations • New roles • COTS team • keeps history of COTS usage • consults to projects on • COTS evaluation and selection techniques • procurement • licensing • Interface with vendor • at project level

  13. Research method • Structured interviews to 15 projects • Interviewer + scribe • Quality checks • interviewer and scribe • interviewer and interviewee • Modeling of actual process • constant comparison method

  14. Conclusion • 15 projects using COTS analyzed at NASA • Issues • requirements, COTS selection and design are closely linked • vendor interaction and dependency • integration • To address these issues • make vs. buy decision • requirements, (part of) design and COTS selection together • prototype

More Related