Software Project

Software Project Software Project - Start

2017-12-21 25K 25 0 0


Management. CSEB233: Fundamentals of Software Engineering. B. Computer Science (SE) (Hons.). Objectives. Discuss the importance of Software Project Management (SPM). Explain the four P’s of effective project management: People, Product, Process, Project. ID: 617101 Download Presentation

Embed code:
Download Presentation

Software Project

Download Presentation - The PPT/PDF document "Software Project" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.

Presentations text content in Software Project


Software Project Management

CSEB233: Fundamentals of Software Engineering

B. Computer Science (SE) (Hons.)



Discuss the importance of Software Project Management (SPM)

Explain the four P’s of effective project management: People, Product, Process, Project

Explain the W5HH Principle and critical practices for performance-based management


Software Project Management

Importance of SPM


Importance of SPM

Building computer software is complex, particularly if it involves many people working over a relatively long time

That is why software projects need to be managed


Software Project Management


P’s of

Effective SPM


The Management Spectrum

Effective SPM focuses on four P’s:



he most important element of a successful project


The software to be built


The set of framework activities and software engineering tasks to get the job done


All work required to make the product a reality


Four P’s: People

People must be organized to perform software work effectively

The “people factor” is so important that the Software Engineering Institute has developed People Capability Maturity Model (People-CMM).

The maturity model defines key practice areas like staffing, communication and coordination, work environment, training, career development, team/culture development and others.

Organizations that have a higher levels of People-CMM have a higher likelihood of implementing effective software project management practice


Four P’s: PeopleStakeholders

Defined as “individuals or organizations who stand to gain or lose from the success or failure of a system”



& Easterbrook, 2000)

By definition, stakeholders are those who are impacted by, or have an impact on the project, e.g.:

Senior managers who define the business issues that often have significant influence on the project

Project (technical) managers who must plan, motivate, organize, and control the practitioners who do software work


Four P’s: PeopleStakeholders

By definition, stakeholders are those who are impacted by, or have an impact on the project, e.g.:

Practitioners who deliver the technical skills that are necessary to engineer a product or application

Customers who specify the requirements for the software to be engineered and other stakeholders who have a peripheral interest in the outcome

End-users who interact with the software once it is released for production use


Four P’s: People Team Leaders

To be effective, the project team must be organized in a way that maximizes each person’s skills and attributes, which is the job of the team leader

What do we look for when choosing a team leader?

Based on MOI model of leadership by Weinberg (1986):

Motivation, Organization, Ideas or Innovation

Based on four traits of effective project manager by Edgemon (1995):

Problem Solving, Managerial Identity, Achievement, Influence and Team Building


Four P’s: People Team Leaders

The MOI Model of Leadership:


The ability to encourage (by “push or pull”) technical people to produce to their best ability


The ability to mold existing processes (or invent new ones) that will enable the initial concept to be translated into a final product

Ideas or Innovation


he ability to encourage people to create and feel creative even when they must work within bounds established for a particular software product or application


Four P’s: People Team Leaders

Four traits of effective project manager

Problem solving

Can diagnose relevant technical and organizational issues, systematically structure a solution or motivate others to develop the solution, apply lesson learned from past projects to new situation and many others

Managerial identity

A good manager must take charge of the project


Four P’s: People Team Leaders

Four traits of effective project manager


Reward initiative and accomplishment to optimize the team productivity

Influence and team building

Able to ‘read’ people, understand verbal and nonverbal signal and react to the needs of the people sending the signals


How to lead?

How to organize?

How to motivate?

How to collaborate?

How to create good ideas?

Four P’s: People

Software Team


Four P’s: People Software Team

The following factors must be considered when selecting a software project team structure:

the difficulty of the problem to be solved

the size of the resultant program(s) in lines of code or function points

the time that the team will stay together (team lifetime)

the degree to which the problem can be modularized

the required quality and reliability of the system to be built

the rigidity of the delivery date

the degree of sociability (communication) required for the project


Four P’s: People Agile Team

Agile teams are formed for agile software development

Agile philosophy encourages

customer satisfaction and early incremental delivery of software

small highly motivated project teams

informal methods

minimal software engineering work products, and

overall development simplicity


Four P’s: People Agile Team

The distribution of skills must be appropriate to the problem

Mavericks (individualist) may have to be excluded from the team, if team cohesiveness is to be maintained.

Agile teams are self-organizing


Four P’s: People Issues

Software projects get into trouble because of:


The scale of many development efforts is large, leading to complexity, confusion, and significant difficulties in coordinating team members


Resulting in a continuing stream of changes


New software must communicate with existing software and conform to predefined constraints imposed by the system or product


Four P’s: People Issues

Software projects get into trouble because of:

Formal and informal communication among team members and between multiple teams must be established

Formal communication – writing, structured meetings, and other non-interactive and impersonal communication channel.

Informal communication – more personal, members share ideas on ad hoc basis


Four P’s: Product

Before project can be planned:

Establish product objectives and scope

Communication with the customer and other stakeholders must occur so that product scope and requirements are understood

Identify technical and management constraints

Consider alternative solutions

Enable the managers and practitioners to select a “best” approach, given the constraints imposed by delivery deadlines, budgetary restrictions, personnel availability and other factors


