SlideShare une entreprise Scribd logo
1  sur  30
Software Engineering
(CSI 321)
Software Process: A Generic View
1
Software Process : Overview
• What? A software process is a series of predictable
steps that leads to a timely, high-quality product.
• Who? Managers, software engineers, and
customers.
• Why? Provides stability, control, and organization to
an otherwise chaotic activity.
• Steps? A handful of activities are common to all
software processes, details vary.
• Work product? Programs, documents, and data.
• Correct process? Assessment, quality deliverable.
2
Software Engineering
• Software engineering is the establishment and use of
sound engineering principles in order to obtain
economically software that is reliable and works
efficiently on real machines.
• Software engineering is an engineering discipline
that is concerned with all aspects of software
production.
3
Software Engineering
• Software Engineering: (1) The application of a
systematic, disciplined, quantifiable approach to the
development, operation, and maintenance of
software; that is, the application of engineering to
software. (2) The study of approaches as in (1).
- IEEE Standard 610.12-1990
4
Software Engineering
• A strategy for producing high quality software.
• Software Engineering is a layered technology.
• Software engineering encompasses a process,
methods, and tools.
• Quality focus is the bedrock that supports software
engineering.
5
Software Engineering
• Software Engineering –A Layered Technology
6
Tools
MethodsMethods
ProcessProcess
A “quality” focusA “quality” focus
Process
• A software process is the set of activities and associated results that
are involved in developing software products.
• Foundation for software engineering.
• A software process defines a framework that must be established
for effective delivery of software engineering technology.
• A software process is a framework for the tasks that are required to
build high-quality software.
• Software process forms the basis for management control of
software projects, establishes the context in which technical
methods are applied, work products are produced, milestones are
established, quality is ensured, and change is properly managed.
7
Methods
• A software engineering method is a structured approach
to software development whose aim is to facilitate the
production of high-quality software in a cost-effective
way.
• Software engineering methods provide the technical
“how to’s” for building software.
• Methods are organized ways of producing software.
• Methods encompass a broad array of tasks –
– Communication
– Requirements analysis
– Design
– Program construction
– Testing
– Support
8
Tools
• Provide support for the process & methods
• Automation/semi-automation
• Computer-aided software engineering (CASE)
9
A Process Framework
• A process framework establishes the foundation for a
complete software process by identifying a small
number of framework activities that are applicable to
all software projects, regardless of size/complexity.
• In addition, the process framework encompasses a
set of umbrella activities that are applicable across
the entire software process.
10
Generic Process Framework Activities
 Five generic process framework activities
are:
1) Communication
2) Planning
3) Modeling
4) Construction
5) Deployment
11
Generic Process Framework Activities
 1. Communication
– Involves heavy communication and collaboration
with the customer and other stakeholders
– Encompasses requirements gathering and other
related activities
12
Generic Process Framework Activities
 2. Planning
– Establishes a plan for the software engineering
work that follows
– Describes technical tasks, risks, resources, work
product, and work schedule
13
Generic Process Framework Activities
 3. Modeling:
– Encompasses the creation of models that allow
the developer and customer to better understand
software requirements and the design that will
achieve those requirements
– Analysis of Requirements
– Design
14
Generic Process Framework Activities
 4. Construction:
–Code generation
–Testing
15
Generic Process Framework Activities
 5. Deployment:
– Software is delivered to customer who evaluates
the delivered product and provides feedback.
16
Umbrella Activities
• The generic process framework activities are
complemented by a set of umbrella activities that
persist across the entire software process.
• Each of these umbrella activities is defined by a set
of tasks that are adapted to the project type and
degree of rigor with which software engineering is to
be applied.
• Umbrella activities occur throughout the software
process and focus primarily on project management,
tracking and control.
17
What are the Umbrella Activities ?
• Umbrella Activities –
– Software project management
– Formal technical reviews
– Software quality assurance
– Software configuration management
– Work product preparation and production
– Reusability management
– Measurement
– Risk management
18
The Process Model: Adaptability
 The framework activities will always be applied on every
