Sunday, October 2, 2016

HW16: Chapter 9

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

Fault repairs are the result of coding and or design errors. This type of maintenance corrects  bugs and vulnerabilities in different components of a program.

Environmental adaptation is a type of maintenance needed when components of the a programs support system is modified. These support components are those such as the operating system and system hardware.

Functional addition is the type of maintenance that adds new features to a system in order to support new requirements and buisness needs. 

The three types of software maintenance are fault repairs, environmental adaptation, and functionality addition. It is difficult to distinguish between them because interpretation into what one of the types encompasses can overlap and be integrated into one of the other two maintenance types when functionality is added. 

(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? 

Maintainability refers to the specifications that increase readability, availability, and reliability. Designing maintainable software with readable code is an ethical responsibility for programmers that must be upheld because it can negatively affect readability and reliability. Software engineering as an industry is progressively growing and being incorporated into critical systems that society has become reliant on. Writing readable code in these type systems (critical systems) greatly aid in availability and reliability. Having readable code aids in easier troubleshooting and code updates. If a fault presents itself during runtime of program, and its code is unreadable, programmers may struggle to correct bug in a timely manner, thus decreasing the systems availability. Also if code is hard to decompose, its statements can be misinterpreted, so when code is updated  it may have unwanted side affects in other areas in the program.