SlideShare a Scribd company logo
1 of 104
SOFTWARE PROJECT
MANAGEMENT

 Presented By -

Mr.Ingole K.P.
Lecturer
Shri Yogeshwari Polytechnic, Ambajogai
WHAT IS PROJECT ?
 A project is ―a temporary endeavor
undertaken to create a unique product,
service, or result.‖*
 Operations is work done to sustain the
business.
 A project ends when its objectives have been
reached, or the project has been terminated.
 Projects can be large or small and take a

short or long time to complete.
Project Attributes
 A project:
 Has a unique purpose.
 Is temporary.
 Is developed using progressive elaboration.

 Requires resources, often from various areas.
 Should have a primary customer or sponsor.
 The project sponsor usually provides the direction
and funding for the project.
 Involves uncertainty.
PROJECT MANAGEMENT
 Every project is constrained in different ways
by its:
 Scope goals: What work will be done?
 Time goals: How long should it take to complete?
 Cost goals: What should it cost?

 It is the project manager’s duty to balance
these three often-competing goals.
The Management Spectrum
4 P’s


The People



PM-CMM
- Recruiting
- Selection
- Performance management

- Training
- Compensation
- career development
- Organization and work design
- team culture development



The Product



before project planned, product objectives and scope should be defined, alternate solutions should be
considered, technical and management constraint should be identified.



Developer and customer should meet to define product objectives and scope.



The Process (includes different taskset,milestones,work product, framework activities, umbrella activities)
The Project




conduct planned and controlled software project development to manage complexity



Why project fails :
- unrealistic deadlines established
- Changing customer requirement
- technical difficult
- Miscommunication among team members
- Failure in project management
People
Product
Process

Project
The People: The Stakeholders
 Five categories of stakeholders
 Senior managers – define business issues that often have







significant influence on the project
Project (technical) managers – plan, motivate, organize,
and control the practitioners who do the work
Practitioners – deliver the technical skills that are
necessary to engineer a product or application
Customers – specify the requirements for the software to
be engineered and other stakeholders who have a peripheral
interest in the outcome
End users – interact with the software once it is released
for production use
The People: Team Leaders


Competent practitioners often fail to make good team leaders; they
just don’t have the right people skills



Qualities to look for in a team leader
 Motivation – the ability to encourage technical people to

produce to their best ability

 Organization – 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 – the ability to encourage people to

create and feel creative even when they must work within
bounds established for a particular software product or
application



Team leaders should use a problem-solving management style
 Concentrate on understanding the problem to be solved
 Manage the flow of ideas
 Let everyone on the team know, by words and actions, that
quality counts and that it will not be compromised
 Characteristics of Project Manager :
 Problem solving – diagnose, structure a solution, apply

lessons learned, remain flexible

 Managerial identity – take charge of the project, have

confidence to assume control, have assurance to allow good
people to do their jobs

 Achievement – reward initiative, demonstrate that

controlled risk taking will not be punished

 Influence and team building – be able to ―read‖ people,

understand verbal and nonverbal signals, be able to react to
signals, remain under control in high-stress situations
The People: The Software Team
Seven project factors to consider when structuring a software
development team
 The difficulty of the problem to be solved
 The size of the resultant program(s) in source lines of code
 The time that the team will stay together

 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
People
Product
Process

Project
The Product
 The scope of the software development must be established and

bounded

 Context – How does the software to be built fit into a larger

system, product, or business context, and 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?

 Function and performance – What functions does the

software perform to transform input data into output? Are
there any special performance characteristics to be
addressed?

 Software project scope must be unambiguous and

understandable at both the managerial and technical levels
 Problem decomposition
 Also referred to as partitioning or problem elaboration
 Sits at the core of software requirements analysis

 Two major areas of problem decomposition
 The functionality that must be delivered
 The process that will be used to deliver it
People
Product
Process

Project
The Process
 Getting Started
 The project manager must decide which process model is

most appropriate based on

 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



Process decomposition then begins





Once a process model is selected, a preliminary project plan is
established based on the process framework activities

The result is a complete plan reflecting the work tasks required to
populate the framework activities

Project planning begins as a melding of the product and the process
based on the various framework activities
Process Decomposition
 Software team should have significant flexibility in
choosing the s/w process model that is best for the
project.
- A relatively small project that is similar to past
efforts might be best accomplished with the use of
linear sequential model.
- if very tight constraints to be imposed , RAD must be
chosen
- if the deadline is so tight that the functionality can
not be reasonably be delivered, an incremental
strategy might be best.
Process Decomposition (conti….)
 Once the process model has been chosen,

the process framework is adapted to it.
 Process decomposition commences when

the project manager asks, "How do we
accomplish this framework activity?‖
 E.g. A small ,relatively simple project might

require the following work tasks for
communication process :
- Develop list of clarification issues.
- Meet the customer to address the clarification
issues.
- Jointly develop a statement of scope
- Review the statement of scope with all concerned
- Modify the statement of scope as required.
These events might occur over less then 48 hours.
People
Product
Process

Project
The Project: Signs that it is in Jeopardy
 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 poorly defined)
 Deadlines are unrealistic
 Users are resistant
 Sponsorship is lost (or was never properly obtained)

The project team lacks people with appropriate skills
 Managers avoid best practices and lessons learned
The Project: A Common Sense
Approach


Start on the right foot
 Understand the problem; set realistic objectives and expectations;
form a good team



Maintain momentum
 Provide incentives to reduce turnover of people; emphasize quality in
every task; have senior management stay out of the team’s way



Track progress
 Track the completion of work products; collect software process and
project measures; assess progress against expected averages



Make smart decisions
 Keep it simple; use existing software before writing new code; follow
standard approaches; identify and avoid risks; always allocate more
time than you think you need to do complex or risky tasks



Conduct a post mortem analysis
 Track lessons learned for each project; compare planned and actual
schedules; collect and analyze software project metrics; get feedback
from teams members and customers; record findings in written form
People

Project

Product

Process
Software Project scheduling and
Tracking
 Project scheduling helps to establish a
roadmap for project manager.

 Project scheduling and tracking begins with
the identification of process
models, identification of software tasks and
activities, estimation of efforts and work.
 Software project scheduling is an activity that
distributes estimated efforts across the
duration.
Reasons why project deadline can
not met
•

An unrealistic deadline established by someone outside the software
engineering group and forced on managers and practitioners within the
group

•

Changing customer requirements that are not reflected in schedule
changes

•

An honest underestimate of the amount of effort and /or the number of
resources that will be required to do the job

•

Predictable and/or unpredictable risks that were not considered when the
project commenced
26
Continued….
•

Technical difficulties that could not have been
foreseen in advance

•

Human difficulties that could not have been foreseen in
advance

•

Miscommunication among project staff that results in delays

•

A failure by project management to recognize that the project
is falling behind schedule and a lack of action to correct the
problem
Basic Principles for Project
Scheduling
•

Compartmentalization
– The project must be compartmentalized into a number of manageable

activities, actions, and tasks; both the product and the process are
decomposed
•

Interdependency
– The interdependency of each compartmentalized activity, action, or task

must be determined
– Some tasks must occur in sequence while others can occur in parallel
– Some actions or activities cannot commence until the work product

produced by another is available
•

Time allocation
– Each task to be scheduled must be allocated some number of work units
– In addition, each task must be assigned a start date and a completion

date that are a function of the interdependencies
– Start and stop dates are also established based on whether work will be
conducted on a full-time (More on next slide)
or part-time basis

2
8
Basic Principles for Project
Scheduling (continued)
•

•

•

Effort validation
– Every project has a defined number of people on the team
– As time allocation occurs, the project manager must ensure
that no more than the allocated number of people have been
scheduled at any given time
Defined responsibilities
– Every task that is scheduled should be assigned to a specific
team member
Defined outcomes
– Every task that is scheduled should have a defined outcome
for software projects such as a work product or part of a
work product
– Work products are often combined in deliverables
29
•

