Slide 6
CSCI 201 Guest Lecture: Data Modeling
Why data modeling?
We have already seen where, in the robotic navigation problem, the problem nearly
solves itself with the proper selection of a model. Proper modeling of the problem
domain is one of the most important steps in software development.
The software development process usually involves iterating through a series of
steps. The process usually goes something like this:
Define Requirements
Create a Data Model
Code the Prototype
Test the Prototype with Actual Users
Redefine Requirements
Modify the Data Model
Modify the Code
Retest
Problem Domains are Complex
The previous examples had simple problem domains. The problem domains you encounter
in practice can become extremely complicated. Modeling allows the use of simplifying
abstractions while letting you determine if the model captures the essential features
of the problem.
Requirements Change
Requirements always change. Assume from the beginning that the requirements
will change. New requirments are added. Sometimes requirements are dropped. A good
model will let you make these changes.
Problem Domains Change
In the robot navigation problem, the cars are parked. Suppose we add cars that are moving?
In this case, the model needs to be modified to add velocity information to the cars.
In the school scheduling problem, suppose the computer science department merges with
the philosophy department (just suppose). Can the model handle the domain change?
Next page
Email: Richard dot J dot Wagner at gmail dot com
dm03.htm, this hand crafted HTML file created October 18, 1997.
Last updated October 22, 2010, by
Rick Wagner. Copyright © 2010, all rights reserved.