Data-Oriented Design

This text uses the Martin (1990) version of Information Engineering to illustrate data-oriented design. The result of data-oriented analysis – entity-relationship diagrams, data flow diagrams, CRUD matrices, and so on – is translated into screen designs, production database designs, action diagrams, procedural structures, and security plans. Compared to other approaches, data-oriented design strongly emphasizes security, recovery, and audit controls, relating each to data and processes in the application.

In this chapter, you will learn about the concepts and terminologies for data-oriented design, analyzing data and defining system controls, and the action diagram. The action diagram shows the processing details for an application in a structured format, which can be translated into programs and modules. You will also learn about menu structure, dialogue flow, and hardware and software installation and testing.

Analyze Data Use and Distribution

Plan Hardware and Software Installation and Testing

Guidelines for Hardware/Software Installation Plan 

The guidelines for hardware and software installation planning are developed from practice and identify what work is required, environmental planning issues, responsibility for the work, timing of materials and labor, and scheduling of tasks. 

Installation requirements should always be defined as far in advance of the needs as possible and documented in a hardware installation plan. Installation planning tasks are:

1. Define required work 

Define hardware/software/network configuration 

Assess physical environment needs 

Identify all items to be obtained 

Order all equipment, software, and services 

Define installation and testing tasks 

2. Assign responsibility for each task 

3. Create a schedule of work

If the SE team has no experience with configuring installations, their work definition should always be checked by someone who has experience. In general, you define the complete hardware, software, and network configuration needed, match the application configuration requirements to the current installation, get approval for all incremental expenditures, order all equipment and software, and install and test all equipment and software. In a mainframe environment, this task is simplified because the first step, configuration definition, can be abbreviated and done with help from an operations support group.


FIGURE 10-54 Second-Level Menu Structure


FIGURE 10-55 Final Menu Structure

The operations support group also would install and test hardware and install software. 

When the configuration is defined, it is matched to the current installation to determine what items need to be purchased. In new installations, the physical installation environment is as important as the equipment. Building, cooling, heating, humidity control, ventilation, electrical cable, and communications cable needs should all be assessed. If you have no experience performing these analyses, hire someone who does. Do not guess. You only do the client a disservice, and chances of making a costly mistake are high.

Once needed items are identified, they should be ordered with delivery dates requested on the orders . The delivery dates should conform to the expected installation schedule which is discussed below. The goal is to have all equipment and parts when they are needed and not before. For capital expenditures, this delays the expense until it is needed. Planning for large capital expenditures should be done with the client and accountant to stagger charges that might be a financial burden. 

As items to be installed are identified and ordered, responsibility for installation and testing should be identified. The alternatives for who should do hardware and software installation are varied. Choices include consultants, unions, contractors, subcontractors, or current personnel. In many cases, there are three types of installations being made: software, hardware, and the network, and each has its own installation responsibility.

Software should be installed by system programmers in an operations support group in a mainframe installation, and by the software builders for a PC installation. Contracts, whether formal or informal, should state what work is to be done, timing of work, penalties for failure to meet the time requirements, and price. Other items such as number of hours and dates of access to the site might also be included. 

Hardware, in a mainframe environment, is managed, ordered, and installed through an operations department. You, as an SE needing equipment, must know what you need, but must trust the operations department to obtain, install, and test the equipment. Most PC computer equipment is simplified enough that special assistance is not usually required. If desired, you can usually negotiate with a hardware vendor to burn-in equipment and set it up for a small fee. Burn-in means to configure the hardware and run it for some period of time, usually 24-72 hours. If there are faulty chips in the machine, 90% of the time they fail during the bum-in period.


FIGURE 10-56 Dialogue Flow Movement Alternatives


FIGURE 10-57 a Example of Restrictive Screen Movement


FIGURE lO-57b Example of Less Restrictive Screen Movement

At least two terminals or pes should be configured during installation of network cable for testing the cable. For LAN installation, hire a consultant if you've never done this before. The consultant helps you

  • define what is to be done 
  • define required equipment (e.g., cabling; connectors, etc.) 
  • get permits from the government and building owners 
  • obtain zoning variances 
  • identify and hire subcontractors 
  • supervise and guarantee the work.

As the user's representative, you can prepare the installation for the work to be done. Mark walls where all wires should be, using colored dots. For instance, you can use blue dots for phone lines, red dots for LAN cable, and green dots for electrical outlets. Number all outlets for identification of wires at the server end. Colored tape shows where cable runs should be placed in false ceilings and walls. Configure one PC, with the network operating system installed, in the location of the file server. As cabling is complete, move the second PC to each wired location, start-up the network, and send messages. Make sure the location is as expected and that the wiring works. Test all wires because they will be wrong. Make sure all wiring is correct before the electrical contractor is paid and leaves.


FIGURE lO-57c Example of Less Restrictive Screen Movement


FIGURE 10-58 ABC Process Hierarchy


FIGURE 10-59 ABC First-Level Menu Hierarchy