project ... BUT different projects demand different task sets.
 The tasks (and degree of rigor) for each activity will vary
based on:
– the type of project
– characteristics of the project
– common sense judgment
– concurrence of the project team
 Software process adaptation is essential for project success.
 Software team chooses the task set based on problem and
project characteristics.
19
Process Assessment
• The existence of a software process is no guarantee that
software will be delivered on time, that it will meet the
customer’s needs, or that it will exhibit the technical
characteristics that will lead to long-term quality
characteristics.
• Assessment attempts to understand the current state of the
software process with the intent of improving it.
• Formal techniques for assessing software process –
– CMMI
– SPICE
– ISO 9001:2000 for Software
20
The CMMI
 The Software Engineering Institute (SEI) has developed
Capability Maturity Model Integration (CMMI). CMMI is a
process improvement approach whose goal is to help
organizations improve their performance.
 CMMI is a model for judging the maturity of software
processes of an organization & for identifying the key
practices that are required to increase the maturity of these
processes.
 CMMI is a comprehensive process meta-model that describes
the specific goals, practices, and capabilities that should be
present in a mature software process.
21
The CMMI
• The CMMI defines each process area in terms of
“specific goals” and the “specific practices” required
to achieve these goals.
• Specific goals establish the characteristics that must
exist if the activities implied by a process area are to
be effective.
• Specific practices refine a goal into a set of process-
related activities.
22
The Maturity Levels of CMMI
• Maturity levels consist of a predefined set of process areas.
The maturity levels are measured by the achievement of the
specific and generic goals that apply to each predefined set
of process areas.
 There are five maturity levels of CMMI:
 Level 1 : Initial
 Level 2 : Managed
 Level 3 : Defined
 Level 4 : Quantitatively Managed
 Level 5 : Optimized
23
Main focuses of different levels
 Initial ==> Ad-hoc/chaotic
 Managed ==> Basic Project Management
 Defined ==> Process Standardization
 Quantitatively Managed ==> Quantitative
management
 Optimized ==> Continuous process improvement
24
Level 1 - Initial
• No KPAs defined at this level [KPA- Key Process Area]
• Ad-hoc/Chaotic approach to software design
• The starting point for use of a new process
• The organization usually does not provide a stable
environment. Organizations often produce products and
services that work; however, they frequently exceed the
budget and schedule of their projects.
• Organizations are characterized by a tendency to over
commit, abandon processes in the time of crisis, and not be
able to repeat their past successes.
25
Level 2 - Managed
 7 KPAs are defined at this level-
1) Configuration Management(CM)
2) Measurement & Analysis(MA)
3) Project Monitoring & Control(PMC)
4) Project Planning(PP)
5) Process & Product Quality Assurance
6) Requirements Managements(REQM)
7) Supplier Agreement Management(SAM)
26
Level 2 - Managed
• At maturity level-2, an organization has achieved all the
specific and generic goals of the maturity level-2 process
areas. In other words, the projects of the organization have
ensured that requirements are managed and that processes
are planned, performed, measured, and controlled.
• The process discipline reflected by maturity level-2 helps to
ensure that existing practices are retained during times of
stress. When these practices are in place, projects are
performed and managed according to their documented
plans.
27
Level 3 - Defined
• Focuses on Process Standardization
• The process is defined as a standard business process.
• KPAs of Level-2 + 14 KPAs (e.g. Verification, validation, Risk
management )
• At maturity level-3, processes are well characterized and
understood, and are described in standards, procedures,
tools, and methods.
• A critical distinction between maturity level-2 and maturity
level 3 is the scope of standards, process descriptions, and
procedures. Processes are typically described in more detail
and more rigorously than at maturity level-2.
28
Level 4 - Quantitatively Managed
• Focuses on Quantitative management
• All level-3 KPAs + 2 KPAs
– Organizational Process Performance
– Quantitative Project Management
• At maturity level 4, Sub-processes are selected that significantly
contribute to overall process performance. These selected sub-processes
are controlled using statistical and other quantitative techniques.
• Quality and process performance measures are incorporated into the
organization’s measurement repository to support fact-based decision
making in the future.
• A critical distinction between maturity level 3 and maturity level 4 is the
predictability of process performance.
29
Level 5 - Optimized
• Continuous process improvement to meet changing customer
needs
• Improve efficiency of the process area
• All Level 4 KPAs + 2 KPAs
– Organizational Innovation and Deployment
– Causal Analysis and Resolution
• Focuses on continually improving process performance through
both incremental and innovative technological improvements.
• Optimizing processes that are agile and innovative depends on the
participation of an empowered workforce aligned with the business
values and objectives of the organization.
30

