11.07.2015 Views

Database Management Systems Appendix: Projects - Jerry Post

Database Management Systems Appendix: Projects - Jerry Post

Database Management Systems Appendix: Projects - Jerry Post

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Database</strong> <strong>Management</strong> <strong>Systems</strong>Designing and Building ApplicationsCopyright © 2005 Gerald <strong>Post</strong><strong>Appendix</strong>: <strong>Projects</strong>Introduction to <strong>Database</strong> <strong>Projects</strong> 2RMN Auto Sales 3Purchases 3Sales 4Warranties and Payments 4Exercises 6Monster Video 7Initial Appraisal 7Proposal Options 8Installation 8Exercises 10Big Chemical, Inc. 12Employee Information 12Sensors 12Employee Access 13Exercises 14Big Teeth Reality TV 16Applications 16Episodes and Events 17Exercises 18Cerulean Bee 19Artwork 19Orders 20Exercises 21


Introduction to <strong>Database</strong> <strong>Projects</strong>To truly learn how to build business applications, you need to work on a databaseproject. The projects described in this appendix are generally simpler than real-life projectsbut complex enough to illustrate common problems that you will encounter.The projects are designed to be built throughout the term. Students shoulddemonstrate a completed database application at the end of the term. Preliminaryquestions or assignments are given for each project to get you started. However, the mostimportant aspect of the case is to build the final, complete application. To provideadditional feedback, the instructor should also evaluate the projects at two intermediatestages: (1) the list of normalized tables and (2) some initial forms and reports.The most important advice to the students is that you must begin work on theproject as soon as possible. Do not put the project off until the end of the semester. To haveany chance at completing the project, most students will have to put in 20 to 40 hours oftime. The project will reinforce the concepts discussed in the chapters—particularly datanormalization and application design. If you work on the project throughout the semester,you will gain a better understanding of the topics, and you will finish most of the projectbefore the end-of-term crunch.Class projects are slightly different from real-world applications, but they havemany features in common. One of the most challenging aspects is that any project containsa level of uncertainty and ambiguity. When you start a real-life project, you never knowexactly what the project is going to involve. As you talk with users, you encountercontradictions, uncertainty, and confusion over terms and goals. In real-life, you resolvethese problems through experience and discussions with managers. With class projects, youdo not have direct access to the managers and users. The instructor can answer somequestions, but students will need to make their own decisions and interpretations.When you first read the case, try to focus on the big picture. Identify theenvironment, goals, and objectives of the proposed system. You should take notes on thecompany and jot down additional questions. Additional research of the industry and similarfirms will help identify terms, goals, and potential problems. When you begin to analyze theindividual forms and reports, you need to identify the overall purpose of each form. Youshould be able to describe the purpose of each form in one sentence. Avoid using the form’stitle—describe its purpose in your own words. For any of the cases, you should make thislist and keep it handy so you always remember the overall purpose of the application.Remember that you will probably have to rework the normalization several timesbefore the project is complete. Remember that every time you change the primary keys, youfirst have to delete relationships. Try to develop a good normalized list before you begincreating forms and reports, but leave yourself enough time to go back and change the tablesif you find problems.In many cases it pays to start small and add tables and features slowly. Start withan initial set of tables and keys that you are certain are correct. Then begin building forms.Add columns and tables as you need them. If your initial tables are correct, you should beable to add new columns and tables without altering the existing design. For the finalproject, it is usually better to complete half a project where everything works, instead of alarge mess where nothing works.One final word of advice: back up your work. Always keep a backup copy of yourproject on a different disk. Two or three copies are even better. Disks are cheap.2


RMN Auto SalesRMN, a local used-car dealer needs a database to track the cars purchased and sold.Most cars are bought at auction, but a few are picked up from other dealers. The companypays cash at the auctions and brings the cars back to clean them up. When the cars aresold, the company generally finances the sale. Customers rarely have good credit, so thecompany prices the cars so that buyers cover the original purchase cost of the car with adown payment. The rest of the purchase price is financed, but even if the customer stopspaying on the loan, the company has not lost any money. Consequently, a key aspect of thecompany’s profitability is finding cars at low prices.PurchasesPurchaseDateLocation Seller/Dealer TaxIDAuction yes/no# Problem Est. Repair Cost ActualVINMake Model YearColorMilesConditionBook PricePrice Paid(more vehicles)Figure 1The companyhas buyers that travelthe state to attendvarious auctionslooking for good deals.To get the best prices,the company is willingto pick up cars thatother buyers do notwant. In particular, thecars often need minorrepairs. These repairsand costs are estimatedat the time of thepurchase by the buyer,and then actual costsare recorded as the work is done. The repairs generally involve simple body work to repairscratches and dents or cosmetic work on the interior. The company does not purchase carsthat need major repairs. Consequently, all work is performed by the dealer at a small shop.The cost of the repair includes the materials and the labor costs—usually young workersjust out of high school working for low wages to gain experience. Figure 1 shows the basicform the buyers fill out when a car is purchased. The individual problems spotted arenumbered, but not in any particular order. Remember that the buyer is looking at dozens ofcars at a time and needs to quickly record basic data about the car during an initialinspection before the bidding begins. The book value is the average price for the vehicle aslisted in the industry guide books, but the owners never allow the buyer to pay that much.At some point, the buyers would like a portable version of the database so they can fill outthis form and have it calculate totals while at the auction.3


