SlideShare a Scribd company logo
1 of 24
INTRODUCTION
0 Software process improvement encompasses a set of
activities that will lead to a better software process and, as a
consequence, higher quality software delivered in a more timely
manner. Some software organizations have little more than an ad
hoc software process. As they work to improve their software
engineering practices, they must address weaknesses in their
existing process and work to improve their approach to software
work.
0 The approach to SPI is iterative and continuous, but it can be
viewed in five steps: (1) assessment of the current software
process, (2) education and training of practitioners and managers,
(3) selection and justification of process elements, software
engineering methods, and tools, (4) implementation of the SPI plan,
and (5) evaluation and tuning based on the results of the plan.
0 Today, virtually every major software engineering
organization has attempted to “make software engineering
happen.” Some have implemented individual practices that
have helped to improve the quality of the product they build
and the timeliness of their delivery. Others have established
a “mature” software process that guides their technical and
project management activities. But others continue to
struggle. Their practices are hit-and-miss, and their process
is ad hoc. Occasionally, their work is spectacular, but in the
main, each project is an adventure, and no one knows
whether it will end badly or well.
37.1 WHAT IS SPI?
0 The term software process improvement (SPI) implies many
things. First, it implies that elements of an effective software
process can be defined in an effective manner; second, that an
existing organizational approach to software development can
be assessed against those elements; and third, that a
meaningful strategy for improvement can be defined.
0 The SPI strategy transforms the existing approach to software
development into something that is more focused, more
repeatable, and more reliable (in terms of the quality of the
product produced and the timeliness of delivery).
37.1.1 Approaches to
SPI
0 Although an organization can choose a relatively informal
approach to SPI, the vast majority choose one of a number of
SPI frameworks. An SPI framework defines (1) a set of
characteristics that must be present if an effective software
process is to be achieved, (2) a method for assessing whether
those characteristics are present, (3) a mechanism for
summarizing the results of any assessment, and (4) a strategy
for assisting a software organization in implementing those
process characteristics that have been found to be weak or
missing.
0 Figure 37.1 provides an overview of a typical SPI framework.
The key elements of the framework and their relationship to
one another are shown. You should note that there is no
universal SPI framework. In fact, the SPI framework that is
chosen by an organization reflects the constituency that is
championing the SPI effort.
0 Conradi [Con96] defines six different SPI support
constituencies:
0 Quality certifiers. Process improvement efforts
championed by this group focus on the following
relationship:
0 Quality ( Process ) ⇒ Quality ( Product )
0 Their approach is to emphasize assessment methods and to
examine a well-defined set of characteristics that allows them to
determine whether the process exhibits quality. They are most
likely to adopt a process framework such as the CMMI, SPICE,
TickIT, or Bootstrap. 1
0 Formalists.
0 Tool advocates
0 Practitioners.
0 Reformers.
0 Ideologists.
0 As an SPI framework is applied, the sponsoring constituency
(regardless of its overall focus) must establish mechanisms to: (1)
support technology transition, (2) determine the degree to which
an organization is ready to absorb process changes that are
proposed, and (3) measure the degree to which changes have been
adopted.
37.1.2 Maturity Models
0 A maturity model is applied within the context of an SPI
framework. The intent of the maturity model is to provide an
overall indication of the “process maturity” exhibited by a
software organization.
0 For example, the Software Engineering Institute’s original
Capability Maturity Model (Section 37.3) suggests fi ve levels
of maturity ranging from initial (rudimentary software
process) to optimized (a process that leads to best practices. 2
Unfortunately, some software organizations exhibit levels of
“process immaturity” that undermine any rational attempt at
improving software engineering practices. Schorsch [Sch06]
suggests four levels of organizational immaturity that are
often encountered in the real world of software development:
0 Level 0, Negligent —Failure to allow successful development
process to succeed. All problems are perceived to be technical
problems. Managerial and quality assurance activities are
deemed to be overhead and superfluous to the task of
software development process. Reliance on silver pellets.
0 Level 1, Obstructive —Counterproductive processes are
imposed. Processes are rigidly defined and adherence to the
form is stressed. Ritualistic ceremonies abound. Collective
management precludes assigning responsibility. Status quo
über alles.
0 Level 2, Contemptuous —Disregard for good software
engineering institutionalized. Complete schism between
software development activities and software process
improvement activities. Complete lack of a training program.
0Level 3, Undermining —Total neglect of own charter,
conscious discrediting of peer organizations software
process improvement efforts. Rewarding failure and
poor performance.
037.1.3 Is SPI for Everyone?
0For many years, SPI was viewed as a “corporate”
activity—a euphemism for something that only large
companies perform. But today, a significant
percentage of all software development is being
performed by companies that employ fewer than 100
people.
37.2 THE SPI PROCESS
0 The hard part of SPI isn’t the definition of characteristics
that define a high quality software process or the creation
of a process maturity model. Those things are relatively
easy. Rather, the hard part is establishing a consensus for
initiating SPI and defining an ongoing strategy for
implementing it across a software organization.
0 The Software Engineering Institute has developed IDEAL—
“an organizational improvement model that serves as a
road map for initiating, planning, and implementing
improvement actions” [SEI08]. IDEAL is representative of
many process models for SPI, defining five distinct
activities— initiating, diagnosing, establishing, acting, and
learning—that guide an organization through SPI
activities.
37.2.1 Assessment and
Gap Analysis
0 Any attempt to improve your current software process without
first assessing the efficacy of current framework activities and
associated software engineering practices would be like starting
on a long journey to a new location with no idea where you are
starting from.
0 Each is considered within the context of the framework activities
(Chapter 3) that have been established, and is each assessed to
determine whether all of the following questions have been
addressed:
Is the objective of the activity clearly defined?
• Are work products required as input and produced as
output identified
and described?
• Are the work tasks to be performed clearly described?
• Are the people who must perform the activity identifi ed by
role?
• Have entry and exit criteria been established?
• Have metrics for the activity been established?
• Are tools available to support the activity?
• Is there an explicit training program that addresses the
activity?
• Is the activity performed uniformly for all projects?
0 As the process assessment is conducted, you (or those who
have been hired to perform the assessment) should also focus
on the following issues:
0 Consistency. Are important activities, actions, and tasks
applied consistently across all software projects and by all
software teams?
0 Sophistication. Are management and technical actions
performed with a level of sophistication that implies a
thorough understanding of best practice?
0 Acceptance. Is the software process and software engineering
practice
0 widely accepted by management and technical staff?
0 Commitment. Has management committed the resources
required to achieve consistency, sophistication, and
acceptance?
37.2.2 Education and
Training
0 Although few software people question the benefit of an agile,
organized software process or solid software engineering
practices, many practitioners and managers do not know enough
about either subject.
0 37.2.3 Selection and Justification
0 Once the initial assessment activity 5 has been completed and
education has
begun, a software organization should begin to make choices.
These choice occur during a selection and justification activity in
which process characteristics and specific software engineering
methods and tools are chosen to populatethe software process.
0 First, you should choose the process model (Chapters 3–5)
that best fits your organization, its stakeholders, and the
software that you build. You should decide which of the set
of framework activities will be applied, the major work
products that will be produced, and the quality assurance
checkpoints that will enable your team to assess progress.
0 Next, develop an adaptable work breakdown for each
framework activity (e.g., modeling), defining the task set
that would be applied for a typical project.
37.2.4
Installation/Migration
0 Installation is the first point at which a software organization
feels the effects of changes implemented as a consequence of
the SPI road map. In some cases, an entirely new process is
recommended for an organization. Framework activities,
software engineering actions, and individual work tasks must
be defined and installed as part of a new software engineering
culture.
0 Installation and migration are actually software process
redesign (SPR) activities. Scacchi [Sca00] states that “SPR is
concerned with identification, application, and refinement of
new ways to dramatically improve and transform
0 software processes.”
37.2.5 Evaluation
0 Although it is listed as the last activity in the SPI road
map, evaluation occurs throughout SPI. The evaluation
activity assesses the degree to which changes have
been instantiated and adopted, the degree to which
such changes result in better software quality or other
tangible process benefits, and the overall status of
the process and the organizational culture as SPI
activities proceed.
371. 2.6 Risk Management for
SPI Management for SPI
0 SPI is a risky undertaking. In fact, more than half of all SPI
efforts end in failure. The reasons for failure vary greatly and
are organizationally specific. Among the most common risks
are: a lack of management support, cultural resistance by
technical staff, a poorly planned SPI strategy, an overly
formal approach to SPI, selection of an inappropriate
process, a lack of buy-in by key stakeholders, an inadequate
budget, a lack of staff training, organizational instability, and
a myriad of other factors.
37.3 THE CMMI
0 The original CMM was developed and upgraded by the Software
Engineering Institute throughout the 1990s as a complete SPI
framework. Today, it has evolved into the Capability Maturity
Model Integration (CMMI) [CMM07], a comprehensive process
meta-model that is predicated on a set of system and software
engineering capabilities that should be present as organizations
reach different levels of process capability and maturity.
0 The CMMI represents a process meta-model in two different ways: (1) as
a “continuous” model and (2) as a “staged” model. The continuous CMMI
meta-model describes a process in two dimensions as illustrated in
Figure 37.2 . Each process area (e.g., project planning or requirements
management) is formally assessed against specific goals and practices
and is rated according to the following capability levels:
0 Level 0: Incomplete — The process area (e.g., requirements
management) is either not performed or does not achieve all goals and
objectives defined by the CMMI for level 1 capability for the process area.
0 Level 1: Performed — All of the specific goals of the process area (as
0 defined by the CMMI) have been satisfied. Work tasks required to
produce defined work products are being conducted.
0 Level 2: Managed — All capability level 1 criteria have been satisfied. In
addition, all work associated with the process area conforms to an
organizationally defined policy; all people doing the work have access to
adequate resources to get the job done; stakeholders are actively
involved in the process area as required; all work tasks and work
products are “monitored, controlled, and reviewed; and are evaluated for
adherence to the process description” [CMM07].
0 Level 3: Defined — All capability level 2 criteria have been
achieved. In addition, the process is “tailored from the
organization’s set of standard processes according to the
organization’s tailoring guidelines, and contributes work
products, measures, and other process-improvement
information to the organizational process assets” [CMM07].
0 Level 4: Quantitatively managed — All capability level 3
criteria have been achieved. In addition, the process area is
controlled and improved using measurement and
quantitative assessment. “Quantitative objectives for quality
and process performance are established and used as
criteria in managing the process” [CMM07].
0 Level 5: Optimized — All capability level 4 criteria have been
achieved. In addition, the process area is adapted and
optimized using quantitative(statistical) means to meet
changing customer needs and to continue all improve the
efficacy of the process area under consideration

More Related Content

Similar to SOFTWARE.pptx

Lecture 02
Lecture 02Lecture 02
Lecture 02Rana Ali
 
Managing Software Project
Managing Software ProjectManaging Software Project
Managing Software ProjectAnas Bilal
 
Process model in SE
Process model in SEProcess model in SE
Process model in SEsuranisaunak
 
Chapter1 Advanced Software Engineering overview
Chapter1 Advanced Software Engineering overviewChapter1 Advanced Software Engineering overview
Chapter1 Advanced Software Engineering overviewBule Hora University
 
Lightweight Processes: A Definition
Lightweight Processes: A DefinitionLightweight Processes: A Definition
Lightweight Processes: A DefinitionGlen Alleman
 
Measurement_Information Needs_paper_Crosstalk
Measurement_Information Needs_paper_CrosstalkMeasurement_Information Needs_paper_Crosstalk
Measurement_Information Needs_paper_Crosstalkpbaxter
 
DevOps Best Practices: Combine Coding with Collaboration
DevOps Best Practices: Combine Coding with CollaborationDevOps Best Practices: Combine Coding with Collaboration
DevOps Best Practices: Combine Coding with CollaborationCognizant
 
ISTQB Advanced Study Guide - 8
ISTQB Advanced Study Guide - 8ISTQB Advanced Study Guide - 8
ISTQB Advanced Study Guide - 8Yogindernath Gupta
 
Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)MuhammadTalha436
 
Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Raj vardhan
 
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTION
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTIONEXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTION
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTIONacijjournal
 