Defined milestones
– Every task or group of tasks should be associated with a

project milestone
– A milestone is accomplished when one or more work
products has been reviewed for quality and has been
approved
Scheduling
 Information
 Estimates of effort
 A decomposition of the product function
 The selection of the appropriate process

model and task set
 Decomposition of task
 A task network

 Methods
 Program evaluation and review technique

(PERT)
 Critical path method (CPM)
Task Network
• Also called an activity network
• It is a graphic representation of the task

flow for a project

• It depicts task length, sequence,

concurrency, and dependency

• Points out inter-task dependencies to

help the manager ensure continuous
progress toward project completion
Task Network
Each activity has:
1.

Precursor

2.

Duration

3.

Due date

4.

End point (milestone or
deliverable)
Gantt Chart
 Gantt chart is a means of displaying

simple activities or events plotted against
time or dollars

 Most commonly used for exhibiting

program progress or for defining specific
work required to reach an objective

 Gantt charts may include listing of

activities, activity duration, scheduled
dates, and progress-to-date
PERT and CPM
 Determine the ―critical path‖
 Establish ―most likely time‖
 Calculate ―boundary times‖






earliest time
latest time
earliest finish
latest finish time
the total float
CPM
•

The critical path :
– A single path leading from start to finish in a task network
– It contains the sequence of tasks that must be completed on

schedule if the project as a whole is to be completed on
schedule
– It is the longest path through the network and identifies

essential steps that must be completed on time to avoid
delay in completing the project.
– It also determines the minimum duration of the project
Activity

Precursor

Duration

EST

EFT

LST

LFT

Slack

Start

-

0

0

0

0

0

0

A

Start

2

0

2

0

2

0

B

Start

3

0

3

4

7

4

C

A

5

2

7

2

7

0

D

A,B

4

3

7

7

11

4

E

D

2

7

9

11

13

4

F

B,C

6

7

13

7

13

0

FINISH

E,F

0

13

13

13

13

0

EST = earliest start time, EFT = earliest finish time.

LST = latest start time, LFT = latest finish time.
Slack = (LST - EST) or (LFT - EFT).
PERT
 A PERT chart is a project management

tool used to schedule, organize, and
coordinate tasks within a project
Program Evaluation and Review
Technique
JAN

FEB

TASK

EARLIEST
START

LATEST
START

1

8

15

22

29

5

1

1/1

2/5

*

*

*

*

*

*

2

1/1

1/8

*

*

3

1/9

1/22

*

*

*

*

4

1/9

1/22

*

*

*

*

5

1/23

2/1

*

*

*

6

1/23

2/1

-

-

F

7

1/23

2/17

-

-

8

2/2

2/17

* = critical activity, - = non-critical, F = float or

12

17

F

F

F

*

*

*

24

*

42
Steps to draw PERT and CPM graph

Define jobs or activities

Estimate time for each activity
ordering of activities
Drawing the project graph or diagram
Advantages
 Forces manager for better plan

 Shows interrelationship between tasks and helps

in identifying the critical path.

 Exposes parallelism and helps in allocating

resources

 Helps in proper scheduling of different activities
 Enables the manager to monitor and control a

project
Timeline Charts
 When creating as software project schedule,
the planner begins with a set of tasks.
 Efforts, duration and start date are input for
each task.

 As a consequences of this input the timeline
chart is generated.
 A timeline chart can be developed for the

entire project.
Ways to track project schedule
 Conducting periodic project status meeting in which

each team member reports progress and problem

 Evaluating the results of all reviews conducted

throughout s/w engg. Process

 Determining whether formal project milestones have

been accomplished by the schedule date

 Comparing actual start date and planned start date for

each project task listed in the resource table

 Using earned value analysis to assess progress

quantitatively.
Risk Analysis & Management
What is Risk?
 There is a difference between a Problem and Risk


Problem is some event which has already occurred but risk is
something that is unpredictable.

 Risk is an uncertainty.

 A risk is a potential problem – it might happen and it might not
 We don’t know whether a particular event will occur or no but if

it does has a negative impact on a project.
Definitions of Risks
 Risk is the probability of suffering loss.

 Risk provides an opportunity to develop

the project better.

Two characteristics of risk
 Uncertainty – the risk may or may not happen, that

is, there are no 100% risks (those, instead, are called
constraints)

 Loss – the risk becomes a reality and unwanted

consequences or losses occur
Risk Analysis & Management
 Risk analysis and management are a series of

steps that help a software team to understand
and manage uncertainty.
 The Risks we encounter in a project should be

resolved so that we are able to deliver the
desired project to the customer.
 The art of managing of the risks effectively so

that the WIN-WIN situation and friendly
relationship is established between the team
and the customer is called Risk Management.
Who does it?
 Everyone involved in the software process participate

in risk analysis and management:
 managers,
 software engineers, and
 customers—
Why is it important?
 ―Be prepared.‖ Software is a difficult undertaking.
 Lots of things can go wrong, and frankly, many often

do.
 It’s for this reason that being prepared—

understanding the risks and taking proactive
measures to avoid or manage them—is a key element
of good software project management.
What are the steps?
1) Identify possible risks; recognize what

can go wrong
2) Analyze each risk to estimate the
probability that it will occur and the
impact (i.e., damage) that it will do if it
does occur
3) Rank the risks by probability and impact
- Impact may be negligible, marginal, critical,
and catastrophic
4) Develop a plan to manage those risks having
high probability and high impact
What is the work product?
 A risk mitigation, monitoring, and management

(RMMM) plan

 Or a set of risk information produced.
REACTIVE VS. PROACTIVE RISK STRATEGIES
 "Don't worry, I'll think of something"
 More commonly, the software team does nothing about risks

until something goes wrong. Then, the team flies into action in
an attempt to correct the problem rapidly. This is often called a
fire fighting mode.
 Crisis management is the choice of management techniques
 A proactive strategy begins long before technical work is

initiated. Potential risks are identified, their probability and
impact are assessed, and they are ranked by importance. Then,
the software team establishes a plan for managing risk.
 Steps for risk management are followed
 Primary objective is to avoid risk
Risk Categorization
 Project risks
 They threaten the project plan
 If they become real, it is likely that the project schedule will

slip and that costs will increase

 Technical risks
 They threaten the quality and timeliness of the software to

be produced
 If they become real, implementation may become difficult or
impossible
 Business risks
 They threaten the viability of the software to be built
 If they become real, they jeopardize the project or the

product
 Sub-categories of Business risks
 Market risk – building an excellent product or system that

no one really wants
 Strategic risk – building a product that no longer fits into

the overall business strategy for the company
 Sales risk – building a product that the sales force doesn't

understand how to sell
 Management risk – losing the support of senior

management due to a change in focus or a change in
people
 Budget risk – losing budgetary or personnel commitment
 Known risks
 Those risks that can be uncovered after careful

evaluation of the project plan, the business and
technical environment in which the project is
being developed, and other reliable information
sources (e.g., unrealistic delivery date)

 Predictable risks
 Those risks that are extrapolated from past project

experience (e.g., past turnover)

 Unpredictable risks
 Those risks that can and do occur, but are

extremely difficult to identify in advance
The Principles of Risk Management
 1.Global Perspective: In this we look at the larger system

definitions, design and implementation. We look at the
opportunity and the impact the risk is going to have .
 2.Forward Looking View: Looking at the possible uncertainties

that might creep up. We also think for the possible solutions for
those risks that might occur in the future.
 3.Open Communication: This is to enable the free flow of

communication between in the customers and the team
members so that they have clarity about the risks.
 4.Integrated management: In this phase risk management is

made an integral part of project management.
 5.Continous process :In this phase the risks are tracked