SaleDateTotal DueDown PaymentFinanced AmountCustomer PhoneLast Name, First NameAddressCity, State ZIPVINMilesConditionList PriceSale PriceStyle (sedan, SUV, …)Interior ColorFigure 2SalesEmployeeLast Name, First NameCommissionEmploymentEmployer Title Super. Phone AddressSales of thecars are relativelytraditional. Asalesperson helpsthe customerselect a car andnegotiate theprice. Figure 2shows the basicform to record thesale. Theemployeecommission isusually added tothe form after thecustomer signs it,but sometimesemployees list a lower-than-normal commission to help sell the car. Since RMN financespart of the price, customers are asked to list their current and last few employers—in casethe company needs to repossess the vehicle.Warranties and PaymentsVINCustomer Co-signerSalespersonPhoneWarranty Sale DateTotal CostMonthly CostWarranty StartDate Length Cost DeductibleItems CoveredWarranty StartDate Length Cost DeductibleItems CoveredFigure 3RMN also offers a variety ofwarranties as a major selling strategy.The warranties help to sell cars becausepeople believe a warranty lowers therisk. Yet, because the cars are relativelysound to begin with, few warrantyclaims arise, so the company makes asolid profit on the warranties.Consequently, salespeople areencouraged to sell the warranties andreceive a relatively high 25 percentcommission on them. As shown inFigure 3, separate warranties areoffered for various components. Forinstance, an exterior warranty coversthe paint, while a drive-train warrantycovers various engine and transmission elements. Note that each warranty only covers thelisted items. Customers are given several options, including the length of the warranty andthe level of the deductible. Of course, longer warranties and lower deductibles cost more.These values are specified in the warranty policies, but the salesperson needs to enter themon this form so everyone knows exactly which warranty was purchased. The customer alsohas the option of paying the warranty fees upfront as a lump sum, but most decide tofinance them over time in the form of monthly payments. These values are entered by thesalesperson using a chart—essentially the company charges a one percent per monthinterest rate for financing the warranty costs.Start4


Customer Gender Date of Birth Taxpayer IDNumber of late paymentsAverage number of days latePmt Date Due Paid Date Amount Bank AcctFigure 4To providedocumentation for situationswhen complaints arise, orwhen RMN has to repossess acar, the company records all ofthe payments made by thecustomer. Figure 4 shows thebasic form. To provide fasterlookups (on the paper forms),the clerk also updates thenumber of late payments andthe average number of dayslate whenever a payment islate. The company uses date ofbirth, gender, and taxpayernumber to obtain creditreports on the customer.Really bad customers are also reported to the credit bureaus.On average, the company sells 5-10 cars a week, and generally tries to keep no morethan 50 cars on the lot at one time. However, if good deals pop up at auctions, the buyersare encouraged to purchase them, but then they hold off on buying the marginal cars.5


Exercises1. Create the feasibility study (initial proposal).2. Create a list of all of the forms and reports that the company might use.3. Create a normalized list of tables for each form and report.4. Create an integrated list of normalized tables for the entire application. Draw thecorresponding class diagram.5. Create the basic tables in a DBMS along with all necessary relationships andintegrity constraints. Enter sample data into the tables to test your design.6. Evaluate the normalized tables and estimate the size of the database—both currentsize and estimated size in 3 years.7. List the initial security conditions for the data tables. Create a list of user groupsand identify their basic access needs.8. Design the overall structure of the application. Outline the overall structure and theprimary forms. Select a design scheme, including layouts, effects, and colors.9. Build three initial input forms.10. Build three initial reports.11. Improve the forms and reports to make them easier to use.12. Test your forms and reports with sample users.13. Build additional forms and reports. Improve all of them. Test all of them.14. Connect all of the forms and reports into an application. Test all the links. Test theforms and reports. Check for consistency.15. Add security, backup and recovery, and other management features to theapplication.16. Move the data tables to a centralized server, leaving the application to run on aclient. Build the necessary links and retest the application.17. Move the entire application to a Web server. Build the forms so that they run on aWeb browser.18. Create the pivot table evaluation query and graphs. Build in a way to create thelinks so new annual data can be generated automatically. Link the data so that thespreadsheet is updated automatically.6