Four P’s: Product Scope

Scope is defined by answering the following questions:


How does the software to be built fit into a larger system, product, or business context?

What constraints are imposed as a result of the context?

Information objectives

What customer-visible data objects are produced as output from the software?

What data objects are required for input?


Four P’s: Product Scope

Scope is defined by answering the following questions:

Function and performance

What function does the software perform to transform input data into output?

Are any special performance characteristics to be addressed?

Software project scope must be unambiguous and understandable at the management and technical levels


Four P’s: Product Problem Decomposition

Sometimes called partitioning or problem elaboration

Once scope is defined …

It is decomposed into constituent functions

It is decomposed into user-visible data objects


It is decomposed into a set of problem classes

Decomposition process continues until all functions or problem classes have been defined


Four P’s: Process

Once a process framework has been established

Consider project characteristics

Determine the degree of rigor required

Define a

task set

for each software engineering activity

Software engineering tasks

Work products

Quality assurance points



Four P’s: ProcessMelding Product and Process


Four P’s: ProcessMelding Product and Process

In the figure shown in previous slide:

The job of the project manager (and other team members) are to:

estimate resource requirements for each matrix cell

start and end dates for the tasks associated with each cell

work products to be produced as a consequence of each task


Four P’s: ProcessProject Decomposition

Factors that you need to look at when choosing the process model:

The customers who have requested the product and the people who will do the work

The characteristics of the product itself

The project environment in which the software team works


Four P’s: ProcessProject Decomposition

Example of type of project and suitable approach:

A relatively small project that is similar to past efforts - linear sequential approach might be suitable

The deadline is so tight that full functionality cannot reasonably be delivered – incremental approach might be suitable


Four P’s: Project

The project must be planned by estimating effort and calendar time to accomplish work tasks

Some of the required activities:

defining work products

establishing quality checkpoints, and

identifying mechanisms to monitor and control work defined by the plan


Four P’s: Project

Projects get into trouble when …

Software people don’t understand their customer’s needs

The product scope is poorly defined

Changes are managed poorly

The chosen technology changes

Business needs change [or are ill-defined]


Four P’s: Project

Projects get into trouble when …

Deadlines are unrealistic

Users are resistant

Sponsorship is lost (or was never properly obtained)

The project team lacks people with appropriate skills

Managers (and practitioners) avoid best practices and lessons learned


Four P’s: ProjectCommon-Sense Approach to Projects

How does a manager act to avoid the problems?

Start on the right footing

This is accomplished by working hard (very hard) to understand the problem that is to be solved and then setting realistic objectives and expectations

Maintain momentum

The project manager must provide incentives to keep turnover of personnel to an absolute minimum, the team should emphasize quality in every task it performs, and senior management should do everything possible to stay out of the team’s way


Four P’s: ProjectCommon-Sense Approach to Projects

Track progress

For a software project, progress is tracked as work products (e.g., models, source code, sets of test cases) are produced and approved (using formal technical reviews) as part of a quality assurance activity

Make smart decisions

In essence, the decisions of the project manager and the software team should be to “keep it simple”

Conduct a postmortem analysis

Establish a consistent mechanism for extracting lessons learned for each project


Software Project Management

The W5HH Principle & Critical Practices


The W5HH Principle

A series of questions that lead to a definition of key project characteristics and the resultant project plan

Why is the system being developed?

What will be done?

When will it be accomplished?

Who is responsible?

Where are they organizationally located?

How will the job be done technically and managerially?

How much of each resource (e.g., people, software, tools, database) will be needed?

(Boehm, 1996)


Critical Practices

Example of practices that is important in software project management:

Metrics-based project management

Measures of specific attributes of the process, project, and product are used to compute software metrics.

These metrics can be analyzed to provide indicators that guide management and technical actions.

Empirical cost and schedule estimation

Estimate how much money, effort, resources (people, hardware, software), risks, and time that will take to build a system


Critical Practices

Defect tracking against quality target

Requires that quality targets be set and that tracked defects be analyzed against those targets.

Involve activities such as:

recording defects in a database

following a documented process to analyze, resolve, and remove them

tracking the process

measuring defects against quality targets; and

reporting metrics on the process to program management


Critical Practices

Example of quality measures with examples of target values, are as follows:

Number of defects (a measure of reliability): less than 1 defect per function point


Complexity (McCabe's): less than 10 for all modules

Operator errors: Less than 5 per day

Time to restore: less than 1 hour

Timing: less than 1 second response time

Fault tolerance: at least 80% of failures circumvented



Critical Practices

Earned value tracking

Quantitative technique for assessing progress as the software team progresses through the work tasks allocated to the project schedule

People aware management

Management of people that involve in project



The importance of Software Project Management

The four P’s of effective project management: People, Product, Process, Project

The W5HH Principle and critical practices for performance-based management


Copyright © 2013 M Mahmoud


About DocSlides
DocSlides allows users to easily upload and share presentations, PDF documents, and images.Share your documents with the world , watch,share and upload any time you want. How can you benefit from using DocSlides? DocSlides consists documents from individuals and organizations on topics ranging from technology and business to travel, health, and education. Find and search for what interests you, and learn from people and more. You can also download DocSlides to read or reference later.