continuously throughout the risk management paradigm.
 6.Encourage Teamwork: The talents, skills and knowledge of all

stakeholders should be pooled when risk management activities
are conducted
Risk identification
 Risk identification is a systematic attempt to specify threats to

the project plan (estimates, schedule, resource loading, etc.).
 Product size—risks associated with the overall size of the

software to be built or modified.
 Business impact—risks associated with constraints

imposed by management or the marketplace.
 Customer characteristics—risks associated with the

sophistication of the customer and the developer's ability to
communicate with the customer in a timely manner.
 Process definition—risks associated with the degree to

which the software process has been defined and is followed
by the development organization.
 Development environment—risks associated with the

availability and quality of the tools to be used to build the
product.
 Technology to be built—risks associated with the

complexity of the system to be built and the "newness" of the
technology that is packaged by the system.
 Staff size and experience—risks associated with the

overall technical and project experience of the software
engineers who will do the work.
Risk Components
 Performance risk—the degree of uncertainty that the

product will meet its requirements and be fit for its
intended use.

 Cost risk—the degree of uncertainty that the project

budget will be maintained.

 Support risk—the degree of uncertainty that the resultant

software will be easy to correct, adapt, and enhance.

 Schedule risk—the degree of uncertainty that the project

schedule will be maintained and that the product will be
delivered on time.
RISK PROJECTION
 The project planner, along with other managers and

technical staff, performs four risk projection activities:
 (1) establish a scale that reflects the perceived likelihood of a

risk
 (2) Describe the consequences of the risk



(3) estimate the impact of the risk on the project and the
product

 (4) note the overall accuracy of the risk projection so that

there will be no misunderstandings.
Risk and Management Concern
Building Risk Table
Assessing Risk Impact
The following steps are recommended to determine the
overall consequences of a risk:
1. Determine the average probability of occurrence

value for each risk component.
2. Using table 1 (slide 10) determine the impact for
each component based on the criteria shown.
3. Complete the risk table and analyze the results
The overall risk exposure, RE, is determined using the following
relationship:
RE = P x C
where P is the probability of occurrence for a risk, and C is
the the cost to the project should the risk occur.
Risk Assessment
 For assessment to be useful, a risk referent

level (level of performance degradation) must
be defined.
 In the context of software risk analysis, a risk
referent level has a single point, called the
referent point or break point, at which the
decision to proceed with the project or
terminate it (problems are just too great) are
equally weighted.
RISK MITIGATION, MONITORING, AND
MANAGEMENT (RMMM)
 An effective strategy must consider three

issues:
 risk avoidance
 risk monitoring
 risk management and contingency planning
 E.g.


Computer Crash



Late delivery



Changes in requirements



Lack of Development Experience
 To mitigate the risk ,possible steps are given
below :


Organize project teams so that information about each
development activity is widely dispersed.



Conduct peer reviews of all work



Assign a backup staff for every assumption

 Define documentation standards and establish

mechanism to ensure that documents are developed in
timely manner

 Meet the current staff to determine causes for turnover
 Once the project commences ,assume

turnover will occur
 Mitigate those causes that are under our

control before the project starts.
Risk Monitoring and Control
 Risk monitoring and control continues on

through a project until the project is
complete. Risk monitoring and control is
the process of identifying and analyzing

new risk, keeping track of these new risks
and forming contingency plans incase they
arise.
Risk Monitoring and Control
Risk monitoring and control is required in
order to:
 Ensure the execution of the risk plans
 evaluate their effectiveness in reducing

risk.
 Keep track of the identified risks
 In case of high staff turnover, the following

factors can be monitored:

1. General attitude of team members based
on project pressures
2.The degree to which the team has jelled
(begin to work well)
3. Interpersonal relationships among team
members
4. Potential problems with compensation and
benefits
Change Management
 Also called software configuration
management (SCM)
 It is an umbrella activity that is applied

throughout the software process

 It's goal is to maximize productivity by

minimizing mistakes caused by confusion
when coordinating software development

 SCM identifies, organizes, and controls

modifications to the software being built
by a software development team
 SCM activities are formulated to

identify change, control change, ensure
that change is being properly
implemented, and report changes to
others who may have an interest
 SCM is initiated when the project

begins and terminates when the
software is taken out of operation
Software Configuration
 The Output from the software process makes up the

software configuration
 Computer programs (both source code files and
executable files)
 Work products that describe the computer programs
(documents targeted at both technical practitioners
and users)
 Data (contained within the programs themselves or in
external files)

 The major danger to a software configuration is change
 First Law of System Engineering: "No matter where

you are in the system life cycle, the system will
change, and the desire to change it will persist
throughout the life cycle"
Origins of Software Change


Errors

detected in the software need to be corrected

 New business or market conditions dictate changes in product

requirements or business rules
 New customer needs demand modifications of data produced

by information systems, functionality delivered by products, or
services delivered by a computer-based system
 Reorganization or business growth/downsizing causes changes

in project priorities or software engineering team structure
 Budgetary or scheduling constraints cause a redefinition of the

system or product
SCM Scenario
A typical CM operational scenario involves :
 Project manager -> an auditing mechanism for

ensuring the product is developed within certain
time frame.

 SCM manager -> a controlling, tracking, and

policy making mechanism

 Software engineer -> a changing, building, and

access control mechanism

 Customer -> a quality assurance and product

identification mechanism
Elements of CM
 Component Elements (set of tools coupled within a
file management system e.g. database that enable access to and
software configuration items)

 Process Elements ( a collection of procedures and
tasks that define an effective approach to change managements)

 Construction Elements ( a set of tools that automate
the construction of software)

 Human Elements ( software team uses set of tools and
process features)
 Elements are not mutually exclusive
Have you established a baseline yet?
Baseline
 ―A specification or product that has

been formally reviewed and agreed to
by responsible management, that
thereafter serves as the basis for further
development, and can be changed only
through formal change control
procedures.‖
 As systems are developed, a series of

baselines is developed, usually after a
review
 Developmental baseline (RAD, SDD, Integration

Test, ...)
 Goal: Coordinate engineering activities.
 Functional baseline (first prototype, alpha
release, beta release)
 Goal: Get first customer experiences with
functional system.
 Product baseline (product)
 Goal: Coordinate sales and customer support.
Configuration items
―An aggregation of hardware, software, or both, that is

designated for configuration management and treated
as a single entity in the configuration management
process.‖

Software configuration items are not only program code
segments but all type of documents that are
produced during development, e.g.:






all types of code files
drivers for tests
analysis or design documents
user or developer manuals
system configurations (e.g. version of compiler used)
The SCM Repositories
 Problems with paper-based repositories (i.e., file cabinet

containing folders)

 Finding a configuration item when it was needed was often

difficult
 Determining which items were changed, when and by whom
was often challenging
 Constructing a new version of an existing program was time
consuming and error prone
 Describing detailed or complex relationships between
configuration items was virtually impossible
 Today's automated SCM repository
 It is a set of mechanisms and data structures that allow a

software team to manage change in an effective manner
 It acts as the center for both accumulation and storage of
software engineering information
 Software engineers use tools integrated with the repository
to interact with it
Automated SCM Repository
Requirements
tracing

Versioning
SCM Repository

Dependency
tracking

Change
management

Functions
Data integrity
Information sharing
Tool integration
Data integration
Methodology enforcement
Document standardization

Configuration
management

Audit
trails
Functions of an SCM Repository
 Data integrity

 Validates entries, ensures consistency, cascades








modifications
Information sharing
 Shares information among developers and tools,
manages and controls multi-user access
Tool integration
 Establishes a data model that can be accessed by many
software engineering tools, controls access to the data
Data integration
 Allows various SCM tasks to be performed on one or
more CSCIs
Methodology enforcement
 Defines an entity-relationship model for the repository
that implies a specific process model for software
engineering
Document standardization
 Defines objects in the repository to guarantee a
