Robust Software Development Model


Our proposed model for software development is based on DFTS technology, as shown in Figure 2.6 in Chapter 2. DFTS technology consists of Robust Software Development Model, Software Design Optimization Engineering, and Object-Oriented Design Technology. As you will soon see, it is a more elaborate combined form of the cascade and iterative models with feedback at every level. In fact, it attempts to incorporate the best practices and features from various development methodologies and collectively provides for a customer-focused robust software technology. It is intended to meet all seven key requirements for a robust software architecture development method just identified. Although Taguchi Methods have been applied to upstream software design in a few cases,[19], [20] there is not yet an extensive body of literature devoted to this area.

The primary focus of this book is to explain this model in the context of robust software design and to show you how you can use it for DFTS. The purpose of this book is to give you a map for robust software design from the hardware design arena to that of software design and development. We will also establish a context for methodologies such as Taguchi Methods and Quality Function Deployment (QFD) in the software arena. We will show you how they can be used as the upstream architectural design process for some of the established software quality models using Professor Ramamoorthy's taxonomy, as well as the software quality management processes that will allow the development organization using it to become a learning organization.

Sidebar 1.2: Mission-Critical Aircraft Control Software

The control computer of a Malaysian Airlines Boeing 777 seemed intent on crashing itself on a trip from Perth to Kuala Lumpur on August 1, 2005. According to The Australian newspaper, the Malaysian flight crew had to battle for control of the aircraft after a glitch occurred in the computerized control system. The plane was about an hour into the flight when it suddenly climbed 3,000 feet and almost stalled. The Australian Air Transport Safety Bureau report posted on its Web site said the pilot was able to disconnect the autopilot and lower the nose to prevent the stall, but the auto throttles refused to disengage. When the nose pitched down, they increased power.[a] Even pushing the throttles to idle didn't deter the silicon brains, and the plane pitched up again and climbed 2,000 feet the second time. The pilot flew back to Perth on manual, but the auto throttles wouldn't turn off. As he was landing, the primary flight display gave a false low airspeed warning, and the throttles jammed again. The display also warned of a nonexistent wind shear. Boeing spokesman Ken Morton said it was the only such problem ever experienced on the 777, but airlines have been told via an emergency directive to load an earlier software version just in case. The investigation is focusing on the air data inertial data reference unit, which apparently supplied false acceleration figures to the primary flight computer.

More recently, a JetBlue Airbus 320 flight from Burbank, California to New York on September 21, 2005 attracted several hours of news coverage when the control software locked its front landing gear wheels at a 90-degree angle at takeoff. After dumping fuel for three hours, the plane landed without injuries at LAX. However, the front landing gear was destroyed in the process in a blaze of sparks and fire. An NTSB official called the problem common[b]. A Canadian study issued last year reported 67 nose wheel incidents with Airbus 319, 320, and 321 models. The NTSB official leading the investigation said that "If we find a pattern, we will certainly do something." (From the Los Angeles Times, September 22, 2005) Software failures in aircraft control systems are likely to incur a much higher social and economic cost than an error in a client's invoice, or even an inventory mistake. Unfortunately they are much harder to find and correct as well.


[a] http://www.atsb.gov.au/aviation/occurs/occurs_detail.cfm?ID=767

[b] http://www.airweb.faa.gov/Regulatory_and_Guidance_Library/rgad.nsf/0/25F9233FE09B613F8625706C005D0C53?OpenDocument




Design for Trustworthy Software. Tools, Techniques, and Methodology of Developing Robust Software
Design for Trustworthy Software: Tools, Techniques, and Methodology of Developing Robust Software
ISBN: 0131872508
EAN: 2147483647
Year: 2006
Pages: 394

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net