Asset Finance Systems: Project Initiation "101"
Asset Finance Systems: Project Initiation "101"Asset Finance Systems: Project Initiation "101"
Asset Finance Systems: Project Initiation "101"David Pedreno
 
Using DevOps' Intelligent Insights to Deliver Greater Business Value
Using DevOps' Intelligent Insights to Deliver Greater Business ValueUsing DevOps' Intelligent Insights to Deliver Greater Business Value
Using DevOps' Intelligent Insights to Deliver Greater Business ValueCognizant
 
Health Informatics- Module 2-Chapter 1.pptx
Health Informatics- Module 2-Chapter 1.pptxHealth Informatics- Module 2-Chapter 1.pptx
Health Informatics- Module 2-Chapter 1.pptxArti Parab Academics
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineeringMuhammadTalha436
 

Similar to SOFTWARE.pptx (20)

Lecture 02
Lecture 02Lecture 02
Lecture 02
 
Managing Software Project
Managing Software ProjectManaging Software Project
Managing Software Project
 
Process model in SE
Process model in SEProcess model in SE
Process model in SE
 
Chapter1 Advanced Software Engineering overview
Chapter1 Advanced Software Engineering overviewChapter1 Advanced Software Engineering overview
Chapter1 Advanced Software Engineering overview
 
