Transcript NEW

Handling Large Projects
 Project Decomposition
 Stepwise Refinement


Functional Decomposition
Design Decomposition
 Work Breakdown Structures (WBS)
Why to Project Decomposition
 Project Decomposition

F(xyz)q = F(x)q + (y)q + (z)q

A complex project can be divided into simpler
components. Each component is easier to handle.

System development projects are decomposed into
smaller components in order to provide better estimates
of the amount of the amount of work involved and to
monitor the and manage the various activities of the
development team.
Stepwise Refinement
 Stepwise Refinement

Stepwise refinement are iterative methods because each
iteration decomposes the system further.
Systems
Component 1
Component 2
2.1
2.1.1
2.1.2
2.2
2.2.1
Component 3
2.3
2.2.2
2.3.1
2.3.2
Functional Decomposition
 Functional Decomposition

Functional decomposition of a software project is a
division of the system into its operational components as
they are seen by the user.

The objective is to describe is to define all the
characteristics of the system from the user’s perspective.
Functional Decomposition
Automatic Bank
Teller
System
Automatic Bank
Teller
Services
User
Services
Center
Computer
QUeary and
Updates
Center
Computer
Services
Teller machine
interface
function
Report
generator
Customer
DB Manager
Center
Computer
Services
Design Decomposition
 Design Decomposition

Is a division of the system into lower level components
that coincide with the actual software components of the
systems.

In a full design decomposition of a software system, the
lowest components correspond to programming modules
(e.g. procedures, subroutines, or program functions)

Requirement
Functional decomposition
Decomposition.
Design
Design Decomposition
Automatic
bank teller
system
Wide area
network
interface
Teller
communications
interface
Automatic
teller
Central computer
communications
interface
Keyboard
drive
Hardware
interface
Display
driver
Printer
drive
Central
computer
teller
logic
computer
database
manager
teller
interface
logic
beeper
driver
The best design would strive to produce independent
software components or modules.
Good design will strive for low coupling, high cohesion
and information hiding.
Work Breakdown structure
 WBS

This is the division of the IT project into basic work
components

The sum total of these work components covers all the
tasks that need to be performed in order to complete the
project successfully.

Materials
Functions
People


WBS
 Project Decomposition




Development tasks
Managerial tasks
Support tasks
Administrative tasks
WBS
Project WBS
Command and
Control
System
Management
and
administration
Software
requirement
analysis
Control logic
Software
development
Software
design
procurement
and
development
Software
coding
Software integration
Command
interface
Display
utilities
Communications
Display formatter
Screen driver
Shape
generator
WBS
Task ID
Description
1.
Management and
Administration
2.
Software development
2.1
Software requirement
analysis
2.2
Software design
2.2.1
Control logic
2.2.2
Command interface
…
…
2.3.3.1
Display formatter
Status
Assigned to
Completed
Joe Smith
…
2.3
Software coding
2.4
Software integration
…
3
Procurement and
development support
See table 6.2
Comments
Principles of managing Software projects





OLD
Delegation
Supervision
Authority
Responsibility





NEW
Delegation
Leadership
Authority
Responsibility
Managing Large Projects
Project
Manager (PM)
Secretary
Deputy PM
Type title here
Integration group
Independent testing
Software group
Team 1
Team 2
Team 3
Hardware group
QA
Project Reporting Techniques
 Period written status report
 Verbal reports
 Status meetings
 Product demonstrations (demo)
Status Reports
 Status Reports Format

Red flags


Activities during the report period (2 weeks).


Major activity planned for the next report period
Problems and general issues




This should be linked to WBS
Planned activities for the next report period


Problems that require the immediate attention of the PM.
Issues not yet resolved from the last period
Holidays, Vacation,
New project members, etc.
Date, report period, Name of report, Who is submitting
the report.