About Business Career Research Fun Links

VMT: A Complementary Approach

VMT methodically and in a novel way combines techniques that have proven productive in other object methodologies.

VMT uses OMT as the backbone methodology and uses its notation throughout. However, although OMT works well when the requirements are presented as a problem statement, as in an RFP, it does not provide a mechanism for capturing user interactions in the requirement phase of the application development cycle. Therefore, VMT applies use case analysis to identify user requirements, the activities the user performs, and the services the system must provide for the user. This approach should lead to a better understanding of the interactions between the user and the system to be built. The OOSE use case requirement modeling technique has the advantage of capturing the many modes of user interaction and is particularly well suited to formalizing results obtained by prototyping. A set of reusable GUI prototypes is also a byproduct of the prototyping activity.

OMT starts the modeling process by identifying object classes from the application problem statements. It does this through language-syntax-related procedures, such as noun, verb, and adjective analysis. In the VMT analysis process, the mechanism used to identify relevant objects in use case analysis is similar. When building the domain object model, we use the union of classes and relationships found in both use case analysis and problem statement analysis because the class derived from both sources usually represent different, albeit complementary, aspects of the application domain. The justification for this approach is to better capture the user requirements by focusing concurrently on both the static and the dynamic aspects of the problem domain.

RDD techniques are incorporated into VMT because once classes and relationships are found, the distribution of responsibilities among the classes must be established. VMT also uses CRC cards to define object class responsibilities and collaborations, not to find class. Eventually, new collaborations may become apparent when class responsibilities are changed.

VMT applies a concept similar to the concept of subsystems defined in OMT, RDD and OOSE to map subsystems to programming constructs that the development environment can handle.

The next step in VMT, following OMT, is to use event trace diagrams and Harel state charts to model the interactions between objects and the changes of object states. The event traces define the messages among objects and, therefore, the methods to be invoked. The changes of state help us identify and understand the characteristics of the variables affected by the methods.

The functions that the methods implement are then defined by preconditions and postconditions, which are related to events.

Figure 6 depicts a high level scheme for the VMT modeling process and its relationship to the analysis, design, and implementation phases. VMT is a highly productive application development process that integrates visual programming and can be extended to distributed object application development.

Joseph Yoder Home   Webmaster