100 likes | 286 Views
COSYSMO Reuse Extension COSYSMO Workshop – USC CSSE Annual Research Review March 17, 2008. Overview. Background COSYSMO currently assumes all system components are new …but most systems are not entirely new, have a significant amount of reuse
E N D
COSYSMO Reuse ExtensionCOSYSMO Workshop – USC CSSE Annual Research ReviewMarch 17, 2008
Overview Background • COSYSMO currently assumes all system components are new • …but most systems are not entirely new, have a significant amount of reuse • Current goal is to develop an approach for handling reuse • Organizations can adapt to their own business model Objectives • Provide an overview of research • Proposed terminology • Possible methodology • Identify next steps
Background on Software Reuse Main size driver = KSLOC • Adapted Source Lines of Code (ASLOC) • Percent of Design Modification (DM) • Percent of Code Modification (CM) • Percent of Integration Required for Modified Software (IM) • Percentage of reuse effort due to Software Understanding (SU) • Percentage of reuse effort due to Assessment and Assimilation (AA) • Programmer Unfamiliarity with Software (UNFM) AAF From COCOMO II Model Definition Manual (p. 7-11)
Proposed Reuse Terminology • New: • Items that are completely new, generally unprecedented and with low level of familiarity • Modified: • Items that are inherited, but require a limited amount of tailoring to be incorporated • Adopted: • Items that are incorporated unmodified, “black-box” reuse • Deleted: • Items that are removed from a system (in legacy but not current system) • Managed: • Items incorporated unmodified and untested (subcontractor effort)
Reuse Continuum 1.0 New Modified Deleted Adopted Reuse weight Managed 0
Approaches for Handling Reuse in COSYSMO Reuse Capture reuse-class cost parameters for different classes of reuse Calculate equivalent requirements weights for size drivers Activity-based/Bottoms up (requires effort data by activity) Solve for the weights (requires data from projects)
Next Steps • Reach conclusion on reuse weights • Thoughts on bottoms up calculations vs. solving for weights? • Determine scalability of reuse • How to deal with commonalities across multiple projects/organizations? • Examine effect of SE “designed” for reuse • What are the penalty/savings? Where do they occur in lifecycle? • Apply methodology • Who else has reuse data?
Author Contact Information Ricardo Valerdi, MIT rvalerdi@MIT.edu Gan Wang, BAE Systems gan.wang@baesystems.com Garry Roedler, Lockheed Martingarry.j.roedler@lmco.com John Rieff, RaytheonJohn_E_Rieff@raytheon.com Jared Fortune, USC fortune@usc.edu