standard approach for creation of software engineering
documents
Toolset Used on a Repository


Versioning
 Save and retrieve all repository objects based on version number



Dependency tracking and change management
 Track and respond to the changes in the state and relationship of all
objects in the repository



Requirements tracing
 (Forward tracing) Track the design and construction components
and deliverables that result from a specific requirements
specification
 (Backward tracing) Identify which requirement generated any
given work product



Configuration management
 Track a series of configurations representing specific project
milestones or production releases



Audit trails
 Establish information about when, why, and by whom changes are
made in the repository
Primary Objectives of the
SCM Process
 Identify all items that collectively define






the software configuration
Manage changes to one or more of these
items
Facilitate construction of different
versions of an application
Ensure the software quality is maintained
as the configuration evolves over time
Provide information on changes that have
occurred
SCM Questions
 How does a software team identify the discrete elements of a

software configuration?
 How does an organization manage the many existing versions

of a program (and its documentation) in a manner that will
enable change to be accommodated efficiently?
 How does an organization control changes before and after

software is released to a customer?
 Who has responsibility for approving and ranking changes?
 How can we ensure that changes have been made properly?
 What mechanism is used to appraise others of changes that are

made?
Clean room Software Engineering
 Clean room combines formal methods of

requirements and design with statistical
usage testing to produce software with
nearly none or no defects.
What is Clean room Software
Engineering?
 Set of principles and practices for software

management, specification, design, and
testing.
 Improve quality
 Increase productivity
 Reduce cost

 Emphasis on defect prevention rather

than defect removal.
Clean room Software Engineering
 Clean room combines formal methods of

requirements and design with statistical
usage testing to produce software with
nearly none or no defects.
Clean room Strategy
 Increment planning.
 The project plan is built around the incremental

strategy.

 Requirements gathering.
 Customer requirements are elicited and refined for

each increment using traditional methods.

 Box structure specification.
 Box structures isolate and separate the definition

of behavior, data, and procedures at each level of
refinement.
 Formal design.
 Specifications (black-boxes) are iteratively refined

to become architectural designs (state-boxes) and
component-level designs (clear boxes).

 Correctness verification.
 Correctness questions are asked and answered,

formal mathematical verification is used as
required.
 Code generation, inspection, verification.
 Box structures are translated into program

language; inspections are used to ensure
conformance of code and boxes, as well as
syntactic correctness of code; followed by
correctness verification of the code.

 Statistical test planning.
 A suite of test cases is created to match the

probability distribution of the projected product
usage pattern.
 Statistical use testing.
 A statistical sample of all possible test cases is used

rather than exhaustive testing.

 Certification.
 Once verification, inspection, and usage testing are

complete and all defects removed, the increment is
certified as ready for integration.
Benefits
 Delivers a high quality product that is

verified as being correct.
 Errors are found early on in the project
 Due to majority of project time spent in the

design phase.

 Leads to lower overall costs and reduces

time spent finding errors.
 Reduces the overall project time
Project management chapter_04 for MSBTE

More Related Content

What's hot

IT Project Management - Aligning PMBOK Processes and SDLC
IT Project Management  - Aligning PMBOK Processes and SDLCIT Project Management  - Aligning PMBOK Processes and SDLC
IT Project Management - Aligning PMBOK Processes and SDLCCrysanthus Raharjo, PMP
 
1. project Management
1. project Management 1. project Management
1. project Management chhassan7
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software EngineeringFáber D. Giraldo
 
Project Controls Expo, 18th Nov 2014 - "Effective Project Portfolio Managemen...
Project Controls Expo, 18th Nov 2014 - "Effective Project Portfolio Managemen...Project Controls Expo, 18th Nov 2014 - "Effective Project Portfolio Managemen...
Project Controls Expo, 18th Nov 2014 - "Effective Project Portfolio Managemen...Project Controls Expo
 
Top 10 Microsoft Project Problems
Top 10 Microsoft Project ProblemsTop 10 Microsoft Project Problems
Top 10 Microsoft Project ProblemsMark Corker
 
Introduction of software project management
Introduction of software project managementIntroduction of software project management
Introduction of software project managementREHMAT ULLAH
 
Project Management Complete Concept
Project Management Complete Concept Project Management Complete Concept
Project Management Complete Concept MuhammadTalha436
 
Specialized estimation tech
Specialized estimation techSpecialized estimation tech
Specialized estimation techsavitamhaske
 
Project Management Concepts (from PMBOK 5th Ed)
Project Management Concepts (from PMBOK 5th Ed)Project Management Concepts (from PMBOK 5th Ed)
Project Management Concepts (from PMBOK 5th Ed)Jeremy Jay Lim
 
Software engineering
Software engineeringSoftware engineering
Software engineeringfaisalwajid
 
Project Management ORION Systems
Project Management ORION SystemsProject Management ORION Systems
Project Management ORION Systemsreeza fazily
 
Project Management Framework
Project Management FrameworkProject Management Framework
Project Management FrameworkRahul Sudame
 
Agile project management framework
Agile project management frameworkAgile project management framework
Agile project management frameworkstefanhenry
 
Agile Project Management for IT Projects
Agile Project Management for IT ProjectsAgile Project Management for IT Projects
Agile Project Management for IT Projectsrachna_nainani
 

What's hot (20)

IT Project Management - Aligning PMBOK Processes and SDLC
IT Project Management  - Aligning PMBOK Processes and SDLCIT Project Management  - Aligning PMBOK Processes and SDLC
IT Project Management - Aligning PMBOK Processes and SDLC
 
1. project Management
1. project Management 1. project Management
1. project Management
 
Spm l01
Spm l01Spm l01
Spm l01
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
 
Project Controls Expo, 18th Nov 2014 - "Effective Project Portfolio Managemen...
Project Controls Expo, 18th Nov 2014 - "Effective Project Portfolio Managemen...Project Controls Expo, 18th Nov 2014 - "Effective Project Portfolio Managemen...
Project Controls Expo, 18th Nov 2014 - "Effective Project Portfolio Managemen...
 
Top 10 Microsoft Project Problems
Top 10 Microsoft Project ProblemsTop 10 Microsoft Project Problems
Top 10 Microsoft Project Problems
 
RMMM
RMMMRMMM
RMMM
 
Introduction of software project management
Introduction of software project managementIntroduction of software project management
Introduction of software project management
 
Project Management Complete Concept
Project Management Complete Concept Project Management Complete Concept
Project Management Complete Concept
 
Specialized estimation tech
Specialized estimation techSpecialized estimation tech
Specialized estimation tech
 
Slides chapters 21-23
Slides chapters 21-23Slides chapters 21-23
Slides chapters 21-23
 
Project Management Concepts (from PMBOK 5th Ed)
Project Management Concepts (from PMBOK 5th Ed)Project Management Concepts (from PMBOK 5th Ed)
Project Management Concepts (from PMBOK 5th Ed)
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Project Management ORION Systems
Project Management ORION SystemsProject Management ORION Systems
Project Management ORION Systems
 
Project Management Framework
Project Management FrameworkProject Management Framework
Project Management Framework
 
Agile project management framework
Agile project management frameworkAgile project management framework
Agile project management framework
 
SE chapters 21-23
SE chapters 21-23SE chapters 21-23
SE chapters 21-23
 
Agile Project Management for IT Projects
Agile Project Management for IT ProjectsAgile Project Management for IT Projects
Agile Project Management for IT Projects
 
Project Management Framework
Project Management FrameworkProject Management Framework
Project Management Framework
 
Pmp basics you need to know
Pmp basics you need to knowPmp basics you need to know
Pmp basics you need to know
 

Viewers also liked

Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1Saqib Raza
 
