Software Process and Software Life Cycle

lumpysteerSoftware and s/w Development

Dec 2, 2013 (3 years and 9 months ago)

78 views


Learning software process with UPEDU

Slide 2
-
1



2000
École Polytechnique de Montréal & Rational Software

Software Process and Software Life Cycle

Key words:



Software life
-
cycle


Phases


Development cycle and evolution cycle



Software process


Discipline, activities, roles, and artifacts



Iterations


Milestones



UPEDU


RUP, standards and models.



Learning software process with UPEDU

Slide 2
-
2



2000
École Polytechnique de Montréal & Rational Software



Software Process and Software Life Cycle



Understanding the Development and Evolution of Software




Defining the Software Life Cycle and the Software Process





Defining Elements of the Software Process



Integrating the Software Life Cycle and the Software Process



Customizing the Software Process



Summary


Learning software process with UPEDU

Slide 2
-
3



2000
École Polytechnique de Montréal & Rational Software

Process of Building a House

Different Process

Same life cycle


Learning software process with UPEDU

Slide 2
-
4



2000
École Polytechnique de Montréal & Rational Software



Software Process and Software Life Cycle



Understanding the Development and Evolution of Software




Defining the Software Life Cycle and the Software Process



The Software lifecycle



The Software process





Defining Elements of the Software Process



Integrating the Software Life Cycle and the Software Process



Customizing the Software Process



Summary


Learning software process with UPEDU

Slide 2
-
5



2000
École Polytechnique de Montréal & Rational Software

Phases of the Development Cycle

T I M E

Transition

Construction

Elaboration

Inception


Inception

-

Define the scope of project

Elaboration

-

Plan project, specify features, baseline system

Construction

-

Build the product

Transition

-

Transition the product into end user community


Learning software process with UPEDU

Slide 2
-
6



2000
École Polytechnique de Montréal & Rational Software

Inception

Elaboration

Construction

Transition

Each Phase is Marked by Milestones

Development cycle


Objective

Milestone


Development cycle


Architecture

Milestone


Initial Operational

Capability

Milestone


Product

Release

time


Learning software process with UPEDU

Slide 2
-
7



2000
École Polytechnique de Montréal & Rational Software

time

Cycles are not Strictly Sequential



An
evolution cycle

includes one execution of all four phases and produces a
software
generation



Most software systems require multiple cycles


An initial development cycle leading to the initial delivery


Subsequent evolution cycles to maintain and enhance the system



Cycles may be sequential, but more commonly overlap

Inception

Elaboration

Construction

Transition

Inception

Elaboration

Construction

Transition

Inception

Elab. . .


Learning software process with UPEDU

Slide 2
-
8



2000
École Polytechnique de Montréal & Rational Software

New or changed

requirements

New or changed

system

Software

Process

Who is doing What, When, and How



Provides guidelines for efficient development of software

Reduces risk and increases predictability

Captures and presents best practices

Promotes common vision and culture


Learning software process with UPEDU

Slide 2
-
9



2000
École Polytechnique de Montréal & Rational Software

Engineering and Management Disciplines

Requirements

Use
-
Case Model

Implementation Model

Implementation

Test Model

Test

Analysis & Design

Design Model

Configuration & Change Mngnt

Project Mngnt

Engineering

Management

Project

Repository


Learning software process with UPEDU

Slide 2
-
10



2000
École Polytechnique de Montréal & Rational Software



Software Process and Software Life Cycle




Understanding the Development and Evolution of Software




Defining the Software Life Cycle and the Software Process





Defining Elements of the Software Process


UPEDU Conceptual Model


Roles, Activities, Artifacts


Disciplines



Integrating the Software Life Cycle and the Software Process



Customizing the Software Process



Summary


Learning software process with UPEDU

Slide 2
-
11



2000
École Polytechnique de Montréal & Rational Software

Diagrams Represent Process Disciplines

Role

Activity

Artifact

Describe

a


Use Case

Use
-
Case

Package

Use Case

Use
-
Case

Specifier

A unit of work an
individual may be
asked to perform

A piece of information
that is produced,
modified, or used by a
process

A role that may be
played by an
individual or a team in
the development
organization


Learning software process with UPEDU

Slide 2
-
12



2000
École Polytechnique de Montréal & Rational Software

Fundamental Conceptual Model


Role

Activity

0..*

1

0..*

1

Performs

Artifact

