The acquisition and use of commercial software or off-the-shelf components (COTS) is poorly served by traditional approaches. If an organisation is to leverage the benefit of integrated systems, whether purchased, developed or customised, support in the form of software engineering disciplines (requirements management, architecture and so on) is needed. Software users should be able to leverage benefits from synergy and completeness (fill the gaps and join the boundaries) resulting in a flexible environment rather than just a collection of applications.
It is to fulfil this need that the Software Engineering Institute, a federally funded R & D centre sponsored by the U.S. Department of Defense and operated by Carnegie Mellon University in Pittsburgh (also the home of CMM® and CMMI®), has published a process for the specification, identification and integration of such components. They describe it thus: |
|
"The Evolutionary Process for Integrating COTS-based systems (EPIC) redefines acquisition, management, and engineering practices to more effectively leverage the COTS marketplace and other sources of pre-existing components. This is accomplished through concurrent discovery and negotiation of diverse spheres of influence: user needs and business processes, applicable technology and components, the target architecture, and programmatic constraints. EPIC codifies these practices in a structured flow of key activities and artifacts. This alternative approach is a risk-based, disciplined, spiral-engineering approach which leverages the Rational Unified Process® (RUP®)." |
|
|
EPIC is based on four “spheres of influence”:
- Stakeholder needs and business processes denotes requirements (including quality attributes such as performance, security, and reliability), end-user business processes, business drivers, and the operational environment.
- Marketplace denotes available and emerging COTS technology and products, non-development items (NDI), and relevant standards.
- Architecture and Design denotes the essential elements of the system and the relationships between them. The elements include structure, behaviour, usage, functionality, performance, resilience, reuse, comprehensibility, economic and technologic constraints and tradeoffs, and aesthetic issues.
- Programmatics and risk denotes the management aspects of the project. These aspects consider the cost, schedule, and risk of building, fielding, and supporting the solution to include the cost, schedule, and risk for changing the necessary business processes.
A fundamental characteristic is the need to simultaneously make trade-offs among these four spheres. Traditional acquisition approaches have focused more on comparisons between alternatives than at arriving at the best composite solution. |
|
The spheres evolve through iterations, each iteration focusing on specific objectives. EPIC phases follow the standard RUP phases (Inception, Elaboration, Construction and Transition). The RUP-like diagram below illustrates core activities carried out by the key Acquirer role introduced by the process:
|
|
fcsl can help you implement the EPIC process, integrating it with RUP where appropriate. Contact us for a preliminary discussion.
Download EPIC documentation from the Software Engineering Institute here (opens in a new window) . |