Contenu connexe

Tendances

CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelmohamed khalaf alla mohamedain
 
Modules and modularization criteria
Modules and modularization criteriaModules and modularization criteria
Modules and modularization criteriaUmaselvi_R
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)Er. Shiva K. Shrestha
 
Defining the Problem - Goals and requirements
Defining the Problem - Goals and requirementsDefining the Problem - Goals and requirements
Defining the Problem - Goals and requirementsStephennancy
 
Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24koolkampus
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineeringPreeti Mishra
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factorsNancyBeaulah_R
 
Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle modelStephennancy
 
software project management Artifact set(spm)
software project management Artifact set(spm)software project management Artifact set(spm)
software project management Artifact set(spm)REHMAT ULLAH
 
Improving software economics
Improving software economicsImproving software economics
Improving software economicsdeep sharma
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design conceptssrijavel
 
Design concept -Software Engineering
Design concept -Software EngineeringDesign concept -Software Engineering
Design concept -Software EngineeringVarsha Ajith
 
Evolutionary models
Evolutionary modelsEvolutionary models
Evolutionary modelsPihu Goel
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationAjit Nayak
 
Spiral model presentation
Spiral model presentationSpiral model presentation
Spiral model presentationSayedFarhan110
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modelingramyaaswin
 

Tendances (20)

CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
 
Modules and modularization criteria
Modules and modularization criteriaModules and modularization criteria
Modules and modularization criteria
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Defining the Problem - Goals and requirements
Defining the Problem - Goals and requirementsDefining the Problem - Goals and requirements
Defining the Problem - Goals and requirements
 
Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Unit 2
Unit 2Unit 2
Unit 2
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle model
 
software project management Artifact set(spm)
software project management Artifact set(spm)software project management Artifact set(spm)
software project management Artifact set(spm)
 
Design techniques
Design techniquesDesign techniques
Design techniques
 
Improving software economics
Improving software economicsImproving software economics
Improving software economics
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design concepts
 
Design concept -Software Engineering
Design concept -Software EngineeringDesign concept -Software Engineering
Design concept -Software Engineering
 
Analysis modeling
Analysis modelingAnalysis modeling
Analysis modeling
 
Evolutionary models
Evolutionary modelsEvolutionary models
Evolutionary models
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Spiral model presentation
Spiral model presentationSpiral model presentation
Spiral model presentation
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling
 
3. ch 2-process model
3. ch 2-process model3. ch 2-process model
3. ch 2-process model
 

Similaire à Software Engineering (Software Process: A Generic View)

Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2Rupesh Vaishnav
 
eUnit 2 software process model
eUnit 2  software process modeleUnit 2  software process model
eUnit 2 software process modelPreeti Mishra
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineeringMuhammadTalha436
 
Capability maturity model cmm lecture 8
Capability maturity model cmm lecture 8Capability maturity model cmm lecture 8
Capability maturity model cmm lecture 8Abdul Basit
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)ShudipPal
 
CMMI Version 1.2
CMMI Version 1.2CMMI Version 1.2
CMMI Version 1.2QAI
 
CMMI v 1.2 Basics
CMMI v 1.2 BasicsCMMI v 1.2 Basics
CMMI v 1.2 BasicsQAI
 
Process improvement & service oriented software engineering
Process improvement & service oriented software engineeringProcess improvement & service oriented software engineering
Process improvement & service oriented software engineeringSweta Kumari Barnwal
 
