Page 1 COMPUTER SCIENCE 255 SECOND HOUR EXAM NAME ___________________________ 6 pages, 100 pts. 2:00 PM Thursday, Nov. 2 1. Basic questions a. (10 pts.) What are the five steps in the life cycle model for software? Describe each briefly. b. (10 pts.) What is a prototype? Why is it useful? c. (5 pts.) What is a blocking factor? How (and where) is it specified in a COBOL program? d. (10 pts.) What is multiple buffering? Why is it useful? How (and where) is it specified in a COBOL program? 2. Design (20 pts.) An application is to be designed to store information about employees and the projects that employees work on. We want to store and employee's employee number, name, supervisor number, and salary. For projects, we want to store the project name and a contract number and the employee number of the lead engineer for the project. We also want to know who works on what projects, subject to the constraint (or lack thereof) that each employee can work on several projects (and devotes a percentage of her or his time to that project) and each project can have several employees working on it. Write an entity-relationship diagram for this situation, and briefly describe the files that you might generate from the diagram. Identify primary and foreign keys. 3. Tables (20 pts.) Write a table description for a table of records describing parts. Each part description consists of a five character part number, a 20 character part description, and a three digit quantity field. The table should be written so that a binary search verb can be used (the table will be in order by part number). After the table description is written, write the COBOL binary search verb necessary to find part "12345". Display the part description if found, an error message if the part is not found. 4. A level break problem (25 pts.) Records in the file CARSALES.DAT consist of a sales manager name, a salesperson name (both 20 characters) and a car sale (PIC 9(5)v99). Each sales manager manages a number of salespersons and each salesperson reports to only one sales manager. The records are in order by salesmanager name followed by salesperson name. Write the PROCEDURE DIVISION entries necessary to produce a report of the data in CARSALES, with subtotals for each sales manager, each salesperson, and the entire dealership.