Unit 1
Unit 1
(Autonomous)
UNIT NO:1
Dept. of CSE
List of the Topics
The evolving role of software
Changing Nature of Software
Software myths
Software engineering- A layered
technology
Process framework
The Capability Maturity Model Integration
(CMMI)
Process patterns
Process assessment
Personal and team process models
Dept. of CSE
Text Books
Dept. of CSE
Reference Books
Software Engineering- K.K. Agarwal & Yogesh Singh,
New Age International Publishers
Dept. of CSE
Objective of the Unit
Dept. of CSE
Outcome of the Unit
Dept. of CSE
Pre-requisites
Dept. of CSE
Revision of the connected subject
What is Computer?
What is Software?
What is Hardware?
Dept. of CSE
The Evolving role of software
- Information transformer-
producing, managing and displaying
A Vehicle for delivering a product
Dept. of CSE
Definition of Engineering
Dept. of CSE
CHARACTERISTICS OF HARDWARE
“Infant
mortality” “Wear out”
Failure rate
Time
Dept. of CSE
CHARACTERISTICS OF SOFTWARE
Dept. of CSE
THE CHANGING NATURE OF SOFTWARE
Seven Broad Categories of software are challenges for
software engineers
System software
Application software
Engineering and scientific software
Embedded software
Product-line software
Web-applications
Artificial intelligence software
Dept. of CSE
System software. System software is a collection of
programs written to service other programs
Embedded software
It resides in read-only memory
It is used to control products and systems for the
consumer and industrial markets.
Artificial intelligence software. Artificial
intelligence (AI) software makes use of nonnumeric
algorithms to solve complex problems that are not
amenable to computation or straightforward analysis
Engineering and scientific software. Engineering
and scientific software have been characterized by
"number crunching" algorithms.
Dept. of CSE
LEGACY SOFTWARE
Dept. of CSE
As time passes legacy systems evolve due to
following reasons:
The software must be adapted to meet the needs of
new computing environment or technology.
The software must be enhanced to implement new
business requirements.
The software must be extended to make it
interoperable with more modern systems or
database
The software must be rearchitected to make it
viable within a network environment.
Dept. of CSE
Software Evolution
Software evolves due to changes
Changes occur due to correction, adaption and
enhancement
8 Laws of unified theory
The Law of Continuing Change.
Stability.
Dept. of CSE
The Law of Conservation of Familiarity
Dept. of CSE
SOFTWARE MYTHS
Widely held but false view
Propagate misinformation and confusion
Three types of myth
- Management myth
- Customer myth
- Practitioner’s myth
Dept. of CSE
MANAGEMENT MYTHS
Myth(1)
-The available standards and procedures
for software
are enough.
Myth(2)
-Each organization feel that they have state-of-art
software development tools since they have latest
computer.
Dept. of CSE
Myth(3)
-Adding more programmers when the work is behind
schedule can catch up.
Myth(4)
-Outsourcing the software project to third party, we
can relax and let that party build it.
Dept. of CSE
CUSTOMER MYTH
Myth(1)
- General statement of objective is enough to begin
writing programs, the details can be filled in later.
Myth(2)
-Software is easy to change because software is
flexible
Dept. of CSE
PRACTITIONER’S MYTH
Myth(1)
-Once the program is written, the job has been done.
Myth(2)
-Until the program is running, there is no way of
assessing the quality.
Dept. of CSE
Myth(3)
-The only deliverable work product is the working
program
Myth(4)
-Software Engineering creates voluminous and
unnecessary documentation and invariably slows
down software development.
Dept. of CSE
Important questions
Dept. of CSE
SOFTWARE ENGINEERING-A LAYERED
TECHNOLOGY
Tools
Methods
Process
Quality of Focus
Dept. of CSE
SOFTWARE ENGINEERING-A LAYERED
TECHNOLOGY
Quality focus
- Bedrock that supports software Engineering.
Process
- Foundation for software Engineering
Methods
- Provide technical How-to’s for building software
Tools
- Provide semi-automatic and automatic support
to methods
Dept. of CSE
A PROCESS FRAMEWORK
Establishes the foundation for a complete software
process
Dept. of CSE
A PROCESS FRAMEWORK
Common process framework
Framework activities
Task sets
TTTasks
Milestones,delierables
SQA points
Umbrella activities
Dept. of CSE
A PROCESS FRAMEWORK
Used as a basis for the description of process models
Generic process activities
Communication
Planning
Modeling
Construction
Deployment
Dept. of CSE
A PROCESS FRAMEWORK
Generic view of engineering complimented by a
number of umbrella activities
Software project tracking and control
Formal technical reviews
Software quality assurance
Software configuration management
Document preparation and production
Reusability management
Measurement
Risk management
Dept. of CSE
CAPABILITY MATURITY MODEL
INTEGRATION(CMMI)
Dept. of CSE
CMMI process meta model can be represented in
different ways
1.A continuous model
2.A staged model
Continuous model:
-Lets organization select specific improvement that best
meet its business objectives and minimize risk
-Levels are called capability levels.
-Describes a process in 2 dimensions
-Each process area is assessed against specific goals and
practices and is rated according to the following
capability
Dept. of CSE
CMMI
Six levels of CMMI
Level 0:Incomplete
Level 1:Performed
Level 2:Managed
Level 3:Defined
Level 4:Quantitatively managed
Level 5:Optimized
Dept. of CSE
CMMI
Incomplete
-Process is adhoc.Objective and goal of process areas
are not known
Performed
-Goal,objective,work tasks,work products and other
activities of software process are carried out
Managed
-Activities are monitored, reviewed, evaluated and
controlled
Dept. of CSE
Defined
-Activities are standardized, integrated and
documented
Quantitatively Managed
-Metrics and indicators are available to measure the
process and quality
Optimized
- Continuous process improvement based on
quantitative feed back from the user
-Use of innovative ideas and techniques, statistical
quality control and other methods for process
improvement.
Dept. of CSE
CMMI
Staged model
-This model is used if you have no clue of how to
improve the process for quality software.
Dept. of CSE
LEVEL FOCUS PROCESS AREA
Optimizing Continuous process -Organizational Innovation and
Improvement Deployment
-Causal Analysis and Resolution
Dept. of CSE
−Integrated Teaming
−Integrated Supplier
Management
−Decision Analysis and
Resolution
−Organizational Environment
for Integration
Managed Basic project management Requirements Management
Project Planning
Project Monitoring and
Control
Supplier Agreement
Measurement and Analysis
Process and Product
Quality Assurance
Configuration Management
Performed
Dept. of CSE
PROCESS PATTERNS
Software Process is defined as collection of Patterns
Process Template
-Pattern Name
-Intent
-Type
-Task pattern
- Stage pattern
-Phase Pattern
Dept. of CSE
GURU NANAK INSTITUTIONS TECHNICAL CAMPUS
(Autonomous)
Initial Context
Problem
Solution
Resulting Context
Related Patterns
Dept. of CSE
PROCESS ASSESSMENT
Dept. of CSE
PROCESS ASSESSMENT
Software Process
Ex
by am Ca
in pa
ed
bi
liti
es
s
es
to
e
i
i
f
f
ti
ti
Software Process &
n
n
n
io
e Ri
e
at
Id Assessment Id
sk
ific
Le
od
to a ds
M
s t
ad o
Le
Dept. of CSE
APPROACHES TO SOFTWRE
ASSESSMENT
Standard CMMI assessment (SCAMPI)
SPICE(ISO/IEC 15504)
Dept. of CSE
Personal and Team Software Process
Personal software process
PLANNING
DEVELOPMENT
POSTMORTEM
Dept. of CSE
Personal and Team Software Process
Team software process
Goal of TSP
- Build self-directed teams
- Motivate the teams
- Acceptance of CMM level 5 behavior as normal to
accelerate software process improvement
- Provide improvement guidance to high maturity
organization
Dept. of CSE
Summary of the Unit
It deals with role of software and changing
the nature of software.
Dept. of CSE
Important Questions
Dept. of CSE
Assignment Questions
1. Elaborate on evolution of software.
Dept. of CSE
Objective Questions
1. The most important feature of spiral model is
(A) Requirement analysis. (B) Risk management.
(C)Quality management. (D)Configuration
management.
Ans: B
2. The worst type of coupling is
(A) Data coupling. (B) Control coupling.
(C) Stamp coupling. (D) Content coupling.
Ans: D
Dept. of CSE
3. IEEE 830-1993 is a IEEE recommended standard for
(A) Software requirement specification.
(B) Software design.
(C) Testing.
(D) Both (A) and (B)
Ans: A
4. One of the fault base testing techniques is
(A) unit testing. (B) Beta testing.
(C) Stress testing. (D) Mutation testing.
Ans: D
Dept. of CSE
5. Changes made to an information system to add the
desired but not necessarily the Required features is
called
(A) Preventative maintenance.
(B) Adaptive maintenance.
(C) Corrective maintenance.
(D) Perfective maintenance.
Ans: D
Dept. of CSE