Presentation is loading. Please wait.

Presentation is loading. Please wait.

University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC DoD Software Engineering S&T Summit August 7, 2001

Similar presentations


Presentation on theme: "University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC DoD Software Engineering S&T Summit August 7, 2001"— Presentation transcript:

1 University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC DoD Software Engineering S&T Summit August 7, 2001 (boehm@sunset.usc.edu) (http://sunset.usc.edu) S&T Strategies for DoD Software Challenges

2 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE2 Outline Relevant Workshop Findings - NSF, Software Engineering Research Strategies: (8/1999) - Interagency, New Visions for Software Design and Productivity - NAS, Statistical Methods for DoD Software (7/2001) Matching the Solutions to the Problems

3 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE3 NSF SE Research Strategies Workshop Clarify nature and role of software engineering Analyze future Grand Challenge applications for missing science and technology Identify SE research strategies and critical success factors

4 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE4 Role of Software Engineering in IT Research and Systems Architectures, Composition Frameworks & Principles Great IT Components Great SW Engineering Great Systems + = Networks OS, DBMS, Middleware AI, Agents User Applications User Interfaces Development Stakeholders Operational Stakeholders System Definition, Composition, Verification, and Evolution Processes Modeling and Analysis HCI & Collaboration User Applications Info Distribution & Management Connectivity & Information Access Quality of Service Technologies Definition, Development, Test, Verification, and Usage Evaluation Tools

5 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE5 User Programming Empowered Teams Lifelong Learning Embedded Medical Systems Empowering People and Groups: Workshop Examples

6 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE6 Crisis Management Air Traffic Control On-Demand Organizations Medical Informatics Weaving the New Information Fabric: Workshop Examples

7 University of Southern California Center for Software Engineering C S E USC Essential Strong Moderate None Degree of Dependence Integration of Technology Elements Software Engineering Technologies Software Engineering Technologies, Mission Challenges, and Underlying Science Underlying Science Weaving the New Information Fabric Empowering People and Groups Process Technologies System Definition Architecture Composition Test & Verification Usage Evaluation & Evolution Process Modeling & Management Product Technologies HCI & Collaboration User Domain Componentry Connectivity & Info. Access Info. Distribution & Mgmt. Quality of Service Technologies High Assurance Massive Scalability Change Resilience Modeling & Analysis Technologies Domain Modeling Software Economics Modeling Quality of Service Modeling User Programming Empowered Teams Lifelong Learning Embedded Medical Systems Crisis ManagementAir Traffic Control Net-Centric Business Medical Informatics Computer Science Domain Sciences Behavioral Sciences Economics

8 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE8 Conclusions: SE Research Needs Major needs for further SE science and technology (S&T) –Process, product, quality of service, modeling and analysis –S&T integration across areas SE science base requires more than computer science –Need integration with domain sciences, behavioral sciences, economics… –Need both specialist and interdisciplinary advances There is no single silver bullet for success –Major applications require many technologies –Need integrated SE/IT research programs

9 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE9 Critical Success Factors for SE Research Programs Emphasize scientific foundations –Clear hypotheses; careful measurements; repeatability –Evaluated w.r.t. alternatives and domain of applicability Broaden empirical understanding of software phenomenology –Enables focus on high-leverage problems and solutions Skate to where the puck is going (Gretzky) –Anticipate and address future problems Maintain a balanced research portfolio –Evolution/revolution; basic/applied; theory/systems Expand horizons via Grand Challenges Stimulate “out of the box” ideas –New metaphors: biology, sociology, economics Stimulate university-industry collaboration; transition into practice

10 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE10 Software Engineering Technology Transition Challenges Adoption requires behavioral change Payoffs take a long time to demonstrate –And are hard to trace back to particular technology insertions Marketplace often makes “fixing it later” more attractive than “doing it right the first time” –“The IT industry expends the bulk of its resources, both financial and human, on rapidly bringing products to market.” - PITAC Report, p.8 Strong coupling among technologies, processes, acquisition practices, cultures Rapidly evolving commercial technology Slowly evolving Government acquisition practices Risk-averse program managers Leaky intellectual property

11 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE11 Interagency Workshop on New Visions for Software Design and Productivity April 2001 Networked, always-on systems of systems with many embedded and mobile components –Composable abstractions, generators, transformations –Scaling, distribution, dependability, self-adaptability, composability –Resource-conscious behavior; facets Multi-faceted software synthesis (and adaptation) –Aspects, intentions, design patterns, domain languages Computer-mediated group interaction –For missions; for software development

12 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE12 Interagency Workshop on New Visions - II Lightweight formal methods Legacy code integration, modernization Physics, economics, behavioral science of and for software –Value-based software engineering Understanding current software development National Center for Software Archeology –The “software genome” project

13 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE13 NAS Workshop on Statistical Methods in SW Engineering for Defense Systems July 2001 Statistical methods valuable throughout software life cycle –Prototyping, modeling, and simulation –Cost, schedule, performance modeling –Defect removal strategies –Testing and reliability estimation Helpful for new challenge areas –COTS, legacy, massive distribution, mobility Attractive new approaches emerging –Model-based testing, design for testability, rejuvenation, Bayesian/risk/decision theory methods

14 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE14 Matching the Solutions to the Problems Major DoD software problems are in software processes and management –Need better S&T base in these areas –Especially with new evolutionary acquisition processes Current DoD software S&T investments are skewed toward product S&T –Although more is needed in software product S&T also DoD needs a balanced software S&T program addressing all its needs –Including expedited technology transition Example Problems –Evolutionary Acquisition of Software-Intensive Systems –Rapid, High-dependability software –Coping with software skill shortages

15 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE15 Evolutionary Acquisition of Software-Intensive Systems S&T for new acquisition practices: source selection, contracts, incentives Dealing with multiple-COTS evolution, systems- of-many-systems process synchronization Legacy software: evolutionary replacement of spaghetti code Metrics: are prototype changes “defects”? Rapid, high-dependability software

16 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE16 Rapid, High-Dependability Software Responsible agile methods –Using risk to balance discipline and flexibility Schedule and quality as independent variables –Borderline features as dependent variables Lightweight formal methods Value-based software engineering –Cost of delay; cost of outages –Value of options, modularity –Real value-based “earned value” systems –Value-of-information research in DoD context Timeliness, reliability, understandability, decision-orientation

17 University of Southern California Center for Software Engineering C S E USC 08/07/01©USC-CSE17 Coping with Software Skill Shortages Techniques for using skills-intensive methods with less-skilled people –Open source, XP, risk management –New hazardous spiral look-alike Assess risks, do the low risk parts Add overrun spirals to do the hard parts Better experience bases –Automated aids, training for their use Expert/non-expert collaboration techniques Fun training aids –Sim Project


Download ppt "University of Southern California Center for Software Engineering C S E USC Barry Boehm, USC DoD Software Engineering S&T Summit August 7, 2001"

Similar presentations


Ads by Google