Lecture 1 SE.pptx
Lecture 1 SE.pptxLecture 1 SE.pptx
Lecture 1 SE.pptx
 
Lightweight Processes: A Definition
Lightweight Processes: A DefinitionLightweight Processes: A Definition
Lightweight Processes: A Definition
 
Software models
Software modelsSoftware models
Software models
 
Measurement_Information Needs_paper_Crosstalk
Measurement_Information Needs_paper_CrosstalkMeasurement_Information Needs_paper_Crosstalk
Measurement_Information Needs_paper_Crosstalk
 
DevOps Best Practices: Combine Coding with Collaboration
DevOps Best Practices: Combine Coding with CollaborationDevOps Best Practices: Combine Coding with Collaboration
DevOps Best Practices: Combine Coding with Collaboration
 
ISTQB Advanced Study Guide - 8
ISTQB Advanced Study Guide - 8ISTQB Advanced Study Guide - 8
ISTQB Advanced Study Guide - 8
 
Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)Software Engineering Past Papers (Short Questions)
Software Engineering Past Papers (Short Questions)
 
Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2
 
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTION
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTIONEXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTION
EXPLORING THE LINK BETWEEN LEADERSHIP AND DEVOPS PRACTICE AND PRINCIPLE ADOPTION
 
Asset Finance Systems: Project Initiation "101"
Asset Finance Systems: Project Initiation "101"Asset Finance Systems: Project Initiation "101"
Asset Finance Systems: Project Initiation "101"
 
