Professional Documents
Culture Documents
Software Engineering Poject Sample
Software Engineering Poject Sample
SOFTWARE ENGINEERING
PROJECT MANAGEMENT
Johan Gouws
B.Eng. & M.Eng. (Elec.) (Rand Afrikaans University, South Africa)
MBA (Heriot-Watt University, Scotland)
Ph.D. (Wageningen, the Netherlands)
Leonie E. Gouws
B.Eng. (Mech.) (Rand Afrikaans University, South Africa)
M.Eng. (Engineering Management) (Rand Afrikaans University, South Africa)
Disclaimers
Melikon Pty Ltd published this work as a contribution to the education of software
engineering project managers and other people involved in software development.
The material herein is for general information only and Melikon cannot be held liable
for any actions taken or not taken on the basis of material contained herein.
Melikon Pty Ltd holds the publishing rights and the copyright of this work. No part of
this book may be reproduced or transmitted in any form or by any means, electronic
or mechanical, including photocopying, recording or by any information storage and
retrieval systems, without prior written permission from Melikon.
TABLE OF CONTENTS
1.
INTRODUCTION.............................................................................9
1.1
1.2
1.3
2.
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.9.1
Introduction ............................................................................................................................................................. 22
2.9.2
Risk Identification.................................................................................................................................................... 23
2.9.3
2.9.4
2.9.5
2.10
3.
3.1
3.2
3.2.1
3.2.2
3.2.3
3.2.4
3.3
3.3.1
3.3.2
3.4
3.4.1
Introduction ............................................................................................................................................................. 37
3.4.2
3.4.3
3.4.4
3.4.5
3.4.6
3.4.7
3.5
3.5.1
3.5.2
3.5.3
Table of Contents
3.6.1
Introduction ............................................................................................................................................................. 47
3.6.2
3.6.3
3.6.4
3.7
3.7.1
Background............................................................................................................................................................. 50
3.7.2
3.7.3
4.
4.1
INTRODUCTION....................................................................................................................................... 55
4.2
4.2.1
4.2.2
4.2.3
4.3
4.3.1
4.3.2
4.3.3
4.3.4
4.3.5
4.3.6
4.4
4.4.1
Introduction ............................................................................................................................................................. 68
4.4.2
4.4.3
4.5
Developing a WBS.................................................................................................................................................. 71
4.5.1
Introduction ............................................................................................................................................................. 72
4.5.2
4.5.3
4.5.4
4.5.5
4.5.6
4.6
4.6.1
Introduction ............................................................................................................................................................. 76
4.6.2
4.6.3
4.6.4
Basic COCOMO...................................................................................................................................................... 78
4.6.5
4.6.6
4.6.7
4.7
4.7.1
Introduction ............................................................................................................................................................. 81
4.7.2
4.7.3
4.7.4
4.7.5
Table of Contents
4.8
4.9
4.9.1
Introduction ............................................................................................................................................................. 88
4.9.2
Scheduling Techniques........................................................................................................................................... 89
4.9.3
4.10
4.10.1
Introduction......................................................................................................................................................... 92
4.10.2
4.10.3
4.10.4
4.11
4.11.1
4.11.2
4.11.3
4.12
4.12.1
Introduction....................................................................................................................................................... 100
4.12.2
4.12.3
4.12.4
4.12.5
5.
5.1
INTRODUCTION..................................................................................................................................... 106
5.2
5.2.1
5.2.2
5.2.3
5.2.4
5.3
5.3.1
5.3.2
5.3.3
5.3.4
5.3.5
5.4
5.4.1
5.4.2
5.4.3
5.4.4
5.5
5.5.1
5.5.2
5.5.3
5.5.4
5.5.5
5.6
5.7
Table of Contents
5.8.1
5.8.2
5.9
5.9.1
5.9.2
5.9.3
5.9.4
5.9.5
5.10
5.10.1
5.10.2
5.10.3
5.10.4
5.11
5.11.1
5.11.2
5.11.3
5.11.4
5.11.5
5.12
5.12.1
5.12.2
5.12.3
6.
6.1
INTRODUCTION..................................................................................................................................... 147
6.2
6.2.1
6.2.2
6.2.3
6.2.4
6.2.5
6.3
6.3.1
6.3.2
6.3.3
6.3.4
6.4
6.4.1
6.4.2
6.4.3
6.4.4
6.4.5
6.5
6.5.1
6.5.2
6.5.3
Table of Contents
7.
7.1
INTRODUCTION..................................................................................................................................... 163
7.2
7.3
7.4
7.5
7.5.1
7.5.2
7.6
7.6.1
7.6.2
7.6.3
7.7
7.7.1
7.7.2
7.8
7.8.1
7.8.2
7.9
7.10
7.11
7.11.1
7.11.2
7.11.3
7.11.4
7.11.5
7.12
7.13
7.14
7.15
7.16
7.16.1
7.16.2
7.16.3
7.16.4
7.16.5
7.17
7.18
7.18.1
7.18.2
7.18.3
7.19
7.20
7.21
7.22
Table of Contents
Definitions......................................................................................................................................................... 196
7.22.2
7.22.3
7.22.4
7.22.5
7.22.6
7.22.7
7.23
7.24
8.
CONCLUSION ............................................................................212
8.1
8.2
8.3
8.4
8.5
8.6
8.7
9.
Table of Contents
1.
INTRODUCTION
For many engineering and other projects, software has become the pivotal part: it
controls generation and distribution of electricity; water purification and
distribution; robotic systems in production plants; vehicles, their engines, and
traffic flows; household equipment; aircraft, air traffic, and passenger bookings;
telecommunications; logistics; spacecraft and space missions, etc., etc.
Often, in the past, software was randomly assembled almost in an artistic way.
This approach is no longer appropriate; and the departure point for proper
software development should be the realization that software development has
grown from an art, to a craft, to a proper engineering discipline.
Software is a product (although a rather fluid one), like any other result of
engineering methodologies.
Any project stands on three legs: cost, schedule and functionality (performance).
Chapter 1: Introduction
These three project legs must be balanced, planned in advance, and managed
throughout the projects lifetime in order to have a successful project.
To do all these things successfully, a project manager must have good technical-,
management-, and people skills.
The intention with this book is not to instantly convert readers into the worlds
leading managers for software development projects, nor to provide recipes or
quick-fix solutions but it is specifically aimed at:
Chapter 1: Introduction
10
Since the book aims to maintain a balance between width and depth of the
presentation, there will certainly be some aspects which might require further
reading.
These are typically in the form of a table, where choices can be ticked off,
based on the topics covered in the preceding sections.
The intention is that readers can use these to link the concepts presented,
with the actual situations in their own organizations.
The remainder of the book is also in the point-wise format used in this
introductory chapter. This format is used in order to make the book an easy-toread reference source.
Chapter 1: Introduction
11
Management
Planning
Staffing
Organizing
Controlling
Directing
Organizing involves:
Staffing involves:
13
in Figure 13.
G en e ra l
M a na g e r
F in a n cial
M an a g er
E ng in e e rin g
M a na g e r
S oftw a re
S im u la tio n
softw a re
E m b ed d ed
so ftw a re
......
A n a lo gu e
e le ctro n ics
M a rke tin g
M a n a ge r
.....
E le ctro n ics
......
D ig ital
e lectron ics
......
This structure keeps specialists together; and it fragments complex problems and
assigns it to different departments.
Typical advantages:
Simplified training.
Typical disadvantages:
The functional groups goals can become more important than the overall
organizations.
However, it is essential to first analyse the reasons for difficulties before going for
a new structure.
Lack of proper communication is often the biggest problem with the functional
108
novices can consistently handle routine designs. No such handbook yet exists
for software, so mistakes are often repeated on project after project, year after
year.
The COCOMO equations were used in the previous chapter to estimate effort and
schedule.
PM = person-months
Effort
PM
=
1.05
(KDSI)
Semi-detached
PM
=
1.12
(KDSI)
Embedded
PM
=
1.20
(KDSI)
Schedule
3.6 TD
Staffing
2.5 ANS = PM / TD
2.5 ANS = PM / TD
2.5 ANS = PM / TD
0.38
(PM)
3.0 TD
0.35
(PM)
2.4 TD
0.32
(PM)
119
Ranking by
Project Managers Line Managers
2
10
3
2
4
9
5
7
6
11
7
14
8
3
9
8
10
1
11
12
12
13
13
6
14
5
15
15
Ensure that different teams can work together, and that outputs are compatible.
Minimise threats - manage conflict and power struggles, avoid surprises (up or
down) and unrealistic demands, foster mutual trust.
Note all problems experienced in the project database, for future reference.
210