Skip To Content

Athabasca University

Unit 1: Scope of Software Engineering

Software Engineering is a discipline whose aim is the production of fault-free software, delivered on time, within budget, and that satisfies the client's needs [Schach 2005]. The most commonly used definition of software engineering is the one given in the IEEE Standard Glossary for Software Engineering [IEEE Standard Glossary 1990], where software engineering is defined as "the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, that is, the application of engineering to software." It is obvious that this definition has a very strong foundation in the lifecycle of software. That is, it focuses on how software is built (i.e., development), how software is used and executed (i.e., operation), and finally how software is debugged, updated, and renewed (i.e., evolution). Planning, testing, and documentation should accompany all other activities while a software product is being constructed [Schach 2005]. "Software Engineering is still on the way to become a true engineering discipline with firm and well-understood foundations. During the last two decades, researchers as well as practitioners worked hard to identify and to develop the right techniques for effective and successful software engineering processes" [Engels and Schäfer 2001].

Unit Purpose

When you complete this unit, you will be able to

  • define the scope of software engineering and related areas of knowledge;
  • discuss the importance of the various aspects of software engineering.

Updated August 25 2021 by FST Course Production Staff