A generic view of software engineering
A generic view of software engineeringA generic view of software engineering
A generic view of software engineeringInocentshuja Ahmad
 
Software matrics and measurement
Software matrics and measurementSoftware matrics and measurement
Software matrics and measurementGurpreet Saini
 
Chapter 5 Software Quality Assurance-Finalised_BW.ppt
Chapter 5 Software Quality Assurance-Finalised_BW.pptChapter 5 Software Quality Assurance-Finalised_BW.ppt
Chapter 5 Software Quality Assurance-Finalised_BW.pptBule Hora University
 
Software process improvement.ppt
Software process improvement.pptSoftware process improvement.ppt
Software process improvement.pptImXaib
 
Introduction of software engineering
Introduction of software engineeringIntroduction of software engineering
Introduction of software engineeringBhagyashriMore10
 
Beit 381 se lec 14 - 35 - 12 mar21 - sqa - iso and cmm
Beit 381 se lec 14 - 35  - 12 mar21 - sqa - iso and cmmBeit 381 se lec 14 - 35  - 12 mar21 - sqa - iso and cmm
Beit 381 se lec 14 - 35 - 12 mar21 - sqa - iso and cmmbabak danyal
 
Deciding the software development life cycle procedure (according to iso12207)
Deciding the software development life cycle procedure (according to iso12207)Deciding the software development life cycle procedure (according to iso12207)
Deciding the software development life cycle procedure (according to iso12207)Fatih Algün
 
Deciding the software development life cycle procedure (according to iso12207)
Deciding the software development life cycle procedure (according to iso12207)Deciding the software development life cycle procedure (according to iso12207)
Deciding the software development life cycle procedure (according to iso12207)Fatih Algün
 
Software process model
Software process modelSoftware process model
Software process modelUmar Farooq
 
chapter2-softwareprocessmodels-190805164811.pdf
chapter2-softwareprocessmodels-190805164811.pdfchapter2-softwareprocessmodels-190805164811.pdf
chapter2-softwareprocessmodels-190805164811.pdfsomnathmule3
 

Similaire à Software Engineering (Software Process: A Generic View) (20)

Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
 
eUnit 2 software process model
eUnit 2  software process modeleUnit 2  software process model
eUnit 2 software process model
 
Software Process in software engineering
Software Process in software engineeringSoftware Process in software engineering
Software Process in software engineering
 
Capability maturity model cmm lecture 8
Capability maturity model cmm lecture 8Capability maturity model cmm lecture 8
Capability maturity model cmm lecture 8
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)
 
CMMI Version 1.2
CMMI Version 1.2CMMI Version 1.2
CMMI Version 1.2
 
CMMI v 1.2 Basics
CMMI v 1.2 BasicsCMMI v 1.2 Basics
CMMI v 1.2 Basics
 
Process improvement & service oriented software engineering
Process improvement & service oriented software engineeringProcess improvement & service oriented software engineering
Process improvement & service oriented software engineering
 
A generic view of software engineering
A generic view of software engineeringA generic view of software engineering
A generic view of software engineering
 
SE UNIT 1 PART 1.pdf
SE UNIT 1 PART 1.pdfSE UNIT 1 PART 1.pdf
SE UNIT 1 PART 1.pdf
 
Software matrics and measurement
Software matrics and measurementSoftware matrics and measurement
Software matrics and measurement
 
Chapter 5 Software Quality Assurance-Finalised_BW.ppt
Chapter 5 Software Quality Assurance-Finalised_BW.pptChapter 5 Software Quality Assurance-Finalised_BW.ppt
Chapter 5 Software Quality Assurance-Finalised_BW.ppt
 
Software process improvement.ppt
Software process improvement.pptSoftware process improvement.ppt
Software process improvement.ppt
 
Introduction of software engineering
Introduction of software engineeringIntroduction of software engineering
Introduction of software engineering
 
