A. Problem Description<?xml:namespace prefix = o ns = \"urn:schemas-microsoft-co
ID: 3536842 • Letter: A
Question
A. Problem Description<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
Holiday Travel Vehicles (HTV) sells new recreational vehicles and travel trailers. When new vehicles arrive at HTV, a new vehicle record is created. Included in the new vehicle record are a vehicle serial number, name, model, year, manufacturer, and base cost.
When a customer arrives at HTV, he or she works with a salesperson to negotiate a vehicle purchase. When a purchase has been agreed upon, a sales invoice is completed by the salesperson. The invoice summarizes the purchase, including full customer information, information on the trade-in vehicle (if any), the trade-in allowance, and information on the purchased vehicle. If the customer requests dealer-installed options, they are listed on the invoice as well. The invoice also summarizes the final negotiated price, plus any applicable taxes and license fees. The transaction concludes with a customer signature on the sales invoice.
Customers are assigned a customer ID when they make their first purchase from HTV. The trade-in vehicle (if any) is described by a serial number, make, model, and year. Dealer-installed options are described by an option code, description, and price.
Each invoice lists just one customer. A person does not become a customer until he or she purchases a vehicle. Over time, a customer may purchase a number of vehicles from HTV.
Each invoice must be filled out by only one salesperson. A new salesperson may not have sold any vehicles, but experiences salespeople have probably sold many vehicles.
Each invoice only lists one new vehicle. If a new vehicle in inventory has not been sold, there will be no invoice for it. Once the vehicle sells, there will be just one invoice for it.
A customer may decide to have no options added to the vehicle or may choose to add many options. An option may be listed on no invoices, or it may be listed on many invoices.
A customer may trade in no more than one vehicle on a purchase of a new vehicle. The trade-in vehicle may be sold to another customer, who later trades it in on another HTV vehicle.
B. Required Deliverables
B.1 Analysis
B.1.1 Functional Model
a. Create an activity diagram for the business process described above in the first and second paragraphs.
b. Develop a use case for each major activity identified in the activity diagram.
c. Create a use-case diagram for the system described here.
B.1.2 Structural Model
a. Identify the classes described in the preceding scenario given in the first and second paragraphs above. (You should find six). Create CRC cards for each class
b. Develop a list of attributes for each class. Place the attributes onto the CRC cards based on the information given in the second paragraph.
c. Based on the preceding business rules (given in the last five paragraphs above) in force at HTV and CRC cards, draw a class diagram and document the relationships with the appropriate multiplicities. Remember to update the CRC cards.
B.1.3 Behavioral Model
a. Create a behavioral state machine for a typical sales process. You can use the problem description given above to identify the different states of the system or the use cases you have already developed in the structural model.
b. Create both sequence and communication diagrams for the typical process of selling a vehicle.
B.1.4 Moving on to Design
a. Add packages to your use-case diagram to simplify it.
B.2 Design
The system users follow a two-stage process to record complete information on all of the vehicles sold. When an RV or trailer first arrives at the company from the manufacturer, a clerk from the inventory department creates a new vehicle record for it in the computer system. The data entered at this time include basic descriptive information on the vehicle such as manufacturer, name, model, year, base cost, and freight charges. When the vehicle is sold, the new vehicle record is updated to reflect the final sales terms and the dealer-installed options added to the vehicle. This information is entered into the system at the time of sale when the salesperson completes the sales invoice.
When it is time for the clerk to finalize the new vehicle record, the clerk will select a menu option from the system, which is called Finalize New Vehicle Record. The tasks involved in this process are described below.
When the user selects the %u201CFinalize New Vehicle Record%u201D from the system menu, the user is immediately prompted for the serial number of the new vehicle. This serial number is used to retrieve the new vehicle record for the vehicle from system storage. If a record cannot be found, the serial number is probably invalid. The vehicle serial number is then used to retrieve the option records that describe the dealer-installed options that were added to the vehicle at the customer%u2019s request. There may be zero or more options. The cost of the option specified on the option record(s) is totaled. Then, the dealer cost is calculated using the vehicle%u2019s base cost, freight charge, and total option cost. The completed new vehicle record is passed back to the calling module.
B.3 Testing
The systems analysts are developing the test plan for the user interface for the HTV system. As the salespeople are entering a sales invoice into the system, they will be able to either enter an option code into a text box, or select am option code from a drop-down list. A combo box was used to implement this, since it was felt that the salespeople would quickly become familiar with the most common option codes and would prefer entering them directly to speed up the entry process.
It is now time to develop the test for validating the option code field during data entry. If the customer did not request any dealer-installed options for the vehicle, the salesperson should enter %u201Cnone%u201D; the field should not be blank. The valid option codes are four character alphabetic codes and should be matched against a list of valid codes.
a. Prepare a class test plan for class Invoice.
b. Prepare a class invariant test specification for class Invoice.
Explanation / Answer
THIS WILL HELP YOU