[INF43] Lecture 1 Introduction to software engineering

软件工程 SoftwareEngineering


@ZYX 写于2020年04月07日

Introduction to software engineering

1. software engineering

  1. “A broad field that touches upon all aspects of developing and supporting a software system.” [Tsui, Karam, Bernal]
  2. “A discipline that deals with the building of software systems which are so large that they are built by a team or teams of engineers.” [Ghezzi, Jazayeri, Mandrioli]
  3. Multi-person construction of multi-version software.” [Parnas]
  4. “A discipline whose aim is the production of fault-free software, delivered on-time and within budget, that satisfies the user’s needs. Furthermore, the software must be easy to modify when the user’s needs change.” [Schach]
  5. Managing the complexity of both a problem and its solution, to create a software product that successfully solves the problem.” [Navarro]
  6. Inf43 definition:
    1. Informatics 43 definition
      1. The process of constructing software
        1. Requirements
        2. Design
        3. Implementation
        4. Verification
        5. Maintenance
      2. Phases of development other than programming
        1. Documentation
        2. Diagrams
      3. Principles and qualities of enduring value
        1. correctness
        2. reliability
        3. Adaptability
        4. Modularity
        5. Usability
        6. Efficiency