Development Methodology

Software development methods tend to emphasize different aspects of designing and constructing software. There are four interrelated areas that different methods focus on:

User-centric methods place the human interface at forefront.

Methods that focus on the elements of software construction emphasize either tools or languages.

Model centric methods present a picture of things, processes, and their interrelationships found in an enterprise. Some model-centric methods emphasize processes and others the structure of entity classes.

At Tower Grove Associates we prefer a fourth, mission-centric method in which the emphasis is on the purposes for which the software is to be used.

To help stay focused on the purpose, when we conduct analysis of a problem or enterprise, we ask two basic questions:

What decisions need to be made and what information is required to make them? By posing these questions at all levels appropriate to the task at hand (from CEO to the smallest software component), we can quickly uncover all relevant issues and make an assessment of how much to automate at a given stage in the life of a system.

It should be noted that advocates of object oriented software development methods include advocates for each of the four focal areas. Because of our emphasis on decision making, we tend to favor OO methods that emphasize the modeling of agents that determine which actions to perform. In modeling the structure of things and their attributes for most enterprises, we prefer entity-relationship diagrams, believing that the implementation target for recording such information is a relational database management system.

As we are not tool-centric, we can employ whatever toolset (UML, Websphere, Weblogic, for example) a client finds useful for modeling and development in other application areas.

 
© 2001 Tower Grove Associates. All rights reserved.