Monster VideoMonster Video is a company that specializes in designing and installing hometheater systems. Most of the time, these are complex systems costing thousands of dollars.Some vendors (notably Sony) are offering customized equipment that can be tailored for thespecific environment—for the truly discerning consumer. With multiple speakers, largevideo screens, and high-power amplifiers, these systems require careful design to match theroom characteristics. It often takes several days to install the systems—mostly because ofupgrades to the electrical and lighting systems. Installing cable for the speakers also takestime—particularly in older houses. The company needs a database to track the customers,estimates, sales, and installations.CustomerLocation AddressCity, State ZIP CodeRoomDimensionsDrawingPrimary seating distanceInitial AppraisalLightingWindowsFloorCeiling heightAcoustic commentsItem Location Distance Type Max Size Cable Run CommentsFigure 1A keyelement in thesuccess of the firmis the initialevaluation of thelocation by atrained salesperson.Figure 1 shows thebasic elementscollected during thisappraisal. Thesalesperson recordsthe dimensions ofthe room, the mostlikely location of theseatingarrangements, andcreates a smalldrawing to show theoverall layout of theroom. Later, engineers will select the best locations for the speakers. Usually, the customeralready has an opinion about where to put the video screen. The salesperson recordsexisting lighting, and adds notes about possible improvements. The number of windowsplays an important role—in terms of positioning the screen and in the need forsupplementary lighting. The floor and ceiling affect the acoustics, as well as limit thepotential locations for speakers. Additional acoustic comments (such as “too much echo”)are given to the engineers. Sometimes, the engineers need to add acoustical tiles or evenacoustical blocks to reduce or change the reflected sound.The salesperson also identifies possible locations for speakers—modern systemsrequire six speakers at a minimum: subwoofer, center channel, front-left, front-right, rearleft,and rear-right. The placement of the front and rear channel speakers can sometimes bedifficult—particularly in modern-style houses with non-uniform walls and high ceilings.Ultimately, an engineer will narrow down the final location, but due to the training, thesalespeople are usually close. The distance from the speakers to the main seating positionare critical, as is the maximum size allowed. For example, some people object to havinglarge speakers at the front of the room, and in other cases, the walls may not be wide7


enough to hold large hidden speakers. Additional comments are used to warn the engineerabout potential problems.ProposalsCustomerPhoneSubdivisionOption 1: DescriptionCommentsSalespersonEngineerDateItem Description Quantity Price ValueOption 2…Figure 2SubtotalEstimated installation costTotal costProposal OptionsAn engineer looks over the roomand the various comments and thencreates three or four proposals for theroom. Generally, the options on aproposal are similar in location andinstallation issues, but contain differentlevels of hardware. For example, oneproposal might use a video projector,while a second uses a flat-panel display.To the customer, the major differencebetween options is generally the price;but the functionality of the options is alsodifferent. If the customer truly getsbogged down on the price, thesalesperson can generate additionaloptions by swapping in less-expensiveequipment for some areas (such as a lesspowerful amplifier). As shown in Figure2, some options have higher installationcosts. For example, a video projector requires expensive cable between the amplifier and theprojector. To make this difference clear the installation cost is listed separately for eachoption. After consulting with the salesperson, and sometimes the engineer, the customerchooses one of the options. However, customers sometimes change components out of theoptions—such as a cheaper DVD player.InstallationInstallation is always a challenge and must be scheduled around the customer.First, the electrician has to install cables and outlets. Sometimes the circuits or even themain power must be upgraded. A finishing-carpenter usually works with the electrician tominimize damage to walls and woodwork. Sometimes customers have the electrician installthe wiring during construction of a new house—saving time and hassle. In fact, anincreasing number of jobs come through builders who offer the home theater as an(expensive) option. In these cases, the salesperson has to be careful to identify the actualcustomer and the separate billing client (the builder).8


