0% found this document useful (0 votes)
49 views38 pages

Software Development Project Management (CSC 4125) : Fundamental Concepts

Customers, suppliers, shareholders, regulatory bodies etc. 4)Stakeholders who are opponents or adversaries of the project 5)Stakeholders who are neutral or who have mixed views 6)Stakeholders who are supporters or champions of the project 7)Stakeholders who have the power to significantly influence the project 8)Stakeholders who are relatively powerless but may be affected by the project 9)Stakeholders who are strategically grouped by their level of interest and influence 20

Uploaded by

Daiyan Fahim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views38 pages

Software Development Project Management (CSC 4125) : Fundamental Concepts

Customers, suppliers, shareholders, regulatory bodies etc. 4)Stakeholders who are opponents or adversaries of the project 5)Stakeholders who are neutral or who have mixed views 6)Stakeholders who are supporters or champions of the project 7)Stakeholders who have the power to significantly influence the project 8)Stakeholders who are relatively powerless but may be affected by the project 9)Stakeholders who are strategically grouped by their level of interest and influence 20

Uploaded by

Daiyan Fahim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 38

SOFTWARE DEVELOPMENT

PROJECT MANAGEMENT
(CSC 4125)

Fundamental Concepts

1
What is a Project?
• Some dictionary definitions:
“A specific plan or design”
“A planned undertaking”
“A large undertaking e.g. a public works scheme”
 Longmans dictionary

• Key points above are planning and size of task

2
What is a Project?
• Definition: A project is a temporary endeavor
undertaken to create a unique product, service, or
result.
• A project is a time and cost constrained operation to
realize a set of defined deliverables (the scope to fulfill
the project's objectives) up to quality standards and
requirements.
• A project is an endeavor
– that produces a clearly specified product, service, or result
– in a limited period of time
– within a limited budget
3
Characteristics of projects
 Key Characteristics of a Project:
• Non-routine tasks are involved
• Planning is required
• Specific objectives are to be met or a specified product is to be
created.
• The project has a predetermined time span
• Work is carried out for someone other than yourself
• Involves several specialisms
• People are formed into a temporary work group to carry out the
task
• Work is carried out in several phases
• The resources that are available for use on the project are
constrained
• The project is large and/or complex

4
Job (Operational Work) vs. Project
Job (Operational Work) Project
• On going / Day to day work • Temporary
• Has no beginning or end • Has an expiration date
• Keeps the business running (i.e., has beginning and end)
• Maintains the core work for • Helps to expand the business
projects
• Builds new products
• Represents all the work the
• Changes the way of business
business does

5
Jobs vs. Projects

Figure: Activities most likely to benefit from project management


• ‘Jobs’ – repetition of very well-defined and well understood tasks
with very little uncertainty
• ‘Exploration’ – e.g. finding a cure for cancer: the outcome is very
uncertain
• ‘Projects’ – in the middle!

6
Are software projects really different
from other projects?
• Not really! ...but... there are some characteristics that make
software more problematic to build than other engineered
artefacts.
– Invisibility
– Complexity
– Conformity
– Flexibility
• Software projects are similar to other projects but have some
attributes that present particular difficulties.

7
Software Projects vs. Other Types of Projects
• Comparison of Software Projects with Other Types of Projects:
 Invisibility:
– When a bridge is being constructed the progress being made can
actually be seen. With software, progress is not immediately visible.
 Complexity:
– Software products contain more complexity than other engineered
artifacts. We can't measure complexity of software project until we
actually work on it.
 Conformity
– ‘Traditional’ engineers usually work with physical systems and materials
(e.g. cement, steel) that have complexity, but these are governed by
consistent physical laws. Software developers have to conform to the
requirements of human clients.
 Flexibility:
– Software systems are likely to be subject to a higher degree of change.
8
Contract Management versus
Technical Project Management

Projects can be:


• In-House: clients and developers are employed by
the same organization
• Out-sourced: clients and developers employed by
different organizations
• ‘Project manager’ could be:
– a ‘contract manager’ in the client organization
– a ‘technical’ project manager in the supplier
organization (our study will mainly concentrate on these
‘technical’ project managers)
9
What is Project Management?
• Project management is the application of
knowledge, skills, tools, and techniques to project
activities to meet the project requirements.
– Project management is the art of maximizing the
probability that a project delivers its goals on Time, to
Budget, and at the required quality.

10
Project Manager
• The Project Manager is the person assigned by the
performing organization to lead the team that is
responsible for achieving the project objectives.
– The PM plays a critical role in the leadership of a project team in
order to achieve the project’s objectives
• The Project Manager is:
– Formally empowered to use organizational resources
– In control of the project
– Authorized to spend the project’s budget
– Authorized to make decisions for the project

11
What are the Skills
a Successful Project Manager should have?

• A successful project manager possesses a


diversified skill set.
– Communication skill (most important)
– Managerial skill
– Technical skill
– Conflict management skill
– Interpersonal skill
– Problem-solving skill
– Motivation skill
– Innovation skill
– …
12
Activities covered by
Software Project Management

1) The Feasibility Study


