SlideShare a Scribd company logo
1 of 19
Chapt er 1
    Sof t war e and Sof t war e
           Engineer ing
Software Engineering: A Practitioner’s Approach, 6th edition
by Roger S. Pressman


                                                               1
Sof t war e’s Dual
       Role
 Software is a product
    Transforms information - produces, manages,
     acquires, modifies, displays, or transmits
     information
    Delivers computing potential of hardware and
     networks
 Software is a vehicle for delivering a product
    Controls other programs (operating system)
    Effects communications (networking software)
    Helps build other software (software tools &
     environments)                          2
Sof t war e
Applicat ions
  system software
  application software
  engineering/scientific
   software
  embedded software
  product-line software
  web applications
  AI software
                            3
Har dwar e vs. Sof t war e
 Hardware         Software

  Manufactured   Developed/engi
  Wears out      neered
  Built using     Deteriorates
 components        Custom built
  Relatively      Complex
 simple
                          4
Manuf act ur ing vs.
Development
 Once a hardware product has been
  manufactured, it is difficult or impossible to
  modify. In contrast, software products are
  routinely modified and upgraded.
 In hardware, hiring more people allows you to
  accomplish more work, but the same does not
  necessarily hold true in software engineering.
 Unlike hardware, software costs are
  concentrated in design rather than production.
                                     5
Wear vs.
Det er ior at ion time
Hardware wears out over




                          6
Wear vs.
Det erdeteriorates over time
         ior at ion
Software




                           7
Component Based vs. Cust om
Built
 Hardware products typically employ many
  standardized design components.
 Most software continues to be custom built.
 The software industry does seem to be
  moving (slowly) toward component-based
  construction.



                                    8
Sof t war e Complexit y
I believe the hard part of building software to be the
specification, design, and testing of this conceptual
construct, not the labor of representing it and testing
the fidelity of the representation.
If this is true, building software will always be hard.
There is inherently no silver bullet.
                        - Fred Brooks, “No Silver Bullet”
 http://www.computer.org/computer/homepage/misc/Brooks/


                                             9
Legacy Sof t war e
Why must it change?

    It must be fixed to eliminate errors.
    It must be enhanced to implement new functional
       and non-functional requirements
    Software must be adapted to meet the needs of
       new computing environments or technology.
    Software must be enhanced to implement new
       business requirements.
    Software must be extended to make it
       interoperable with other more modern systems
       or databases.
    Software must be re-architected to make it viable
       within a network environment.
                                             10
E-Type Syst ems

 E-Type Systems:
  Software that has been implemented in a
  real-world computing context and will
  therefore evolve over time




                                  11