InstallationCustomerLocation DirectionsRoomNumber of seatsDate StartDate FinishCleanupTotal MaterialTotal LaborTotal CostsCablesCable Length Type Cost Installer Labor TotalElectricalDescription Materials Time Installer Labor TotalVideoAmplifierCircuitLightsSpeakersSpeaker Location Item Cost Installer Labor TotalFigure 3Figure 3 shows the basicworksheet filled out by theinstallers. Many of the installerswork for Monster Video, butwhen the company is busy, ithires external contractors—particularly electricians. Inthese cases, the electriciansstaple their business cards tothe sheet to ensure the checksget sent to the correct address.The main worksheetitemizes the audio cables, interms of the type of cable, thelength, and which speaker itconnects. Additional electricalwork includes power and cablesneeded for the video(particularly for projectors), theamplifier, lights, and anyadditional circuit, main line, orbreaker work needed.Speakers are also listedon the installation sheet becausethey are often installed at thesame time as the cables. Forlarge-scale systems, the speakers can be expensive, so each one is listed separately.Sometimes the installation is tricky and requires additional finish work to hide thespeakers. In all cases, Monster Video tracks the name of the actual installer in case thereare problems, andCustomerDate InstalledEmployeeAudio VideoCell PhoneBilling AddressCity, State ZIPCodeItem Description Category Size Sale Price Quantity SubtotalFigure 4SubtotalTaxTotalDate Dueto identify the goodcontractors for useon later jobs.Theamplifiers, DVDplayers, tuners,satellite dishes, andvideo screens canall be expensive inthese large systems.Also, they oftenneed additionalcomponents, suchas cables and signalboosters. Theseitems are installedand fine-tuned bytechnicians working for Monster Video. One employee is always in charge of this finalinstallation and tuning to minimize problems. Figure 4 shows the selection of the final9


components and their total costs. Although it is not shown here, customers are given a finalbill that summarizes all of the individual subtotals. Monster Video does not finance thepurchases, but it does accept credit cards. It also has contacts with various finance agenciesfor people who want to borrow the money. In most cases, Monster Video asks for a 30percent deposit before installation starts. But, then it is willing to wait a month after thefinal installation to collect the total payment. This feature is appealing to some customersin case they have problems inWarrantiesCustomerLocationStart DateItem Mfg Warranty Add. Warranty Coverage CostFigure 5TotalDate all warranties endEmployeeTitlethe first few days.As shown in Figure 5,Monster Video also offersextended warranties or servicecontracts on most of theequipment. For example, bulbsfor video projects generally lastonly a year, so customers like tobuy a contract where atechnician comes out once a yearand replaces the bulb and cleansthe projector. The form is alsouseful in reminding thecustomer and the companywhen each warranty expires andwhen the overall system is no longer under any warranty. Generally, the salesperson writesdown the serial numbers and other information needed to obtain warranty service from themanufacturer. If anything does go wrong, the customer simply calls the salesperson wholooks up the appropriate numbers and obtains a replacement part from the vendor. Thishigh level of service has made Monster Video popular among the wealthier clients and hasled to many referrals.Currently, the company has been in business for a little over three years, and hasinstalled almost 500 systems. Although the firm has 10 full-time employees, the margins onthe equipment and the service charges have enabled the firm to be profitable for the lasttwo years. The owners are hoping to double the business in the next couple of years. Basedon the number of appraisals under way, this level of sales might be possible. Depending onthe economy, salespeople often generate 5-10 appraisals before a sale is made.Exercises1. Create the feasibility study (initial proposal).2. Create a list of all of the forms and reports that the company might use.3. Create a normalized list of tables for each form and report.4. Create an integrated list of normalized tables for the entire application. Draw thecorresponding class diagram.5. Create the basic tables in a DBMS along with all necessary relationships andintegrity constraints. Enter sample data into the tables to test your design.6. Evaluate the normalized tables and estimate the size of the database—both currentsize and estimated size in 3 years.7. List the initial security conditions for the data tables. Create a list of user groupsand identify their basic access needs.8. Design the overall structure of the application. Outline the overall structure and theprimary forms. Select a design scheme, including layouts, effects, and colors.10


9. Build three initial input forms.10. Build three initial reports.11. Improve the forms and reports to make them easier to use.12. Test your forms and reports with sample users.13. Build additional forms and reports. Improve all of them. Test all of them.14. Connect all of the forms and reports into an application. Test all the links. Test theforms and reports. Check for consistency.15. Add security, backup and recovery, and other management features to theapplication.16. Move the data tables to a centralized server, leaving the application to run on aclient. Build the necessary links and retest the application.17. Move the entire application to a Web server. Build the forms so that they run on aWeb browser.18. Create the pivot table evaluation query and graphs. Build in a way to create thelinks so new annual data can be generated automatically. Link the data so that thespreadsheet is updated automatically.11


