Productivity Decline in Directed System of Systems Software Development
Software & IT
The emerging concept of Directed System of Systems (DSOS) describes the large-scale integration of many independent, self-contained systems in order to deliver unique capabilities. From Future Combat Systems to Fractionated Space Systems, these complex multi-systems are very interdependent to achieve DSOS’s objectives. The synthesis of these very large systems often results in different sets of problems than those presented by the design of a single, but complex, system usually addressed by engineers. Such systems represent real challenges to software cost estimation. These challenges arise from the concept of a DSOS, development of multiple builds (or incremental deliveries) by independent teams and the need for synchronization, inherent development efficiencies of Common Operating Environment (COE) and the down-sides of coordination, architecting to demonstrate feasibility, and operational performance.
This presentation will briefly introduce a next generation synthesis of the spiral model and other leading process models into the Incremental Development Model (ICM), which is being piloted or considered for adoption in some parts of the Department of Defense (DoD). The ICM emphasizes architecting systems to encapsulate subsystems undergoing the most rapid change; and architecting the incremental development process by having agile systems engineers handling longer-range change traffic to re-baseline the plans for future increments while largely plan-driven teams develop and continuously verify and validate (V&V) the current increment, as is usually required for safe or secure software.
A unique characteristic observed during the development of DSOSes that span across multiple builds will be discussed along with an example. This characteristic, Incremental Development Productivity Decline (IDPD), which has been observed in both DoD and industry related projects, suggests that in both precedented and unprecedented systems, the productivity declines across multiple builds due to the fact that in later builds, most of the effort can be spent on maintaining the previous build, handling service requests, fixing bugs and integration challenges with the current build.
The presentation will go on to discuss the software cost and schedule estimation approach being developed and implemented to cover software development activities that included multiple, full WinWin Software Development Spirals, previously known as MBASE/RUP, and is now embodied in the Incremental Commitment Model for Software (IICMforSw). In the IICMforSw, each increment produces a deliverable and fieldable result. The current version of the Constructive Incremental Commitment Cost Model (COINCOMO 2.0) tool implements together in one tool the Constructive Cost Model (COCOMO II), and the Constructive Phased Schedule and Effort Model (COPSEMO). COINCOMO has an added super structure to accommodate multiple suppliers for independent software (sub)systems and multiple builds. In addition, the COINCOMO tool accommodates software systems that rely on Commercial Of The Shelf (COTS) components; reuse of potentially proprietary Open Source or legacy components which are treated like COTS components (rather than re-used, modified components); and adapted/reused Open Source subcomponent or legacy components.
Ramin Moazeni is a Ph.D Candidate at USC Computer Science Department and a Research Assistant at the USC Center for Systems and Software Engineering (CSSE). He is also a Senior Software Engineer working for Sun Microsystems,Inc. with over five years of experience in professional software application development, including a thorough working knowledge of Object-Oriented design and programming, and performance engineering and application tuning. He also has experience in software project management including schedule and budget estimating; schedule and resources planning; project monitoring, controlling and reporting.
A. Winsor Brown
A. Winsor Brown has extensive experience in software engineering, including software architecture, process improvement, and training. He has a Master of Science in Electrical Engineering from the California Institute of Technology and a Bachelor of Engineering Science from Rensselaer Polytechnic Institute. Prior to joining USC’s CSSE as Assistant Director, Winsor had over 30 years of experience in software development, software engineering and software engineering management which was gained through aerospace, industrial and commercial applications. During his career, Winsor has been involved in such programs as the Future Combat System, FAA’s Enroute Automation Modernization, International Space Station and C-17 Software.
Barry Boehm, Ph.D., is the TRW professor of software engineering and director of the Center for Software Engineering at the University of Southern California. He was previously in technical and management positions at General Dynamics, Rand Corp., TRW, and the Office of the Secretary of Defense as the director of Defense Research and Engineering Software and Computer Technology Office. Dr. Boehm originated the spiral model, the Constructive Cost Model, and the stakeholder win-win approach to software management and requirements negotiation.