Using DevOps' Intelligent Insights to Deliver Greater Business Value
Using DevOps' Intelligent Insights to Deliver Greater Business ValueUsing DevOps' Intelligent Insights to Deliver Greater Business Value
Using DevOps' Intelligent Insights to Deliver Greater Business Value
 
testing
testingtesting
testing
 
SE chapters 21-23
SE chapters 21-23SE chapters 21-23
SE chapters 21-23
 
Slides chapters 21-23
Slides chapters 21-23Slides chapters 21-23
Slides chapters 21-23
 
Health Informatics- Module 2-Chapter 1.pptx
Health Informatics- Module 2-Chapter 1.pptxHealth Informatics- Module 2-Chapter 1.pptx
Health Informatics- Module 2-Chapter 1.pptx
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineering
 

Recently uploaded

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 

Recently uploaded (20)

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 

SOFTWARE.pptx

  • 1.
  • 2. INTRODUCTION 0 Software process improvement encompasses a set of activities that will lead to a better software process and, as a consequence, higher quality software delivered in a more timely manner. Some software organizations have little more than an ad hoc software process. As they work to improve their software engineering practices, they must address weaknesses in their existing process and work to improve their approach to software work. 0 The approach to SPI is iterative and continuous, but it can be viewed in five steps: (1) assessment of the current software process, (2) education and training of practitioners and managers, (3) selection and justification of process elements, software engineering methods, and tools, (4) implementation of the SPI plan, and (5) evaluation and tuning based on the results of the plan.
  • 3. 0 Today, virtually every major software engineering organization has attempted to “make software engineering happen.” Some have implemented individual practices that have helped to improve the quality of the product they build and the timeliness of their delivery. Others have established a “mature” software process that guides their technical and project management activities. But others continue to struggle. Their practices are hit-and-miss, and their process is ad hoc. Occasionally, their work is spectacular, but in the main, each project is an adventure, and no one knows whether it will end badly or well.
  • 4. 37.1 WHAT IS SPI? 0 The term software process improvement (SPI) implies many things. First, it implies that elements of an effective software process can be defined in an effective manner; second, that an existing organizational approach to software development can be assessed against those elements; and third, that a meaningful strategy for improvement can be defined. 0 The SPI strategy transforms the existing approach to software development into something that is more focused, more repeatable, and more reliable (in terms of the quality of the product produced and the timeliness of delivery).
  • 5. 37.1.1 Approaches to SPI 0 Although an organization can choose a relatively informal approach to SPI, the vast majority choose one of a number of SPI frameworks. An SPI framework defines (1) a set of characteristics that must be present if an effective software process is to be achieved, (2) a method for assessing whether those characteristics are present, (3) a mechanism for summarizing the results of any assessment, and (4) a strategy for assisting a software organization in implementing those process characteristics that have been found to be weak or missing.
  • 6.
  • 7. 0 Figure 37.1 provides an overview of a typical SPI framework. The key elements of the framework and their relationship to one another are shown. You should note that there is no universal SPI framework. In fact, the SPI framework that is chosen by an organization reflects the constituency that is championing the SPI effort. 0 Conradi [Con96] defines six different SPI support constituencies: 0 Quality certifiers. Process improvement efforts championed by this group focus on the following relationship: 0 Quality ( Process ) ⇒ Quality ( Product )
  • 8. 0 Their approach is to emphasize assessment methods and to examine a well-defined set of characteristics that allows them to determine whether the process exhibits quality. They are most likely to adopt a process framework such as the CMMI, SPICE, TickIT, or Bootstrap. 1 0 Formalists. 0 Tool advocates 0 Practitioners. 0 Reformers. 0 Ideologists. 0 As an SPI framework is applied, the sponsoring constituency (regardless of its overall focus) must establish mechanisms to: (1) support technology transition, (2) determine the degree to which an organization is ready to absorb process changes that are proposed, and (3) measure the degree to which changes have been adopted.
  • 9. 37.1.2 Maturity Models 0 A maturity model is applied within the context of an SPI framework. The intent of the maturity model is to provide an overall indication of the “process maturity” exhibited by a software organization. 0 For example, the Software Engineering Institute’s original Capability Maturity Model (Section 37.3) suggests fi ve levels of maturity ranging from initial (rudimentary software process) to optimized (a process that leads to best practices. 2 Unfortunately, some software organizations exhibit levels of “process immaturity” that undermine any rational attempt at improving software engineering practices. Schorsch [Sch06] suggests four levels of organizational immaturity that are often encountered in the real world of software development:
  • 10. 0 Level 0, Negligent —Failure to allow successful development process to succeed. All problems are perceived to be technical problems. Managerial and quality assurance activities are deemed to be overhead and superfluous to the task of software development process. Reliance on silver pellets. 0 Level 1, Obstructive —Counterproductive processes are imposed. Processes are rigidly defined and adherence to the form is stressed. Ritualistic ceremonies abound. Collective management precludes assigning responsibility. Status quo über alles. 0 Level 2, Contemptuous —Disregard for good software engineering institutionalized. Complete schism between software development activities and software process improvement activities. Complete lack of a training program.
  • 11. 0Level 3, Undermining —Total neglect of own charter, conscious discrediting of peer organizations software process improvement efforts. Rewarding failure and poor performance. 037.1.3 Is SPI for Everyone? 0For many years, SPI was viewed as a “corporate” activity—a euphemism for something that only large companies perform. But today, a significant percentage of all software development is being performed by companies that employ fewer than 100 people.
  • 12. 37.2 THE SPI PROCESS 0 The hard part of SPI isn’t the definition of characteristics that define a high quality software process or the creation of a process maturity model. Those things are relatively easy. Rather, the hard part is establishing a consensus for initiating SPI and defining an ongoing strategy for implementing it across a software organization. 0 The Software Engineering Institute has developed IDEAL— “an organizational improvement model that serves as a road map for initiating, planning, and implementing improvement actions” [SEI08]. IDEAL is representative of many process models for SPI, defining five distinct activities— initiating, diagnosing, establishing, acting, and learning—that guide an organization through SPI activities.
  • 13. 37.2.1 Assessment and Gap Analysis 0 Any attempt to improve your current software process without first assessing the efficacy of current framework activities and associated software engineering practices would be like starting on a long journey to a new location with no idea where you are starting from. 0 Each is considered within the context of the framework activities (Chapter 3) that have been established, and is each assessed to determine whether all of the following questions have been addressed:
  • 14. Is the objective of the activity clearly defined? • Are work products required as input and produced as output identified and described? • Are the work tasks to be performed clearly described? • Are the people who must perform the activity identifi ed by role? • Have entry and exit criteria been established? • Have metrics for the activity been established? • Are tools available to support the activity? • Is there an explicit training program that addresses the activity? • Is the activity performed uniformly for all projects?
  • 15. 0 As the process assessment is conducted, you (or those who have been hired to perform the assessment) should also focus on the following issues: 0 Consistency. Are important activities, actions, and tasks applied consistently across all software projects and by all software teams? 0 Sophistication. Are management and technical actions performed with a level of sophistication that implies a thorough understanding of best practice? 0 Acceptance. Is the software process and software engineering practice 0 widely accepted by management and technical staff? 0 Commitment. Has management committed the resources required to achieve consistency, sophistication, and acceptance?
  • 16. 37.2.2 Education and Training 0 Although few software people question the benefit of an agile, organized software process or solid software engineering practices, many practitioners and managers do not know enough about either subject. 0 37.2.3 Selection and Justification 0 Once the initial assessment activity 5 has been completed and education has begun, a software organization should begin to make choices. These choice occur during a selection and justification activity in which process characteristics and specific software engineering methods and tools are chosen to populatethe software process.
  • 17. 0 First, you should choose the process model (Chapters 3–5) that best fits your organization, its stakeholders, and the software that you build. You should decide which of the set of framework activities will be applied, the major work products that will be produced, and the quality assurance checkpoints that will enable your team to assess progress. 0 Next, develop an adaptable work breakdown for each framework activity (e.g., modeling), defining the task set that would be applied for a typical project.
  • 18. 37.2.4 Installation/Migration 0 Installation is the first point at which a software organization feels the effects of changes implemented as a consequence of the SPI road map. In some cases, an entirely new process is recommended for an organization. Framework activities, software engineering actions, and individual work tasks must be defined and installed as part of a new software engineering culture. 0 Installation and migration are actually software process redesign (SPR) activities. Scacchi [Sca00] states that “SPR is concerned with identification, application, and refinement of new ways to dramatically improve and transform 0 software processes.”
  • 19. 37.2.5 Evaluation 0 Although it is listed as the last activity in the SPI road map, evaluation occurs throughout SPI. The evaluation activity assesses the degree to which changes have been instantiated and adopted, the degree to which such changes result in better software quality or other tangible process benefits, and the overall status of the process and the organizational culture as SPI activities proceed.
  • 20. 371. 2.6 Risk Management for SPI Management for SPI 0 SPI is a risky undertaking. In fact, more than half of all SPI efforts end in failure. The reasons for failure vary greatly and are organizationally specific. Among the most common risks are: a lack of management support, cultural resistance by technical staff, a poorly planned SPI strategy, an overly formal approach to SPI, selection of an inappropriate process, a lack of buy-in by key stakeholders, an inadequate budget, a lack of staff training, organizational instability, and a myriad of other factors.
  • 21. 37.3 THE CMMI 0 The original CMM was developed and upgraded by the Software Engineering Institute throughout the 1990s as a complete SPI framework. Today, it has evolved into the Capability Maturity Model Integration (CMMI) [CMM07], a comprehensive process meta-model that is predicated on a set of system and software engineering capabilities that should be present as organizations reach different levels of process capability and maturity.
  • 22.
  • 23. 0 The CMMI represents a process meta-model in two different ways: (1) as a “continuous” model and (2) as a “staged” model. The continuous CMMI meta-model describes a process in two dimensions as illustrated in Figure 37.2 . Each process area (e.g., project planning or requirements management) is formally assessed against specific goals and practices and is rated according to the following capability levels: 0 Level 0: Incomplete — The process area (e.g., requirements management) is either not performed or does not achieve all goals and objectives defined by the CMMI for level 1 capability for the process area. 0 Level 1: Performed — All of the specific goals of the process area (as 0 defined by the CMMI) have been satisfied. Work tasks required to produce defined work products are being conducted. 0 Level 2: Managed — All capability level 1 criteria have been satisfied. In addition, all work associated with the process area conforms to an organizationally defined policy; all people doing the work have access to adequate resources to get the job done; stakeholders are actively involved in the process area as required; all work tasks and work products are “monitored, controlled, and reviewed; and are evaluated for adherence to the process description” [CMM07].
  • 24. 0 Level 3: Defined — All capability level 2 criteria have been achieved. In addition, the process is “tailored from the organization’s set of standard processes according to the organization’s tailoring guidelines, and contributes work products, measures, and other process-improvement information to the organizational process assets” [CMM07]. 0 Level 4: Quantitatively managed — All capability level 3 criteria have been achieved. In addition, the process area is controlled and improved using measurement and quantitative assessment. “Quantitative objectives for quality and process performance are established and used as criteria in managing the process” [CMM07]. 0 Level 5: Optimized — All capability level 4 criteria have been achieved. In addition, the process area is adapted and optimized using quantitative(statistical) means to meet changing customer needs and to continue all improve the efficacy of the process area under consideration