Big Chemical, Inc.Big Chemical, Inc is a large company specializing in custom chemistry research andproduction. Its researchers often work on highly-sensitive projects for various governmentagencies. Even the work it does for other companies tends to be secretive because clientfirms do not want others learning about their new product ideas. Consequently, thecompany is extremely sensitive about security issues. Although they are cautious abouthiring and use background checks, they still want to keep closer track of their employees.They are in the process of installing sensors on every door and gate in building on the maincampus. Employees will be issued badges that are automatically read at each point. Thesystem will be able to track each person crossing through a door. But, the company alsowants the ability to check data for the last week or month, so it needs a database to holdthe data and produce reports on employee activity.Employee InformationEmployee Internal ID TaxpayerIDDate HiredDepartment Address Home PhoneSupervisorCity, State ZIPEducationSchool StartDate EndDate Degree GPADrug TestsDate Lab used TestUsed LabTestID Results CommentsFigure 1Figure 1 shows thebasic data collected onemployees. Note that thecompany randomly testsemployees for the presence ofvarious drugs (includingalcohol). The results of thetests and any comments aresummarized. The details ofthe test are kept in adifferent system indexed bythe LabTestID. On this form,the results can be one ofthree values: Clear, Fail,Caution. After twocautionary results or onefailure, the employee is fired.SensorsSensor ListSensorID Building Floor Room Door Sensor Type Date InstalledFigure 2Figure 2shows the locationof the sensors. Eachdoor will be fittedwith a sensor thatwill send the data tothe main system asa stream of bytes.This system will beable to insert rowsinto data tablescreated in the newapplication. Several12


types of sensors are used to compensate for different sizes and characteristics of doors. Thecompany needs to keep track of the type of sensor in case one needs to be replaced. Also,most of the sensors are capable of indicating the direction the person traveled through thedoor—which is labeled “in” or “out” by the installer. Ultimately, all of the sensors will bedisplayed on an electronic map of the building.Figure 3 is a basic sensor repair log. Although the sensors are fairly reliable, thecompany needs to trackSensorIDFigure 3Sensor Repair LogDateDown DateRestored Technician Cause Repairany downtime. If asensor is not working,some queries will givemisleading results. Forexample, it might appearthat a person neverleaves a room if the roomhas two doors and one ofthe sensors is broken.While this log does notcompletely solve theproblem, at least it willmake it possible for users to realize that a problem might exist.Employee Access RightsEmployeeSecurity Clearance LevelTitleBadgeIDEmployee AccessMain Gate TimesEarliest EntryLatest DepartureBuildingFloor Room Start Time End Time Director Start Date End DateBuildingFloor Room Start Time End Time Director Start Date End DateFigure 4As shownin Figure 4,employees haveto be gradedaccess to specificbuildings androoms. Data fromthis from istransferred tothe entry controlsystem for thebuilding. Somerooms are notlocked, but stillhave sensors.Other rooms arelocked, and thesensors open thedoor only for employees who have been granted access. Access is granted by projectdirectors who have control over certain rooms and the employees who report to them.Directors are responsible for keeping the lists up to date. To provide stronger security,directors are required to enter a starting and ending date for the access right. Beyond theending date, employees will be denied access. In general, employees are also restricted tospecific times. For example, an employee could be allowed into a research lab duringnormal working hours, and then locked out at night. The main gate sensor is similar to thedoor sensors, but it is monitor differently. Some employees are required to be off thepremises after a certain time of day.13


