HW16: Chapter 9


9.8. Briefly describe the three main types of software maintenance. Why is it sometimes difficult to distinguish between them?

Fault repair – This is the maintenance of fixing and repairing errors. The types of errors are coding errors, which are the cheapest to correct, design errors, which can require changing components in a system, and requirements errors, which may require redesigning an entire system.

Environmental adaptation – This is the maintenance required when a system’s environment changes. Types of changes include hardware, operating system, and supporting software changes.

Functionality addition – This is the maintenance required when system requirements change due to organizational or business changes.

            It is sometimes difficult to distinguish between the three types of software maintenance because they often related to or caused by one another. For example, an environmental change, such as a different supporting software, could cause a system to crash or cause bugs to occur.

9.10. Do software engineers have a professional responsibility to develop code that can be easily maintained even if their employer does not explicitly request it?

            Yes software engineers have a professional responsibility to develop code for their employers that can be easily maintained because they are professionals. One of the responsibilities outlined by the ACM is to achieve high quality in both the process and products of professional work. A professional software engineer should always strive to provide their best work just like any other engineering professional.

Comments

Popular posts from this blog

HW6: Chapter 4

HW24: Chapter 23

HW11: Chapter 6