SlideShare uma empresa Scribd logo
1 de 36
Software Engineering
                  B.Tech IT/II Sem-II

                     Term: 2008-2009
                    Unit-1 PPT SLIDES

Text Books:1.Software Engineering, A practitioner’s approach
                   Roger s. Pressman 6th edition McGraw-
  Hill
           2.Software Engineering Somerville 7th edition


                                                       1
Unit 1 syllabus
• Introduction to Software Engineering : The
  evolving role of software, Changing Nature of
  Software, Software myths.
• A Generic view of process : Software
  engineering- A layered technology, a process
  framework, The Capability Maturity Model
  Integration (CMMI), Process patterns, process
  assessment, personal and team process
  models.

                                                  2
INDEX
                                     Unit-1
S.No              Topic                  Lecture No PPTSlides
       Introduction to software               L1           3
1      Engineering: Evolving role
       software
2      The changing nature of software        L2           10
       & legacy software
3      Software myths                         L3           15

4      A generic view of process:             L4           19
       Software Engineering-A layered
       technology
5      A Process Framework                    L5
                                                           22

5      The Capability maturity model     L6                25
       Integration(CMMI)
6      Process Patterns, Process              L7
       assessment                                     31

7      Personal and Team Process              L8           35
       models                                                   3
Introduction to software Engineering
The Evolving role of software
• Dual role of Software
    A Product
        - Information transformer-
          producing, managing and displaying
    A Vehicle for delivering a product
        - Control of computer(operating system),the
                 communication of
     information(networks) and       the creation of
     other programs

                                                       4
Introduction to software Engineering
•    Software is defined as
    1. Instructions
         - Programs that when executed provide
        desired function
    2. Data structures
        -Enable the programs to adequately
       manipulate information
    3. Documents
       -Describe the operation and use of the
        programs.

                                                 5
Introduction to software Engineering

• Definition of Engineering
 -Application of science, tools and methods
  to find cost effective solution to problems
  Definition of SOFTWARE ENGINEERING
 - SE is defined as systematic, disciplined and
 quantifiable approach for the development, operation
 and maintenance of software




                                                        6
Introduction to software Engineering
Characteristics of software
• Software is developed or engineered, it is not
  manufactured in the classical sense.
• Software does not wear out. However it
  deteriorates due to change.
• Software is custom built rather than
  assembling existing components.
  -Although the industry is moving towards
  component based construction, most software
  continues to be custom built
                                                   7
CHARACTERISTICS OF HARDWARE



                       “Infant
  Failure rate




                       mortality”       “Wear out”




                                 Time



                 Fig: FAILURE CURVE FOR HARDWARE
                                                     8
CHARACTERISTICS OF SOFTWARE




    Fig: FAILURE CURVE FOR SOFTWARE
                                      9
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

                                           10
THE CHANGING NATURE OF
          SOFTWARE
•  System software. System software is a collection of programs
   written to service other programs
• Embedded software
 -- resides in read-only memory
 --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.



                                                                            11
LEGACY SOFTWARE
• Legacy software are older programs that
  are developed decades ago.
• The quality of legacy software is poor
  because it has inextensible
  design,convoluted code,poor and
  nonexistent documentation,test cases and
  results that are not achieved.


                                         12
• 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.
                                               13
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.
         The Law of Increasing Complexity.
         The Law of Self-Regulation
         The Law of Conservation of Organizational Stability.
         The Law of Conservation of Familiarity
         The Law of Continuing Growth
         The Law of Declining Quality
         The Feedback System Law


                                                                 14
SOFTWARE MYTHS
• Widely held but false view
• Propagate misinformation and confusion
• Three types of myth
    - Management myth
    - Customer myth
    - Practitioner’s myth


                                           15
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.
• 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.                        16
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

                                          17
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.
• 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.


                                                         18
SOFTWARE ENGINEERING-A LAYERED
TECHNOLOGY




       Fig: Software Engineering-A layered technology




                                                        19
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
                                              20
A PROCESS FRAMEWORK
• Establishes the foundation for a complete
  software process
• Identifies a number of framework activities
  applicable to all software projects