Sensor ActivationSensor DateTime BadgeID DirectionFigure 5Figure 5 would never be printedin real life, because there would be toomuch data. It represents the sensoractivation data collected by every sensorin the company. The sensors record thedate and time as well as the person goingthrough the door. The direction of travelis also noted. The sensors are relativelyaccurate and can even handle two peopleentering a door at approximately thesame time. If one person enters a roomand immediately turns around, it wouldbe recorded as an entrance followed by an exit—adding two rows of data. With almost20,000 employees on the main campus, a dozen buildings with several floors of offices andlabs, the sensors collect a large amount of data every day.In general, security personnel want the ability to track the movements of employeesTracking LogEmployeeOffice Phone Cell PhoneStart - EndTime-In Location (Building/Room) Time-Out DoorFigure 6throughout the day. In mostcases, the report shown inFigure 6 is displayed only whensecurity personnel becomesuspicious of an employee. Thereport is slightly tricky to createwhen rooms have several doors.Also, remember that sometimessensors fail, so the system mightnot record a person entering orleaving a room. Ultimately,managers would like to see agraphical display of this data—based on an electronic map of the campus. But, for now,they will be happy with this report that shows all of the activities of a suspicious employee.Exercises1. Create the feasibility study (initial proposal).2. Create a list of all of the forms and reports that the company might use.3. Create a normalized list of tables for each form and report.4. Create an integrated list of normalized tables for the entire application. Draw thecorresponding class diagram.5. Create the basic tables in a DBMS along with all necessary relationships andintegrity constraints. Enter sample data into the tables to test your design.6. Evaluate the normalized tables and estimate the size of the database—both currentsize and estimated size in 3 years.7. List the initial security conditions for the data tables. Create a list of user groupsand identify their basic access needs.8. Design the overall structure of the application. Outline the overall structure and theprimary forms. Select a design scheme, including layouts, effects, and colors.9. Build three initial input forms.10. Build three initial reports.11. Improve the forms and reports to make them easier to use.12. Test your forms and reports with sample users.14


13. Build additional forms and reports. Improve all of them. Test all of them.14. Connect all of the forms and reports into an application. Test all the links. Test theforms and reports. Check for consistency.15. Add security, backup and recovery, and other management features to theapplication.16. Move the data tables to a centralized server, leaving the application to run on aclient. Build the necessary links and retest the application.17. Move the entire application to a Web server. Build the forms so that they run on aWeb browser.18. Create the pivot table evaluation query and graphs. Build in a way to create thelinks so new annual data can be generated automatically. Link the data so that thespreadsheet is updated automatically.15


Big Teeth Reality TVA new reality show is entering production. A cross between Animal Planet and FearFactor, it focuses on conflicts between humans and animals with big teeth (crocodiles,tigers, lions, and so on). Contestants never know if they will be chased by the animals or ifthey will be eating them. The insurance costs will be huge, but the producers think there isa big audience. Producers always think that, but at least they are willing to pay money tofind out. The next step is to find people crazy enough to sign the waivers and participate inthe show.ApplicationNameAddressCity, State <strong>Post</strong>alCodeCountryDaytime phoneNight phoneE-mail addressDate of birth GenderCandidate essayApplicationsPhotoVideoIDRatingsProducerDirectorMedications Reason Jobs Start End DescriptionFigure 116Figure 1 shows thebasic contestant applicationform, but this copy does notinclude the lengthy waiversthat must be signed. Theproducers are adding a twistand recruiting worldwide.The goal is to build moresuspense by addingcommunication problemsamong contestants andperhaps to foster somenationalistic audienceparticipation. Contestantsare asked to submit a photo,which is scanned and storedin the database. They arealso encouraged to submit ashort video interview. Theseinterviews are only used for evaluating the final tier of candidates and portions might beused during a broadcast. The videos for the most likely applicants are copied to a mastertape and given a location identifier. The lead producer and the director evaluate eachapplicant and provide a quick rating. The highest-rated candidates get a second look andbecome a finalist in the selection process.Background CheckApplicantNational ID Appearance RatingReligion Strength RatingEmployer Phone CommentsEducation Contact Degree CommentsPolice and Judicial RecordsDate Category Description OutcomeFigure 2All applicants undergoa background check. Severalreality-based shows haveexperienced problems whencontestants were revealed tohave unsavory pasts—including being arrested forviolent crimes. Although theproducers want risk-takingcontestants, they also want toavoid embarrassing publicdisclosures. Figure 2 showsthe basic background datathat investigators obtain on