Pressman ch-21-project-management-concepts
Pressman ch-21-project-management-conceptsPressman ch-21-project-management-concepts
Pressman ch-21-project-management-conceptsseethaveera
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metricsIndu Sharma Bhardwaj
 
3P's: People, Process, Product
3P's: People, Process, Product3P's: People, Process, Product
3P's: People, Process, ProductArya Setiadharma
 
Introduction to project management
Introduction to project managementIntroduction to project management
Introduction to project managementBarun_agnihotri
 
Software Project Management ppt
Software Project Management pptSoftware Project Management ppt
Software Project Management pptAndreea Usatenco
 

Viewers also liked (6)

Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1
 
Pressman ch-21-project-management-concepts
Pressman ch-21-project-management-conceptsPressman ch-21-project-management-concepts
Pressman ch-21-project-management-concepts
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
3P's: People, Process, Product
3P's: People, Process, Product3P's: People, Process, Product
3P's: People, Process, Product
 
Introduction to project management
Introduction to project managementIntroduction to project management
Introduction to project management
 
Software Project Management ppt
Software Project Management pptSoftware Project Management ppt
Software Project Management ppt
 

Similar to Project management chapter_04 for MSBTE

UNIT V - 1 SPM.pptx
UNIT V - 1 SPM.pptxUNIT V - 1 SPM.pptx
UNIT V - 1 SPM.pptxDevnath13
 
Software Engineering (Project Management )
Software Engineering (Project  Management )Software Engineering (Project  Management )
Software Engineering (Project Management )ShudipPal
 
Project planning , Productivity metrics,Cost estimation - COCOMO & COCOMO II,...
Project planning , Productivity metrics,Cost estimation - COCOMO & COCOMO II,...Project planning , Productivity metrics,Cost estimation - COCOMO & COCOMO II,...
Project planning , Productivity metrics,Cost estimation - COCOMO & COCOMO II,...nimmik4u
 
Chapter 1_Introduction sunorganisedASE_finalised.pptx
Chapter 1_Introduction sunorganisedASE_finalised.pptxChapter 1_Introduction sunorganisedASE_finalised.pptx
Chapter 1_Introduction sunorganisedASE_finalised.pptxBule Hora University
 
Aula 1 - Project Management Concepts by Roger Pressman
Aula 1 - Project Management Concepts by Roger PressmanAula 1 - Project Management Concepts by Roger Pressman
Aula 1 - Project Management Concepts by Roger PressmanRogerio P C do Nascimento
 
Project management concepts
Project management conceptsProject management concepts
Project management conceptsNayyabMirTahir
 
Software Project Requirement and Team Requirement Model
Software Project Requirement and  Team Requirement  Model  Software Project Requirement and  Team Requirement  Model
Software Project Requirement and Team Requirement Model SRMGPC Lucknow
 
Software engg. pressman_ch-21
Software engg. pressman_ch-21Software engg. pressman_ch-21
Software engg. pressman_ch-21Dhairya Joshi
 
PM-1 Overview.ppt
PM-1 Overview.pptPM-1 Overview.ppt
PM-1 Overview.pptnatisil1
 
Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2soloeng
 
SOFTWARE ENGINEERING
SOFTWARE ENGINEERING  SOFTWARE ENGINEERING
SOFTWARE ENGINEERING Gaditek
 
Software project management
Software project managementSoftware project management
Software project managementSutha Vincent
 
Chapter1 Advanced Software Engineering overview
Chapter1 Advanced Software Engineering overviewChapter1 Advanced Software Engineering overview
Chapter1 Advanced Software Engineering overviewBule Hora University
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 

Similar to Project management chapter_04 for MSBTE (20)

UNIT V - 1 SPM.pptx
UNIT V - 1 SPM.pptxUNIT V - 1 SPM.pptx
UNIT V - 1 SPM.pptx
 
Software Engineering (Project Management )
Software Engineering (Project  Management )Software Engineering (Project  Management )
Software Engineering (Project Management )
 
An Introduction to Project management(project management tutorials)
An Introduction to Project management(project management tutorials)An Introduction to Project management(project management tutorials)
An Introduction to Project management(project management tutorials)
 
Project planning , Productivity metrics,Cost estimation - COCOMO & COCOMO II,...
Project planning , Productivity metrics,Cost estimation - COCOMO & COCOMO II,...Project planning , Productivity metrics,Cost estimation - COCOMO & COCOMO II,...
Project planning , Productivity metrics,Cost estimation - COCOMO & COCOMO II,...
 
Chapter 1_Introduction sunorganisedASE_finalised.pptx
Chapter 1_Introduction sunorganisedASE_finalised.pptxChapter 1_Introduction sunorganisedASE_finalised.pptx
Chapter 1_Introduction sunorganisedASE_finalised.pptx
 
Aula 1 - Project Management Concepts by Roger Pressman
Aula 1 - Project Management Concepts by Roger PressmanAula 1 - Project Management Concepts by Roger Pressman
Aula 1 - Project Management Concepts by Roger Pressman
 
Project management concepts
Project management conceptsProject management concepts
Project management concepts
 
Bai giang-spm-16jan14
Bai giang-spm-16jan14Bai giang-spm-16jan14
Bai giang-spm-16jan14
 
Software Project Requirement and Team Requirement Model
Software Project Requirement and  Team Requirement  Model  Software Project Requirement and  Team Requirement  Model
Software Project Requirement and Team Requirement Model
 
Unit 1 spm
Unit 1  spmUnit 1  spm
Unit 1 spm
 
Unit 1 spm
Unit 1  spmUnit 1  spm
Unit 1 spm
 
Software engg. pressman_ch-21
Software engg. pressman_ch-21Software engg. pressman_ch-21
Software engg. pressman_ch-21
 
Project managemen concept
Project managemen conceptProject managemen concept
Project managemen concept
 
PM-1 Overview.ppt
PM-1 Overview.pptPM-1 Overview.ppt
PM-1 Overview.ppt
 
Lecture2 2
Lecture2 2Lecture2 2
Lecture2 2
 
SOFTWARE ENGINEERING
SOFTWARE ENGINEERING  SOFTWARE ENGINEERING
SOFTWARE ENGINEERING
 
Spm unit 1
Spm unit 1Spm unit 1
Spm unit 1
 
Software project management
Software project managementSoftware project management
Software project management
 
Chapter1 Advanced Software Engineering overview
Chapter1 Advanced Software Engineering overviewChapter1 Advanced Software Engineering overview
Chapter1 Advanced Software Engineering overview
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 

Recently uploaded

Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 

Recently uploaded (20)

Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 

