Lecture 1
Lecture 1
Lecture 1
Planning is required
Specific objectives are to be met or specified
product is to be created.
Work is carried out for someone other than
yourself
Work involves several specialisms
Work is carried out in several phases
Resources available for use on the project are
constrained
The project is large or complex
Project stakeholders
Project management:
is the application of knowledge, skills, tools
and techniques to project activities to meet
project requirements
Software project management: is the
process of planning, organising, staffing,
monitoring, controlling and leading a
software project
Duties of the Project Manager
Negotiating:
Involves conferring with others to come to
terms with them or reach an agreement.
Agreements may be negotiated directly or with
assistance.
Negotiation areas may include scope, cost, and
schedule objectives, changes to scope, cost, or
schedule, contract terms and conditions.
Innovating – coming up with new solutions
Communication: Report progress
Software Project Management Plan
(SPMP)
Planning
Modeling Communication
Planning
Modeling
Construction Analysis
design
Construction
Code
test
Deployment
Delivery
Support
feedback
Deployment delivery of
nth increment
Increment#2
Communication
Planning
Modeling
Construction
Increment # 1 Deployment
Analysis
design Code
test
Delivery
Support
Delivery of
feedback
2nd increment
Communication
Planning
Modeling
Analysis Construction Deployment
design Code
test
Delivery
Support
feedback
delivery of
1ST increment
Construction
Team # 2 Component reuse
automatic code
generation
Communication Modeling testing
Business modeling
Data modeling
Process modeling
Construction
Planning Team # 1 Component reuse
automatic code
generation
testing
Modeling
Business modeling Deployment
Data modeling integration
Process modeling delivery
feedback
Construction
Component reuse
automatic code
generation
testing
THE RAD MODEL
Modeling
Quick design
Construction
Deployment of prototype
delivery &
feedback
STEPS IN PROTOTYPING
INCEPTION PHASE
ELABORATION PHASE
CONSTRUCTION PHASE
TRANSITION PHASE
The Unified Process (UP)
.
UNIFIED PROCESS WORK PRODUCTS
Construction Phase
*Design model
*System components
*Test plan and procedure
*Test cases
*Manual
Transition Phase
*Delivered software increment
*Beta test results
*General user feedback
SOFTWARE REQUIREMENTS
2.Organisational Requirements
Derived from policies and procedures
--Include the following:
Delivery
Implementation
Standard
NON-FUNCTIONAL REQUIREMENTS
3.External Requirements
Derived from factors external to the system
and its development process
--Includes the following
Interoperability
Ethical
Legislative
Different types of non-functional
requirements Non-functional
requir ements
1.Introduction
1.1 Purpose
1.2 Scope
1.3 Definitions, Acronyms and Abbreviations
1.4 References
1.5 Overview
2. General description
2.1 Product perspective
2.2 Product function summary
2.3 User characteristics
2.4 General constraints
2.5 Assumptions and dependencies
3. Specific Requirements
- Functional requirements
-External interface requirements
- Performance requirements
- Design constraints
- Attributes eg. security, availability,maintainability,
transferability/conversion
- Other requirements
Appendices
Index
Project Phases
Types
a. People-Related
Undermined motivation
Weak personnel
Uncontrolled problem employees
Adding people to a late project
Customer-Developer friction.
Unrealistic expectations
Lack of stakeholder participation
Classic Mistakes
b. Process-Related
Optimistic schedules
Insufficient risk management.
Contractor failure
Insufficient planning.
Abandonment of plan under pressure.
Insufficient management controls.
Omitting necessary tasks from estimates
Classic Mistakes
c. Product-Related
Requirements gold-plating.
Feature creep.
Developer gold-plating.
Push-pull negotiation
Classic Mistakes
d. Technology-Related
Overestimated savings from new tools and
methods.
Switching tools in mid-project.
Lack of automated source-code control