Ward's World + McGraw Hill's AccessScience

42752_Ward's World+MGH Software Engineering

Issue link: https://wardsworld.wardsci.com/i/1488288

Contents of this Issue


Page 0 of 6

1 Software Engineering Article by: Pranshu Gupta, Department of Mathematics and Computer Science, DeSales University, Center Valley, Pennsylvania. "Software engineering." AccessScience, McGraw Hill, Sept. 2021. Access to this content is available to Ward's World readers for free from McGraw Hill's AccessScience, an award-winning, digital STEM resource that provides immediate, authoritative answers to students' thirst for scientific knowledge on topics such as climate change, virology, pollution, and more. Ward's World and McGraw Hill have partnered to offer educators a no-obligation, free trial subscription to this product. Request your free trial today and discover how valuable AccessScience can be for you and your students. The production of software through a progression of disciplined and controlled steps. As the need for complex, real-time, and life-critical software proliferates, there is a demand for an effective software develop- ment process that guarantees the correctness and quality of the software produced. To meet this challenge, the computer science commu- nity has developed a process called software engineering that aims to build software that meets all the specifications for its intended use. The term engineering refers to software being produced with the objective of deliver- ing a successful final product created with as much integrity as a building or a road built by a civil engineer. For this reason, it is necessary that software engineers have a full understanding of the intended design and are certain of its correctness and reliability of operation in a specific operating environ- ment. In other words, software engineers should aim to develop the counterpart of the civil engineer's blueprints to guarantee the functionality, correctness, and behavior of the + ward ' s science Key Concepts • Software is typically produced through a progression of controlled steps, including requirements gathering, design, coding, testing, debugging, deployment, and maintenance. • An important component of software engineering is documentation of the final system, which substantiates the needs of the system and describes how it operates. • Software engineering tools include programming languages, Unified Modeling Language (UML), and Model-Driven Architecture (MDA). • Waterfall, Agile, and several other popular models exist for approaching the software development process, all of which have as their goal a correctly working system that satisfies all user requirements and is easy to use and maintain. Fig. 1: Software engineer reviewing code.

Articles in this issue

Links on this page

Archives of this issue

view archives of Ward's World + McGraw Hill's AccessScience - 42752_Ward's World+MGH Software Engineering