Gerardo Schneider Department of Informatics University of Oslo Oslo, March 2009.

  • Published on
    24-Dec-2015

  • View
    213

  • Download
    0

Transcript

  • Slide 1
  • Gerardo Schneider Department of Informatics University of Oslo Oslo, March 2009
  • Slide 2
  • Program X 3 Programming System X 3 Programming Systems Product (Software System) X 3 Programming Product Generalization, testing, docum., maintenance Interfaces, system integration X 3 2Gerardo Schneider * Does it look actual? Taken from The mythical man-month. Frederick P. Brooks, 1975 We are still facing similar challenges, scaled to a more complex setting Software Engineering tries to explain things here
  • Slide 3
  • 3Gerardo Schneider What is Software EngineeringWhy Software Engineering Differences with other disciplinesChallenges
  • Slide 4
  • 4Gerardo Schneider Software (System) (Programs, documentation, configuration, etc) Software Engineeer Development of Software products Software Engineering An engineering discipline: 1.Focus on cost-effective development of high-quality Sw systems 2.Concerned with all the aspects of software production From: Specification To: Delivery and use
  • Slide 5
  • 5Gerardo Schneider Engineering discipline Engineers make things work Apply theories, methods, and tools Even if no theory is well developed T ake organizational and economic constraints into account High-quality software Maintainability, Dependability, Efficiency, Usability All aspects of software production Not just concerned with technical aspects of Sw But with all activities of Sw development (software process)
  • Slide 6
  • 6Gerardo Schneider Software specification Customers and engineers define the software Identification of constraints, etc Software development Design and programming Software validation Checking that the Sw does what the customer wants Software evolution Modification to adapt to market requirement
  • Slide 7
  • Many different models 2 examples... The waterfall approachEvolutionary development A software process model is a simplified description of a software process Evolutionary Development The waterfall approach 7Gerardo Schneider
  • Slide 8
  • 8 Software Engineering : Proposed in 1968 to handle the software crisis Due to: Introduction of integrated circuits Very complex software Many projects were late Need to develop reliable software Informal Sofware development not good Message: New techniques and methods needed
  • Slide 9
  • 9Gerardo Schneider Archaic use of software process (models) More than 40% of companies use the waterfall process model ( IEEE Software survey, 2003) Shown to have problems (more than 20 years ago) Software is much more complex Distributed and critical sytems Something wrong: huge economic and social impact Testing still the dominant validation technique Need for other validation techniques
  • Slide 10
  • 10Gerardo Schneider Practical problems of producing software Ideally, should be based on CS theories Usually uses ad hoc approaches to develop software Theories and methods Ideally, should take inspiration from applications Usually develop theories independent of applications
  • Slide 11
  • 11Gerardo Schneider Practical problems of producing software Ideally, should be based on CS theories Usually uses ad hoc approaches to develop software All aspects of development and evolution of complex systems Includes Hw and Sw policies, process design, management It subsumes Software Engineering
  • Slide 12
  • 12Gerardo Schneider The heterogeneity challenge Need to integrate new software with older legacy written in different programming languages The delivery challenge Need to shorten delivery time for complex systems without compromising quality The trust challenge Need to develop techniques to enhance trust between (distributed) users Need to fill the gap between the State-of-the-Art and the State-of-Practice
  • Slide 13
  • 13Gerardo Schneider
  • Slide 14
  • 14Gerardo Schneider - Ian Sommerville. Software Engineering, 8th edition 2007 (Addison-Wesley) - D.J. Reifer. Is the software engineering state of the practice getting closer to the state of the art? IEEE Software, Nov/Dec 2003 - F.P. Brooks. No silver bullet: essence and accidents of software engineering. IEEE Computer, 20 (4), April 1987 - F.P. Brooks. The mythical man-month, 2nd edition 1995 (Addison-Wesley).

Recommended

View more >