Test
Test
Management
Intro to Project Management
Presentation By
NISHA R.S.
Lecturer,
Dept. of MCA
Course Objectives
Understand the fundamental principles of Software
Project management & will also have a good
knowledge of responsibilities of project manager and
how to handle these.
Introduction
Project – Definition
In the broadest sense, a project is a
specific, finite task to be
accomplished. Any activity that results
in a deliverable or a product.
Finite
Fixed timeline, start date, end date, milestone dates
Limited
Budget, Resources, Time
Life Cycle
Recognizable sequence of phases
Product
Project People
Requirement
Analysis
System
Design
Coding
Testing
Maintenance
Waterfall Model (cont’d)
classical
one-shot approach
effective control
limited scope of iteration
long cycle time
not suitable for system of high
uncertainty
V Model
Maintenance
Unit and
Program Design
Integration Testing
Coding
V Model (cont’d)
Additional validation process
introduced
Relate testing to analysis and design
Loop back in case of discrepancy
Spiral Model (adapted from Boehm 1987)
Spiral Model (cont’d)
Evolutionary approach
Iterative development combined with
risk management
Risk analysis results in “go, no-go”
decision
Spiral Model (cont’d)
Four major activities
Planning
Risk analysis
Engineering
Customer evaluation
Prototyping Model
Goals
meet users’ requirements in early stage
reduce risk and uncertainty
Classification of Prototype
Throw-away
After users agree the requirements of the
system, the prototype will be discarded.
Evolutionary
Modifications are based on the existing
prototype.
Incremental
Functions will be arranged and built
accordingly.
Prototyping Model
YES
User
Build prototype
satisfaction
NO
User feedback
Benefits of Prototyping
Learning by doing
Improved communication
Improved user involvement
Clarification of partially-known
requirements
Prototyping Sequences
Requirements gathering
Quick design
Prototype construction
Customer evaluation
Refinement
Loop back to quick design for fine tuning
Product engineering
Benefits of Prototyping
Demonstration of the consistency and
completeness of a specification
Reduced need for documentation
Reduced maintenance costs
Feature constraint
Production of expected results
Drawbacks of Prototyping
Users sometimes misunderstand the
role of the prototype
Lack of project standards possible
Lack of control
Additional expense
Close proximity of developers
Forms of Prototypes
Mock-ups
Simulated interaction
Partial working model
Incremental Model
Break system into small components
Implement and deliver small
components in sequence
Every delivered component provides
extra functionality to user
Incremental Model (cont’d)
NO
YES
Iterative Model
Deliver full system in the beginning
Enhance functionality in new releases
Iterative Model (cont’d)
Design system
n = n+1
version n NO
YES
Why Have Project Phases and
Management Reviews?
Domain Processes
Scope Planning and the Scope
Statement
A scope statement is a document used
to develop and confirm a common
understanding of the project scope. It
should include
a project justification
a brief description of the project’s products
a summary of all project deliverables
a statement of what determines project
success
Scope Planning and the Work
Breakdown Structure
*Johnson, Jim, "CHAOS: The Dollar Drain of IT Project Failures," Application Development Trends,
January 1995, www.stadishgroup.com/chaos.html
Suggestions for Improving User
Input
Insist that all projects have a sponsor
from the user organization
Have users on the project team
Have regular meetings
Deliver something to project users and
sponsor on a regular basis
Co-locate users with the developers
Suggestions for Reducing
Incomplete and Changing
Requirements
Develop and follow a requirements management process
Employ techniques such as prototyping, use case
modeling, and Joint Application Design to thoroughly
understand user requirements
Put all requirements in writing and current
Create a requirements management database
Provide adequate testing
Use a process for reviewing requested changes from a
systems perspective
Emphasize completion dates
Unit III
Software Development
Software Size and Reuse
Estimating
Software Size and Reuse Estimating
”Predicting the size of a software
system becomes progressively easier
as the project advances”
Idea:
software is better measured in terms
of the number and complexity of the
functions that it performs
Function points measure categories of
end-user business functions
Function Point Process Steps
1. Count number of functions in each
category (outputs, inputs, interfaces
etc..)
2. Apply complexity weighting factors
(simple, medium, complex)
3. Apply environmental factors
4. Calculate complexity adjustment factor
5. Compute adjusted function points
6. Convert to Lines of Code (optional)
Advantages of Function Point Analysis
Can be applied early in the life cycle
Independent of language and technology
Provide a reliable relationship to effort
Can be used as a productivity goal
Users understand better
Provide a mechanism to track and monitor
scope
Environmental factors are considered
Disadvantages of Function Point Analysis
Requires subjective evaluations
Results depend on technology used
to implement the analysis
Many effort and cost models depend
on LOC, must be converted
Best after the creation of a design
specification
Not good to non-MIS applications
Feature Points
Primary disadvantage:
subjective classification of algorithmic
complexity
Object Points
Scheduling Activities
Project management resource
activities.
• Personal
• Organizational
• System
• PERSONAL
It deals with all conflicts involving people in or
related to the project.
• ORGANIZATIONAL
It deals with conflicts due to varying
organizational goals and the different management
styles of the
project and resource supplying organizations.
• SYSTEM
It deals with the product, facility, or other
non people interfaces developed by the project.
Organizational structure:
Functional organizations
Matrix organizations
Projectized organizations
D=7 5 F=2