HW:3 Chapter 10


10.6. Explain why it is reasonable to assume that the use of dependable processes will lead to the creation of dependable software.

Software development via dependable processes is a formalized and systematic way of developing software that has five attributes; Auditable, Diverse, Documentable, Robust, and Standardized. The goal is to reduce the possibilities of introducing errors into the system as well as finding and removing any errors that may have made it into said system. By using a systematic approach to development engineers can learn from past mistakes or oversights as well as follow a model designed specifically to create dependable software. There is a focus on documentation, specification, change management, redundancy, and diversity that all facilitate the creation of a more reliable system for software development. Therefore, dependable processes typically lead to dependable software.

10.10. It has been suggested that the need for regulation inhibits innovation and that regulators force the use of older methods of systems development that have been used on other systems. Discuss whether or not you think this is true and the desirability of regulators imposing their views on what methods should be used.

By its nature regulation does inhibit innovation but that doesn’t necessarily mean this limiting force is always bad. This is particularly true in regards to systems that play key roles in day to day lives that affect the safety and security of the public. As society continues to move forward the number of software systems throughout the modern world continues to grow and the public dependency on these systems functioning increases. If the goal of regulation is to temper innovation with the needs and safety of the public then I believe it falls in line with the principles outlined in ACM/IEEE-CS Software Engineering Code in which section 1.03 states “The ultimate effect of the work should be to the public good”.  

Regulators using older methods of system development are likely used as they have proven successful in the past and as the stakes of failure continuously rise it is only natural to stay with what has worked previously. By no means does this mean it is optimal or even correct to do so and as these systems continue to grow regulators will need to adapt but it seems industries need to show compelling reasons why different methods are not only safer but necessary for continued development. Sadly, there have been several high profile cases recently that suggest that industries have their own interests in mind when developing these systems. The Volkswagen emissions scandal is a prime example of a company using software to get around regulations. In addition to the company being patently wrong to do something like that, the engineers were in clear violation of the code of ethics sections 6.07 by misstating characteristics of the software, 6.13 by not reporting VW to the authorities, and section 4 that states “software engineers shall maintain integrity and independence in their professional judgment”.

There is such a thing as overregulation but the need for safe and secure systems are vital to the modern world and are a clear public good and inhibiting innovation is a small price to pay for a safer world.

Comments

Popular posts from this blog

HW10: Chapter 5

HW11: Chapter 6

HW26:Chapter 24