• Also include a set of umbrella activities
  that are applicable across the entire
  software process.


                                            21
A PROCESS FRAMEWORK


Common process framework

    Framework activities


        TTTasks

        Milestones,delierables

        SQA points


  Umbrella activities



                                 22
A PROCESS FRAMEWORK

• Used as a basis for the description of
  process models
• Generic process activities
     Communication
     Planning
     Modeling
     Construction
     Deployment


                                           23
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


                                                   24
CAPABILITY MATURITY MODEL
        INTEGRATION(CMMI)
•   Developed by SEI(Software Engineering institute)
•   Assess the process model followed by an organization and rate the
    organization with different levels
• A set of software engineering capabilities should be present as
    organizations reach different levels of process capability and
    maturity.
• 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
 levels.                                                             25
CMMI
• Six levels of CMMI
  –   Level 0:Incomplete
  –   Level 1:Performed
  –   Level 2:Managed
  –   Level 3:Defined
  –   Level 4:Quantitatively managed
  –   Level 5:Optimized


                                       26
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
•     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.

                                                                                  27
CMMI
Staged model
- This model is used if you have no clue of how to improve the
   process for quality software.
- It gives a suggestion of what things other organizations have
   found helpful to work first
- Levels are called maturity levels




                                                                  28
LEVEL            FOCUS                  PROCESS AREA
Optimizing       Continuous process     -Organizational Innovation and
                 Improvement
                                        Deployment
                                        -Causal Analysis and Resolution


Quantitatively   Quantitative           -Organizational process performance
managed          management             -Quantitative project management
Defined          Process standardized   Requirements Development
                                        Technical Solution
                                        Product Integration
                                        Verification
                                        Validation
                                        Organizational Process Focus
                                        Organizational Process Definition
                                        Organizational Training
                                        Integrated Project Management
                                        Risk Management


                                                                              29
−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




                                                                     30
PROCESS PATTERNS
• Software Process is defined as collection of Patterns
• Process pattern provides a template
• Process Template
-Pattern Name
-Intent
-Type
    -Task pattern
    - Stage pattern
    -Phase Pattern
• Initial Context
• Problem
• Solution
• Resulting Context
• Related Patterns
                                                          31
PROCESS ASSESSMENT
• Does not specify the quality of the
  software or whether the software will be
  delivered on time or will it stand up to the
  user requirements.
• It attempts to keep a check on the current
  state of the software process with the
  intention of improving it.


                                                 32
PROCESS ASSESSMENT
                             Software Process


                                      Ex
                                    by am                   Ca
                                         in                   pa
                                           ed
                                                                bi
           s                                                       lit    s
                                                                         ie
        fie
                 to



                                                                       fie
       i
                                                                      i     s
     nt                     Software Process                       nt           &
               n
         tio




   e                                                                                Ri
                                                                  e
 Id                           Assessment                        Id
       ca




                                                                                       sk
   if i




                                                    Le
 od




                       to                              a   ds
M




                   s                                            to
                 ad
               Le



Software Process                   Motivates    Capability determination
  improvement
APPROACHES TO SOFTWRE
       ASSESSMENT
• Standard CMMI assessment (SCAMPI)
• CMM based appraisal for internal process
  improvement
• SPICE(ISO/IEC 15504)
• ISO 9001:2000 for software




                                         34
Personal and Team Software Process
• Personal software process
 PLANNING
 HIGH LEVEL DESIGN
 HIGH LEVEL DESIGN REVIEW
 DEVELOPMENT
 POSTMORTEM



                                35
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
                                          36

Mais conteúdo relacionado

Mais procurados

Ch10-Software Engineering 9
Ch10-Software Engineering 9Ch10-Software Engineering 9
Ch10-Software Engineering 9Ian Sommerville
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling Benazir Fathima
 
Real time and distributed design
Real time and distributed designReal time and distributed design
Real time and distributed designpriyapavi96
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models Satya P. Joshi
 
software cost factor
software cost factorsoftware cost factor
software cost factorAbinaya B
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Bilal Hassan
 
Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented DesignSharath g
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metricsIndu Sharma Bhardwaj
 
