Cyclometer Project - Requirements Analysis
Introduction
Your team is responsible for designing and implementing a cyclometer, also called a bicycle computer. Pictured below is a typical cyclometer.

The cyclometer uses a magnetic sensor on one of the bicycle's wheels to generate a pulse once per wheel revolution. These pulses are counted to compute the speed of the bicycle and a number of other related quantities.
This assignment has you defining requirements for this typical cyclometer. You can use the instruction manual for the cyclometer pictured above to help you identify the use cases for a generic cyclometer.
Use the Velo 5 feature set with the addtion of the calculation of elapsed time and average speed. (Note: when you begin the design and implementation phase of this project, you will receive a set of requirements, which will ensure that all teams work to the same requirements.) Based on the use cases that you identify, define a consistent set of well-formed requirements statements that cover all the features in this cyclometer. Keep alert to capture any structure that exists in the requirements by having a hierarchy of requirements. Most requirements statements will be of the form: "The cyclometer shall ..."
Requirements Analysis
Analyze the requirements for this cyclometer. This analysis should include activities which:
- Identify actors external to the system.
- Identify use cases providing: name, goal of the use case, actor trigerring the use case
- Show the interaction of actors and use cases via a Use Case diagram
- Create a set of unambiguous "The cyclometer shall ..." style requirements statements for the cyclometer's features.
- Identify and characterize events that the system must handle, i.e. ones that cross the system boundary. Your event characterization should include: event name, what the event represents, actor initiating or receiving the event, timing characteristics, effect of event on the system or the actor receiving it.
Consider the boundary for your system to be the microcontroller and its memory in the cyclometer. From the microcontroller's perspective, hardware elements that the microcontroller interfaces with are external actors, i.e. the bicyclist is not an actor.
Timing Constraints Analysis
- Specify the range of non-zero speeds that the cyclometer will display.
- Given that range of speeds, specify the timing constraints for performing the calculation of bicycle speed. Assume that the circumfirence of the wheel which holds the magnetic sensor is between 190 and 220 cm.
- Describe how you will compute the bicycle's current speed including how often the calculations will be performed, how oftern the displayed values will be updated, and any filtering or averaging you will do on the calculations.
- Describe how you will compute the bicycle's average speed including
handling manually automatically turning the calculation on and off.
- Describe how you will detect that the bicycle has stopped.
- Specify how fast you will scan the inputs (buttons, magnetic sensor) to your cyclometer. How did you determine those rates?
Submission Instructions
For this assignment, you will submit two files
- A document which contains the artifacts for your requirements and timing constraints analyses along with a discussion of all elements of the analyses. Submit this as either a Word or PDF file.
- An Excel spreadsheet, which has data for, at least, 10 test points for checking the speed calculation.
Submit these items in the myCourses dropbox before the date and time when the dropbox closes.
$Id: Cyclometer-requirements.html 178 2013-01-23 20:44:15Z jrv $