Beit 381 se lec 14 - 35 - 12 mar21 - sqa - iso and cmm
Beit 381 se lec 14 - 35  - 12 mar21 - sqa - iso and cmmBeit 381 se lec 14 - 35  - 12 mar21 - sqa - iso and cmm
Beit 381 se lec 14 - 35 - 12 mar21 - sqa - iso and cmm
 
Deciding the software development life cycle procedure (according to iso12207)
Deciding the software development life cycle procedure (according to iso12207)Deciding the software development life cycle procedure (according to iso12207)
Deciding the software development life cycle procedure (according to iso12207)
 
Deciding the software development life cycle procedure (according to iso12207)
Deciding the software development life cycle procedure (according to iso12207)Deciding the software development life cycle procedure (according to iso12207)
Deciding the software development life cycle procedure (according to iso12207)
 
Software process model
Software process modelSoftware process model
Software process model
 
Software Process
Software ProcessSoftware Process
Software Process
 
chapter2-softwareprocessmodels-190805164811.pdf
chapter2-softwareprocessmodels-190805164811.pdfchapter2-softwareprocessmodels-190805164811.pdf
chapter2-softwareprocessmodels-190805164811.pdf
 

Plus de ShudipPal

Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)ShudipPal
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)ShudipPal
 
Software Engineering (Requirements Engineering & Software Maintenance)
Software Engineering (Requirements Engineering  & Software Maintenance)Software Engineering (Requirements Engineering  & Software Maintenance)
Software Engineering (Requirements Engineering & Software Maintenance)ShudipPal
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)ShudipPal
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)ShudipPal
 
Software Engineering (Testing Activities, Management, and Automation)
Software Engineering (Testing Activities, Management, and Automation)Software Engineering (Testing Activities, Management, and Automation)
Software Engineering (Testing Activities, Management, and Automation)ShudipPal
 
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...ShudipPal
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)ShudipPal
 
Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)ShudipPal
 
Software Engineering (Risk Management)
Software Engineering (Risk Management)Software Engineering (Risk Management)
Software Engineering (Risk Management)ShudipPal
 
Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)ShudipPal
 
Software Engineering (Project Management )
Software Engineering (Project  Management )Software Engineering (Project  Management )
Software Engineering (Project Management )ShudipPal
 
Software Engineering (An Agile View of Process)
Software Engineering (An Agile View of Process)Software Engineering (An Agile View of Process)
Software Engineering (An Agile View of Process)ShudipPal
 
Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)ShudipPal
 
Software Engineering (Introduction)
Software Engineering (Introduction)Software Engineering (Introduction)
Software Engineering (Introduction)ShudipPal
 

Plus de ShudipPal (15)

Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)
 
Software Engineering (Requirements Engineering & Software Maintenance)
Software Engineering (Requirements Engineering  & Software Maintenance)Software Engineering (Requirements Engineering  & Software Maintenance)
Software Engineering (Requirements Engineering & Software Maintenance)
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)
 
Software Engineering (Testing Activities, Management, and Automation)
Software Engineering (Testing Activities, Management, and Automation)Software Engineering (Testing Activities, Management, and Automation)
Software Engineering (Testing Activities, Management, and Automation)
 
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)
 
Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)
 
Software Engineering (Risk Management)
Software Engineering (Risk Management)Software Engineering (Risk Management)
Software Engineering (Risk Management)
 
Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)
 
Software Engineering (Project Management )
Software Engineering (Project  Management )Software Engineering (Project  Management )
Software Engineering (Project Management )
 
Software Engineering (An Agile View of Process)
Software Engineering (An Agile View of Process)Software Engineering (An Agile View of Process)
Software Engineering (An Agile View of Process)
 
Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)
 
Software Engineering (Introduction)
Software Engineering (Introduction)Software Engineering (Introduction)
Software Engineering (Introduction)
 

Dernier

18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 

Dernier (20)

18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 