1.1 The nature of software.ppt
1.1 The nature of software.ppt1.1 The nature of software.ppt
1.1 The nature of software.pptJAYAPRIYAR7
 
Software Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationSoftware Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationNishu Rastogi
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineeringHitesh Mohapatra
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specificationlavanya marichamy
 
Need for Software Engineering
Need for Software EngineeringNeed for Software Engineering
Need for Software EngineeringUpekha Vandebona
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineeringkirupasuchi1996
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation TechniquesSanthi thi
 

Mais procurados (20)

Ch10-Software Engineering 9
Ch10-Software Engineering 9Ch10-Software Engineering 9
Ch10-Software Engineering 9
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
Real time and distributed design
Real time and distributed designReal time and distributed design
Real time and distributed design
 
Software quality
Software qualitySoftware quality
Software quality
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
software cost factor
software cost factorsoftware cost factor
software cost factor
 
Design notation
Design notationDesign notation
Design notation
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering
 
Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented Design
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
Software Engineering by Pankaj Jalote
Software Engineering by Pankaj JaloteSoftware Engineering by Pankaj Jalote
Software Engineering by Pankaj Jalote
 
1.1 The nature of software.ppt
1.1 The nature of software.ppt1.1 The nature of software.ppt
1.1 The nature of software.ppt
 
Software Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationSoftware Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and Specification
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
 
Need for Software Engineering
Need for Software EngineeringNeed for Software Engineering
Need for Software Engineering
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineering
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 

Semelhante a Unit1 (20)

Software Engineering.ppt
Software Engineering.pptSoftware Engineering.ppt
Software Engineering.ppt
 
Unit 1
Unit 1Unit 1
Unit 1
 
Unit1..
Unit1..Unit1..
Unit1..
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Se lect1 btech
Se lect1 btechSe lect1 btech
Se lect1 btech
 
SE Lecture 1.ppt
SE Lecture 1.pptSE Lecture 1.ppt
SE Lecture 1.ppt
 
SE Lecture 1.ppt
SE Lecture 1.pptSE Lecture 1.ppt
SE Lecture 1.ppt
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1
 
Oose unit 1 ppt
Oose unit 1 pptOose unit 1 ppt
Oose unit 1 ppt
 
Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)
 
OOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.pptOOSE Unit 1 PPT.ppt
OOSE Unit 1 PPT.ppt
 
SE
SESE
SE
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Software engineering unit 1
Software engineering unit 1Software engineering unit 1
Software engineering unit 1
 
1 se-introduction
1 se-introduction1 se-introduction
1 se-introduction
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
SE chp1 update and learning management .pptx
SE chp1 update and learning management .pptxSE chp1 update and learning management .pptx
SE chp1 update and learning management .pptx
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Module 1.pdf
Module 1.pdfModule 1.pdf
Module 1.pdf
 

Mais de anuragmbst

Unit 1 watertech1 merged
Unit 1 watertech1 mergedUnit 1 watertech1 merged
Unit 1 watertech1 mergedanuragmbst
 
Unit 7-phaserule
Unit 7-phaseruleUnit 7-phaserule
Unit 7-phaseruleanuragmbst
 
Unit 6-energy-resources
Unit 6-energy-resourcesUnit 6-energy-resources
Unit 6-energy-resourcesanuragmbst
 
Unit 3 polymers
Unit 3 polymersUnit 3 polymers
Unit 3 polymersanuragmbst
 
Unit 2-science-of-corrosion
Unit 2-science-of-corrosionUnit 2-science-of-corrosion
Unit 2-science-of-corrosionanuragmbst
 
Unit 3 requirements engineering processes merged
Unit 3 requirements engineering processes mergedUnit 3 requirements engineering processes merged
Unit 3 requirements engineering processes mergedanuragmbst
 

Mais de anuragmbst (20)

Unit 1 watertech1 merged
Unit 1 watertech1 mergedUnit 1 watertech1 merged
Unit 1 watertech1 merged
 
Unit 7-phaserule
Unit 7-phaseruleUnit 7-phaserule
Unit 7-phaserule
 
