![]() |
Austin Software Process Improvement Network (A-SPIN) |
| Tuesday, January 8, 2004 Freedom: An Interface-Centric Approach to Requirements, by Rick Lutowski Overview: · Information-hiding secrets · What are requirements? · Quality requirements · Requirements development process Information-hiding is a foundational concept of object-oriented software development. However, the concept as documented by its inventor, Dr. David Parnas, has never been fully leveraged by the industry. In particular, the industry has all but forgotten that Parnas stated software requirements could be encapsulated in code objects for ease of change, and reduction of software maintenance cost. This talk will explore a new approach to software requirements that permits their encapsulation in objects, as envisioned by Parnas. Along the way, a new, interface-centric definition of requirements will emerge, along with new concepts for managing a software project. One of these is the concept of quality requirements. Quality requirements permit managing "ilities" -- such as reliability, usability, and maintainability -- in a way that promotes systematic infusion of quality into the software as it is being developed. Quality requirements also elevate the interests of the customer to the top, overriding the current industry focus on software developers. Finally, an interface-centric development process, along with its implications for the life-cycle cost of software, will be discussed. About the Speaker: Rick has been seeking improved ways to develop software for most of his career. He become aware of the need for ease of change of code when developing highly fluid ship design software for the Navy in Washington DC. This eventually lead to his independently discovering information-hiding when writing reusable packages for his own software company in Silicon Valley. He learned formal methodology at the Software Productivity Consortium, then participated in the development of a requirements-encapsulation methodology for Space Station Freedom at NASA Johnson Space Center (JSC) in Houston. He later utilized the SS Freedom methodology when commercializing a NASA/JSC graphics package. Moving to Austin, he adapted the Freedom methodology to Java for use on the Freedom Ship City-at-Sea project, to the development of a Java3D-based web browser, and other projects. |