Complex systems require extensive planning and documentation. It is difficult for authors and teachers to convey this with typical book projects. In addition to the fact that a book project tends to be small, there are two other artificial aspects of book projects.
The project is more or less defined for you. You do not have to deal with people or understand the history of any organization.
You are your own systems analyst, systems designer, interface designer, programmer, database designer, database administrator, and so on.
Imagine if these conditions did not hold. You could not jump into programming, but would have to spend time on planning!
If you did do formal systems analysis and design, you probably would make use of computer-aided software engineering software to build and present your ideas. If you were working in a large organization, you would need to master the intricacies of the existing applications. During the design stage, you would need to make one or more “make or buy” (also known as out-source) decisions. In the particular area of Web development, this might mean determining if you should use any Web services; that is, self-contained subsystems for specific functions. No matter what the implementation, you need to know what the application does before you attempt to build it.
An alternative methodology to be used in concert with entity relationship, process, or storyboard diagrams is object modeling. It is appropriate to spend a short amount of time on objects even though it is not the major thrust of this book. Objects are data and procedures packaged together. The procedures are called methods. Objects are instances of classes in the way that a variable holding a number can be viewed as an instance of the number data type. The close coupling of data and the procedures using the data has proven to be a useful way of organizing systems.
This statement invokes the Write method of the ASP Response object to send a string to the browser.
Object modeling, as distinct from object programming, is the technique to describe a system using the terminology of objects. The connecting arrows are calls to the methods of objects. Object-oriented systems have a feature called inheritance. A class can be defined as a subclass or child of another class. The child class inherits the properties and the methods of the parent class. This can be an efficient way to describe certain situations. For example, you can have an application in which some customers have a special status. These customers are treated the same way as regular customers in many situations, but not in all situations. The inheritance facility allows for a systematic way to reuse the common procedures.
The older way of modeling systems, namely entity-relationship and process diagrams along with the storyboard technique borrowed from multimedia seemed appropriate tools for the Web database applications described in this text.