Sof t war e Evolut ion
 The Law of Continuing Change (1974): E-type systems must be
  continually adapted else they become progressively less
  satisfactory.
 The Law of Increasing Complexity (1974): As an E-type system
  evolves its complexity increases unless work is done to maintain or
  reduce it.
 The Law of Self Regulation (1974): The E-type system evolution
  process is self-regulating with distribution of product and process
  measures close to normal.
 The Law of Conservation of Organizational Stability (1980): The
  average effective global activity rate in an evolving E-type system is
  invariant over product lifetime.


   Source: Lehman, M., et al, “Metrics and Laws of Software Evolution—The Nineties View,”
   Proceedings of the 4th International Software Metrics Symposium (METRICS '97), IEEE, 1997, can be
   downloaded from: http://www.ece.utexas.edu/~perry/work/papers/feast1.pdf

                                                                             12
Sof t war e Evolut ion
 The Law of Conservation of Familiarity (1980): As an E-type system
  evolves all associated with it, developers, sales personnel, users, for
  example, must maintain mastery of its content and behavior to
  achieve satisfactory evolution.
 The Law of Continuing Growth (1980): The functional content of E-
  type systems must be continually increased to maintain user
  satisfaction over their lifetime.
 The Law of Declining Quality (1996): The quality of E-type systems
  will appear to be declining unless they are rigorously maintained and
  adapted to operational environment changes.
 The Feedback System Law (1996): E-type evolution processes
  constitute multi-level, multi-loop, multi-agent feedback systems and
  must be treated as such to achieve significant improvement over any
  reasonable base.
   Source: Lehman, M., et al, “Metrics and Laws of Software Evolution—The Nineties View,”
   Proceedings of the 4th International Software Metrics Symposium (METRICS '97), IEEE, 1997, can be
   downloaded from: http://www.ece.utexas.edu/~perry/work/papers/feast1.pdf

                                                                             13
Sof t war e
            Myt hs
   Affect managers, customers (and other non-
    technical stakeholders) and practitioners
   Are believable because they often have elements
    of truth,
but …
   Invariably lead to bad decisions,
therefore …
   Insist on reality as you navigate your way through
    software engineering
                                           14
Sof t war e Myt hs
 If we get behind schedule, we can add
  more programmers and catch up.
 A general statement about objectives is
  sufficient to begin building programs.
 Change in project requirements can be
  easily accommodated because software
  is flexible.

                               15
Sof t war e Myt hs
 Once we write a working program, we’re
  done.
 Until I get the program running, I have no way
  of assessing its quality.
 The only deliverable work product for a
  successful project is the working program.
 Software engineering will make us create too
  much documentation and will slow us down.

                                     16
Management
           Myt hs
 “We already have a book of standards and
  procedures for building software. It does provide my
  people with everything they need to know …”
 “If my project is behind the schedule, I always can
  add more programmers to it and catch up …”
                      (a.k.a. “The Mongolian Horde
  concept”)
 “If I decide to outsource the software project to a
  third party, I can just relax: Let them build it, and I
  will just pocket my profits …”
                                              17
Cust omer Myt hs

 “A general statement of objectives is sufficient
  to begin writing programs - we can fill in the
  details later …”

 “Project requirements continually change but
  this change can easily be accommodated
  because software is flexible …”


                                         18
Pr act it ioner ’s Myt hs
 “Let’s start coding ASAP, because once we
  write the program and get it to work, our job is
  done …”

 “Until I get the program running, I have no way
  of assessing its quality …”

 “The only deliverable work product for a
  successful project is the working program …”

 “Software engineering is baloney. It makes us
  create tons of paperwork, only to slow us down
  …”
                                        19

More Related Content

What's hot

Lecture 01
Lecture 01Lecture 01
Lecture 01
Rana Ali
 
Agile programming a new approach
Agile programming a new approachAgile programming a new approach
Agile programming a new approach
iaemedu
 
Model driven process for real time embedded
Model driven process for real time embeddedModel driven process for real time embedded
Model driven process for real time embedded
caijjournal
 
Open source software vs proprietary software
Open source software vs proprietary softwareOpen source software vs proprietary software
Open source software vs proprietary software
Lavan1997
 
Unit 1 final
Unit 1 finalUnit 1 final
Unit 1 final
sietkcse
 

What's hot (20)

Software Engineering Unit-1
Software Engineering Unit-1Software Engineering Unit-1
Software Engineering Unit-1
 
software engineering models
software engineering models software engineering models
software engineering models
 
No silver bullet essence and accidents of software engineering
No silver bullet essence and accidents of software engineeringNo silver bullet essence and accidents of software engineering
No silver bullet essence and accidents of software engineering
 
SE - Ch.01 - Introduction to Software Engineering.pptx
SE - Ch.01 - Introduction to Software Engineering.pptxSE - Ch.01 - Introduction to Software Engineering.pptx
SE - Ch.01 - Introduction to Software Engineering.pptx
 
Lecture 01
Lecture 01Lecture 01
Lecture 01
 
Lecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringLecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software Engineering
 
Ch1 introduction
Ch1 introductionCh1 introduction
Ch1 introduction
 
No silver bullet summary (paper)
No silver bullet summary (paper)No silver bullet summary (paper)
No silver bullet summary (paper)
 
ADUF - Adaptable Design Up Front
ADUF -  Adaptable Design Up FrontADUF -  Adaptable Design Up Front
ADUF - Adaptable Design Up Front
 
Ch01 SE
Ch01 SECh01 SE
Ch01 SE
 
A presentation on software crisis
A presentation on software crisisA presentation on software crisis
A presentation on software crisis
 
SE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERINGSE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERING
 
Unit1
Unit1Unit1
Unit1
 
INTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGINTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERING
 
Agile programming a new approach
Agile programming a new approachAgile programming a new approach
Agile programming a new approach
 
Model driven process for real time embedded
Model driven process for real time embeddedModel driven process for real time embedded
Model driven process for real time embedded
 
Chapter 12
Chapter 12Chapter 12
Chapter 12
 
Open source software vs proprietary software
Open source software vs proprietary softwareOpen source software vs proprietary software
Open source software vs proprietary software
 
Lecture1422914635
Lecture1422914635Lecture1422914635
Lecture1422914635
 
Unit 1 final
Unit 1 finalUnit 1 final
Unit 1 final
 

Viewers also liked

Primeros uxilios diapositivas
Primeros uxilios diapositivasPrimeros uxilios diapositivas
Primeros uxilios diapositivas
jhovannito22
 
MediaWhiz POV: Analyzing The Big Lead-Gen Trends
MediaWhiz POV: Analyzing The Big Lead-Gen TrendsMediaWhiz POV: Analyzing The Big Lead-Gen Trends
MediaWhiz POV: Analyzing The Big Lead-Gen Trends
Matomy Media Group
 
Jhovanni guia 10 (1)
Jhovanni guia 10 (1)Jhovanni guia 10 (1)
Jhovanni guia 10 (1)
jhovannito22
 
Itsm training
Itsm trainingItsm training
Itsm training
rhootan
 

Viewers also liked (19)

Primeros uxilios diapositivas
Primeros uxilios diapositivasPrimeros uxilios diapositivas
Primeros uxilios diapositivas
 
Pacific Islands Programs fo Exploring Science (PIPES)
Pacific Islands Programs fo Exploring Science (PIPES)Pacific Islands Programs fo Exploring Science (PIPES)
Pacific Islands Programs fo Exploring Science (PIPES)
 
MediaWhiz POV: Analyzing The Big Lead-Gen Trends
MediaWhiz POV: Analyzing The Big Lead-Gen TrendsMediaWhiz POV: Analyzing The Big Lead-Gen Trends
MediaWhiz POV: Analyzing The Big Lead-Gen Trends
 
Content Marketing 2.0: How Content Promotion Can REvitalize Your Brand
Content Marketing 2.0: How Content Promotion Can REvitalize Your BrandContent Marketing 2.0: How Content Promotion Can REvitalize Your Brand
Content Marketing 2.0: How Content Promotion Can REvitalize Your Brand
 
Jhovanni guia 10 (1)
Jhovanni guia 10 (1)Jhovanni guia 10 (1)
Jhovanni guia 10 (1)
 
Privacy Policy
Privacy PolicyPrivacy Policy
Privacy Policy
 
Ks 141028 budget 2015
Ks 141028 budget 2015Ks 141028 budget 2015
Ks 141028 budget 2015
 
Años 60
Años 60Años 60
Años 60
 
MediaWhiz POV: Content Marketing Like a Pro
MediaWhiz POV: Content Marketing Like a ProMediaWhiz POV: Content Marketing Like a Pro
MediaWhiz POV: Content Marketing Like a Pro
 
硕士论文
硕士论文硕士论文
硕士论文
 
Guru (2)
Guru (2)Guru (2)
Guru (2)
 
Providers of interim & contingent resources
Providers of interim & contingent resourcesProviders of interim & contingent resources
Providers of interim & contingent resources
 
Itsm training
Itsm trainingItsm training
Itsm training
 
What kind of media institution might distribute your media product and why?
What kind of media institution might distribute your media product and why?What kind of media institution might distribute your media product and why?
What kind of media institution might distribute your media product and why?
 
Valu inlaga 1991-2010
Valu inlaga 1991-2010Valu inlaga 1991-2010
Valu inlaga 1991-2010
 
December update
December updateDecember update
December update
 
CV_Phindile Shabalala
CV_Phindile ShabalalaCV_Phindile Shabalala
CV_Phindile Shabalala
 
Speed Wins: Launching new products and services. pptx
Speed Wins: Launching new products and services. pptxSpeed Wins: Launching new products and services. pptx
Speed Wins: Launching new products and services. pptx
 
How to use Internet for promotion
How to use Internet for promotionHow to use Internet for promotion
How to use Internet for promotion
 

Similar to Slides chapter 1

chapter-1-software-and-software-engineering-software-engineering-a-practition...
chapter-1-software-and-software-engineering-software-engineering-a-practition...chapter-1-software-and-software-engineering-software-engineering-a-practition...
chapter-1-software-and-software-engineering-software-engineering-a-practition...
Archana Sable
 
Software engg. pressman_ch-1
Software engg. pressman_ch-1Software engg. pressman_ch-1
Software engg. pressman_ch-1
Dhairya Joshi
 
Introduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docxIntroduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docx
mariuse18nolet
 

Similar to Slides chapter 1 (20)

chapter-1-software-and-software-engineering-software-engineering-a-practition...
chapter-1-software-and-software-engineering-software-engineering-a-practition...chapter-1-software-and-software-engineering-software-engineering-a-practition...
chapter-1-software-and-software-engineering-software-engineering-a-practition...
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Software engg. pressman_ch-1
Software engg. pressman_ch-1Software engg. pressman_ch-1
Software engg. pressman_ch-1
 
1. introducción a la Ingeniería de Software (UTM 2071)
1. introducción a la Ingeniería de Software (UTM 2071)1. introducción a la Ingeniería de Software (UTM 2071)
1. introducción a la Ingeniería de Software (UTM 2071)
 
Ch1
Ch1Ch1
Ch1
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
labiqa'd.pptx
labiqa'd.pptxlabiqa'd.pptx
labiqa'd.pptx
 
Lecture-1-3.pptx
Lecture-1-3.pptxLecture-1-3.pptx
Lecture-1-3.pptx
 
Chapter 01
Chapter 01Chapter 01
Chapter 01
 
Chapter 3
Chapter 3Chapter 3
Chapter 3
 
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
 
Introduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docxIntroduction1ObjectivesThe objectives of this chapte.docx
Introduction1ObjectivesThe objectives of this chapte.docx
 
software
softwaresoftware
software
 
Sepm t1
Sepm t1Sepm t1
Sepm t1
 
software development and programming languages
software development and programming languages software development and programming languages
software development and programming languages
 
The Product and Process(1).pdf
The Product and Process(1).pdfThe Product and Process(1).pdf
The Product and Process(1).pdf
 
Intoduction to software engineering part 1
Intoduction to software engineering part 1Intoduction to software engineering part 1
Intoduction to software engineering part 1
 
Introduction to Software Engineering.ppt
Introduction to Software Engineering.pptIntroduction to Software Engineering.ppt
Introduction to Software Engineering.ppt
 

Recently uploaded

Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
MateoGardella
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 

Recently uploaded (20)

Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 

Slides chapter 1

  • 1. Chapt er 1 Sof t war e and Sof t war e Engineer ing Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman 1
  • 2. Sof t war e’s Dual Role  Software is a product  Transforms information - produces, manages, acquires, modifies, displays, or transmits information  Delivers computing potential of hardware and networks  Software is a vehicle for delivering a product  Controls other programs (operating system)  Effects communications (networking software)  Helps build other software (software tools & environments) 2
  • 3. Sof t war e Applicat ions  system software  application software  engineering/scientific software  embedded software  product-line software  web applications  AI software 3
  • 4. Har dwar e vs. Sof t war e Hardware Software  Manufactured Developed/engi  Wears out neered  Built using  Deteriorates components  Custom built  Relatively  Complex simple 4
  • 5. Manuf act ur ing vs. Development  Once a hardware product has been manufactured, it is difficult or impossible to modify. In contrast, software products are routinely modified and upgraded.  In hardware, hiring more people allows you to accomplish more work, but the same does not necessarily hold true in software engineering.  Unlike hardware, software costs are concentrated in design rather than production. 5
  • 6. Wear vs. Det er ior at ion time Hardware wears out over 6
  • 7. Wear vs. Det erdeteriorates over time ior at ion Software 7
  • 8. Component Based vs. Cust om Built  Hardware products typically employ many standardized design components.  Most software continues to be custom built.  The software industry does seem to be moving (slowly) toward component-based construction. 8
  • 9. Sof t war e Complexit y I believe the hard part of building software to be the specification, design, and testing of this conceptual construct, not the labor of representing it and testing the fidelity of the representation. If this is true, building software will always be hard. There is inherently no silver bullet. - Fred Brooks, “No Silver Bullet” http://www.computer.org/computer/homepage/misc/Brooks/ 9
  • 10. Legacy Sof t war e Why must it change? It must be fixed to eliminate errors. It must be enhanced to implement new functional and non-functional requirements Software must be adapted to meet the needs of new computing environments or technology. Software must be enhanced to implement new business requirements. Software must be extended to make it interoperable with other more modern systems or databases. Software must be re-architected to make it viable within a network environment. 10
  • 11. E-Type Syst ems  E-Type Systems: Software that has been implemented in a real-world computing context and will therefore evolve over time 11
  • 12. Sof t war e Evolut ion  The Law of Continuing Change (1974): E-type systems must be continually adapted else they become progressively less satisfactory.  The Law of Increasing Complexity (1974): As an E-type system evolves its complexity increases unless work is done to maintain or reduce it.  The Law of Self Regulation (1974): The E-type system evolution process is self-regulating with distribution of product and process measures close to normal.  The Law of Conservation of Organizational Stability (1980): The average effective global activity rate in an evolving E-type system is invariant over product lifetime. Source: Lehman, M., et al, “Metrics and Laws of Software Evolution—The Nineties View,” Proceedings of the 4th International Software Metrics Symposium (METRICS '97), IEEE, 1997, can be downloaded from: http://www.ece.utexas.edu/~perry/work/papers/feast1.pdf 12
  • 13. Sof t war e Evolut ion  The Law of Conservation of Familiarity (1980): As an E-type system evolves all associated with it, developers, sales personnel, users, for example, must maintain mastery of its content and behavior to achieve satisfactory evolution.  The Law of Continuing Growth (1980): The functional content of E- type systems must be continually increased to maintain user satisfaction over their lifetime.  The Law of Declining Quality (1996): The quality of E-type systems will appear to be declining unless they are rigorously maintained and adapted to operational environment changes.  The Feedback System Law (1996): E-type evolution processes constitute multi-level, multi-loop, multi-agent feedback systems and must be treated as such to achieve significant improvement over any reasonable base. Source: Lehman, M., et al, “Metrics and Laws of Software Evolution—The Nineties View,” Proceedings of the 4th International Software Metrics Symposium (METRICS '97), IEEE, 1997, can be downloaded from: http://www.ece.utexas.edu/~perry/work/papers/feast1.pdf 13
  • 14. Sof t war e Myt hs  Affect managers, customers (and other non- technical stakeholders) and practitioners  Are believable because they often have elements of truth, but …  Invariably lead to bad decisions, therefore …  Insist on reality as you navigate your way through software engineering 14
  • 15. Sof t war e Myt hs  If we get behind schedule, we can add more programmers and catch up.  A general statement about objectives is sufficient to begin building programs.  Change in project requirements can be easily accommodated because software is flexible. 15
  • 16. Sof t war e Myt hs  Once we write a working program, we’re done.  Until I get the program running, I have no way of assessing its quality.  The only deliverable work product for a successful project is the working program.  Software engineering will make us create too much documentation and will slow us down. 16
  • 17. Management Myt hs  “We already have a book of standards and procedures for building software. It does provide my people with everything they need to know …”  “If my project is behind the schedule, I always can add more programmers to it and catch up …” (a.k.a. “The Mongolian Horde concept”)  “If I decide to outsource the software project to a third party, I can just relax: Let them build it, and I will just pocket my profits …” 17
  • 18. Cust omer Myt hs  “A general statement of objectives is sufficient to begin writing programs - we can fill in the details later …”  “Project requirements continually change but this change can easily be accommodated because software is flexible …” 18
  • 19. Pr act it ioner ’s Myt hs  “Let’s start coding ASAP, because once we write the program and get it to work, our job is done …”  “Until I get the program running, I have no way of assessing its quality …”  “The only deliverable work product for a successful project is the working program …”  “Software engineering is baloney. It makes us create tons of paperwork, only to slow us down …” 19

Editor's Notes

  1. Information transformer - function behavior Computing potential - non-functional behavior Example of functional behavior? Type characters into keyboard => word processor displays them on screen Input program file => compiler translates to byte code Example of non-functional behavior? Type character in instant messenger => appears on friend’s screen Compile large program within a few seconds Performance - time and space Vehicle for product delivery Examples of SW controllers (other than OS) Examples of communication SW Examples of development tools