Software Engineering Institute Carnegie Mellon

COTS-Based Systems
EPIC Home
EPIC Overview
EPIC phases
EPIC Activities
EPIC Artifacts
EPIC Executable Representations
Integration of Software-Intensive Systems
Performance-Critical Systems

EPIC Activities

return to CBS main page

This chart lists the activities that take place in each phase of EPIC. Note that each activity is done for each iteration within the phase.

Phase

Inception

Elaboration

Construction

Transition

Plan the Iteration

Build a detailed plan for the iteration

Update the Development Plan for the project

Gather

... an Understanding of Stakeholder Needs and End-user Business Processes

 

Update or create a business model

Update and expand the business model

Update and expand the business model as necessary

 

Capture the critical behaviors of the solution

Capture the significant behaviors of the solution

Capture the behaviors of the solution

Update the behaviors of the solution as needed

… an Understanding of Architecture and Design

 

Determine architectural context

Amplify the architectural context

Review, and update as needed, the architectural context

Monitor the architectural context

 

Identify architectural alternatives

Amplify the architectural alternatives contained in solution(s)

 

 

… an Understanding of Marketplace and Other Sources

 

Identify relevant component sources

Monitor relevant component sources

Monitor relevant market segments

 

Characterize available components

Evaluate applicable components

Characterize component changes

… an Understanding of the Programmatics and Risks

 

Identify management information

Update management information

 

Identify procurement needs and opportunities

Update procurement needs and opportunities

 

Identify implications of  changes to the end-user's business process

Amplify implications of  changes to the end-user's business process

Monitor implications of changes to the end-user's business process

 

Identify risks

Update risks

Phase

Inception

Elaboration

Construction

Transition

Refine the Understanding of the solution

 

Synthesize information in candidate solutions

Identify and resolve mismatches from the synthesis of new information

 

Analyze and negotiate mismatches for each candidate solution

 

Characterize each candidate solution

Amplify the solution(s)

Update the solution if needed

Assemble an Executable Representation

 

Build and test proof of concept(s)

Build and test and architectural prototype

Build and test the solution

Build and test releases of the solution

 

Prototype the needed changes to the end user's business processes

Implement the needed end-user business process changes

 

Make any needed changes to existing infrastructure and external interfaces

Phase

Inception

Elaboration

Construction

Transition

Assess the Iteration

 

Assess the Executable Representation

Assess the architectural prototype for the solution(s)

Assess the solution

 

Update the information about the solution

 

Determine lessons learned from iteration

 

Assess the phase, if the iteration completes the phase

Review all phases if the iteration retires the solution

Supporting activities include tasks that must be accomplished during iterations within the phase, but may not be part of every iteration. Vital activities not listed here include project monitoring and control, and activites described in the Development Plan (such as requirements management or configuration management).

Phase

Inception

Elaboration

Construction

Transition

Supporting Activities

 

Monitor project status

 

Prepare experimentation facility

Maintain the experimentation facility

Update and create contracting vehicles as necessary