Software Engineering (Software Process: A Generic View)

  • 1. Software Engineering (CSI 321) Software Process: A Generic View 1
  • 2. Software Process : Overview • What? A software process is a series of predictable steps that leads to a timely, high-quality product. • Who? Managers, software engineers, and customers. • Why? Provides stability, control, and organization to an otherwise chaotic activity. • Steps? A handful of activities are common to all software processes, details vary. • Work product? Programs, documents, and data. • Correct process? Assessment, quality deliverable. 2
  • 3. Software Engineering • Software engineering is the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines. • Software engineering is an engineering discipline that is concerned with all aspects of software production. 3
  • 4. Software Engineering • Software Engineering: (1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1). - IEEE Standard 610.12-1990 4
  • 5. Software Engineering • A strategy for producing high quality software. • Software Engineering is a layered technology. • Software engineering encompasses a process, methods, and tools. • Quality focus is the bedrock that supports software engineering. 5
  • 6. Software Engineering • Software Engineering –A Layered Technology 6 Tools MethodsMethods ProcessProcess A “quality” focusA “quality” focus
  • 7. Process • A software process is the set of activities and associated results that are involved in developing software products. • Foundation for software engineering. • A software process defines a framework that must be established for effective delivery of software engineering technology. • A software process is a framework for the tasks that are required to build high-quality software. • Software process forms the basis for management control of software projects, establishes the context in which technical methods are applied, work products are produced, milestones are established, quality is ensured, and change is properly managed. 7
  • 8. Methods • A software engineering method is a structured approach to software development whose aim is to facilitate the production of high-quality software in a cost-effective way. • Software engineering methods provide the technical “how to’s” for building software. • Methods are organized ways of producing software. • Methods encompass a broad array of tasks – – Communication – Requirements analysis – Design – Program construction – Testing – Support 8
  • 9. Tools • Provide support for the process & methods • Automation/semi-automation • Computer-aided software engineering (CASE) 9
  • 10. A Process Framework • A process framework establishes the foundation for a complete software process by identifying a small number of framework activities that are applicable to all software projects, regardless of size/complexity. • In addition, the process framework encompasses a set of umbrella activities that are applicable across the entire software process. 10
  • 11. Generic Process Framework Activities  Five generic process framework activities are: 1) Communication 2) Planning 3) Modeling 4) Construction 5) Deployment 11
  • 12. Generic Process Framework Activities  1. Communication – Involves heavy communication and collaboration with the customer and other stakeholders – Encompasses requirements gathering and other related activities 12
  • 13. Generic Process Framework Activities  2. Planning – Establishes a plan for the software engineering work that follows – Describes technical tasks, risks, resources, work product, and work schedule 13
  • 14. Generic Process Framework Activities  3. Modeling: – Encompasses the creation of models that allow the developer and customer to better understand software requirements and the design that will achieve those requirements – Analysis of Requirements – Design 14
  • 15. Generic Process Framework Activities  4. Construction: –Code generation –Testing 15
  • 16. Generic Process Framework Activities  5. Deployment: – Software is delivered to customer who evaluates the delivered product and provides feedback. 16
  • 17. Umbrella Activities • The generic process framework activities are complemented by a set of umbrella activities that persist across the entire software process. • Each of these umbrella activities is defined by a set of tasks that are adapted to the project type and degree of rigor with which software engineering is to be applied. • Umbrella activities occur throughout the software process and focus primarily on project management, tracking and control. 17
  • 18. What are the Umbrella Activities ? • Umbrella Activities – – Software project management – Formal technical reviews – Software quality assurance – Software configuration management – Work product preparation and production – Reusability management – Measurement – Risk management 18
  • 19. The Process Model: Adaptability  The framework activities will always be applied on every project ... BUT different projects demand different task sets.  The tasks (and degree of rigor) for each activity will vary based on: – the type of project – characteristics of the project – common sense judgment – concurrence of the project team  Software process adaptation is essential for project success.  Software team chooses the task set based on problem and project characteristics. 19
  • 20. Process Assessment • The existence of a software process is no guarantee that software will be delivered on time, that it will meet the customer’s needs, or that it will exhibit the technical characteristics that will lead to long-term quality characteristics. • Assessment attempts to understand the current state of the software process with the intent of improving it. • Formal techniques for assessing software process – – CMMI – SPICE – ISO 9001:2000 for Software 20
  • 21. The CMMI  The Software Engineering Institute (SEI) has developed Capability Maturity Model Integration (CMMI). CMMI is a process improvement approach whose goal is to help organizations improve their performance.  CMMI is a model for judging the maturity of software processes of an organization & for identifying the key practices that are required to increase the maturity of these processes.  CMMI is a comprehensive process meta-model that describes the specific goals, practices, and capabilities that should be present in a mature software process. 21
  • 22. The CMMI • The CMMI defines each process area in terms of “specific goals” and the “specific practices” required to achieve these goals. • Specific goals establish the characteristics that must exist if the activities implied by a process area are to be effective. • Specific practices refine a goal into a set of process- related activities. 22
  • 23. The Maturity Levels of CMMI • Maturity levels consist of a predefined set of process areas. The maturity levels are measured by the achievement of the specific and generic goals that apply to each predefined set of process areas.  There are five maturity levels of CMMI:  Level 1 : Initial  Level 2 : Managed  Level 3 : Defined  Level 4 : Quantitatively Managed  Level 5 : Optimized 23
  • 24. Main focuses of different levels  Initial ==> Ad-hoc/chaotic  Managed ==> Basic Project Management  Defined ==> Process Standardization  Quantitatively Managed ==> Quantitative management  Optimized ==> Continuous process improvement 24
  • 25. Level 1 - Initial • No KPAs defined at this level [KPA- Key Process Area] • Ad-hoc/Chaotic approach to software design • The starting point for use of a new process • The organization usually does not provide a stable environment. Organizations often produce products and services that work; however, they frequently exceed the budget and schedule of their projects. • Organizations are characterized by a tendency to over commit, abandon processes in the time of crisis, and not be able to repeat their past successes. 25
  • 26. Level 2 - Managed  7 KPAs are defined at this level- 1) Configuration Management(CM) 2) Measurement & Analysis(MA) 3) Project Monitoring & Control(PMC) 4) Project Planning(PP) 5) Process & Product Quality Assurance 6) Requirements Managements(REQM) 7) Supplier Agreement Management(SAM) 26
  • 27. Level 2 - Managed • At maturity level-2, an organization has achieved all the specific and generic goals of the maturity level-2 process areas. In other words, the projects of the organization have ensured that requirements are managed and that processes are planned, performed, measured, and controlled. • The process discipline reflected by maturity level-2 helps to ensure that existing practices are retained during times of stress. When these practices are in place, projects are performed and managed according to their documented plans. 27
  • 28. Level 3 - Defined • Focuses on Process Standardization • The process is defined as a standard business process. • KPAs of Level-2 + 14 KPAs (e.g. Verification, validation, Risk management ) • At maturity level-3, processes are well characterized and understood, and are described in standards, procedures, tools, and methods. • A critical distinction between maturity level-2 and maturity level 3 is the scope of standards, process descriptions, and procedures. Processes are typically described in more detail and more rigorously than at maturity level-2. 28
  • 29. Level 4 - Quantitatively Managed • Focuses on Quantitative management • All level-3 KPAs + 2 KPAs – Organizational Process Performance – Quantitative Project Management • At maturity level 4, Sub-processes are selected that significantly contribute to overall process performance. These selected sub-processes are controlled using statistical and other quantitative techniques. • Quality and process performance measures are incorporated into the organization’s measurement repository to support fact-based decision making in the future. • A critical distinction between maturity level 3 and maturity level 4 is the predictability of process performance. 29
  • 30. Level 5 - Optimized • Continuous process improvement to meet changing customer needs • Improve efficiency of the process area • All Level 4 KPAs + 2 KPAs – Organizational Innovation and Deployment – Causal Analysis and Resolution • Focuses on continually improving process performance through both incremental and innovative technological improvements. • Optimizing processes that are agile and innovative depends on the participation of an empowered workforce aligned with the business values and objectives of the organization. 30