Project management chapter_04 for MSBTE

  • 1. SOFTWARE PROJECT MANAGEMENT  Presented By - Mr.Ingole K.P. Lecturer Shri Yogeshwari Polytechnic, Ambajogai
  • 3.  A project is ―a temporary endeavor undertaken to create a unique product, service, or result.‖*  Operations is work done to sustain the business.  A project ends when its objectives have been reached, or the project has been terminated.  Projects can be large or small and take a short or long time to complete.
  • 4. Project Attributes  A project:  Has a unique purpose.  Is temporary.  Is developed using progressive elaboration.  Requires resources, often from various areas.  Should have a primary customer or sponsor.  The project sponsor usually provides the direction and funding for the project.  Involves uncertainty.
  • 5. PROJECT MANAGEMENT  Every project is constrained in different ways by its:  Scope goals: What work will be done?  Time goals: How long should it take to complete?  Cost goals: What should it cost?  It is the project manager’s duty to balance these three often-competing goals.
  • 6.
  • 7. The Management Spectrum 4 P’s  The People  PM-CMM - Recruiting - Selection - Performance management - Training - Compensation - career development - Organization and work design - team culture development  The Product  before project planned, product objectives and scope should be defined, alternate solutions should be considered, technical and management constraint should be identified.  Developer and customer should meet to define product objectives and scope.  The Process (includes different taskset,milestones,work product, framework activities, umbrella activities) The Project   conduct planned and controlled software project development to manage complexity  Why project fails : - unrealistic deadlines established - Changing customer requirement - technical difficult - Miscommunication among team members - Failure in project management
  • 9. The People: The Stakeholders  Five categories of stakeholders  Senior managers – define business issues that often have     significant influence on the project Project (technical) managers – plan, motivate, organize, and control the practitioners who do the work Practitioners – deliver the technical skills that are necessary to engineer a product or application Customers – specify the requirements for the software to be engineered and other stakeholders who have a peripheral interest in the outcome End users – interact with the software once it is released for production use
  • 10. The People: Team Leaders  Competent practitioners often fail to make good team leaders; they just don’t have the right people skills  Qualities to look for in a team leader  Motivation – the ability to encourage technical people to produce to their best ability  Organization – 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 – the ability to encourage people to create and feel creative even when they must work within bounds established for a particular software product or application  Team leaders should use a problem-solving management style  Concentrate on understanding the problem to be solved  Manage the flow of ideas  Let everyone on the team know, by words and actions, that quality counts and that it will not be compromised
  • 11.  Characteristics of Project Manager :  Problem solving – diagnose, structure a solution, apply lessons learned, remain flexible  Managerial identity – take charge of the project, have confidence to assume control, have assurance to allow good people to do their jobs  Achievement – reward initiative, demonstrate that controlled risk taking will not be punished  Influence and team building – be able to ―read‖ people, understand verbal and nonverbal signals, be able to react to signals, remain under control in high-stress situations
  • 12. The People: The Software Team Seven project factors to consider when structuring a software development team  The difficulty of the problem to be solved  The size of the resultant program(s) in source lines of code  The time that the team will stay together  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
  • 14. The Product  The scope of the software development must be established and bounded  Context – How does the software to be built fit into a larger system, product, or business context, and 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?  Function and performance – What functions does the software perform to transform input data into output? Are there any special performance characteristics to be addressed?  Software project scope must be unambiguous and understandable at both the managerial and technical levels
  • 15.  Problem decomposition  Also referred to as partitioning or problem elaboration  Sits at the core of software requirements analysis  Two major areas of problem decomposition  The functionality that must be delivered  The process that will be used to deliver it
  • 17. The Process  Getting Started  The project manager must decide which process model is most appropriate based on  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   Process decomposition then begins   Once a process model is selected, a preliminary project plan is established based on the process framework activities The result is a complete plan reflecting the work tasks required to populate the framework activities Project planning begins as a melding of the product and the process based on the various framework activities
  • 18. Process Decomposition  Software team should have significant flexibility in choosing the s/w process model that is best for the project. - A relatively small project that is similar to past efforts might be best accomplished with the use of linear sequential model. - if very tight constraints to be imposed , RAD must be chosen - if the deadline is so tight that the functionality can not be reasonably be delivered, an incremental strategy might be best.
  • 19. Process Decomposition (conti….)  Once the process model has been chosen, the process framework is adapted to it.  Process decomposition commences when the project manager asks, "How do we accomplish this framework activity?‖
  • 20.  E.g. A small ,relatively simple project might require the following work tasks for communication process : - Develop list of clarification issues. - Meet the customer to address the clarification issues. - Jointly develop a statement of scope - Review the statement of scope with all concerned - Modify the statement of scope as required. These events might occur over less then 48 hours.
  • 22. The Project: Signs that it is in Jeopardy  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 poorly defined)  Deadlines are unrealistic  Users are resistant  Sponsorship is lost (or was never properly obtained) The project team lacks people with appropriate skills  Managers avoid best practices and lessons learned
  • 23. The Project: A Common Sense Approach  Start on the right foot  Understand the problem; set realistic objectives and expectations; form a good team  Maintain momentum  Provide incentives to reduce turnover of people; emphasize quality in every task; have senior management stay out of the team’s way  Track progress  Track the completion of work products; collect software process and project measures; assess progress against expected averages  Make smart decisions  Keep it simple; use existing software before writing new code; follow standard approaches; identify and avoid risks; always allocate more time than you think you need to do complex or risky tasks  Conduct a post mortem analysis  Track lessons learned for each project; compare planned and actual schedules; collect and analyze software project metrics; get feedback from teams members and customers; record findings in written form
  • 25. Software Project scheduling and Tracking  Project scheduling helps to establish a roadmap for project manager.  Project scheduling and tracking begins with the identification of process models, identification of software tasks and activities, estimation of efforts and work.  Software project scheduling is an activity that distributes estimated efforts across the duration.
  • 26. Reasons why project deadline can not met • An unrealistic deadline established by someone outside the software engineering group and forced on managers and practitioners within the group • Changing customer requirements that are not reflected in schedule changes • An honest underestimate of the amount of effort and /or the number of resources that will be required to do the job • Predictable and/or unpredictable risks that were not considered when the project commenced 26
  • 27. Continued…. • Technical difficulties that could not have been foreseen in advance • Human difficulties that could not have been foreseen in advance • Miscommunication among project staff that results in delays • A failure by project management to recognize that the project is falling behind schedule and a lack of action to correct the problem
  • 28. Basic Principles for Project Scheduling • Compartmentalization – The project must be compartmentalized into a number of manageable activities, actions, and tasks; both the product and the process are decomposed • Interdependency – The interdependency of each compartmentalized activity, action, or task must be determined – Some tasks must occur in sequence while others can occur in parallel – Some actions or activities cannot commence until the work product produced by another is available • Time allocation – Each task to be scheduled must be allocated some number of work units – In addition, each task must be assigned a start date and a completion date that are a function of the interdependencies – Start and stop dates are also established based on whether work will be conducted on a full-time (More on next slide) or part-time basis 2 8
  • 29. Basic Principles for Project Scheduling (continued) • • • Effort validation – Every project has a defined number of people on the team – As time allocation occurs, the project manager must ensure that no more than the allocated number of people have been scheduled at any given time Defined responsibilities – Every task that is scheduled should be assigned to a specific team member Defined outcomes – Every task that is scheduled should have a defined outcome for software projects such as a work product or part of a work product – Work products are often combined in deliverables 29
  • 30. • Defined milestones – Every task or group of tasks should be associated with a project milestone – A milestone is accomplished when one or more work products has been reviewed for quality and has been approved
  • 31. Scheduling  Information  Estimates of effort  A decomposition of the product function  The selection of the appropriate process model and task set  Decomposition of task  A task network  Methods  Program evaluation and review technique (PERT)  Critical path method (CPM)
  • 32.
  • 33. Task Network • Also called an activity network • It is a graphic representation of the task flow for a project • It depicts task length, sequence, concurrency, and dependency • Points out inter-task dependencies to help the manager ensure continuous progress toward project completion
  • 34. Task Network Each activity has: 1. Precursor 2. Duration 3. Due date 4. End point (milestone or deliverable)
  • 35. Gantt Chart  Gantt chart is a means of displaying simple activities or events plotted against time or dollars  Most commonly used for exhibiting program progress or for defining specific work required to reach an objective  Gantt charts may include listing of activities, activity duration, scheduled dates, and progress-to-date
  • 36.
  • 37. PERT and CPM  Determine the ―critical path‖  Establish ―most likely time‖  Calculate ―boundary times‖      earliest time latest time earliest finish latest finish time the total float
  • 38. CPM • The critical path : – A single path leading from start to finish in a task network – It contains the sequence of tasks that must be completed on schedule if the project as a whole is to be completed on schedule – It is the longest path through the network and identifies essential steps that must be completed on time to avoid delay in completing the project. – It also determines the minimum duration of the project
  • 39.
  • 41. PERT  A PERT chart is a project management tool used to schedule, organize, and coordinate tasks within a project
  • 42. Program Evaluation and Review Technique JAN FEB TASK EARLIEST START LATEST START 1 8 15 22 29 5 1 1/1 2/5 * * * * * * 2 1/1 1/8 * * 3 1/9 1/22 * * * * 4 1/9 1/22 * * * * 5 1/23 2/1 * * * 6 1/23 2/1 - - F 7 1/23 2/17 - - 8 2/2 2/17 * = critical activity, - = non-critical, F = float or 12 17 F F F * * * 24 * 42
  • 43. Steps to draw PERT and CPM graph Define jobs or activities Estimate time for each activity ordering of activities Drawing the project graph or diagram
  • 44. Advantages  Forces manager for better plan  Shows interrelationship between tasks and helps in identifying the critical path.  Exposes parallelism and helps in allocating resources  Helps in proper scheduling of different activities  Enables the manager to monitor and control a project
  • 45. Timeline Charts  When creating as software project schedule, the planner begins with a set of tasks.  Efforts, duration and start date are input for each task.  As a consequences of this input the timeline chart is generated.  A timeline chart can be developed for the entire project.
  • 46.
  • 47. Ways to track project schedule  Conducting periodic project status meeting in which each team member reports progress and problem  Evaluating the results of all reviews conducted throughout s/w engg. Process  Determining whether formal project milestones have been accomplished by the schedule date  Comparing actual start date and planned start date for each project task listed in the resource table  Using earned value analysis to assess progress quantitatively.
  • 48. Risk Analysis & Management
  • 49. What is Risk?  There is a difference between a Problem and Risk  Problem is some event which has already occurred but risk is something that is unpredictable.  Risk is an uncertainty.  A risk is a potential problem – it might happen and it might not  We don’t know whether a particular event will occur or no but if it does has a negative impact on a project.
  • 50. Definitions of Risks  Risk is the probability of suffering loss.  Risk provides an opportunity to develop the project better. Two characteristics of risk  Uncertainty – the risk may or may not happen, that is, there are no 100% risks (those, instead, are called constraints)  Loss – the risk becomes a reality and unwanted consequences or losses occur
  • 51. Risk Analysis & Management  Risk analysis and management are a series of steps that help a software team to understand and manage uncertainty.  The Risks we encounter in a project should be resolved so that we are able to deliver the desired project to the customer.  The art of managing of the risks effectively so that the WIN-WIN situation and friendly relationship is established between the team and the customer is called Risk Management.
  • 52. Who does it?  Everyone involved in the software process participate in risk analysis and management:  managers,  software engineers, and  customers—
  • 53. Why is it important?  ―Be prepared.‖ Software is a difficult undertaking.  Lots of things can go wrong, and frankly, many often do.  It’s for this reason that being prepared— understanding the risks and taking proactive measures to avoid or manage them—is a key element of good software project management.
  • 54. What are the steps? 1) Identify possible risks; recognize what can go wrong 2) Analyze each risk to estimate the probability that it will occur and the impact (i.e., damage) that it will do if it does occur 3) Rank the risks by probability and impact - Impact may be negligible, marginal, critical, and catastrophic 4) Develop a plan to manage those risks having high probability and high impact
  • 55. What is the work product?  A risk mitigation, monitoring, and management (RMMM) plan  Or a set of risk information produced.
  • 56. REACTIVE VS. PROACTIVE RISK STRATEGIES  "Don't worry, I'll think of something"  More commonly, the software team does nothing about risks until something goes wrong. Then, the team flies into action in an attempt to correct the problem rapidly. This is often called a fire fighting mode.  Crisis management is the choice of management techniques  A proactive strategy begins long before technical work is initiated. Potential risks are identified, their probability and impact are assessed, and they are ranked by importance. Then, the software team establishes a plan for managing risk.  Steps for risk management are followed  Primary objective is to avoid risk
  • 57. Risk Categorization  Project risks  They threaten the project plan  If they become real, it is likely that the project schedule will slip and that costs will increase  Technical risks  They threaten the quality and timeliness of the software to be produced  If they become real, implementation may become difficult or impossible  Business risks  They threaten the viability of the software to be built  If they become real, they jeopardize the project or the product
  • 58.  Sub-categories of Business risks  Market risk – building an excellent product or system that no one really wants  Strategic risk – building a product that no longer fits into the overall business strategy for the company  Sales risk – building a product that the sales force doesn't understand how to sell  Management risk – losing the support of senior management due to a change in focus or a change in people  Budget risk – losing budgetary or personnel commitment
  • 59.  Known risks  Those risks that can be uncovered after careful evaluation of the project plan, the business and technical environment in which the project is being developed, and other reliable information sources (e.g., unrealistic delivery date)  Predictable risks  Those risks that are extrapolated from past project experience (e.g., past turnover)  Unpredictable risks  Those risks that can and do occur, but are extremely difficult to identify in advance
  • 60. The Principles of Risk Management  1.Global Perspective: In this we look at the larger system definitions, design and implementation. We look at the opportunity and the impact the risk is going to have .  2.Forward Looking View: Looking at the possible uncertainties that might creep up. We also think for the possible solutions for those risks that might occur in the future.  3.Open Communication: This is to enable the free flow of communication between in the customers and the team members so that they have clarity about the risks.
  • 61.  4.Integrated management: In this phase risk management is made an integral part of project management.  5.Continous process :In this phase the risks are tracked continuously throughout the risk management paradigm.  6.Encourage Teamwork: The talents, skills and knowledge of all stakeholders should be pooled when risk management activities are conducted
  • 62. Risk identification  Risk identification is a systematic attempt to specify threats to the project plan (estimates, schedule, resource loading, etc.).  Product size—risks associated with the overall size of the software to be built or modified.  Business impact—risks associated with constraints imposed by management or the marketplace.  Customer characteristics—risks associated with the sophistication of the customer and the developer's ability to communicate with the customer in a timely manner.  Process definition—risks associated with the degree to which the software process has been defined and is followed by the development organization.
  • 63.  Development environment—risks associated with the availability and quality of the tools to be used to build the product.  Technology to be built—risks associated with the complexity of the system to be built and the "newness" of the technology that is packaged by the system.  Staff size and experience—risks associated with the overall technical and project experience of the software engineers who will do the work.
  • 64. Risk Components  Performance risk—the degree of uncertainty that the product will meet its requirements and be fit for its intended use.  Cost risk—the degree of uncertainty that the project budget will be maintained.  Support risk—the degree of uncertainty that the resultant software will be easy to correct, adapt, and enhance.  Schedule risk—the degree of uncertainty that the project schedule will be maintained and that the product will be delivered on time.
  • 65.
  • 66. RISK PROJECTION  The project planner, along with other managers and technical staff, performs four risk projection activities:  (1) establish a scale that reflects the perceived likelihood of a risk  (2) Describe the consequences of the risk  (3) estimate the impact of the risk on the project and the product  (4) note the overall accuracy of the risk projection so that there will be no misunderstandings.
  • 69. Assessing Risk Impact The following steps are recommended to determine the overall consequences of a risk: 1. Determine the average probability of occurrence value for each risk component. 2. Using table 1 (slide 10) determine the impact for each component based on the criteria shown. 3. Complete the risk table and analyze the results The overall risk exposure, RE, is determined using the following relationship: RE = P x C where P is the probability of occurrence for a risk, and C is the the cost to the project should the risk occur.
  • 71.  For assessment to be useful, a risk referent level (level of performance degradation) must be defined.  In the context of software risk analysis, a risk referent level has a single point, called the referent point or break point, at which the decision to proceed with the project or terminate it (problems are just too great) are equally weighted.
  • 72. RISK MITIGATION, MONITORING, AND MANAGEMENT (RMMM)  An effective strategy must consider three issues:  risk avoidance  risk monitoring  risk management and contingency planning
  • 73.  E.g.  Computer Crash  Late delivery  Changes in requirements  Lack of Development Experience
  • 74.  To mitigate the risk ,possible steps are given below :  Organize project teams so that information about each development activity is widely dispersed.  Conduct peer reviews of all work  Assign a backup staff for every assumption  Define documentation standards and establish mechanism to ensure that documents are developed in timely manner  Meet the current staff to determine causes for turnover
  • 75.  Once the project commences ,assume turnover will occur  Mitigate those causes that are under our control before the project starts.
  • 76. Risk Monitoring and Control  Risk monitoring and control continues on through a project until the project is complete. Risk monitoring and control is the process of identifying and analyzing new risk, keeping track of these new risks and forming contingency plans incase they arise.
  • 77. Risk Monitoring and Control Risk monitoring and control is required in order to:  Ensure the execution of the risk plans  evaluate their effectiveness in reducing risk.  Keep track of the identified risks
  • 78.  In case of high staff turnover, the following factors can be monitored: 1. General attitude of team members based on project pressures 2.The degree to which the team has jelled (begin to work well) 3. Interpersonal relationships among team members 4. Potential problems with compensation and benefits
  • 80.  Also called software configuration management (SCM)  It is an umbrella activity that is applied throughout the software process  It's goal is to maximize productivity by minimizing mistakes caused by confusion when coordinating software development  SCM identifies, organizes, and controls modifications to the software being built by a software development team
  • 81.  SCM activities are formulated to identify change, control change, ensure that change is being properly implemented, and report changes to others who may have an interest  SCM is initiated when the project begins and terminates when the software is taken out of operation
  • 82. Software Configuration  The Output from the software process makes up the software configuration  Computer programs (both source code files and executable files)  Work products that describe the computer programs (documents targeted at both technical practitioners and users)  Data (contained within the programs themselves or in external files)  The major danger to a software configuration is change  First Law of System Engineering: "No matter where you are in the system life cycle, the system will change, and the desire to change it will persist throughout the life cycle"
  • 83. Origins of Software Change  Errors detected in the software need to be corrected  New business or market conditions dictate changes in product requirements or business rules  New customer needs demand modifications of data produced by information systems, functionality delivered by products, or services delivered by a computer-based system  Reorganization or business growth/downsizing causes changes in project priorities or software engineering team structure  Budgetary or scheduling constraints cause a redefinition of the system or product
  • 84. SCM Scenario A typical CM operational scenario involves :  Project manager -> an auditing mechanism for ensuring the product is developed within certain time frame.  SCM manager -> a controlling, tracking, and policy making mechanism  Software engineer -> a changing, building, and access control mechanism  Customer -> a quality assurance and product identification mechanism
  • 85. Elements of CM  Component Elements (set of tools coupled within a file management system e.g. database that enable access to and software configuration items)  Process Elements ( a collection of procedures and tasks that define an effective approach to change managements)  Construction Elements ( a set of tools that automate the construction of software)  Human Elements ( software team uses set of tools and process features)  Elements are not mutually exclusive
  • 86. Have you established a baseline yet?
  • 87. Baseline  ―A specification or product that has been formally reviewed and agreed to by responsible management, that thereafter serves as the basis for further development, and can be changed only through formal change control procedures.‖
  • 88.  As systems are developed, a series of baselines is developed, usually after a review  Developmental baseline (RAD, SDD, Integration Test, ...)  Goal: Coordinate engineering activities.  Functional baseline (first prototype, alpha release, beta release)  Goal: Get first customer experiences with functional system.  Product baseline (product)  Goal: Coordinate sales and customer support.
  • 89. Configuration items ―An aggregation of hardware, software, or both, that is designated for configuration management and treated as a single entity in the configuration management process.‖ Software configuration items are not only program code segments but all type of documents that are produced during development, e.g.:      all types of code files drivers for tests analysis or design documents user or developer manuals system configurations (e.g. version of compiler used)
  • 90. The SCM Repositories  Problems with paper-based repositories (i.e., file cabinet containing folders)  Finding a configuration item when it was needed was often difficult  Determining which items were changed, when and by whom was often challenging  Constructing a new version of an existing program was time consuming and error prone  Describing detailed or complex relationships between configuration items was virtually impossible  Today's automated SCM repository  It is a set of mechanisms and data structures that allow a software team to manage change in an effective manner  It acts as the center for both accumulation and storage of software engineering information  Software engineers use tools integrated with the repository to interact with it
  • 91. Automated SCM Repository Requirements tracing Versioning SCM Repository Dependency tracking Change management Functions Data integrity Information sharing Tool integration Data integration Methodology enforcement Document standardization Configuration management Audit trails
  • 92. Functions of an SCM Repository  Data integrity  Validates entries, ensures consistency, cascades      modifications Information sharing  Shares information among developers and tools, manages and controls multi-user access Tool integration  Establishes a data model that can be accessed by many software engineering tools, controls access to the data Data integration  Allows various SCM tasks to be performed on one or more CSCIs Methodology enforcement  Defines an entity-relationship model for the repository that implies a specific process model for software engineering Document standardization  Defines objects in the repository to guarantee a standard approach for creation of software engineering documents
  • 93. Toolset Used on a Repository  Versioning  Save and retrieve all repository objects based on version number  Dependency tracking and change management  Track and respond to the changes in the state and relationship of all objects in the repository  Requirements tracing  (Forward tracing) Track the design and construction components and deliverables that result from a specific requirements specification  (Backward tracing) Identify which requirement generated any given work product  Configuration management  Track a series of configurations representing specific project milestones or production releases  Audit trails  Establish information about when, why, and by whom changes are made in the repository
  • 94. Primary Objectives of the SCM Process  Identify all items that collectively define     the software configuration Manage changes to one or more of these items Facilitate construction of different versions of an application Ensure the software quality is maintained as the configuration evolves over time Provide information on changes that have occurred
  • 95. SCM Questions  How does a software team identify the discrete elements of a software configuration?  How does an organization manage the many existing versions of a program (and its documentation) in a manner that will enable change to be accommodated efficiently?  How does an organization control changes before and after software is released to a customer?  Who has responsibility for approving and ranking changes?  How can we ensure that changes have been made properly?  What mechanism is used to appraise others of changes that are made?
  • 96. Clean room Software Engineering  Clean room combines formal methods of requirements and design with statistical usage testing to produce software with nearly none or no defects.
  • 97. What is Clean room Software Engineering?  Set of principles and practices for software management, specification, design, and testing.  Improve quality  Increase productivity  Reduce cost  Emphasis on defect prevention rather than defect removal.
  • 98. Clean room Software Engineering  Clean room combines formal methods of requirements and design with statistical usage testing to produce software with nearly none or no defects.
  • 99. Clean room Strategy  Increment planning.  The project plan is built around the incremental strategy.  Requirements gathering.  Customer requirements are elicited and refined for each increment using traditional methods.  Box structure specification.  Box structures isolate and separate the definition of behavior, data, and procedures at each level of refinement.
  • 100.  Formal design.  Specifications (black-boxes) are iteratively refined to become architectural designs (state-boxes) and component-level designs (clear boxes).  Correctness verification.  Correctness questions are asked and answered, formal mathematical verification is used as required.
  • 101.  Code generation, inspection, verification.  Box structures are translated into program language; inspections are used to ensure conformance of code and boxes, as well as syntactic correctness of code; followed by correctness verification of the code.  Statistical test planning.  A suite of test cases is created to match the probability distribution of the projected product usage pattern.
  • 102.  Statistical use testing.  A statistical sample of all possible test cases is used rather than exhaustive testing.  Certification.  Once verification, inspection, and usage testing are complete and all defects removed, the increment is certified as ready for integration.
  • 103. Benefits  Delivers a high quality product that is verified as being correct.  Errors are found early on in the project  Due to majority of project time spent in the design phase.  Leads to lower overall costs and reduces time spent finding errors.  Reduces the overall project time