We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byMagnus Grant
Modified about 1 year ago
Sponsored by the U.S. Department of Defense © 2003 by Carnegie Mellon University page 1 Pittsburgh, PA Evolutionary Process for Integrating COTS-based systems Lisa Brownsword Ceci Albert
© 2003 by Carnegie Mellon University page 2 Why EPIC? Many projects are not getting the benefits they want from using COTS products Marketplace imperatives drive new and modified activities, new skill sets, additional players, and changed roles and responsibilities Organizations need an example to facilitate required culture changes
© 2003 by Carnegie Mellon University page 3 Outline Challenges of Building Systems using COTS Products Evolutionary Process for Integrating COTS-Based Systems (EPIC)
© 2003 by Carnegie Mellon University page 4 Popular COTS Fantasies COTS products are “plug ‘n play” We’ll just modify the COTS to fit our business COTS is “market tested” COTS will save money I’ll just use “best of breed”
© 2003 by Carnegie Mellon University page 5 What is COTS? A COTS product is one that is … Sold, leased, or licensed to the general public Offered by a vendor trying to profit from it Is supported and evolved by the vendor, who retains intellectual property rights Available in multiple, identical copies Used without modification of its internals
© 2003 by Carnegie Mellon University page 6 What Makes COTS Challenging? Marketplace is volatile Market drivers Product features Vendor viability Mismatch is likely End user and product processes Architectural assumptions Enterprise and product architectures Different products Versions of products COTS Products COTS-Based System ??? COTS Vendors Product visibility is limited Technical behavior Business implications
© 2003 by Carnegie Mellon University page 7 What Makes COTS-Based Systems Challenging? COTS-based systems come in many forms One substantial product (suite) tailored to provide functionality Multiple products from multiple suppliers integrated with other components (legacy, NDI, custom) to collectively provide functionality A solution based on COTS products includes COTS-based system (composed of tailored COTS products, other components, integration code) end-user business processes associated requirements, architecture, cost/schedule/risks Different COTS products may lead to different solutions Stability -- and potential obsolescence -- of the solution must be balanced with marketplace volatility
© 2003 by Carnegie Mellon University page 8 COTS Spheres of Influence Vendors Market segments Available COTS Products Emerging technology Use cases Quality attributes Business model Patterns Interfaces Infrastructure Risk management Project management Change management License negotiation
© 2003 by Carnegie Mellon University page 9 Marketplace Changes the Approach Traditional Engineering Approach Requirements Architecture & Design Implementation Requirements-driven Required COTS Approach Negotiation-driven Simultaneous Definition and Tradeoffs Marketplace Stakeholder Needs/ Business Processes Architecture Design Programmatics/ Risk
© 2003 by Carnegie Mellon University page 10 Key Aspects of COTS Approach Simultaneous definition and tradeoffs among four spheres – from project initiation until system retired Business process engineering is fully integrated Requirements are fluid and formed through discovery Flexible system architecture is developed early and maintained Marketplace is monitored continuously Cost, schedule, and risk for implementing the system and any required business process changes is integral to all trades Continuous negotiation among stakeholders Disciplined spiral or iterative practices with frequent executable representations of the evolving system
© 2003 by Carnegie Mellon University page 11 Outline Challenges of Building Systems using COTS Products Evolutionary Process for Integrating COTS-Based Systems (EPIC)
© 2003 by Carnegie Mellon University page 12 What is EPIC? A disciplined, negotiation-driven spiral approach Addresses the aspects of defining, building, fielding, and supporting COTS-based solutions Describes objectives, activities, and artifacts with sufficient detail to facilitate needed culture change Operationalizes COTS lessons learned and software engineering best practice Concurrent definition of artifacts Frequent executable representations Risk drives project planning and engineering activities
© 2003 by Carnegie Mellon University page 13 EPIC Conceptual Framework Time Trade Space Simultaneous Definition and Tradeoffs Marketplace Stakeholder Needs/ Business Processes Architecture/ Design Programmatics/ Risk Trades are negotiation-driven with knowledge of marketplace Requirements formed based on knowledge of market/architecture Continuous awareness of end-user business processes changes Project business and contractual approaches support trades Trade Space Decisions Converge
© 2003 by Carnegie Mellon University page 14 Knowledge Grows Incrementally Risk-based spiral development focuses and integrates diverse information -Prioritized stakeholder needs, end-user processes -Organization and system architecture, design constraints -Identified risks, programmatic constraints -Marketplace offerings, product characteristics, other buyer usage Frequent, evolving executable representations demonstrate current understanding Executable Time
© 2003 by Carnegie Mellon University page 15 Continuous Stakeholder Negotiation Stakeholder needs mature with increased understanding of marketplace implications Business processes change to leverage available products End users committed to system solution Quick resolution to discovered mismatches -Business process owners and end users -System engineers and developers -Vendors and suppliers -Project managers -Change agents Time Stakeholder Buy-in Increases
© 2003 by Carnegie Mellon University page 16 Spiral Development – at a Glance Continuous discovery, invention, and implementation approach for an increment of capability Many iterations are executed to deliver an increment Each iteration forces the development team to drive the increment’s artifacts to closure in a predictable and repeatable way High-priority risks drive objectives for each iteration Successive increments replace or build upon previously delivered increments
© 2003 by Carnegie Mellon University page 17 Iterations Redefined for COTS* Assess iteration Gather information Simultaneous Definition and Tradeoffs *adapted from A/APCS; SEI CBS Initiative (1 to 8 weeks per outer cycle) Plan iteration Assemble executable representation Executable Refine into harmonized set by identifying and analyzing mismatches and negotiating among stakeholders
© 2003 by Carnegie Mellon University page 18 Phases Bounded by Anchor Points LifeCycle Architecture Initial Operational Capability ElaborationConstructionTransition Refine, experiment & select solution Try/select COTS Prototype business process changes Implement selected solution Apply/track COTS Prepare to change business process Field and support solution Track/update COTS Change business process ……… LifeCycle Objectives Inception Gather and define project scope Survey/try COTS Agree to business process changes … 6 to 18 months
© 2003 by Carnegie Mellon University page 19 EPIC: A Negotiation-Driven Approach Drive strategic vision to sustainable solution Increase stakeholder buy-in and reconcile business processes with COTS-based system Accumulate knowledge through risk-based spirals Coordinates operational change, system and software engineering, and program management activities
© 2003 by Carnegie Mellon University page 20 Change Happens … Most software systems change before they are fully implemented Enterprise priorities shift Business or operational needs change New technologies introduce new opportunities COTS products add and delete key features Participants rotate Etc. Each increment should be small enough to minimize the impact of change (6-18months) Each increment must be defined in the context of an agreed upon system vision Going after low hanging fruit in the absence of an overarching architecture and coherent plan results in incompatible and stove piped solutions
© 2003 by Carnegie Mellon University page 21 Managing Successive Increments System level ScopeDesign Business model Scope Constraints Market study Critical use cases at system level (what) Architecture (how) Available and projected technology LCO LCA ScopeDesign Business model Scope Constraints Market study Critical use cases at system level (what) Architecture (how) Available and projected technology LCO LCA … ScopeDesign BuildField Increment #1 LCOLCAIOC 6-18 months
© 2003 by Carnegie Mellon University page 22 The Bottom Line Challenges of Building Systems using COTS Products Vendors control product evolution Forces of the marketplace drive COTS product tempo and content Implications for Development and Maintenance Processes “Doing COTS” is different from custom development Traditional requirements-driven processes don’t work Evolutionary Process for Integrating COTS-Based Systems (EPIC) A negotiation-driven process that helps identify and manage the differences between what users want and what COTS products can deliver Commercial and government EPIC pilots underway
© 2003 by Carnegie Mellon University page 23 References EPIC Overview: CMU/SEI-2002-TR-009 (July 2002) Detailed: CMU/SEI-2002-TR-005 (November 2002) COTS issues Office of the Secretary of Defense, Commercial Item Acquisition: Considerations and Lessons Learned. (26 June 2000) Boehm, B. & Abts, C. “COTS Integration: Plug and Pray?” IEEE Computer, 32, 1 (January 1999) Brownsword, L.; Carney, D.; & Oberndorf, P. “The Opportunities and Complexities of Applying COTS Components.” Crosstalk, 11, 4 (April 1998) Carney, D.; Hissam, S.; & Plakosh, D. “Complex COTS-based Software Systems: Practical Steps for their Maintenance.” Journal of Software Maintenance: Research and Practice, 12, 6 (2000) Spiral development Boehm, B. “Anchoring the Software Process.” IEEE Software, (July 1996) Kruchten, Phillippe. The Rational Unified Process: An Introduction, 2 nd ed. New York, NY: Addison-Wesley Object Technology Series, March 2000
© 2003 by Carnegie Mellon University page 24 Additional Information Ceci Albert Lisa Brownsword
Systems Engineering for Systems of Systems Dr. Judith Dahmann The MITRE Corporation.
1 Lecture #8 Purpose of SSRD Describe Capability Requirements: system subject matter measured by concrete means Describe Project, Level of Service, and.
1 Systems Engineering A Way of Thinking A Way of Doing Business Enabling Organized Transition from Need to Product August 1997 Systems Engineering Technical.
Systems Engineering Technical Debt Bob Epps USC-CSSE COCOMO II Workshop October 16, 2012.
E-Sourcing Today A Perspective on the Role and Scope of e- Sourcing and the State of the e-Sourcing Marketplace.
Carnegie Mellon University CMUWorks - Staff Council Update March 15, 2012.
Prescriptive Process models Waterfall Model. Incremental Process Model. Evolutionary Process Model. Concurrent model 1.
What is Trade Promotions? Created August 5, 2004.
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice The Business Case for Configuration.
What is the Value of Architecture Andrew L Macaulay Global Head of Architects Community March 2006 In collaboration with Microsoft Architect Insight Conference.
Lecture 4 Process and Method: An Introduction to the Rational Unified Process.
Ch. 71 The software production process. Ch. 72 Questions What is the life cycle of a software product? Why do we need software process models? What are.
INTOSAI IT Audit IT Methods Awareness. Outline Scope Overview It Methods Methods Description Methods Usage Audit Reporting.
1 Computer Systems & Architecture Lesson 3 5. Designing the Architecture.
MFG Assessment Application: Assessment Criteria and Metrics 1 Performance assessment criteria and metrics may be used as the basis for determining the.
1 Lecture #7 MBASE Process: WinWin Spiral Three principals to visualizing application development 1. Integrating four system model, each one capturing.
CSE 6324: Advanced Topics in Software Engineering Paper Presentation on An Overview of Security Practices in Agile Software Development - Naieem Khan.
Basic SDLC Models. Agenda SDLC definition Waterfall SDLC V-Shape SDLC Spiral SDLC RUP SDLC Agile methods.
The Smart Implementation Intergraphs Approach & Strategy to Support Successful System Implementations Richard Smykay August 2008 Hilton Opera Hotel.
Knowledge in implementing/managing the IS/IT project CASE-The Brose Group Implements Page
People ProcessOrganization Technology. CAUBO 2008 Why Did UVic Need I.S. Governance? Universities are managed by a vast array of interwoven matrices.
System Implementation Success Factors; It’s not just the Technology by Paula J. Vaughan University of Colorado at Boulder.
Manage e-Project Information. Use of the Guide This guide sets out to provide a framework tool to assist e-Project information users. The object of the.
Software Reuse and Component-Based Software Engineering CIS 376 Bruce R. Maxim UM-Dearborn.
Competence is the demonstrated ability to apply knowledge and/or skills and, where relevant, personal attributes. A certification scheme contains.
Managing IT Budgets in Uncertain Economic Times: IT Optimization.
תהליך הפיתוח האחוד (The Unified Process) 1. Motivation: Analysis and Design Should Be Done Iteratively! Presented 1981, this is one of the most famous.
1 Lecture #6 MBASE Integration Framework Copyright 2000 by USC and the Center for Software Engineering, all rights reserved.
© 2016 SlidePlayer.com Inc. All rights reserved.