You are on page 1of 49

Soft Proj Management and Maintenance

Software
Software Project
Project Management
Management
RUP
RUP
DSDM
DSDM
COCOMO
COCOMO
Software Maintenance

 Process
 Tools
 People
Course
 Presentation On
 RUP
 DSDM
 COCOMO Models
 Software Maintenance Case Study
 Mini Project and Presentation
 Using RUP
 Using DSDM
Evaluation

– Project Documentation 30%


– Project Plan 10%
– Project conduct 10%
– Presentation 20%
– Assignements
– Summary and Critic 30%
Before the UML
 1960’s - 70’s
 COBOL, FORTRAN, C
 Structured analysis and design techniques
 1980’s - early 1990’s
 Smalltalk, Ada, C++, Visual Basic
 Early generation OO methods
 Mid/late 1990’s
 Java
 UML
 Unified Process
Models and Diagrams
model is a complete
escription of a system
om a particular
State
erspective State
Diagrams
Class
Diagrams
Use Case Diagrams
Use Case
Diagrams State
Use Case Use Case
Diagrams State
Diagrams
Use Case Diagrams Object
Diagrams
Diagrams
Sequence Diagrams
Diagrams
Diagrams

Scenario State
Scenario
Diagrams State
Diagrams
Collaboration
Diagrams Component
Diagrams
Diagrams Models Diagrams

Scenario Component
Scenario
Diagrams
Component
Diagrams
Deployment
Statechart
Diagrams Diagrams
Diagrams Diagrams
Activity
Diagrams
But, the UML Is Not
Enough

Team-Based
Development

Modeling Unified
Language Process
Creating the Unified Process

Rational Unified Process 5.0


1998 Functional testing
Performance testing
Requirements mgmt
Conf. and change mgm
Business engineering
Rational Objectory Process 4.1
Data engineering
1996-1997
UI design

The Rational Approach UML


Objectory Process 1.0-3.8
1987-1995

The Ericsson Approach


What Is a Process?

 Defines Who is doing What, When to


do it, and How to reach a certain
goal.

New or changed New or changed


Software Engineering
requirements Process system
Overview of the Unified Process
 The Unified Process is
 Iterative and incremental
 Use case driven
 Architecture-centric
Lifecycle Phases

Inception Elaboration Construction Transition

time

 Inception Define the scope of the


project and develop business case
 Elaboration Plan project, specify
features, and baseline the
architecture
Construction Build the product
 Transition Transition the product to
its users
Major Milestones

Inception Elaboration Construction Transition

time

Vision Baseline Initial Product


Architecture Capability Release
Phases and Iterations

Inception Elaboration Construction Transition

Prelim ... Arch ... Dev Dev ... Trans ...


Iteration Iteration Iteration Iteration Iteration

Release Release Release Release Release Release Release Release

An iteration is a sequence of activities with an


established plan and evaluation criteria, resulting
in an executable release
Inception Phase
 Inception
 Vision Document
 Initial Use Case Model
 Business cases -------Success criteria,
 Initial Proj Plan
 Initial risk Assesment
 Prototype
 Milestone Q
 Life Cycle Objectives
Elaboration phase

 Use cases specified in detail (80%


Complete)
 Architecture Description
 Executable Arch prototype
 Revised risk List
 Update development Process
 Milestone Q
 Life Cycle Architecture?
Construction
 Product is built
 Design goes on to become a full fledged
system
 User Manual
 Description of release
 All Use cases are realised
 Milestone?
 Initial operational Capability
Transition
 Products move to beta release
 Defects and defeciencies are reported
and rectified
 training personnel
 Delta release identified
 Milestone Q
 Product Release
Iterations and Workflow
Phases
Core Workflows Inception Elaboration Construction Transition

Requirements

An iteration in the
elaboration phase
Analysis

Design

Implementation

Test

P r e lim in a ry ite r. ite r. ite r. ite r. ite r. ite r. ite r.


Ite ra tio n (s ) #1 #2 #n #n+1 # n +2 #m #m +1

I t e r a t io n s
Workflows and Models
UML diagrams provide
views into each model

Requirements Use Case


Model

Analysis Analysis
Model

Design Design Depl.


Model Model

Implementation Impl.
Model

Test Test
Model

Each workflow is
associated with one or
more models.
Use Case Model
Use Case
Diagrams
Use Case
Model Class Object
Diagrams Diagrams
Analysis
Model Component
Diagrams

Design Deployment
Model Diagrams

Sequence
Depl. Diagrams
Model

Collaboration
Impl. Diagrams
Model
Statechart
Diagrams
Test
Model
Activity
Diagrams
Analysis & Design Model
Use Case
Diagrams
Use Case
Model Class Object
Diagrams Diagrams
Analysis
Model Component
Diagrams Incl. subsystems
and packages
Design Deployment
Model Diagrams