the finalist contestants. It is not foolproof, but by making a few phone calls, theinvestigators get a reasonable idea of the candidate’s background. All finalists areinterviewed on camera and evaluated in terms of appearance and physical strength. Theproducers and directors then select the contestants for an episode.Episodes and EventsEventTitleDescriptionEstimated timeEstimated dangerContestantsName Task Result Points PrizeProducerDirectorEpisodeActionsSequence Description Cameras Est. TimeFigure 3Actual episodes consist of one or more events. Generally, there is only time for one ortwo events per episode, but the producers are thinking about the possibility of an hour-longspecial. Figure 3 shows the two main aspects of the event: the setup from the perspective ofthe director, and the results from the perspective of the contestants. The director focuses onthe sequence of actions, where the cameras will be located, and the estimated time of eachsection. For each event a contestant is given one primary task. Sometimes they work inteams, so two or three people might be given the same task. The task result might just be acompletion, or it might include a time for races. Either way, contestants are awarded points(sometimes negative points) for their role in the task. Occasionally, small prizes areawarded for completing a task, but contestants are really competing for the overall prizes inthe event.Episode TitleEpisode Air DateContestantContestantFigure 4VotingRegion Method VotesTotalRegion Method VotesTotalWhen the episode is aired, theaudience is asked to participate byvoting for favored contestants. The votetotals are used to determine whichcontestants to bring back for futureepisodes, and to give prizes for theoverall season leader. The executiveproducers are trying to enticeadvertisers by supporting severalmeans of voting. Consequently, theywant to track the actual method usedto cast a vote. Common methodsinclude telephone, cell phone/textmessaging, e-mail, and a website. Theyalso need to track audienceparticipation by geographic region. On17


the report shown in Figure 4, the regional level is global (largely by continent), but at aminimum, statistics have to be kept at the national level, and probably even down to statelevel in the United States.Exercises1. Create the feasibility study (initial proposal).2. Create a list of all of the forms and reports that the company might use.3. Create a normalized list of tables for each form and report.4. Create an integrated list of normalized tables for the entire application. Draw thecorresponding class diagram.5. Create the basic tables in a DBMS along with all necessary relationships andintegrity constraints. Enter sample data into the tables to test your design.6. Evaluate the normalized tables and estimate the size of the database—both currentsize and estimated size in 3 years.7. List the initial security conditions for the data tables. Create a list of user groupsand identify their basic access needs.8. Design the overall structure of the application. Outline the overall structure and theprimary forms. Select a design scheme, including layouts, effects, and colors.9. Build three initial input forms.10. Build three initial reports.11. Improve the forms and reports to make them easier to use.12. Test your forms and reports with sample users.13. Build additional forms and reports. Improve all of them. Test all of them.14. Connect all of the forms and reports into an application. Test all the links. Test theforms and reports. Check for consistency.15. Add security, backup and recovery, and other management features to theapplication.16. Move the data tables to a centralized server, leaving the application to run on aclient. Build the necessary links and retest the application.17. Move the entire application to a Web server. Build the forms so that they run on aWeb browser.18. Create the pivot table evaluation query and graphs. Build in a way to create thelinks so new annual data can be generated automatically. Link the data so that thespreadsheet is updated automatically.18


Cerulean BeeBob Bee is an artist who has chosen to make his living designing and printing shirtsand jerseys for various clubs and events. He named the company after himself and hisfavorite color. Although he has been in business only a couple of years, it has beensuccessful. Several local clubs sponsor several events each year and want commemorativeapparel that they either give to everyone who registers for the event or sell as a separateitem. Either way, Bob makes money because he is paid for the work regardless of thenumber of items that actually sell.Artwork OrderCustomerContactPhoneDiscountTotal PriceApparel/ItemBase ColorMaximum ColorsArt Location DescriptionCost Employee Date CompleteArt Location DescriptionCost Employee Date CompleteFigure 1Order DateDate ApprovedScheduled Print DateEventThemeColorsColorsArtworkSometimes customershave only a vague idea of theartwork needed. Other times,they come with computerprinteddesigns. In mostcases, an artist still has toclean up the artwork so thatit will display reasonably wellon the desired item.Ultimately, the art must becolor-separated so that eachcolor has its own film. Theindividual films are assignedto a single print color on thepress, and the colors areplaced in layers on the finalobject. Registration, ormatching the colorseparations so the colors do not overlap and the separate layers align perfectly, is a keyelement in creating a professional product. As shown in Figure 1, an individual item, suchas a shirt, could have art in several locations (front, back, sleeve, and so on). Each locationrequires a separate pass through the print process. Each color requires a separate film anda separate imprint. Although the newer print systems automatically rotate an objectthrough several colors, each print station requires a separate setup, so customers arecharged by the number of artwork elements and the number of colors. The total price of theartwork generally includes a setup fee as well as the per item charges. Some organizationsEmployee Work LogEmployee Phone Full Time/Part TimeDate Start Time Project Art Item Task TimeFigure 2are given discounts, but theseare somewhat arbitrary anddetermined by Bob. Mostcustomers create t-shirtsassociated with some event,such as a festival, race, or bikeride. The artists work theevent’s theme into the designs.As shown in Figure 2,all workers keep a log of thetime spent on each project. Themost important times are the19


