Home
Services
News

Lavallee Computer Consulting, Inc.

News

What are the current software models in use? The literature might lead you to believe there are dozens of models to choose from. Despite what seems to be a long list of different approaches most are different in name only. All use a fundamental set of processes emanating from the initial Waterfall model invented by Winston Royce in the 60's.

According to Roger Pressman there are four basic SD models in current use. First, the Linear-Sequential Model--commonly called the Waterfall. Invented by Winston Royce in the 60's, this model develops a basic set of logical steps followed in the development process.

The model was an initial and somewhat revolutionary attempt to bring order to an otherwise chaotic development process that was in common use in the 60's. It's basic steps of analysis, design, code, test and implement forms the basis of just about all development models in current use. It's major drawback was it's its inability to mimic real life activities

Second, a prototype acts as a perfect mediator between the developer's point of view and the user's point of view, views that are more often than not significantly different. Without a mediating prototype, the finished product will more than likely be a clear representation of the developer's view only. The prototype is able to merge the disparate views creating a product that's much closer to the user's desires.

An extension of this model, called Incremental prototyping, is a process of developing a prototyped deliverable in versions. Each version being a fully functional product. Each subsequent version adding additional functionality to the previous version.

Third, Evolutionary Prototype or Spiral Model--developed by Barry Boehm in 1988, this model is an adaptation of the waterfall and prototype model in comb-ination with risk assessment. It's a fully interactive process beginning with an early prototype which is further developed with each iteration of the development cycle into a final product.

Though still not widely adopted the Spiral Model has great potential because it overcomes many of the difficulties of the earlier models while incorporating the best of those same models.

It's strength lies in it's incorporation of economic factors as well as functional concerns. Risk analysis, prototyping and iteration plays a dominant role in the model with risk analysis acting as the driving mechanism. More and more developers serious about software development are embracing this approach.

Fourth, Formal Model--this model incorporates mathematical structures as part of the development environment. The theory of discrete mathematics is applied with a goal of developing code that is consistent and bug free.

The formal model is not in wide use for several reasons. First, an extensive mathematical background is required. Second, adoption in many software applications is only now being explored leaving much of today's software inaccessible to formal development. Third, formal methods work well in simple structures but begin to overwhelm the practitioner as the software becomes more and more complex. Finally, formal methods, though rigorous, are not at all user friendly. Conveying requirements and design specs to buyers and/or users would be a daunting task at best.

Though these are the major development models in current use, as the development process matures, these models will be modified to incorporate our advancing state of software development knowledge. Two elements are sure to remain over the long run--prototyping and formal methods. Together these two areas address the two major concerns plaguing today's software, requirements elicitation and generating bug free code.

Home Services News

Lavallee Computer Consulting, Inc.
RR 2 Box 168, Jericho, VT 05465, 802-899-3115 Info@lavalleeccs.com



© 1997-2000 Lavallee Computer Consulting, Inc.
Page Design © Practical Web Solutions