Unit 6-energy-resources
Unit 6-energy-resourcesUnit 6-energy-resources
Unit 6-energy-resources
 
Unit 3 polymers
Unit 3 polymersUnit 3 polymers
Unit 3 polymers
 
Unit 2-science-of-corrosion
Unit 2-science-of-corrosionUnit 2-science-of-corrosion
Unit 2-science-of-corrosion
 
Unit 3 requirements engineering processes merged
Unit 3 requirements engineering processes mergedUnit 3 requirements engineering processes merged
Unit 3 requirements engineering processes merged
 
Unit 8
Unit 8Unit 8
Unit 8
 
Unit 7
Unit 7Unit 7
Unit 7
 
Unit 6
Unit 6Unit 6
Unit 6
 
Unit 5
Unit 5Unit 5
Unit 5
 
Unit4
Unit4Unit4
Unit4
 
Unit2
Unit2Unit2
Unit2
 
Unit 01 dbms
Unit 01 dbmsUnit 01 dbms
Unit 01 dbms
 
Unit 08 dbms
Unit 08 dbmsUnit 08 dbms
Unit 08 dbms
 
Unit 07 dbms
Unit 07 dbmsUnit 07 dbms
Unit 07 dbms
 
Unit 06 dbms
Unit 06 dbmsUnit 06 dbms
Unit 06 dbms
 
Unit 05 dbms
Unit 05 dbmsUnit 05 dbms
Unit 05 dbms
 
Unit 04 dbms
Unit 04 dbmsUnit 04 dbms
Unit 04 dbms
 
Unit 03 dbms
Unit 03 dbmsUnit 03 dbms
Unit 03 dbms
 
Unit 02 dbms
Unit 02 dbmsUnit 02 dbms
Unit 02 dbms
 

Último

What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Último (20)

What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

