The concept, piloted by the BSC PL/1 program, is to archive the data at the end of each enrollment period and clear the master tables (delete all records) in preparation for the next semester. This method eliminates the need to stamp each record with a year and semester. (Although this choice might seem nearsighted and not very extensible, it's used here to keep your case study from getting too complex.) Each student is assigned a unique ID number. The student's name and major (again, keeping the case study simple) are also required for enrollment processing. Financial status is also required, but is held in a separate system. Obviously, each student is in one or more classes. Students who are not in any class are considered "dormant" and removed from the enrollment database for the semester being processed. Each class is assigned a name and section (such as "CIS0100-10") that uniquely identifies it. Classes are filled with students up to the assigned class limit. Professors, also assigned unique IDs, can be assigned to more than one class, but at BSC, no class has more than one professor. BSC provides dorms for students who prefer to live on campus. Although each dorm can house upward of 500 students, students are allowed to live off campus. Therefore, some students do not have a dorm assignment. What ORM-type statements could you pull from this information?
Logical DesignAlthough you probably wouldn't sketch an ER diagram for each case study (see Chapter 8, "Creating the Logical Data Model"), if you start to see statements such as those in the BSC case study that get into detail about IDs, you might expect questions about the database schema. As you work on the model, make sure you do the following:
If done properly, this drawing can serve to solidify your thoughts and make it easier to answer the exam questions without doing a lot of rereading. Figure 12.2 is a quick sketch of what the basic table structure might look like in your draft notes for BSC. Figure 12.2. A logical database schema for the BSC enrollment system.
The other part of logical design is a system block diagram, possibly including interaction arrows between the boxes. For BSC, you might have drawn something like Figure 12.3. Figure 12.3. A logical system design for BSC.Physical DesignYou are almost done. All that remains is bringing the theoretical design into the light of day to implement it in the physical domain. This process boils down to three areas: physical architecture, deployment, and maintenance. In the exam, as in the real world, the physical design stage is usually an opportunity to draw another diagram, one that shows the connections of application components and the flow of data through the system. Additionally, you need to consider potential bottlenecks or latencies in your implementation. When reading the case study, keep an eye out for any of the following words or phrases: LAN, WAN, network, satellite, delay, bridge, phone line, or Internet. Also watch for statements that hint at the number of users (such as "from any of the 40 computer kiosks placed strategically throughout the campus" or "6,000 students from their own PCs"). Next, spend just a few more minutes with the client at Big State to see if you can gather the information needed to design the solution's physical layout. |