FIGURE 10-60 ABC Menu Structure

The important issue is to make a choice of who will do what work long before the work is needed, and plan for what is to be done. Use a lawyer to write all contracts using information provided by you, as the client's representative, and the client. 

Timing of installations can be crucial to implementation success. When different types of work are needed, such as air-conditioning and electrical cabling, the work should be sequenced so the contractors are not in each other's way, and in order of need. For instance, a typical sequence might be building frame, building shell, false floor/ceiling framing, electrical wiring, plumbing, air-conditioning, communications cabling, false floor/ceiling finishing, finishing walls, painting, and decorating. Any sequences of work should be checked with the people actually performing the work to guarantee that they agree to the work and schedule. 

In general, you want to end testing of all equipment to be available for the beginning of design at the latest. This implies that all previous analysis work is manual. If CASE is to be used, the latest possible date for equipment and software availability is the beginning of project work. 

Cabling is needed before equipment. Equipment is needed before software. Software is needed before application use. Some minimal slack time should be left as a cushion between dates in case there is a problem with the installation or the item being installed. Leave as big a cushion between installation and usage as possible, with the major constraint being payment strains on a small company.


ABC Video Example Hardware/Software Installation Plan 

For ABC, a local area network is to be used. A file server with one laser printer, three impact printers, and five PCs are planned. The LAN will be a Novell ethernet with SOL-compatible DBMS software, Carbon Copy, Word Perfect, Lotus, Norton Utilities, Fastback, and Symantek Virus software. The goal is for all hardware to last at least five years if no other business functions are added to the system. The configuration details are shown in Figures 10-64 and 10-65. There should be adequate capacity to add accounting and order processing software if needed. The current average daily rentals of 600 is expected to double in five years. The current number of customers is 450, and is expected to be 1,000 in five years.


FIGURE 10-61 Incorrect Rental/Return Menu Structure


FIGURE 10-62 ABC Dialogue Flow Diagram Menu Structure Entries


FIGURE 10-63 ABC Dialogue Flow Diagram

n five years. To develop a plan, assume that the current date is January 1, and that the application installation is scheduled for August 1. Design has just begun. The PCs and laser printer were installed five months ago for availability during planning, feasibility, and . analysis. The currently installed software includes a CASE tool on two machines, Word Perfect, Norton Utilities, Fastback, the SOL DBMS, and SAM Virus software. The remainder of the software and hardware must be ordered, installed, and tested as part of this plan. 

First we determine what we need. A comparison of currently installed items to the list of required items shows the following items need to be planned:

Network cable and connecters

File Server

Novell Software

Network Interface Cards (NICs, i.e., ethernet boards)

Impact printers

Bar Code Reader and Imprinter

Carbon Copy (network version)

Word Perfect (network version)

Norton Utilities (network version)

Fastback

SOL DBMS (network version)

SAM (network version)

Lotus (network version) 


FIGURE 10-64 ABC Configuration Schematic



Hardware Characteristics
File server



1 Laser printer
12 Mb Memory
800 Mb Disk
Super 486, SCSI Channel
Color Monitor
8 Page/Minute
3 Impact printers for two-part forms (or 4 cheap lasers with tear-apart forms)
5 PCs 12 Mb Memory
1.4 Mb Floppy disk for startup
No hard disk
Local printer (see above)
1 2400 Baud Modem for long distance troubleshooting
1 Streaming tape backup 100 Mb/Minute 

FIGURE 10-65 ABC Hardware and Software Details

Everything should be ordered as soon as possible to ensure availability. Equipment and software ordering is the first item on the plan. 

The group has installed network software before but not the cable, so they obtain approval from Vic to engage another consultant, Max Levine, from their company to perform that work. Max has been installing mainframe and PC networks for over 20 years and knows everything about their installations and problems. He immediately takes over the network planning tasks. He first obtains a rough idea of the planned locations for equipment, computes cable requirements, and orders cable and connectors. Then, for the plan, he adds tasks for mapping specific cable locations for the installers, for installing and testing the file server, and for installing and testing the cable (see Table 10-6). 

At the same time, Mary and Sam work at planning the remaining tasks. Each software package must be installed and tested. These tasks are planned for Sam and one junior person. The tests for all but the SQL package are to use the tool and verify that it works. For the SQL package, Sam and a DBA will install a small, multiuser application to test that the single and multiuser functions are working as expected. Of all the software being used, it is the one with which they are least familiar, so they use the installation test as a means of gaining more experience. 

All tasks relating to new equipment and software are scheduled to take place during a six-week period in January and February. This allows several months of cushion for any problems to be resolved; it also allows disruptive installations (e.g., cable) to be scheduled around peak hours and days. The schedule does not show elapsed time, but other work is taking place beside the installations. For instance, design work is progressing at the same time. As the application is implemented and the users have need for the equipment, the PCs and printers are moved to their permanent locations. This occurs in late spring for data conversion. The last stand-alone PCs are scheduled to be added to the network in late July, long before the application implementation date of August 15.