Final Module-I Aspm
Final Module-I Aspm
By. Dr.Madhulika 1
In the past ten years, typical goals in the
software process improvement of several
companies are to achieve a 2x, 3x, or 10x
increase in productivity, quality, time to
market, or some combination of all three,
where x corresponds to how well the
company does now
By. Dr.Madhulika 2
By. Dr.Madhulika 3
By. Dr.Madhulika 4
By. Dr.Madhulika 5
By. Dr.Madhulika 6
By. Dr.Madhulika 7
Old way
By. Dr.Madhulika 8
Old ways
By. Dr.Madhulika 9
By. Dr.Madhulika 10
By. Dr.Madhulika 11
By. Dr.Madhulika 12
By. Dr.Madhulika 13
By. Dr.Madhulika 14
By. Dr.Madhulika 15
By. Dr.Madhulika 16
“The most significant way
to improve affordability and return on
investment is usually to produce a product that
achieves the design goals with the minimum
amount of human-generated source material.”
By. Dr.Madhulika 17
By. Dr.Madhulika 18
By. Dr.Madhulika 19
By. Dr.Madhulika 20
Improving Software Economics
Reducing Software Product Size – Commercial Components
21/112
PRINCIPLES
By. Dr.Madhulika 25
Key practices that improve overall software quality:
Focusing on driving requirements and critical use cases early in the life cycle,
focusing on requirements completeness and traceability late in the life cycle, and
focusing throughout the life cycle on a balance between requirements evolution,
design evolution, and plan evolution
Using metrics and indicators to measure the progress and quality of an architecture
as it evolves from a high-level prototype into a fully compliant product
Providing integrated life-cycle environments that support early and continuous
configuration control, change management, rigorous design methods, document
automation, and regression test automation
Using visual modeling and higher level language that support architectural control,
abstraction, reliable programming, reuse, and self-documentation
Early and continuous insight into performance issues through demonstration-based
evaluations
By. Dr.Madhulika 29
By. Dr.Madhulika 30
OOA
Problem RATHER
how a solution is
defined
• OO ANALYSIS—
• Finding + describing of objects or
concepts
Problem
domain
applies
Developer
By. Dr.Madhulika 32
Constraints-
• Hardware
• Software platforms
• Performance requirements
• Persistent storage and
• Transaction
• Usability of the system
• limitations imposed by budgets and time.
By. Dr.Madhulika 33
• Concepts in the analysis model which is
technology independent
Mapped
Results in
a MODEL
• Implements classes and interfaces of
solution
domain
• solution domain, i.e., a detailed description
of how the system is to be built on concrete
technologies.
By. Dr.Madhulika 34
• Technical approach
Analyzing + Designing
Meant for
• Application
• System,
• business
applicable for
• Object-oriented programming,
Software is complex
36
•
Designing software for large applications is a very complex task. It could
arguably be said that there is no limit to how complex software design could get. The
reason for this is that we generally design software to model some real-world
phenomenon.
• Stages of normal software development
• Analysis,
• Design, and
• Implementation
• Phases in Object-Oriented Software
Development
• object-oriented analysis.
*
40
41
*
42
43
Break down algorithm
into smaller ones
Break down into use
case model
44
45
46
Benefits
47
48
49
50
51
Software Management Process Framework
• Life-Cycle Phases
Engineering and Production Stages
Inception Phase
Elaboration Phase
Construction Phase
Transition Phase
• Artifacts of the Process
The Artifact Sets
Management Artifacts
Engineering Artifacts
Pragmatic Artifacts
• The primary goal of the Inception phase is to establish the case for the
viability of the proposed system.
• The tasks that a project team performs during Inception include the
following:
• Defining the scope of the system (that is, what's in and what's out)
• Outlining a candidate architecture, which is made up of initial versions
of six different models
• Identifying critical risks and determining when and how the project will
address them
• Starting to make the business case that the project is worth doing, based
on initial estimates of cost, effort, schedule, and product quality
Elaboration
• The primary goal of the Elaboration phase is to establish the ability to build the
new system given the financial constraints, schedule constraints, and other
kinds of constraints that the development project faces.
• The tasks that a project team performs during Elaboration include the following:
• Capturing a healthy majority of the remaining functional requirements
• Expanding the candidate architecture into a full architectural baseline, which is
an internal release of the system focused on describing the architecture
• Addressing significant risks on an ongoing basis
• Finalizing the business case for the project and preparing a project plan that
contains sufficient detail to guide the next phase of the project (Construction)
• Construction
• The primary goal of the Construction phase is to build a system
capable of operating successfully in beta customer environments.
• During Construction, the project team performs tasks that involve
building the system iteratively and incrementally (see "Iterations
and Increments" later in this chapter), making sure that the
viability of the system is always evident in executable form.
• The major milestone associated with the Construction phase is
called Initial Operational Capability. The project has reached this
milestone if a set of beta customers has a more or less fully
operational system in their hands.
• Transition
• The primary goal of the Transition phase is to
roll out the fully functional system to
customers.
• During Transition, the project team focuses on
correcting defects and modifying the system to
correct previously unidentified problems.
• The major milestone associated with the
Transition phase is called Product Release.
61
62
By. Dr.Madhulika 63
64
UA
• The Unified Approach (UA) is a methodology
for software development that is proposed by
the author Ali Bahrami (1999).
• Methodologies based on
Rambaugh
Booch
Jacobson
65
• Use case represents a typical interaction
between a user and a computer system to
capture the users’ goals and needs.
Use case
interaction
User
66
• Use case is captured by talking to typical users and discussing
the various ways they might want to use the system. The use
cases are entered into all other activities of the UA.
67
68
Unified approach->Software
development
The *processes are:
1. Use-case driven development
2. Object-oriented analysis
3. Object-oriented design
4. Incremental development and prototyping
5. Continuous testing
69
Unified process
• The life of a software system can be
represented as a series of cycles. A cycle ends
with the release of a version of the system to
customers.
P4 P1 System
P3 P2
70
• A phase is simply the span of time between
two major milestones.
t
• Mile Stone 1----------------------------Milestone 2
t-> where managers make
important decisions about
whether to
proceed with development
and,
If Yes what's required
concerning
1)project scope2) budget, and
3)schedule.
71
Unified Process Phases
Goals Mile stones
72
• Inception:-“Establish the case for the viability
of the proposed system”.
• Task: define scope, critical risk, project is
worth doing or not
• Goals: Stakeholder agree on scope
73
Elaboration (Mile stone)
The primary goal is to establish the ability to build the new system given the
financial constraints,
schedule constraints
The tasks that a project team performs during Elaboration include the following:
Capturing remaining functional requirements
Expanding the candidate architecture into a full architectural baseline, which is
an internal release of the system focused on describing the architecture
Addressing significant risks on an ongoing basis
74
Construction phase :
Release
75
• Construction
• The primary goal of the Construction phase is
to build a system capable of operating
successfully in beta customer environments.
• During Construction, the project team
performs tasks that involve building the
system iteratively and incrementally (see
"Iterations and Increments" later in this
chapter), making sure that the viability of the
system is always evident in executable form.
76
• The major milestone associated with the
Construction phase is called Initial
Operational Capability. The project has
reached this milestone if a set of beta
customers has a more or less fully operational
system in their hands.
77
• Transition
• The primary goal of the Transition phase is to
roll out the fully functional system to
customers.
• During Transition, the project team focuses on
correcting defects and modifying the
system to correct previously unidentified
problems.
• The major milestone associated with the
Transition phase is called Product Release.
78
79
Object
• The term object was first formally utilized in
the Simula language to simulate some aspect
of reality.
• An object is an entity.
• –It knows things (has attributes)
• –It does things (provides services or has
methods)
80
Attributes
Name Properties->
Language Objects(Data)
Teaching
interest
Research
interest
81
How to Methods behaviour
Research
How to
speak?
How to
teach?
82
83
?
84
Object Oriented Design
UML
Software System
86
• Model: abstract view of subsystem from
system
• View: shows some aspects of system
• Notations: graphical rules for depicting views
System Notations:
Blue prints
Electricals wiring
Fuel system
Implementation
Logical View
View
Deployment
Process View
View
• System integrators
• Performance • System engineer
• Scalability • System topology
• Throughputs • Delivery , installation
88
89
90
Need
• Developed to help system and software
developers
• Specifying,
• Visualizing,
• Constructing, an documenting the *artifacts of
software systems,
->>>for business modeling and other non-
software systems.
Produced during development of software
91
Course Objectives:
• To provide students with a clear understanding of the unique
risks, issues, and critical success factors associated with
technology projects
• To introduce students to the role and function of project
management
By. Dr.Madhulika 92
Course Learning Outcomes
• Course Learning Outcomes:
• Basic concepts of Project management.
• Explain planning and project estimation.
• Analyze project estimation and evaluation.
• Evaluate resource allocation and activity
planning.
• Assess people and quality standards.
By. Dr.Madhulika 93
Module-I
• Introduction to Software Project Management:
• Definition of a Software Project (SP), SP Vs. other
types of projects activities covered by SPM,
categorizing SPs, project as a system, management
control, requirement specification, information and
control in organization, Objectives, issues, and
problems relating to software projects, role of the
software project manager
By. Dr.Madhulika 94
Text Books
Readings
•Bob Hughes and Mike Cotterell; Software Project
Management, third edition, Tata McGraw Hill
Publishing Company Ltd., New Delhi.
•Tom Demarco, Controlling Software Project
Management, Measurement, Prentice Hall, New
Jersey.
References:
•Tom Glib, Finzi Susannah, Principles of Software
Engineering Management, Addison Wesley, England.
•Pankaj Jalote; Software Project Management in
Practice, Pearson Education Asia.
•Watts S. Humphrey; Winning with Software? An
Executive Strategy, Pearson Education Asia.
•Philip Metzger, Managing a Programming Project,
Prentice Hall, New Jersey.
•Kishore, Swapna, “Software Requirements and
Estimation”, Tata McGraw Hill, 2001Computer
Communications and Networking Technologies –
Michael A.Gallo, William M .Hancock - Thomson
By. Dr.Madhulika 95
Publication.
By. Dr.Madhulika 96
Outline of talk
In this introduction the main questions to be
addressed will be:
97
Outline of talk
In this introduction the main questions to be
addressed will be:
98
By. Dr.Madhulika 99
• General conditions should be fulfilled for tasks to be
completed in the form of a project:
• The task
• is unique,
• is a novelty,
• is subject to constraints by timescale, funding and staff,
• has a complex technical and organizational structure,
• has clear performance targets with regard to the agreed
specification and quality,
• is implemented in teamwork, generally by cross-disciplinary
and cross-hierarchy project teams.
By. Dr.Madhulika
100
By. Dr.Madhulika 101
By. Dr.Madhulika 102
By. Dr.Madhulika 103
What is a project?
Some dictionary definitions:
“A specific plan or design”
“A planned undertaking”
“A large undertaking e.g. a public works scheme”
Longmans dictionary
104
By. Dr.Madhulika 105
By. Dr.Madhulika 106
By. Dr.Madhulika 107
Jobs versus projects
109
Are software projects really different from other projects?
110
Activities covered by project
management
111
112
Feasibility study
Is project technically feasible
and worthwhile from a
business point of view?
Planning
Only done if project is feasible
Execution
Implement plan, but plan may be changed as we go along.
113
Examples of Software Projects
• Putting a robot vehicle on Mars to search
for signs of life.
» Relative novelty of the project
» International nature of the project
» Successful achievement of the project from
engineering point of view is the safe landing of the
robot, not the discovery of signs of life.
114
Software projects Vs. other
types of project
• Invisibility:- progress is not immediately
visible as compared to other project
• (bridge construction)
• Complexity:- they are more complex.
• Conformity:- software projects have to
conform to the requirements of clients but
with other project laws are there .
• Flexibility :- biggest strength of SP.
115
Categorizing SPs
Information systems Vs Embedded systems
• Quality Requirements
• Resource Requirements
130
Management control
Data – the raw details
e.g. ‘6,000 documents processed at location X’
continued….. 131
By. Dr.Madhulika 132
Stakeholders
These are people who have a stake or interest in
the project
In general, they could be users/clients or
developers/implementers
continued…
140
What is management?
(continued)
• Monitoring – checking on progress
• Controlling – taking action to remedy hold-ups
• Innovating – coming up with solutions when
problems emerge
• Representing – liaising with clients, users,
developers and other stakeholders
141
Setting objectives
• Answering the question ‘What do we have
to do to have a success?’
142
Objectives
Informally, the objective of a project can be defined
by completing the statement:
143
Objectives should be SMART
S– specific, that is, concrete and well-defined
145
Goals/sub-objectives
Often a goal can be allocated to an individual.
Individual may have the capability of achieving goal,
but not the objective on their own e.g.
146
Challenges in Software
Project management
Madhulika(Assistant Professor,ASET
10/21/2024 157
CSE,Amity University
Step wise planning
activities
Madhulika(Assistant Professor,ASET
10/21/2024 158
CSE,Amity University
Step 0: Select project
• It is outside the main project planning process.
• Some process must decide to initiate a project
from the proposed projects.
• A feasibility study can be helpful.
• Evaluation of the Merits of the project could
be a part of strategic planning.
• Explaination Step 0 Word document
Madhulika(Assistant Professor,ASET
10/21/2024 159
CSE,Amity University
Step 0
Madhulika(Assistant Professor,ASET
10/21/2024 161
CSE,Amity University
Step 1
163
Step 1 continued
• 1.4 Modify objectives in the light of
stakeholder analysis
– ‘do we need to do things to win over
stakeholders?’
164
Step 1 continued
• 1.4 Modify objectives in the light of
stakeholder analysis
– ‘do we need to do things to win over
stakeholders?’
165
By. Dr.Madhulika 166
By. Dr.Madhulika 167
Step 2: Identify project infrastructure
Madhulika(Assistant Professor,ASET
10/21/2024 168
CSE,Amity University
Step 2 Establish project infrastructure
169
By. Dr.Madhulika 170
Strategic planning focuses on a business's
future by understanding operational priorities
and resource availability, setting out clear
objectives for desired business results, and
developing an action plan on how to achieve
them
Madhulika(Assistant Professor,ASET
10/21/2024 173
CSE,Amity University
By. Dr.Madhulika 174
By. Dr.Madhulika 175
By. Dr.Madhulika 176
Step 4:Identify project products and
activities
• Identify and describe project products
(including quality criteria)
• Document generic product flows
• Recognize product instances
• Produce real activity network
• Modify ideal to take into account need for
stages and checkpoints
Madhulika(Assistant Professor,ASET
10/21/2024 177
CSE,Amity University
By. Dr.Madhulika 178
By. Dr.Madhulika 179
By. Dr.Madhulika 180
By. Dr.Madhulika 181
Step 5: Estimate effort for each
activity
• Carry out bottom-up estimates
• Revise plan to create controllable activities
Madhulika(Assistant Professor,ASET
10/21/2024 182
CSE,Amity University
By. Dr.Madhulika 183
Step 6:Identify activity risks
Madhulika(Assistant Professor,ASET
10/21/2024 184
CSE,Amity University
By. Dr.Madhulika 185
Step 7: Allocate resources
Madhulika(Assistant Professor,ASET
10/21/2024 186
CSE,Amity University
By. Dr.Madhulika 187
Step 8:Review/Publicize plan
Madhulika(Assistant Professor,ASET
10/21/2024 188
CSE,Amity University
Step 9 and 10: Execute plan/lower
level of planning
Madhulika(Assistant Professor,ASET
10/21/2024 189
CSE,Amity University
0.Select project
2.Identify project
1.Identify project
infrastructure
Scope & objective
3.Analyse project
characteristics
Fig:- An
4.Identify the products
Overview
and activities
Review Of
step-wise
planning
5.Estimate effort for
Lower each activity For
Level Each
detail 6.Identify activity activity
risks
10.Lower level
planning 7.Allocate resources
191
“WE” 2021, ASPM, M.Tech 1sem