Sequence
Depl. Diagrams
Model

Collaboration
Impl. Diagrams
Model
Statechart
Diagrams
Test
Model
Activity
Diagrams
Deployment and
ImplementationUseModel
Case
Diagrams
Use Case
Model Class Object
Diagrams Diagrams
Analysis
Model Component
Diagrams

Design Deployment
Model Diagrams
Incl. active classes
Sequence and components
Depl. Diagrams
Model

Collaboration
Impl. Diagrams
Model
Statechart
Diagrams
Test
Model
Activity
Diagrams
Test Model
Use Case
Diagrams
Use Case
Model Class Object
Diagrams Diagrams
Analysis
Model Component
Diagrams

Design Deployment
Model Diagrams
Test model refers to all
other models and uses Sequence
Depl. Diagrams
Model corresponding
diagrams
Collaboration
Impl. Diagrams
Model
Statechart
Diagrams
Test
Model
Activity
Diagrams
Use Case Driven

Req.ts Analysis Design Impl. Test

Use Cases bind these workflows together


Architecture-Centric
 Models are vehicles for visualizing,
specifying, constructing, and
documenting architecture
 The Unified Process prescribes the
successive refinement of an
executable architecture
Inception Elaboration Construction Transition

time
Architecture
Architecture and Models

Use Case Analysis Design Depl. Impl. Test


Model Model Model Model Model Model

Models

Views

Architecture embodies a collection of views of the models


Function versus Form

Use cases Architecture

• Use case specify function; architecture specifies form


• Use cases and architecture must be balanced
The Unified Process is
Engineered
A unit of
A role played
work
by an
individual or a
team Activity

Worker

Describe a
Analyst
Use Case

responsible for Artifact

A piece of
information that is
produced, modified,
Use case or used by a process
Use case
package
The Unified Process is a Process
Framework

There is NO Universal Process!


• The Unified Process is designed for flexibility and extensibility
» allows a variety of lifecycle strategies
» selects what artifacts to produce
» defines activities and workers
» models concepts
Two Parts of a Unified Whole

The Unified The Unified


Modeling Process
Language

• OMG standard • Convergence


in the future
• Convergence
through
process
frameworks
DSDM
DSDM Overview
DSDM Phases
 Feasibility study
 Business study
 Functional model iteration
 Design and build iteration
 Implementation
Feasiblity Study

 Is RAD a suitable Option ?


 Are Technical and Managerial
condititons met ?
Business Study
 Provides Business and Technical
aspects of the product
 Business Model is built
 Information requiremnents are
Identified
 System Arch is Outlined
 Objectives Agreed
Functional model iteration
 Freezing the requirements till working
model is ready
 Functional robust prototypes are
Developed
 Iteration done if requirements have
been changed
Design Model Iteration

 Ensure prototypes work under


operational Environment
 Trialling in operational environment
Implementation
 User Approval and User guidelines
 People are trained
 Review Impact
?

How do we compare RUP and DSDM


 Mappings both ways
 Opinion
 Which is suitable for which project

COCOMO
 Effort = C1 EAF (Size) P1
 Time = C2 (Effort)P2

 C1, C2=constant scaling co-efficient


 EAF= product of domain,personnel,
environment and tools used
 Size = in KLOC
Project Charachterization
Metrics
 EAF Parameter range
 Required reliablity 0.75-1.40
 Product Complexiety 0.70-1.65
 Execution Time Const 1.00-1.66
 Analyst capability 1.46-0.71
 Use of software tools 1.24-0.83
 ----15 such Parameters related to the
project
COCOMO-I
 Organic Mode
 In House, Less complex,Flexible features,
Qulities .............
 Embedded Mode
 Complexity, Realiability, Strict constraints
 Change requires many approval .....
 Semi detached Mode
Organic Mode

 Effort = 3.2 EAF (size) 1.05


 Time In Months= 2.5(Effort) 0.38
Semidetached Mode

Effort = 3.0 EAF (size) 1.12

Time In Months= 2.5 (Effort) 0.35


Embedded Mode

 Effort = 2.8 EAF (Size) 1.12

 Time (in Months)=2.5


(Effort)0.32
COCOMO-II

 Effort=2.45 EArch (Size)P


 Effort = 2.45 Eapp (Size)P
EArch
 Identifiers
 Product Cmplxty
 Required Reuse
 Personnel Exprnce
 Facilities schedule
E App

 Identifiers
 Required reliability
 Database size
 Time Constraint
 Use of Software tools
 Reqd Development schedule
Project

 Two groups
 Documentation of the phases
 User Manual
 Proposed
 JCE- Symm Key Filesecure (RUP)
 K