Your SlideShare is downloading. ×
software Ch01
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

software Ch01

975
views

Published on

Published in: Education, Technology, Business

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
975
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 1 Supplementary Slides forSupplementary Slides for Software Engineering:Software Engineering: A Practitioner's Approach, 6/eA Practitioner's Approach, 6/e Part 1Part 1 copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited. This presentation, slides, or hardcopy may NOT be used for short courses, industry seminars, or consulting purposes.
  • 2. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 2 Software Engineering: A Practitioner’s Approach, 6/eSoftware Engineering: A Practitioner’s Approach, 6/e Chapter 1Chapter 1 Software and SoftwareSoftware and Software EngineeringEngineering copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited.
  • 3. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 3 Software’s Dual RoleSoftware’s Dual Role  Software is a productSoftware is a product  Delivers computing potentialDelivers computing potential  Produces, manages, acquires, modifies, displays, or transmitsProduces, manages, acquires, modifies, displays, or transmits informationinformation  Software is a vehicle for delivering a productSoftware is a vehicle for delivering a product  Supports or directly provides system functionalitySupports or directly provides system functionality  Controls other programs (e.g., an operating system)Controls other programs (e.g., an operating system)  Effects communications (e.g., networking software)Effects communications (e.g., networking software)  Helps build other software (e.g., software tools)Helps build other software (e.g., software tools)
  • 4. The Evolution of softwareThe Evolution of software  The power of hardware promotes very muchThe power of hardware promotes very much  More computational abilityMore computational ability  More memoryMore memory  Wider bandwidth of netWider bandwidth of net  Software changes as wellSoftware changes as well  More complexMore complex  More variousMore various  More functionalMore functional These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 4
  • 5. What bother software engineerWhat bother software engineer These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 5
  • 6. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 6 What is Software?What is Software? Software is a set of items or objects that form a “configuration” that includes • programs • documents • data ...
  • 7. Definition in TextbookDefinition in Textbook  Instructions(computer programs) that when executedInstructions(computer programs) that when executed provide desired features, functions, and performanceprovide desired features, functions, and performance  Data structures that enable the program to adequatelyData structures that enable the program to adequately manipulate informationmanipulate information  Documents that describe the operation and use of theDocuments that describe the operation and use of the programsprograms These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 7
  • 8. What is good softwareWhat is good software  Fault-freeFault-free  Delivered on timeDelivered on time  Satisfies the users' needSatisfies the users' need  Soft enoughSoft enough These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 8
  • 9. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 9 Software Vs. HardwareSoftware Vs. Hardware
  • 10. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 10 Wear vs. DeteriorationWear vs. Deterioration idealizedcurve change actualcurve Failure rate Time increasedfailure rate duetosideeffects
  • 11. Software Vs. Hardware (Cont.)Software Vs. Hardware (Cont.) These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 11
  • 12. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 12 Software ApplicationsSoftware Applications  system softwaresystem software  application softwareapplication software  engineering/scientific softwareengineering/scientific software  embedded softwareembedded software  product-line softwareproduct-line software  WebApps (Web applications)WebApps (Web applications)  AI softwareAI software
  • 13. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 13 New CategoriesNew Categories  Ubiquitous computingUbiquitous computing—wireless networks—wireless networks  NetsourcingNetsourcing—the Web as a computing engine—the Web as a computing engine  Open sourceOpen source—”free” source code open to the computing—”free” source code open to the computing community (a blessing, but also a potential curse!)community (a blessing, but also a potential curse!)  Also … (see Chapter 32)Also … (see Chapter 32)  Data miningData mining  Grid computingGrid computing  Cognitive machinesCognitive machines  Software for nanotechnologiesSoftware for nanotechnologies
  • 14. Legacy SoftwareLegacy Software These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 14
  • 15. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 15 Legacy SoftwareLegacy Software  software must besoftware must be adaptedadapted to meet the needs of newto meet the needs of new computing environments or technology.computing environments or technology.  software must besoftware must be enhancedenhanced to implement newto implement new business requirements.business requirements.  software must besoftware must be extended to make it interoperableextended to make it interoperable with other more modern systems or databases.with other more modern systems or databases.  software must besoftware must be re-architectedre-architected to make it viableto make it viable within a network environmentwithin a network environment. Why must it change?
  • 16. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 16 Software EvolutionSoftware Evolution  The Law of Continuing Change (1974):The Law of Continuing Change (1974): E-type systems must be continually adapted else theyE-type systems must be continually adapted else they become progressively less satisfactory.become progressively less satisfactory.  The Law of Increasing Complexity (1974):The Law of Increasing Complexity (1974): As an E-type system evolves its complexity increasesAs an E-type system evolves its complexity increases unless work is done to maintain or reduce it.unless work is done to maintain or reduce it.  The Law of Self Regulation (1974):The Law of Self Regulation (1974): The E-type system evolution process is self-regulating withThe E-type system evolution process is self-regulating with distribution of product and process measures close to normal.distribution of product and process measures close to normal.  The Law of Conservation of Organizational Stability (1980):The Law of Conservation of Organizational Stability (1980): The average effective global activityThe average effective global activity rate in an evolving E-type system is invariant over product lifetime.rate in an evolving E-type system is invariant over product lifetime.  The Law of Conservation of Familiarity (1980):The Law of Conservation of Familiarity (1980): As an E-type system evolves all associated with it,As an E-type system evolves all associated with it, developers, sales personnel, users, for example, must maintain mastery of its content anddevelopers, sales personnel, users, for example, must maintain mastery of its content and behavior to achieve satisfactory evolution.behavior to achieve satisfactory evolution.  The Law of Continuing Growth (1980):The Law of Continuing Growth (1980): The functional content of E-type systems must beThe functional content of E-type systems must be continually increased to maintain user satisfaction over their lifetime.continually increased to maintain user satisfaction over their lifetime.  The Law of Declining Quality (1996):The Law of Declining Quality (1996): The quality of E-type systems will appear to be decliningThe quality of E-type systems will appear to be declining unless they are rigorously maintained and adapted to operational environment changes.unless they are rigorously maintained and adapted to operational environment changes.  The Feedback System Law (1996):The Feedback System Law (1996): E-type evolution processes constitute multi-level, multi-loop,E-type evolution processes constitute multi-level, multi-loop, multi-agent feedback systems and must be treated as such to achieve significant improvementmulti-agent feedback systems and must be treated as such to achieve significant improvement over any reasonable base.over any reasonable base.
  • 17. These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 17 Software MythsSoftware Myths  Affect managers, customers (and other non-technicalAffect managers, customers (and other non-technical stakeholders) and practitionersstakeholders) and practitioners  Are believable because they often have elements of truth,Are believable because they often have elements of truth, but …but …  Invariably lead to bad decisions,Invariably lead to bad decisions, therefore …therefore …  Insist on reality as you navigate your way throughInsist on reality as you navigate your way through software engineeringsoftware engineering