Unit1

  • 1. Software Engineering B.Tech IT/II Sem-II Term: 2008-2009 Unit-1 PPT SLIDES Text Books:1.Software Engineering, A practitioner’s approach Roger s. Pressman 6th edition McGraw- Hill 2.Software Engineering Somerville 7th edition 1
  • 2. Unit 1 syllabus • Introduction to Software Engineering : The evolving role of software, Changing Nature of Software, Software myths. • A Generic view of process : Software engineering- A layered technology, a process framework, The Capability Maturity Model Integration (CMMI), Process patterns, process assessment, personal and team process models. 2
  • 3. INDEX Unit-1 S.No Topic Lecture No PPTSlides Introduction to software L1 3 1 Engineering: Evolving role software 2 The changing nature of software L2 10 & legacy software 3 Software myths L3 15 4 A generic view of process: L4 19 Software Engineering-A layered technology 5 A Process Framework L5 22 5 The Capability maturity model L6 25 Integration(CMMI) 6 Process Patterns, Process L7 assessment 31 7 Personal and Team Process L8 35 models 3
  • 4. Introduction to software Engineering The Evolving role of software • Dual role of Software A Product - Information transformer- producing, managing and displaying A Vehicle for delivering a product - Control of computer(operating system),the communication of information(networks) and the creation of other programs 4
  • 5. Introduction to software Engineering • Software is defined as 1. Instructions - Programs that when executed provide desired function 2. Data structures -Enable the programs to adequately manipulate information 3. Documents -Describe the operation and use of the programs. 5
  • 6. Introduction to software Engineering • Definition of Engineering -Application of science, tools and methods to find cost effective solution to problems Definition of SOFTWARE ENGINEERING - SE is defined as systematic, disciplined and quantifiable approach for the development, operation and maintenance of software 6
  • 7. Introduction to software Engineering Characteristics of software • Software is developed or engineered, it is not manufactured in the classical sense. • Software does not wear out. However it deteriorates due to change. • Software is custom built rather than assembling existing components. -Although the industry is moving towards component based construction, most software continues to be custom built 7
  • 8. CHARACTERISTICS OF HARDWARE “Infant Failure rate mortality” “Wear out” Time Fig: FAILURE CURVE FOR HARDWARE 8
  • 9. CHARACTERISTICS OF SOFTWARE Fig: FAILURE CURVE FOR SOFTWARE 9
  • 10. 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 10
  • 11. THE CHANGING NATURE OF SOFTWARE • System software. System software is a collection of programs written to service other programs • Embedded software -- resides in read-only memory --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. 11
  • 12. LEGACY SOFTWARE • Legacy software are older programs that are developed decades ago. • The quality of legacy software is poor because it has inextensible design,convoluted code,poor and nonexistent documentation,test cases and results that are not achieved. 12
  • 13. • 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. 13
  • 14. 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.  The Law of Increasing Complexity.  The Law of Self-Regulation  The Law of Conservation of Organizational Stability.  The Law of Conservation of Familiarity  The Law of Continuing Growth  The Law of Declining Quality  The Feedback System Law 14
  • 15. SOFTWARE MYTHS • Widely held but false view • Propagate misinformation and confusion • Three types of myth - Management myth - Customer myth - Practitioner’s myth 15
  • 16. 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. • 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. 16
  • 17. 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 17
  • 18. 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. • 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. 18
  • 19. SOFTWARE ENGINEERING-A LAYERED TECHNOLOGY Fig: Software Engineering-A layered technology 19
  • 20. 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 20
  • 21. A PROCESS FRAMEWORK • Establishes the foundation for a complete software process • Identifies a number of framework activities applicable to all software projects • Also include a set of umbrella activities that are applicable across the entire software process. 21
  • 22. A PROCESS FRAMEWORK Common process framework Framework activities TTTasks Milestones,delierables SQA points Umbrella activities 22
  • 23. A PROCESS FRAMEWORK • Used as a basis for the description of process models • Generic process activities Communication Planning Modeling Construction Deployment 23
  • 24. 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 24
  • 25. CAPABILITY MATURITY MODEL INTEGRATION(CMMI) • Developed by SEI(Software Engineering institute) • Assess the process model followed by an organization and rate the organization with different levels • A set of software engineering capabilities should be present as organizations reach different levels of process capability and maturity. • 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 levels. 25
  • 26. CMMI • Six levels of CMMI – Level 0:Incomplete – Level 1:Performed – Level 2:Managed – Level 3:Defined – Level 4:Quantitatively managed – Level 5:Optimized 26
  • 27. 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 • 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. 27
  • 28. CMMI Staged model - This model is used if you have no clue of how to improve the process for quality software. - It gives a suggestion of what things other organizations have found helpful to work first - Levels are called maturity levels 28
  • 29. LEVEL FOCUS PROCESS AREA Optimizing Continuous process -Organizational Innovation and Improvement Deployment -Causal Analysis and Resolution Quantitatively Quantitative -Organizational process performance managed management -Quantitative project management Defined Process standardized Requirements Development Technical Solution Product Integration Verification Validation Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management Risk Management 29
  • 30. −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 30
  • 31. PROCESS PATTERNS • Software Process is defined as collection of Patterns • Process pattern provides a template • Process Template -Pattern Name -Intent -Type -Task pattern - Stage pattern -Phase Pattern • Initial Context • Problem • Solution • Resulting Context • Related Patterns 31
  • 32. PROCESS ASSESSMENT • Does not specify the quality of the software or whether the software will be delivered on time or will it stand up to the user requirements. • It attempts to keep a check on the current state of the software process with the intention of improving it. 32
  • 33. PROCESS ASSESSMENT Software Process Ex by am Ca in pa ed bi s lit s ie fie to fie i i s nt Software Process nt & n tio e Ri e Id Assessment Id ca sk if i Le od to a ds M s to ad Le Software Process Motivates Capability determination improvement
  • 34. APPROACHES TO SOFTWRE ASSESSMENT • Standard CMMI assessment (SCAMPI) • CMM based appraisal for internal process improvement • SPICE(ISO/IEC 15504) • ISO 9001:2000 for software 34
  • 35. Personal and Team Software Process • Personal software process  PLANNING  HIGH LEVEL DESIGN  HIGH LEVEL DESIGN REVIEW  DEVELOPMENT  POSTMORTEM 35
  • 36. 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 36