‘all aspects of software production’ - software engineering is not just concerned with the...
TRANSCRIPT
‘all aspects of software production’ - Software engineering is not just concerned with the technical processes of software development but also with activities such as software project management and with the development of tools, methods and theories to support software production.
-Sommerville
Software Engineering
Software Engineering II
Lecture 45
Fakhar Lodhi
Recap
Why Projects Fail?
• An unrealistic deadline is establishedAn unrealistic deadline is established• Changing customer requirementsChanging customer requirements• Ambiguous/incomplete requirementsAmbiguous/incomplete requirements• An honest underestimate of effortAn honest underestimate of effort• Predictable and/or unpredictable risksPredictable and/or unpredictable risks• Technical difficultiesTechnical difficulties• Miscommunication among project staffMiscommunication among project staff• Failure in project managementFailure in project management
Comparison of CMMI Representations
Staged Continuous•Process improvement is measured using maturity levels.
•Maturity level is the degree of process improvement across a predefined set of process areas.
•Organizational maturity pertains to the “maturity” of a set of processes across an organization
•Process improvement is measured using capability levels. •Capability level is the achievement of process improvement within an individual process area.•Process area capability pertains to the “maturity” of a particular process across an organization.
INITIAL – Ad hoc Process
REPEATABLE – Project Management
DEFINED – Process Definition
MANAGED – Process Measurement
OPTIMIZED – Process Improvement
CMM Maturity Levels
Project Management Concerns
staffing?
cost estimation?
project scheduling?
project monitoring?
other resources?
customer communication?
risk assessment?
product quality?
measurement?
Project Management
• Planning• Organization• Control• Motivation
Scope
ScheduleResources
Software Quality Assurance
• What is quality?– Internal versus external– Does internal quality translate in external
quality• Do you need to worry about it after the code
has been generated?