srs_for_linkedin
TRANSCRIPT
Spring 2003 Semester Project CPSC 541 Software Requirements Development
Software Requirements Development
This document is intended for submission as Part II of Requirements Development for CPSC 541 Software Specifications of the California State University Fullerton.
SECTION 1. INTRODUCTION
The purpose and product scope are described below.
1.1 PURPOSE
This Software Requirements and Specifications (SRS) defines the external interfaces, functional and non-functional requirements of the Hotdog Machine System (HDMS). HDMS is a software package that is used to operate and maintain the vending machine. The HDMS V.1.0 Software Requirements and Specifications (HDMSSRS V.1.0) is prepared for the customers, software developers, Vending, Inc., ACME Security, etc.
1.2 PRODUCT SCOPE
HDMSSRS V.1.0 is developed to provide electronic maintenance and operation of a vending machine. These operations include the ordering of fresh, warm hotdogs by customers; refilling of the vending machine by service personnel; monitoring sales, available change, temperature, etc.; and monitoring of sensor events, and other related operations.
Page 1
Spring 2003 Semester Project CPSC 541 Software Requirements Development
SECTION 2. OVERALL DESCRIPTION
This section presents a high-level overview of HDMS, the known constraints, assumptions, and dependencies.
2.1 PRODUCT FUNCTIONS
The major functions that the product must perform include the following:
2.1.1 Start-up Procedure: This function shall start and initialize the software in vending machine. This function shall turn on all sensors and perform standard start-up tests.
2.1.2 Wait for Interrupt: This function shall accept and recognize interrupts from the buy button, the service button, modem and sensors.
2.1.3 Purchasing: This function shall allow a customer to buy a hotdog from the vending machine.
2.1.4 Servicing: This function shall allow a service personnel to service the vending machine.
2.1.5 Monitoring and Maintenance: This function shall allow Vending, Inc. to monitor status information such as inventory, available change, etc. of the vending machine.
2.1.6 Monitoring Security: This function shall allow ACME Security to monitor the security status of the vending machine.
Figure 1. Major Functions
Page 2
Spring 2003 Semester Project CPSC 541 Software Requirements Development
Figure 2. Start-Up Procedure
Figure 3. Wait For Interrupt
Page 3
Spring 2003 Semester Project CPSC 541 Software Requirements Development
Figure 4. Purchasing
Figure 5. Servicing
Page 4
Spring 2003 Semester Project CPSC 541 Software Requirements Development
Figure 6. Monitoring and Maintenance
Figure 7. Monitoring Security
Page 5
Spring 2003 Semester Project CPSC 541 Software Requirements Development
2.2 DESIGN AND IMPLEMENTATION CONSTRAINTS
The following are the issues that will restrict the options available to the developers:
2.2.1 The HDMS shall meet health code standards.2.2.2 The HDMS shall be designed following the industry best practices.
2.3 ASSUMPTIONS AND DEPENDENCIES
The following are the assumptions and the dependency:
2.3.1 It is assumed that the Vending, Inc. provides both the central monitoring facility and the maintenance facility.
2.3.2 The interface information from the central maintenance facility to each operable HDMS is available from Vending, Inc.
2.3.3 It is assumed that the HDMS will transmit information to ACME Security through a telephone modem.
2.3.4 It is assumed that the HDMS will transmit credit card authorization request through a telephone modem.
Page 6
Spring 2003 Semester Project CPSC 541 Software Requirements Development
SECTION 3. EXTERNAL INTERFACE REQUIREMENTS
This section specifies requirements that ensure the new product will connect properly to external components. The user interfaces, hardware interfaces, software interfaces and communication interfaces are described.
3.1 USER INTERFACES
The HMI interface of the HDMS shall provide the user interface. The user interface shall have a customer interface and a service personnel interface.
Figure 9. HMI Interface
3.1.1 The customer interface shall have the following:
3.1.1.1 A button to press to request a hotdog3.1.1.2 A screen to display messages such as machine is inoperable, out of
hotdogs, etc.3.1.1.3 A speaker where pre-recorded messages can be played3.1.1.4 A credit card insert box to accept credit cards3.1.1.5 A coin drop box to accept coins3.1.1.6 A bill drop box to accept bills3.1.1.7 A receipt box to pick up credit card receipts3.1.1.8 A coin change box to pick up change
Page 7
Spring 2003 Semester Project CPSC 541 Software Requirements Development
3.1.1.9 A hotdog box to pick up the hotdog
Figure 10. An example of a screen seen by customers
3.1.2 The service personnel interface shall have the following:
3.1.2.1 A button to press to request service3.1.2.2 A screen to display the instructions and the menu of the functions
available3.1.2.3 A numeric key pad to input the following information:
3.1.2.3.1 Access code3.1.2.3.2 Menu choices3.1.2.3.3 New temperature3.1.2.3.4 Number of hotdogs added3.1.2.3.5 Value of coins added3.1.2.3.6 Amount of money collected from the vending machine
Figure 11. An example of a screen seen by service personnel
Note: The users from Vending, Inc. and ACME Security who monitor the vending machine shall communicate with HDMS via software interfaces described in Section 3.3.
3.2 HARDWARE INTERFACES
The characteristics of each interface between the software and hardware components of the system are described below.
3.2.1 HMI Customer Interface Component: The HMI Customer Interface Component shall provide for the hotdog request input, payment input, and dispensing of change and hotdog.
3.2.2 HMI Service Interface Component: The HMI Service Personnel Interface Component shall provide for the service request input, access code input, and maintenance operations such as adding hotdogs, change, controlling temperature, etc.
3.2.3 Temperature Sensor and Heating Component: The Temperature Sensor Component shall provide the ability to sense and control the temperature of the storage unit and the heating units.
Page 8
Spring 2003 Semester Project CPSC 541 Software Requirements Development
3.2.4 Power Supply Sensor Component: The Power Sensor Component shall provide the ability to sense and control the power status of the vending machine.
3.2.5 Coin Sensor Component: The Coin Sensor Component shall provide the ability to sense if valid coins are inserted. It shall also provide the ability to determine the value of the coin.
3.2.6 Bill Sensor Component: The Bill Sensor Component shall provide the ability to sense if valid bills are inserted.
3.2.7 Credit Card Reader Component: The Credit Card Sensor Component shall provide the ability to sense and read the credit card.
3.2.8 Change Dispenser Component: The Change Dispenser Component shall provide the ability to dispense change.
3.2.9 Product Dispenser: The Product Dispenser Component shall provide the ability to dispense the product.
3.2.10 Receipt Printer: The Receipt Printer Component shall provide the ability to print and dispense the credit card receipt.
3.2.11 Shock Sensor Component: The Shock Sensor Component shall provide the ability to sense shocks.
3.2.12 Cash Box Break-in Detection Sensor Component: The Cash Box Break-In Detection Sensor Component shall provide the ability to sense tampering events coming from the cash box.
3.3 SOFTWARE INTERFACES
HDMS connects with external software components that belong to Vending, Inc., ACME Security and the credit card company. The following paragraphs describe the purpose of the data items exchanged among the software components.
3.3.1 Maintenance Interface Component: The Maintenance Interface Component shall provide an interface to accept status information requests and to transmit status information to a central monitoring facility.
3.3.2 SMID Interface Component: The SMID Interface Component shall provide an interface to accept security information requests and to transmit tampering events coming from the shock sensor and the cash box break-in detection sensor to ACME Security company.
3.3.3 Credit Card Interface Component: The Credit Card Interface Component shall provide an interface to transmit credit authorization requests and to receive approvals from the credit card company.
Page 9
Spring 2003 Semester Project CPSC 541 Software Requirements Development
Figure 12. The data exchanged between HDMS and its external interfaces
3.4 COMMUNICATIONS INTERFACE
The following are the requirements associated with communication functions between the HDMS, Vending, Inc., ACME Security and the credit card company.
3.4.1 HDMS shall interface with Vending, Inc’s monitoring program. through a telephone modem.
3.4.2 HDMS shall interface with ACME Security’s monitoring program through a telephone modem.
3.4.3 HDMS shall interface with a credit card computer program through a telephone modem. The messages transmitted between the credit card company and the vending machine shall be encrypted.
Page 10
Spring 2003 Semester Project CPSC 541 Software Requirements Development
SECTION 4. SYSTEM FEATURES
This section shows the functional requirements organized by system features.
4.1 SYSTEM FEATURE 1
Start-up Procedure
4.1.1 Description and Priority
The system shall start and initialize the software in vending machine by turning on all sensors and performing standard start-up tests. The standard start-up tests are those required by the hardware components in the system. Examples of which may include testing response time, power status and error codes.
4.1.2 Functional Requirements
The functional associated with this feature are itemized below.
• Turn On All Sensors Function• Perform Standard Start-up Tests Function
The details of how the product will respond to specified inputs or actions are described in the following paragraphs.
4.1.2.1 Turn On All Sensors Function
The system shall turn on the power supply sensor, shock sensor, cash box break-in detection sensor, temperature sensor, credit card sensor, coin sensor, and bill sensor.
4.1.2.2 Perform Standard Start-up Tests Function
The system shall perform standard start-up tests. These tests include testing the response time, error codes and power status of the hardware components.
Page 11
Spring 2003 Semester Project CPSC 541 Software Requirements Development
4.2 SYSTEM FEATURE 2
Wait for Interrupt
4.2.1 Description and Priority
The system shall be in idle mode waiting for an interrupt. The system shall accept and recognize interrupts from the buy button, the service button, modem, sensors, and a power fail interrupt from power supply sensor. If an interrupt is recognized, the system shall transfer control to the appropriate function that processes the interrupt. After the invoked function has completed its task, the system shall return to idle mode waiting for another interrupt. If a power fail interrupt is recognized, the system shall shut down. If no interrupt is recognized, the system shall do nothing.
4.2.2 Functional Requirements
The functional associated with this feature are itemized below.
• Transfer Control to Purchasing Function• Transfer Control to Servicing Function• Transfer Control to Monitoring and Maintenance Function• Transfer Control to Security Function• Shutdown Function
The details of how the product will respond to specified inputs or actions are described in the following paragraphs.
4.2.2.1 Transfer Control to Purchasing Function
If the interrupt from the buy button is recognized, the system shall process the interrupt by transferring control to Purchasing feature.
4.2.2.2 Transfer Control to Servicing Function
If the interrupt from the service button is recognized, the system shall process the interrupt by transferring control to Servicing feature.
4.2.2.3 Transfer Control to Monitoring and Maintenance Function
If the interrupt from the modem is recognized, and the calling party is the Vending, Inc., the system shall process the interrupt by transferring control to Monitoring and Maintenance feature.
Page 12
Spring 2003 Semester Project CPSC 541 Software Requirements Development
4.2.2.4 Transfer Control to Monitoring Security Function
If the interrupt from the modem is recognized, and the calling party is ACME Security, the system shall process the interrupt by transferring control to Monitoring Security function. If the interrupt from the shock sensor or from the cash box break-in detection sensor is recognized, the system shall process the interrupt by transferring control to Monitoring Security feature.
4.2.2.5 Shutdown Function
If a power fail interrupt is recognized from the power supply sensor, the system shall process this interrupt by shutting down the system. This includes turning off all hardware components, and storing critical data such as error codes and amount of cash in non-volatile memory of the system.
4.3 SYSTEM FEATURE 3
Purchasing
4.3.1 Description and Priority
Purchasing is a feature that allows a customer to request a hotdog. This feature shall include selecting a method of payment, counting coins, counting bills, processing credit card, dispensing change, dispensing credit card receipt, dispensing hotdogs, displaying messages and playing pre-recorded messages. This feature shall involve a database with the following information: inventory, amount of sales and available change. The system shall transmit the information in the database to Vending, Inc.
4.3.2 Functional Requirements
The functional requirements associated with this feature are itemized below.
• Request a Hotdog Function• Select Method of Payment Function• Count Coins Function• Count Bills Function• Process Credit Card Function• Dispense Change Function• Print Credit Card Receipt Function• Dispense a Hotdog Function• Display a Message Function• Play Pre-Recorded Messages Function
Page 13
Spring 2003 Semester Project CPSC 541 Software Requirements Development
The details of how the product will respond to specified inputs or actions are described in the following paragraphs.
4.3.2.1 Request a Hotdog Function
The system shall allow a customer to request a hotdog. The system shall check if the inventory is greater than 0. If the inventory is greater than 0, the system shall instruct the customer to push the buy button. When the button is pressed, the system shall display a message to insert payment. The system shall also play a pre-recorded message to insert payment. When the button is pressed, the system shall change the mode of the vending machine from idle mode to customer mode. The system shall also update the database to reflect the current mode of the vending machine.
4.3.2.2 Select Method of Payment Function
When the customer has inserted the payment, the system shall sense whether the payment is in a form of coins, bills or credit card. If no payment was inserted after 10 seconds from the moment the customer requested to buy a hotdog, the system shall display a message to insert payment and play a pre-recorded message to insert payment. If no payment was inserted after another 10 seconds, the system shall display a message to press a button to buy a hotdog. The system shall also play a pre-recorded message to press a button to buy a hotdog.
4.3.2.3 Count Coins Function
The system shall be able to count the coins it receives from the customer for every purchase transaction. The system shall accept a nickel, a dime, a quarter or a dollar coin. The system shall determine the total amount of payment received. The system shall also determine if sufficient payment is received for the purchase request. If the payment is insufficient, and no more coins or bills were inserted within 10 seconds, the system shall return all the payment received from the customer for the purchase transaction.
4.3.2.4 Count Bills Function
The system shall be able to count the bills it receives from the customer for every purchase transaction. The system shall accept one-dollar bills and five-dollar bills. The system shall determine the total amount of payment received. The system shall also determine if sufficient payment is received for the purchase request. If the payment is insufficient, and no more bills or coins were inserted within 10 seconds, the system shall
Page 14
Spring 2003 Semester Project CPSC 541 Software Requirements Development
return all the payment received from the customer for the purchase transaction.
4.3.2.5 Process Credit Card
The system shall process a credit card by transmitting an authorization request to the credit card company. This authorization request must include the amount of purchase and the credit card information. The amount of purchase is the price of the hotdog. The credit card information contains the name on the credit card, the account number and the expiration date. The system shall determine if an approval for the authorization request is received. If no approval is received within 10 seconds after transmitting the authorization request, the system shall cancel the credit card transaction.
4.3.2.6 Dispense Change
The system shall dispense change when the amount of purchase is less than the total amount of payment. The system shall dispense change only after the system has dispensed the hotdog. If the system could not dispense a hotdog, the total amount of payment shall be dispensed as the change. The system shall update the available change in the database.
4.3.2.7 Print Credit Card Receipt
The system shall print a credit card receipt when a credit card is used as a method of payment. The system shall print a credit card receipt after the system has dispensed the hotdog. If the system could not dispense a hotdog, the system shall be able to cancel the credit card transaction and print a credit card receipt that indicates no charges were made.
4.3.2.8 Dispense a Hotdog Function
The system shall dispense a hotdog if sufficient payment is received or if the authorization request from the credit card company is approved. When a hotdog is dispensed, the system shall update the inventory and amount of sales in the database.
4.3.2.9 Display Message Function
The system shall be able to display messages.4.3.2.9.1 If there are no hotdogs available, the system shall display a
warning message.4.3.2.9.2 If the vending machine is inoperable, the system shall display
a warning message.
Page 15
Spring 2003 Semester Project CPSC 541 Software Requirements Development
4.3.2.9.3 If the vending machine has available hotdogs and is operable, the system shall display a message to push a button to buy a hotdog.
4.3.2.9.4 The system shall display a message to insert payment.4.3.2.9.5 If the credit card transaction could not be approved, the
system shall display an appropriate message.4.3.2.9.6 If the credit card transaction is cancelled, the system shall
display an appropriate message.
4.3.2.10 Play Pre-Recorded Messages Function
The system shall be able to play pre-recorded messages.4.3.2.10.1 If there are no hotdogs available, the system shall play a
pre-recorded warning message.4.3.2.10.2 If the vending machine is inoperable, the system shall play
a pre-recorded warning message.4.3.2.10.3 If the vending machine has available hotdogs and is
operable, the system shall play a pre-recorded message to push a button to buy a hotdog.
4.3.2.10.4 The system shall play a pre-recorded message to insert payment.
4.3.2.10.5 If the credit card transaction could not be approved, the system shall play an appropriate, pre-recorded message.
4.3.2.10.6 If the credit card transaction is cancelled, the system shall play an appropriate, pre-recorded message.
4.4 SYSTEM FEATURE 4
Servicing
4.4.1 Description and Priority
Servicing is a feature that allows a service personnel to request to service the vending machine. This feature shall include check access code, turn-off sensors, control temperature, add hotdogs, add coins, change mode, collect money, and end service. This feature shall involve a database with the following information: temperature, inventory, available change, and mode.
4.4.2 Functional Requirements
The functional requirements associated with this feature are itemized below.
• Request to Service Machine Function• Check Access Code Function• Turn-off Sensors Function• Change Mode Function
Page 16
Spring 2003 Semester Project CPSC 541 Software Requirements Development
• Control Temperature Function• Add Hotdogs Function• Add Coins Function• Collect Money Function• End Service Function
The details of how the product will respond to specified inputs or actions are described in the following paragraphs.
4.4.2.1 Request to Service Machine Function
The system shall allow a service personnel to request service for the vending machine. When the service button is pressed, the system shall prompt the service personnel for an access code.
4.4.2.2 Check Access Code Function
The system shall be able to check if the access code entered by the service personnel is valid. If the access code entered is invalid, the system shall display a message to enter the access code again. After three unsuccessful attempts, the system shall display a message that access has been denied.
4.4.2.3 Turn-off Sensors Function
If the access code entered by the service personnel is valid, the system shall:4.4.2.3.1 Turn off Shock Sensors 4.4.2.3.2 Turn off Cash Box Break-In Detection Sensors
4.4.2.4 Change Mode Function
The system shall be able to change the mode. If the access code entered by the service personnel is valid, the system shall change the mode of the vending machine from idle mode to service mode. The system shall also change the mode back from service mode to idle mode when the end service function is selected from a menu of functions. The system shall also update the database to reflect the current mode of the vending machine.
4.4.2.5 Control Temperature Function
The system shall allow the service personnel to control the temperature. The system shall satisfy this request by providing a menu of functions. When the service personnel selects Control Temperature Function from the menu, the system shall allow the service personnel to enter the new
Page 17
Spring 2003 Semester Project CPSC 541 Software Requirements Development
temperature. The system shall then adjust the temperature to the new temperature. The system shall also update the database to reflect the new temperature.
4.4.2.6 Add Hotdogs Function
The system shall allow the service personnel to add more hotdogs. The system shall satisfy this request by providing a menu of functions. When the service personnel selects Add Hotdogs Function from the menu, the system shall allow the service personnel to enter the number of hotdogs to add. The system shall update the inventory in the database.
4.4.2.7 Add Coins Function
The system shall allow the service personnel to add coins. The system shall satisfy this request by providing a menu of functions. When the service personnel selects Add Coins Function from the menu, the system shall allow the service personnel to enter the value of coins to add. The system shall update the available change in the database.
4.4.2.8 Collect Money Function
The system shall allow the service personnel to collect the money. The system shall satisfy this request by providing a menu of functions. When the service personnel selects Collect Money Function from the menu, the system shall allow the service personnel to enter the amount of coins and bills collected. The system shall update the available change in the database.
4.4.2.9 End Service Function
The system shall allow the service personnel to end the Servicing feature. The system shall satisfy this request by providing a menu of functions. When the service personnel selects End Service Function from the menu, the system shall do the following:4.4.2.9.1 Turn on Shock Sensors 4.4.2.9.2 Turn on Cash Box Break-In Detection Sensors 4.4.2.9.3 Change mode to idle mode4.4.2.9.4 Update the database to reflect the new mode
Page 18
Spring 2003 Semester Project CPSC 541 Software Requirements Development
Figure 14. State-transition diagram for the purchase and service requests.
Page 19
Spring 2003 Semester Project CPSC 541 Software Requirements Development
4.5 SYSTEM FEATURE 5
Monitoring and Maintenance
4.5.1 Description and Priority
Monitoring and Maintenance is a feature that allows the central monitoring facility to monitor the vending machine. This feature shall include requesting status information and transmitting status information. This feature shall involve a database with the following status information: sales, inventory, available change, tampering events, mode of operation, temperature and power status of the vending machine. The system shall interface with the monitoring software of Vending, Inc. The system shall transmit the information in the database to Vending, Inc.
4.5.2 Functional Requirements
The functional requirements associated with this feature are itemized below.
• Request Status Information Function• Transmit Status Information Function
The details of how the product will respond to specified inputs or actions are described in the following paragraphs.
4.5.2.1 Request Status Information Function
The system shall allow Vending, Inc. to request status information of the vending machine. The system shall be able to process the request by selecting from a database which information is desired, and transmitting the selected information.
4.5.2.2 Transmit Status Information Function
The system shall transmit the database information to Vending, Inc. once every hour. These database information include:4.5.2.2.1 Sales4.5.2.2.2 Inventory4.5.2.2.3 Available Change4.5.2.2.4 Tampering Events4.5.2.2.5 Mode of Operation4.5.2.2.6 Temperature4.5.2.2.7 Power Status
Page 20
Spring 2003 Semester Project CPSC 541 Software Requirements Development
4.6 SYSTEM FEATURE 6
Monitoring Security
4.6.1 Description and Priority
Monitoring Security is a feature that allows ACME Security to monitor the security status of the vending machine. This feature shall include requesting sensor output from the shock sensor and the cash box break-in detection sensor and transmitting tampering events. The system shall interface with the ACME Security software.
4.6.2 Functional Requirements
The functional requirements associated with this feature are itemized below.
• Request Security Information Function• Transmit Tampering Events Function
The details of how the product will respond to specified inputs or actions are described in the following paragraphs.
4.6.2.1 Request Security Information Function
The system shall allow ACME Security to inquire about the security status of the vending machine. The system shall be able to process this request by obtaining outputs from the shock sensor or from the cash box break-in detection sensor.
4.6.2.2 Transmit Tampering Events Function
4.6.2.2.1 If the shock sensors sense that there is a break-in, the system shall notify ACME Security.
4.6.2.2.2 If the cash box break-in detection sensors sense that there is a break-in, the system shall notify ACME Security.
4.6.2.2.3 If the shock sensors sense that there is a break-in, the system shall record a tampering event in the database.
4.6.2.2.4 If the cash box break-in detection sensors sense that there is a break-in, the system shall record a tampering event in the database.
Page 21
Spring 2003 Semester Project CPSC 541 Software Requirements Development
SECTION 5. OTHER NONFUNCTIONAL REQUIREMENTS
The non-functional requirements are detailed below.
5.1 PERFORMANCE REQUIREMENTS
5.1.1 HDMS shall dispense warm hotdogs within five seconds after the customer has inserted the amount of money required for the purchase.
5.1.2 HDMS shall accept payment in form of cash or credit card to provide flexibility to customers.
5.1.3 HDMS shall perform 99.95% correctly.
5.2 SAFETY REQUIREMENTS
5.2.1 The use of the vending machine shall not create an electrical shock hazard to the customers and the service personnel.
5.2.2 The vending machine shall not create hazard of physical injury to persons within three feet from the machine.
5.2.3 The vending machine shall not pollute the environment and shall not violate the state or federal code of clean air standards.
5.3 SECURITY REQUIREMENTS
5.3.1 HDMS shall encrypt the credit card number when transmitting to the credit card company.
5.3.2 HDMS shall print only the last four digits of the credit card receipt.5.3.3 HDMS shall permit service requests only if a valid access code is entered by
service personnel.5.3.4 HDMS shall not allow Vending, Inc. and ACME, Inc. to write to its database.5.3.5 HDMS shall offer protection from vandalism.
5.4 SOFTWARE QUALITY ATTRIBUTES
5.4.1 The vending machine shall be available to users 7 days a week, 24 hours a day.5.4.2 The system shall be able to adapt to new coins and new bills issued by the Federal
Reserve Bank.5.4.3 The system’s Mean Time to Failure (MTTF) shall not be less than 2000 hours.5.4.4 The system shall be able to function if at least one of the payment devices is
operational.5.4.5 A new user shall be able to place a request for no more than 1 minute of
orientation.
Page 22
Spring 2003 Semester Project CPSC 541 Software Requirements Development
5.5. BUSINESS RULES
5.5.1 Both the technological and developmental risks to the manufacturer shall be assessed prior to the product design phase. It shall be decided if the outcome of this assessment meets the low risk development requirement.
5.5.2 A need for a hotdog vending machine shall be surveyed in the area where the vending machine will be installed.
5.5.3 Unit costs and operational costs of HDMS shall be assessed.5.5.4 Machines shall be manufactured on just-in-time basis.5.5.5 The customer shall have an option to purchase vending machine(s) with full or
partial maintenance contract or without a maintenance contract.5.5.6 Vending, Inc. shall perform service maintenance of the vending machine within
the time specified in the maintenance contract.5.5.7 Formal training shall not be anticipated for machine operation or routine
servicing.5.5.8 Maintenance training shall be expected for service technicians who must maintain
mechanical and electronic subsystems.
5.6 USER DOCUMENTATION
5.6.1 A user documentation shall be provided. It shall include installation, maintenance and troubleshooting manuals.
5.6.2 A documentation that lists all applicable compliance standards shall be provided upon request.
Page 23
Spring 2003 Semester Project CPSC 541 Software Requirements Development
SECTION 6. TEST
This section defines a set of qualification methods for acceptance testing. The methods are written for each requirement in Section 4. These methods ensure that the requirements have been met.
6.1 ACCEPTANCE TESTING
The following definitions for the test methods are listed below:• Inspection: Qualification that consists of visual examination of the program source
listings or design documentation. • Demonstration: Qualification that consists of simple observation of software functional
operation without requiring the use of special equipment or instrumentation.• Test: Qualification that consists of exercising software under controlled conditions for
the purpose of gathering data. Special equipment or instrumentation may be used. • Analysis: Qualification that consists of technical evaluation of data or of data collected
or derived from previously performed formal and informal testing.• Special: Qualification that consists of special tools, techniques, procedures, facilities,
and acceptance limits.Each requirement shall be tested using one of the methods defined above to qualify for acceptance testing. The table below lists the methods for each requirement in Section 4.
Feature Function Test MethodStart-up Procedure Turn On All Sensors Function Test
Perform Standard Start-up Tests Function
Demonstration
Wait for Interrupt Transfer Control to Purchasing Function
Demonstration
Transfer Control to Servicing Function
Demonstration
Transfer Control to Monitoring and Maintenance Function
Demonstration
Transfer Control to Security Function
Demonstration
Shutdown Function Test
Purchasing Request a Hotdog Function DemonstrationSelect Method of Payment Function
Demonstration
Page 24
Spring 2003 Semester Project CPSC 541 Software Requirements Development
Count Coins Function DemonstrationCount Bills Function DemonstrationProcess Credit Card Function AnalysisDispense Change Function DemonstrationPrint Credit Card Receipt Function
Demonstration
Dispense a Hotdog Function DemonstrationDisplay a Message Function DemonstrationPlay Pre-Recorded Messages Function
Demonstration
Servicing Request to Service Machine Function
Demonstration, Test
Check Access Code Function TestTurn-off Sensors Function Demonstration, TestChange Mode Function TestControl Temperature Function TestAdd Hotdogs Function Demonstration, AnalysisAdd Coins Function Demonstration, AnalysisCollect Money Function Demonstration, AnalysisEnd Service Function Demonstration, Test
Monitoring and Maintenance Request Status Information Function
Test
Transmit Status Information Function
Test
Monitoring Security Request Security Information Function
Test
Transmit Tampering Events Function
Test
Page 25