0..*

1

0..*

1

IsResponsibleFor

0..*

0..*

0..*

input

0..*

Consumes

0..*

0..*

0..*

0..*

Produces


Learning software process with UPEDU

Slide 2
-
13



2000
École Polytechnique de Montréal & Rational Software

Dividing the Work by Activities

Find Actors

and Use Cases

Capture a

Common

Vocabulary

System

Analyst

Develop

Vision

Manage

Dependencies

UPEDU Guideline: Process Discriminant


Learning software process with UPEDU

Slide 2
-
14



2000
École Polytechnique de Montréal & Rational Software



Software Process and Software Life Cycle




Understanding the Development and Evolution of Software




Defining the Software Life Cycle and the Software Process





Defining Elements of the Software Process



Integrating the Software Life cycle and the Software Process


Disciplines and Phases


Iterations


Opportunistic and Systematic Activities



Customizing the Software Process



Summary


Learning software process with UPEDU

Slide 2
-
15



2000
École Polytechnique de Montréal & Rational Software

2D Model of Process and Life Cycle

Project Management

Implementation

Test

Analysis & Design

Life Cycle Phases

Engineering Disciplines

Supporting Disciplines

Configuration & Change Mgmt

Requirements

Elaboration

Transition

Inception

Construction


Learning software process with UPEDU

Slide 2
-
16



2000
École Polytechnique de Montréal & Rational Software

Weight of Disciplines in Iteration Varies

Project Management

Implementation

Test

Analysis & Design

Life Cycle Phases

Engineering Workflows

Supporting Workflows

Configuration & Change Mgmt

Requirements

Elaboration

Transition

Inception

Construction

ITERATION A


ITERATION E



Learning software process with UPEDU

Slide 2
-
17



2000
École Polytechnique de Montréal & Rational Software

Artifacts Evolve in the Development Cycle

Management artifacts

Requirements artifacts

Design artifacts

Implementation artifacts

M

R

D

I



:

:

:

:

Inception

R

D

I

M

Construction

R

D

I

M

Transition

R

D

I

M

Elaboration

R

D

I

M

An
iteration

is a distinct sequence of activities with an
established plan and evaluation criteria resulting in an
modified artifacts


Learning software process with UPEDU

Slide 2
-
18



2000
École Polytechnique de Montréal & Rational Software

Systematic or Opportunistic Iterations

O
p
p
0
r
t
u
n
i
s
t
i
c

M

R

D

I

D

D

M

R

M

I

R

R

D

I

I

M

M

D

I

D

M

Possible opportunistic sequences

D

M R D I

Systematic sequences


Learning software process with UPEDU

Slide 2
-
19



2000
École Polytechnique de Montréal & Rational Software



Software Process and Software Life Cycle




Understanding the Development and Evolution of Software




Defining the Software Life Cycle and the Software Process





Defining Elements of the Software Process



Integrating the Software Life cycle and the Software Process



Customizing the Software Process


Influential Factors in Customizing Software Process


Software Process Standards and Models



Summary


Learning software process with UPEDU

Slide 2
-
20



2000
École Polytechnique de Montréal & Rational Software

Four Influential Factors

People and Organization

Product Life Cycle

Process

CMM

ISO 15504


UPEDU Concept: Tailoring the Process

Application Domain


Learning software process with UPEDU

Slide 2
-
21



2000
École Polytechnique de Montréal & Rational Software

Software Process Standards and Models



IEEE std 1074
-
1995 processes


Project management


Pre
-
development


Development


Post
-
development


Integral



Models


Waterfall


Spiral


Incremential


Prototyping

UPEDU Concept: Effects of implementing a Process


Learning software process with UPEDU

Slide 2
-
22



2000
École Polytechnique de Montréal & Rational Software



Software Process and Software Life Cycle



Understanding the Development and Evolution of Software




Defining the Software Life Cycle and the Software Process





Defining Elements of the Software Process



Integrating the Software Life cycle and the Software Process



Customizing the Software Process



Summary


Learning software process with UPEDU

Slide 2
-
23



2000
École Polytechnique de Montréal & Rational Software

Wrap up


Software process versus Software life
-
cycle



The phases of a software life
-
cycle



The disciplines of a software process



The components of a discipline



Development cycle vs evolution cycle



Interaction between the disciplines and the phases



Iterations and software proceses



Various models and standard on software process and software life
-
cycle