Top Banner
Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management
17

Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Apr 02, 2015

Download

Documents

German Manger
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Usi

ng U

ML

, Pat

tern

s, a

nd J

ava

Ob

ject

-Ori

ente

d S

oftw

are

En

gin

eeri

ng Art for Chapter 14,

Project Management

Page 2: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 2

Figure 14-1, Phases of a Software Project

Conception

Definition

Start

Steady State

do/FormulateIdea

do/Problem Statement do/Project Kickoff

do/Develop System

GoAhead

ScopeDefined

&& Teams

System Done

New Technology

do/Cost-BenefitAnalysisdo/FeasibilityStudy

do/Review

Assembled

do/Infrastructure Setup

Infrastructure SetupCompleted

do/Software Architecturedo/Software Plan

do/Skill Identificationdo/Team Formation

do/Controllingdo/Risk Management

do/ReplanningTermination

do/Client Acceptancedo/Delivery

do/Post Mortem

New Need

Page 3: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 3

Figure 14-2, Management activities in a software project (continued on next slide).

Initial Software

Definition

Project Management PlanInitial Software

Architecture

Start

Skill Identification

Conception

Formulate Idea Cost-Benefit AnalysisFeasibility Study

Problem StatementDefinition

Infrastructure setupTeam assembly

Project Agreement

Project Kick-off

Page 4: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 4

Figure 14-2, Management activities in a software project (continued).

Scope agreementProject replanning

Controlling Risk management

Installation

Steady state

Termination

Client acceptance test Postmortem

Page 5: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 5

Figure 14-3, Tasks, Activities and Project Functions.

Task

*Work

Activity

Project Function«invariant»

duration = project.duration

Page 6: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 6

Figure 14-4, Relationship between Outcome, Work, and Work Packages.

produced-by*

Task

*Work

Activity

Project FunctionProject DeliverableInternal Work Product

Work ProductSet of Work Products

Outcome*

Work Package describes

Page 7: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 7

Figure 14-5, The Work Breakdown Structure is the aggregation of all the work to be performed in a project.

*

Task

*Work

Activity

Work Breakdown Structure

Page 8: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 8

Figure 14-6, Partial work breakdown structure for a house.

Build Foundation

Build Walls

Build Roof

Install Heating

Build Structure

Install PlumbingBuild House:WBS

Install Sewer Pipes

Install Cold & HotWater Pipes

Install Tubs & Sinks

Install Electric

Page 9: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 9

Figure 14-7. An example of a task model with precedence dependencies

Database subsystemreq. elicitation

Database subsystemdesign

Database subsystemimplementation

Database subsysteminspection

Database subsystemtest plan

Database subsystemtest

Page 10: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 10

Figure 14-8, An organization consists of organizational units, which consists of participants or groups of participants.

Participant

*

Staff

Organization Organizational Unit

Project

*

Company

Team Department Division

Page 11: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 11

Figure 14-9, Types of organizations.

Project-BasedOrganization

MatrixOrganization

Line (Functional)Organization

Page 12: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 12

Figure 14-10, Example of a organization chart for a team-based organization with three subsystem teams and two cross-functional teams.

UserInterface:SubsystemTeam

reports to

reports to

reports to

reports to

reports to

Management:Team

Documentation:CrossFunctionalTeam

Architecture:CrossFunctionalTeam

communicates with communicates with

communicates with communicates with

Database:SubsystemTeam

Control:SubsystemTeam

Page 13: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 13

Figure 14-11, Visualization of the organization structure from Figure 14-10 with an organization chart. The reporting and communication structure are not shown explicitly.

User InterfaceTeam

ControlTeam

DatabaseTeam

ArchitectureTeam

DocumentationTeam

ManagementTeam

Page 14: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 14

Figure 14-12, Model of a Project from a project manager’s point of view. This is a refinement of the model used in Chapter 3.

*

Resource

Participant

Fund

Equipment

Schedule

Task

*

Activity

con-

Facility

*

Staff

Department Team

produces

Work Set of Work

*

ProductProducts

*

Internal Project

Work

respon-

sumes

Package

Role

*

des-

*

cribes

Deliverable

sibleplaysfor

Organi-zation

Structure

**

depends

Work Product Project Function

Project

Outcome WorkOrganizational

Unit

Work Breakdown

Page 15: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 15

Figure 14-14, Work products generated during project planning and their relationship with typical project deliverables.

Problem Statement

Top-level Design

Organization

Task Model

Schedule

Requirements AnalysisDocument (RAD)

System DesignDocument (SDD)

Software ProjectManagement Plan (SPMP)

Project Agreement

Project Planning ProductsDeliverables

Page 16: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 16

Figure 14-17, An example of an object-oriented work breakdown structure where the subsystem decomposition is used to identify high-level activities/tasks.

Develop

UserInterface

Control

DatabaseDevelop Database

Subsystem

Develop Control

Subsystem decomposition Work Breakdown Structure

UserInterface Subsystem

Develop System

Page 17: Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 14, Project Management.

Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 17

Figure 14-18, Assessing the financial status of a project using earned value.

Current

Actual cost

Earned value

Planned cost

time

Time