You are a software manager in a company that develops critical control software
for aircraft. You are responsible for the development of a software design support
system that supports the translation of software requirements to a formal software
specification (discussed in Chapter 13). Comment on the advantages and disadvantages
of the following development strategies:
a. Collect the requirements for such a system from software engineers and external
stakeholders (such as the regulatory certification authority) and develop the system
using a plan-driven approach.
b. Develop a prototype using a scripting language, such as Ruby or Python, evaluate
this prototype with software engineers and other stakeholders, then review the
system requirements. Redevelop the final system using Java.
c. Develop the system in Java using an agile approach with a user involved in the
development team.