– Is the project technically feasible and worthwhile from a
business point of view?
– Investigation to decide whether a prospective project is
worth starting
2) Planning
– Guidance to execute, monitor and control a project
– Only done if project is feasible
3) Project Execution
– The implementation of a project
– Implement plan, but plan may be changed as we go along

13
Activities covered by
Software Project Management

14
Typical Software Development Life Cycle

• Requirements Analysis
• Specification
• Design
• Coding
• Verification & Validation
• Implementation/Installation
• Maintenance & Support

15
Some ways of Categorizing Software Project

• Distinguishing different types of project is


important as different types of task need
different project approaches e.g.
– Voluntary User systems (such as computer games)
versus Compulsory User systems (e.g. the order
processing system in an organization)
– Information systems versus Embedded systems
– Objective-based versus Product-based

16
Some ways of Categorizing Software Project
 Information Systems vs. Embedded Systems
• Information systems
– interface with the human being
– enable staff to carry out office processes
– Example: A stock control system
• Embedded systems
– interface with a machine
– control machines
– Example: An embedded system might control the air
conditioning equipment in a building

17
Some ways of Categorizing Software Project
 Objective-based vs. Product-based
– Projects may be distinguished by whether their aim is to produce a
product or to meet certain objectives.
– A project might be to create a product, the details of which have been
specified by the client (The client has the responsibility for justifying the
product)
– Project requirement might be to meet certain objectives which could
be met in a number of ways. An organization might have problem and
ask a specialist to recommend a solution.
• Note: Many software projects have two stages:
– First is an objective-driven project resulting in recommendations (this
might identify the need for a new software system)
– The next stage is a project actually to create software product

18
STAKEHOLDERS
• As per the PMBOK Guide “A stakeholder is an individual, group,
or organization who may affect, be affected by or perceive itself
to be affected by a decision, activity, or outcome of a project.”
• Stakeholders are people who have a stake or interest in the
project.
– It is important that they be identified as early as possible,
because PMs need to set up adequate communication
channels with them right from the start
• Different types of stakeholders might have different objectives
and a successful PM recognizes these different interests and
reconciles (find a solution) them.
•The PM needs to be a good communicator and negotiator.

19
Stakeholder Categories
 Stakeholders can be categorized as:
1)Internal to the project team
– They will be under the direct managerial control of the project leader
2)External to the project team but in the same organization
 Examples: Project leader might need assistance of
– information management group
– the users
3)External to both the project and the organization
 Examples of external stakeholders:
– Customers/users who will benefit from the system that the
project implements
– Contractors who will carry out work for the project

20
Setting Objectives
• A key factor in project success is having clear objectives. Therefore,
project objectives should be clearly defined at the beginning of the
project.
• To have a successful software project, the manager and the project team
members must know what will constitute success.
• A project authority needs to be identified. Project authority has overall
authority over what the project is to achieve.
• Project Authority  project board/project management board/
steering committee
• Project steering committee has overall responsibility for setting,
monitoring and modifying objectives. The committee is likely to
contain user, development and management representatives.
• Only the steering committee can authorize changes to the project
objectives and resources.

21
Setting Objectives
• Answering the question ‘What do we have to do
to have a success?’
• Need for a project authority
– Sets the project scope
– Allocates/approves costs
• Could be one person or a group
– Project Board
– Project Management Board
– Steering Committee

22
Objectives
• Objectives should be such that it is obvious to all whether the
project has been successful or not.
• Informally, the objective of a project can be defined by
completing the statement:
The project will be regarded as a success if……….
e.g. “Customers can order our products online” rather than “to
build an e-commerce website”
• Rather like post-conditions for the project
• Focus on what will be put in place, rather than how
activities will be carried out.

23
Objectives should be SMART
S – Specific, effective objectives are concrete and well-defined.
M – Measurable, i.e., satisfaction of the objective can be objectively judged.
Example:
• ‘to reduce customer complaints by 50%’ would be more
satisfactory than ‘to improve customer relations’.
• The measure can, in some cases, be an answer to simple yes/no
question, “Did we install the new software by 1 June?”
A – Achievable, that is, it is within the power of the individual or group
concerned to meet the target.
R – Relevant, the objective must relevant to the true purpose of the project.
T – Time constrained: there is defined point in time by which the objective
should be achieved.

