Slide 12

CSCI 201 Guest Lecture: Data Modeling


The Modeling Process

Collaboration

The modeling process is usually collaborative. One person can keep a mental model for a simple project, but complex projects require a common model that is worked on by the project team. There are now software engineering tools to help build data models. Some of these tools generate code automatically.

User Role

Users are involved in the requirements specification for a software project. Avoid the temptation to involve users in the modeling process. For significant projects, the model will be too complicated for the users to understand. Over-simplifying the model so users can understand it is inappropriate.

Typical Modeling Process

In one kind of a typical software development project, the team will be asked to automate an existing business process. Here is an algorithm for creating a data model:

  1. Talk to the users to understand the existing paper process.
  2. Identify all the objects that the users interact with. These may be physical objects such as hardware products, paper document objects such as forms, letters, and memos, and software objects such as files and CAD models.
  3. Identify the relationships (aggregation or inheritance) among the objects.
  4. Sketch a prototype model on a blackboard and brainstorm it.
  5. Document the model using a CASE or CAD tool.
  6. Evaluate the model in terms of implementation. (How do you map it to code?)
  7. Modify the model as necessary and begin coding the prototype.
  8. After prototype testing, revisit the model to see what changes are necessary.

Chapter 5 of your text, Mastering Object-Oriented Design in C++ has some additional material on the design and modeling processes. The "CRC" cards can be useful in the early phases of modeling.

Next page


Email: Richard dot J dot Wagner at gmail dot com

dm07.htm, this hand crafted HTML file created October 18, 1997.
Last updated October 22, 2010, by Rick Wagner. Copyright © 2010, all rights reserved.