requirements document for electronic guitar tuner
TRANSCRIPT
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
1/18
Requirements Document
Version 1.0
January 19, 2011
Electronic Guitar Tuner
Ozan Can al
Boazii University, SWE522
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
2/18
2
REVISION TABLE
Revision Date Explanation
1.0 19.01.2011 System requirements for an electronic guitar tuner
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
3/18
3
TABLE OF CONTENTS
TABLE OF FIGURES ........................................................................................ 41. SYSTEM CONTEXT & SCOPE ................................................................. 5
1.1 SCOPE OF THE SYSTEM............................................................................... 51.2WORKFLOW PARTITIONING .......................................................................... 51.3PRODUCT BOUNDARY................................................................................... 51.4USE-CASE LIST............................................................................................. 5
2. LOOK, FEEL AND USE REQUIREMENTS ............................................ 73. FUNCTIONAL REQUIREMENTS ............................................................ 74. PERFORMANCE REQUIREMENTS ....................................................... 9
4.1SPEED REQUIREMENTS ................................................................................. 94.2SAFETY CRITICAL REQUIREMENTS ............................................................. 104.3PRECISION REQUIREMENTS......................................................................... 104.4RELIABILITY AND AVAILABILITY REQUIREMENTS...................................... 104.5CAPACITY AND SCALABILITY REQUIREMENTS............................................ 10
5. OPERATIONAL REQUIREMENTS ....................................................... 105.1EXPECTED PHYSICAL ENVIRONMENT ......................................................... 105.2PRODUCTIZATION ENVIRONMENT............................................................... 10
6. SECURITY REQUIREMENTS ................................................................ 117. CONSTRAINTS AND ASSUMPTIONS .................................................. 118. REQUIREMENTS MODELLING ........................................................... 11
8.1GOAL MODELS ........................................................................................... 118.2RESPONSIBILITY MODELS ........................................................................... 148.3OBSTRUCTION MODEL................................................................................ 168.4OBJECT MODEL .......................................................................................... 168.5OPERATIONALIZATION MODELS ................................................................. 17
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
4/18
4
TABLE OF FIGURES
Figure 1 - Electronic Guitar Tuning Process Use-Case Diagram .............................................. 6Figure 2 - Electronic Guitar Tuning Process - State Diagram ................................................... 9Figure 3 - Top Goals ................................................................................................................ 11Figure 4- Requirement Refinement: Tuning Process Started By User .................................... 12Figure 5 - Sub-goals ................................................................................................................. 12Figure 6 - Goal Diagram for the user interface of the tuner ..................................................... 13Figure 7 - Non-functional Goals .............................................................................................. 13Figure 8 - Non-functional Goals Refinement ........................................................................... 14Figure 9 - The "Guitarist" Agent .............................................................................................. 14Figure 10 - The "Tuner Company" Agent ................................................................................ 15Figure 11 - The "Tuner Controller" Agent ............................................................................... 15Figure 12 - Obstruction Model ................................................................................................. 16Figure 13Entities and Agents ............................................................................................... 16Figure 14 - Events, Entities and Operations ............................................................................. 17Figure 15 - Operationalization: Execute tuner on/off and determine the musical note of the
sound signal .............................................................................................................................. 18
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
5/18
5
1. SYSTEM CONTEXT & SCOPE1.1Scope of the SystemA regular guitar comprises six strings relating to five different musical notes (E A D G B and
again E). In order that the guitar provides proper sounds when its strings are strummed, these
strings should be in tune and the easiest and most effective way to do that is to use a tuner
which can determine the musical note of a string very precisely.
The intend of this document is to give initial system requirements about the operations of an
electronic guitar tuner. The tuner helps the user tune the guitar in an easy, fast and reliable
way while the system is produced in an inexpensive and robust manner.
1.2 Workflow Partitioning
The electronic guitar tuner system is predominantly managed by the tuner controller inside the
tuner. The controller first captures the input that can be provided through various inlets such
as microphone or guitar inlet jack, and processes it wherein it turns the sound signals into
electronic signals. Then, it determines the frequency (hertz value) of this electronic sound
signal and displays the adequate musical note on the LED display of the tuner.
1.3 Product Boundary
The human actor for the electronic guitar tuner is the user, generally the guitarist who wants
to tune his/her guitar. The other actor is the tuner controller which is an electronic componentinside the tuner. The boundaries of the product spread from the input component of the tuner
through the sound signal processing to the output component of the tuner.
1.4 Use-Case List
Below are the use-case list and the relevant use-case diagram showing the acts of the guitarist
and the tuner controller as well as the main actions occurring inside the product boundary, the
constraints and the goals. These use-cases are the subset of the operationalization model
described in Chapter 8.
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
6/18
6
Use Case Name: Electronic Guitar Tuning Process
Created By: Ozan Can al
Date Created: January 17, 2011
Actors: Guitarist, Tuner Controller
Description: Guitarist tunes his/her guitar by means of the directives of the electronicguitar tuner.
Preconditions: 1. The tuner is working properly.2. The guitar is present and the guitarist is ready to play the guitar.
Postconditions: 1. The guitarist has tuned his/her guitar in an easy, fast and efficientway.
Normal Flow: 1.0 Guitar Tuning Process
1. The guitarist turns on the tuner.2. When the guitarist sees that the tuner is operating, he/she strums a
string of the guitar.
3.
The controller of the tuner detects the voice signal input throughvarious methods such as microphone, guitar jack or vibration.
4. The controller determines the musical note of the voice signal input.5. The controller displays the determined name of the musical note as
the output.
Alternative Flows: None
Exceptions: The guitarist can turn off the tuner any time during the tuning process
Special
Requirements:None
Figure 1 - Electronic Guitar Tuning Process Use-Case Diagram
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
7/18
7
2. LOOK, FEEL AND USE REQUIREMENTSThe box-shaped guitar tuner is in the size of a regular mobile phone and is predominantly
black.
The Interface:
The user interface of a box-shaped guitar tuner consists of inlets, an on/off button and LEDs.
The inlets are the microphone and the guitar jack inlet that receive sound signals. The
microphone and the guitar jack inlet are located at visible places and marked with signs so
that the user can easily find them. Besides, an on/off button and LED lights are situated on the
tuner. The on/off button turns the tuner on or off according to its state. One red LED for the
musical note of each guitar string as well as a sharp - and a flat -sign and a green LED to
indicate the precise frequency state of the string are situated on the interface. The relevant
LED is lit according to the received and processed sound signal. A 9V-battery compartment is
also provided at the back of the tuner.
3. FUNCTIONAL REQUIREMENTSThe main goal of this electronic guitar tuner is to satisfy the tuning needs of the user. This
goal is satisfied after the user starts the tuning process without canceling it during tuning, and
as the name of the right musical note of the guitar string being strummed at that time by the
user is displayed.
To start the tuning process, the tuner should be able to receive sound signals emitted from the
guitar. This can be achieved by means of two types of guitar tuners: clip-on and box-shaped.
Clip-on guitar tuners are attached to the body of the guitar and perform the musical note
displaying task by detecting the sound vibrations emitted from the guitar by their sensors. On
the other hand, box-shaped guitar tuners have a guitar jack inlet and a built-in microphone to
get the sound of the string being strummed. In this kind of tuners, the microphone is activated
only in times when no guitar jack is plugged into the tuner.
Besides, guitar tuners employ indicators either for each twelve musical notes (seven natural
plus five accidental (sharp - and flat - ) notes) or only five indicators that constitute the
musical notes of the strings on a standard six-stringed guitar, being E A D G B.
In this document, requirements for a box-shaped guitar tuner having indicators only for the
musical notes of the guitar strings will be analyzed.
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
8/18
8
At the highest level of the functional requirements, the tuning request of the user is satisfied if
and only if the user is informed about the changes happening. This will come true when the
user starts the tuning process by turning on the tuner and then strumming a string of the
guitar. The upper goal user informed about changes is only satisfied as long as the guitarist
resolves the tuning process not canceled expectation during the tuning request.
The sub-goal of starting the tuning process is applied as the guitarist presses the on/off button,
which is provided on the user interface provided by the tuner company. The on/off button
command is detected by the tuner controller inside the tuner and the tuner is turned on. This
operation is displayed to the guitarist by sequentially blinking LEDs on the user interface so
that the guitarist can get feedback of his/her action. When no action is performed by the
guitarist, the tuner keeps its inertia and displays nothing on the user interface.
Then, when the guitarist strums a string of the guitar, the tuner controller first converts the
analog sound signal into electronic signal. Then, it calculates the frequency of the signal and
determines the closest musical note to this frequency. Lastly, it displays the guitarist the name
of the musical note by blinking the LED related to the name of the musical note on the user
interface. If the frequency of the received signal matches the frequency of any musical note in
an exact manner, the controller lights up the LED of that musical note as well as the green
LED meaning the string is in tune. On the other hand, if the frequency of the received signal
does not match the frequency of any musical note in an exact manner, the controller lights up
the LED of the musical note that is closest to the musical note of the received signal and alsoone of the sharp - or flat -signs on the interface. If the musical note of the received signal
is a bit sharper than it is supposed to be, the sharp - sign is lit and if the musical note of the
received signal is a bit more flat than it is supposed to be, the flat - sign is lit, meaning that
the guitarist should adjust the tension of the string by means of the tuning keys (pegheads)
situated at the headstock of the guitar.
In order that the sound signal is detected and analyzed, it must arrive to the tuner via guitar
jack if the guitar jack is plugged into the tuner. If this is not the case, the microphone located
on the tuner collects the sound signals.
The UML state diagram eliciting the described tuning process within the product boundary is
displayed below.
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
9/18
9
Figure 2 - Electronic Guitar Tuning Process - State Diagram
4. PERFORMANCE REQUIREMENTS4.1 Speed Requirements
The tuner employs an easy-to-use user interface with input components, one on/off button and
the output display. It can be learned instantly and there is no learning curve for it. The
maximum latency for the tuner to give feedback about the name of the musical note after each
strum is approximately 1 second.
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
10/18
10
4.2 Safety Critical Requirements
No safety-concerning risks are associated with the tuner.
4.3 Precision Requirements
This tuner has been designed to be the most accurate possible. Its controller determines thehertz of the voice signal with an error margin of only 2 hertz.
4.4 Reliability and Availability Requirements
The tuner is designed to be available as soon as the on/off button is pressed as long as there is
enough battery power left. Apart from that, no reliability issues are expected. No maintenance
is required as long as the tuner does not get out of order, which is highly unlikely. Still, in
case of a system failure such as inadequate blinking of LEDs which casts a suspicion on the
effectiveness of the tuning process, the tuner may warn the user about the crash by lighting up
the LEDs in an unfamiliar way. Moreover, there are plans that in the next release, the tuner
announces the on/off warning or the names of the musical notes by voice regarding that the
user interface is unreadable by blind people.
4.5 Capacity and Scalability Requirements
The tuner is designed to respond to stable sound signals, that is, sound signals that keep their
frequency for some time. A strumming string of a guitar is a good example for that. Although
every kind of sound signal can be converted into musical notes, sounds with quickly changing
pitches cannot be easily detected by the tuner. So, the user should string guitar strings one at atime to get the best result. Besides, while using the microphone of the tuner as the input
component, noisy environments can cause bad results as the microphone of the tuner cannot
filter the sound of the guitar string properly. Thus, using the guitar jack inlet as much as
possible is recommended.
5. OPERATIONAL REQUIREMENTS5.1 Expected Physical Environment
There is no expected physical environment as the tuner operates only by catching sound
signals in the environment and determining the corresponding musical note. If the guitar jack
inlet is desired to be used as the input component, a guitar cable between the guitar and the
tuner is also needed.
5.2 Productization Environment
The product will be distributed through music shops and e-shopping websites, especially the
ones concerning guitarists.
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
11/18
11
6. SECURITY REQUIREMENTSNo security requirements are needed for this product.
7. CONSTRAINTS AND ASSUMPTIONSNo constraints and assumptions regarding the product are foreseen.
8. REQUIREMENTS MODELLINGIn this chapter; functional/non-functional goal, responsibility, obstruction, object and
operationalization models are showed.
8.1 Goal Models
Figure 3 - Top Goals
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
12/18
12
Figure 4- Requirement Refinement: Tuning Process Started By User
Figure 5 - Sub-goals
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
13/18
13
Figure 6 - Goal Diagram for the user interface of the tuner
Figure 7 - Non-functional Goals
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
14/18
14
Figure 8 - Non-functional Goals Refinement
8.2 Responsibility Models
Figure 9 - The "Guitarist" Agent
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
15/18
15
Figure 10 - The "Tuner Company" Agent
Figure 11 - The "Tuner Controller" Agent
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
16/18
16
8.3 Obstruction Model
Figure 12 - Obstruction Model
8.4 Object Model
Figure 13Entities and Agents
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
17/18
17
8.5 Operationalization Models
Figure 14 - Events, Entities and Operations
-
8/8/2019 Requirements Document for Electronic Guitar Tuner
18/18
18
Figure 15 - Operationalization: Execute tuner on/off and determine the musical note of the sound signal