24
Goals/sub-objectives
• In order to keep things manageable, objectives might need to be broken
down into sub-objectives.
• In order to achieve objective, we must achieve certain sub-objectives.
• Sub-objectives are also known as goals
• Goals –These are steps along the way to achieving the
objective
• Informally, these can be defined by completing the
sentence:
• To reach objective X, the following must be in place
A……………
B……………
C…………… etc.

25
Goals/sub-objectives
• Often a goal can be allocated to an individual
• Individual might have the capability of achieving goal
on their own, but not the overall objective e.g.
• Overall objective – user satisfaction with software
product
• Analyst goal – accurate requirements
• Developer goal – reliable software

26
Measures of effectiveness
• How do we know that the goal or objective has been
achieved?
• Measures of effectiveness tell us how successful the
project has been.
• By a practical test, that can be objectively assessed.
e.g. for user satisfaction with software product:
– Repeat business – they buy further products from us
– Number of complaints – if low etc.

27
The Business Case
• Projects need to have a justification or business case: the effort and expense
of pushing the project through must be seen to be worthwhile in terms of
benefits that will eventually be felt.
• The business case should be established at the time of the project’s
feasibility study. A cost-benefit analysis will often be part of the project’s
feasibility study.
• Benefits of delivered project must outweigh costs.
• Costs include
– Development cost
– Operation cost
• Benefits
– Quantifiable
– Non-quantifiable

28
Project Success and Failure
• Degree to which objectives are met.
• Project plan should be designed to ensure project success by
preserving the business case for the project.
• Project Objectives vs. Business Objectives
• Project Objectives are the targets that the project team is expected
to achieve.
• Software Project Objectives: Delivering
– The agreed functionality, required level of quality, on time, within
budget.
– Note that a project could meet these targets but the application, once
delivered could fail to meet the business case.
For example, A computer game could be delivered on time and within
budget, but might then not sell.

29
What Is Management?
 Management involves the following activities:
• Planning – deciding what is to be done
• Organizing – making arrangements
• Staffing – selecting the right people for the job
• Directing – giving instructions
• Monitoring – checking on progress
• Controlling – taking action to remedy hold-ups
• Innovating – coming up with new solutions when
problems emerge
• Representing – liaising with clients, users,
developer, suppliers and other stakeholders

30
Management Control
• Management, in general, involves setting objectives
for a system and then monitoring the performance
of the system.
• Data – the raw details
– e.g. ‘6,000 documents processed at location X’
• Information – the data is processed to produce
something that is meaningful and useful
– e.g. ‘productivity is 100 documents per day’

31
Management Control
• Comparison with objectives/goals
– e.g. we will not meet target of processing all
documents by 31st March
• Modelling – working out the probable outcomes of
various decisions
– e.g. if we employ two more staff at location X, how quickly
can we get the documents processed?
• Implementation – carrying out the remedial actions
that have been decided upon

32
The Project Control Cycle

33
Requirement Specification
• Functional Requirements
– Define what the system that will be the end product of the
project is to do
• Quality Requirements (AKA non-functional requirements)
– Define how the system that will be the end product of the project
is to do
• Resource Requirements
– Define a record of how much the organization is willing to
spend on the system
– Usually trade-off between this and the time it takes to
implement the system
– Trade-off between functional & quality requirements & cost
– Everybody likes exceptionally reliable and user-friendly
systems with the exact required functionality but might be
expensive
34
Information & Control in Organization

35
Information & Control in Organization (cont.)

 Levels of DECISION MAKING & INFORMATION:


• Strategic Decision Making
– essentially about deciding objectives
• Tactical Decision Making
– ensures that the objectives are fulfilled
• Operational Decision Making
– relates to the day-to-day work of implementing
the project

36
Information & Control in Organization (cont.)

• Measurement:
– For objectives to be effective, there must be
practical ways of testing that the objectives have
been met
– There is a need for measurement

• Software measurements can be divided into


performance measures and predictive measures.

37
Information & Control in Organization (cont.)
 SOFTWARE MEASUREMENT :
• Performance measures
– Measures the characteristics of a system that has been
delivered
– They are important when we are trying to specify
unambiguously the quality requirements of a proposed
system
– Performance measures requires a system to be up and
running before any measurements can be taken
• Predictive measures
– Measurements are taken during development and indicate
what the performance of the final system is likely to be.
38

You might also like