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

Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineeringPreeti Mishra
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceEr. Nancy
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified ProcessKumar
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineeringRupesh Vaishnav
 
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMIEvolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMInimmik4u
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxKarthigaiSelviS3
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) ModelDamian T. Gordon
 
Software myths | Software Engineering Notes
Software myths | Software Engineering NotesSoftware myths | Software Engineering Notes
Software myths | Software Engineering NotesNavjyotsinh Jadeja
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsSeema Kamble
 
Design concept -Software Engineering
Design concept -Software EngineeringDesign concept -Software Engineering
Design concept -Software EngineeringVarsha Ajith
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metricsIndu Sharma Bhardwaj
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design conceptssrijavel
 
Chapter 1 2 - some size factors
Chapter 1   2 - some size factorsChapter 1   2 - some size factors
Chapter 1 2 - some size factorsNancyBeaulah_R
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringMajane Padua
 
Pressman ch-1-software
Pressman ch-1-softwarePressman ch-1-software
Pressman ch-1-softwareAlenaDion
 

Mais procurados (20)

Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified Process
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineering
 
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMIEvolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) Model
 
SE chapter 5
SE chapter 5SE chapter 5
SE chapter 5
 
Software myths | Software Engineering Notes
Software myths | Software Engineering NotesSoftware myths | Software Engineering Notes
Software myths | Software Engineering Notes
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metrics
 
Software process
Software processSoftware process
Software process
 
Design concept -Software Engineering
Design concept -Software EngineeringDesign concept -Software Engineering
Design concept -Software Engineering
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
The Art of Debugging.pptx
The Art of Debugging.pptxThe Art of Debugging.pptx
The Art of Debugging.pptx
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design concepts
 
Chapter 1 2 - some size factors
Chapter 1   2 - some size factorsChapter 1   2 - some size factors
Chapter 1 2 - some size factors
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Pressman ch-1-software
Pressman ch-1-softwarePressman ch-1-software
Pressman ch-1-software
 
System testing
System testingSystem testing
System testing
 

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

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 

Último (20)

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 

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