Introduction To Software Project Management
Introduction To Software Project Management
Lecture 1
Introduction to Software Project Management
2
Course Objectives
• Understand the fundamental principles of Software Project management.
• Student will have a good knowledge of responsibilities of project manager.
• Student will be familiar with the different methods and techniques used for project management.
• By the end of this course student will have good knowledge of the issues and challenges faced
while doing the Software project Management.
• Student will also be able to understand why majority of the software projects fail and how that
failure probability can be reduced effectively.
• Student will be able to do the Project Scheduling, tracking, Risk analysis, Quality management and
Project Cost estimation using different techniques
3
Text Books
• Text books:
• Software Project Management
By: Bob Hughes & Mike Cotterell,
Publisher: McGraw-Hill
• Reference books:
• A Guide to the Project Management Body of Knowledge (PMBOK Guide)
By Project Management Institute
• Quality Software Project Management
By: Robert T. Futrell, Donald Shafer
Publisher: Prentice Hall
• Quizzes : 10%
• Assignments : 15%
• Class Activity : 5%
• Presentation : 10%
• Midterm : 30 %
• Final term : 30%
5
Motivation for Studying Project Management
6
SPM Study Topics
• Project Management - Study Topics
• What is project management?
• Project Selection
• The role of Project Manager
• Project Organization
• Project Costing, Planning, Budgeting, Scheduling
• Resource Allocation
• Project Monitoring and Controlling
• Risk management
• Software quality assurance plans
• Quality assurance, Legal issues
Laws of Project Management
• No major project is ever installed on time, within budget, with the
same staff that started it. Yours will not be the first.
• Projects progress quickly until they become 90% complete, then they
remain at 90% complete forever.
• When things are going well, something will go wrong.
• When things just can’t get any worse, they will
• When things appear to be going better you have overlooked
something
• If project content is allowed to change freely, the rate of change will
exceed the rate of progress.
• No system is ever completely debugged: attempts to debug a system
inevitably introduce new bugs that are even harder to find
• A carelessly planned project will take three times longer to complete
than expected, a planned project will take only twice as long.
Outline of talk
In this introduction the main questions to be
addressed will be:
9
What is a project?
Some dictionary definitions:
“A planned undertaking”
10
Project?
• A project is a temporary endeavor undertaken to create a unique
product or service
(PMI definition)
Jobs versus projects
‘Exploration’ – e.g. finding a cure for cancer: the outcome is very uncertain
12
Characteristics of projects
A task is more ‘project-like’ if it is:
• Non-routine
• Planned
• Aiming at a specific target
• Work carried out for a customer
• Involving several specialisms
• Made up of several different phases
• Constrained by time and resources
• Large and/or complex
13
Different types of projects
• Realisation phase is outdoors, large capital = many
Civil Engineering contractors = communication headaches
• Invisibility
• Complexity
• Conformity
• Flexibility
15
Question
Consider the following:
A. Reorder the list
1. Producing an edition of a newspaper in manner of
2. Putting a robot vehicle on Mars to search for signs of life the one closest
3. Getting married to the definition
of project
4. Amending a financial computer system to deal with a B. For each entry
common European currency in the ordered
5. A research project into what makes a good list, describe the
difference
human- computer interface between it and
6. An investigation into the reason why a user has a problem the item above
with a Computer system it
7. A third-and-four-year students programming assignment
8. Installing a new version of a word processing package in an organization
9. Writing an operating system
Management?
• To
• Plan
• Organize
• Co-ordinate other activities
• Benefits
• Lesser deadlocks
• Lesser overheads
• Smooth
• efficient
Project management?
‘Project management is principally concerned with the management of
change’
(Lockyer & Gordon, 1996)
• Progressively elaborated
• With repetitive elements
• A project manager
• Analogy: conductor, coach, captain
What needs to be managed in SDLC
Software project management
Activities covered by project
management
Feasibility study
Is project technically feasible and worthwhile from a business
point of view?
Planning
Only done if project is feasible
Execution
Implement plan, but plan may be changed as we go along
22
The software development life-cycle
(ISO 12207)
23
ISO 12207 life-cycle
Requirements analysis
• Requirements elicitation: what does the client need?
• Analysis: converting ‘customer-facing’ requirements
into equivalents that developers can understand
• Requirements will cover
• Functions
• Quality
• Resource constraints i.e. costs
24
ISO 12207 life-cycle
• Architecture design
• Based on system requirements
• Defines components of system: hardware, software,
organizational
• Software requirements will come out of this
• Code and test
• Of individual components
• Integration
• Putting the components together
25
ISO12207 continued
• Qualification testing
• Testing the system (not just the software)
• Installation
• The process of making the system operational
• Includes setting up standing data, setting system
parameters, installing on operational hardware
platforms, user training etc
• Acceptance support
• Including maintenance and enhancement
26
Some ways of categorizing projects
27
Some ways of categorizing projects
28
Categorizing software projects
•
Software
system application
drivers patches
What is management?
This involves the following activities:
31
What is management?
(continued)
• Monitoring – checking on progress
32