hours spent on the artwork, but the log does include time spent running the printing press.The log is relatively simple, and employees basically fill out a time card each day. Eachmajor customer order is given a project number, and employees enter this number intotheir logs. So far, the company does not have a standard method to identify the individualart items for a project, so employees tend to make up descriptions.CustomerContactPhoneSetup chargeDepositDiscountTotal CostE-MailPrint OrderOrder DateArt/Slide DateDue DateApparel/ItemVendorSize Number Add. ChargeX-Small _______ __________Small _______ __________Medium _______ __________Large _______ __________X-Large _______ __________XX-Large _______ __________Base ColorTotal _______ __________Per unit base priceTotal blank priceArt PrintOrdersApparel Order DateArt/Film DatePrint DateDate DeliveredColor ChargeLocation Size # Colors ChargeColor list:Figure 3TotalOnce in a while customersjust place orders for the artwork, butgenerally, they really want the artimprinted onto some item—usually at-shirt. Figure 3 shows the mainprint order form. This form is alsoused to guide the overall projecttimeframe, so several dates areadded to it as the order progressesthrough the system. The first majorstep is to select the apparel item.The company keeps samples ofcommon items and colors on hand tohelp the customer visualize the finalproduct. Many other items can colorscan be ordered from a selection ofvendors. The price of the item is animportant consideration in theselection, and vendors have differentprices based on fabric and size. Basicsizes are listed at a standard price,but the larger sizes carry anadditional charge. The customer hasto estimate the number of itemsdesired at each size. Per unit pricesalso depend on the quantityordered—with typical breakpoints of100, 500, and 1000 unit orders. Theother interesting twist is that mostvendors charge higher prices fordarker-colored items. The actual costs and the price Bob charges fluctuate, so they aredetermined by the clerks at the time of the sale. This form also contains the pricingbreakdown for printing the individual artwork. The price is determined by the number ofimprints and the number of colors. It is critical for clerks to enter all of the exact colors onthe form.20


Project Cost AnalysisProject Event ItemCustomerOrder DateDelivery DateItemMaterial CostsPer-unit Cost Price Charged Units Cost RevenueTotalAt the end of the month,Bob develops a report thatdisplays a cost analysis for eachrecent project. He uses theinformation to help set pricesand to identify which jobs are themost profitable. Figure 4 showsthe basic arrangement of thereport. Bob usually looks at thenet profit data first followed bythe subtotal breakdown. He onlylooks through the detail materialand labor costs in cases thatseem unusual. Note that allitems used in the production of aparticular item are listed—including the apparel, film sets,and ink. The labor costs aresummarized by task. Eventhough an employee might haveworked on the artwork threedifferent times over four days,there will be one entry for theartwork development. One of theimportant steps in this case isidentifying a standard list oftasks—because employees tendto invent strange names every month, and it is difficult to put the data together to createthis report.TotalLabor CostsEmployee Task Time Wage Rate CostTotalTotal Money ReceivedMaterial Charge Artwork Fees Fixed ChargesTotal Material CostsTotal Labor CostsShipping Costs/OtherDiscountsNet ProfitFigure 4Exercises1. Create the feasibility study (initial proposal).2. Create a list of all of the forms and reports that the company might use.3. Create a normalized list of tables for each form and report.4. Create an integrated list of normalized tables for the entire application. Draw thecorresponding class diagram.5. Create the basic tables in a DBMS along with all necessary relationships andintegrity constraints. Enter sample data into the tables to test your design.6. Evaluate the normalized tables and estimate the size of the database—both currentsize and estimated size in 3 years.7. List the initial security conditions for the data tables. Create a list of user groupsand identify their basic access needs.8. Design the overall structure of the application. Outline the overall structure and theprimary forms. Select a design scheme, including layouts, effects, and colors.9. Build three initial input forms.10. Build three initial reports.11. Improve the forms and reports to make them easier to use.12. Test your forms and reports with sample users.13. Build additional forms and reports. Improve all of them. Test all of them.21


14. Connect all of the forms and reports into an application. Test all the links. Test theforms and reports. Check for consistency.15. Add security, backup and recovery, and other management features to theapplication.16. Move the data tables to a centralized server, leaving the application to run on aclient. Build the necessary links and retest the application.17. Move the entire application to a Web server. Build the forms so that they run on aWeb browser.18. Create the pivot table evaluation query and graphs. Build in a way to create thelinks so new annual data can be generated automatically. Link the data so that thespreadsheet is updated automatically.22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!