Guitar Tutor Design

From CSSEMediaWiki
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
[[Image:GuitarTutorDomainDesigh1.jpg|thumb|Domain Design]]'''USE CASE 1'''-- Chord Chart Practice.
+
I like to play guitar and like any musician I would like to play it much better. My music theory is reasonably good so last year I did a jazz course and picked up a bit of experience playing on stage. I'm not so good at improvisation yet and so I have decided to create a tool that will help me improve . It seems like a good idea for an OO project and so here it is.
 +
 
 +
[[Image:GuitarTutorDomainDesigh1.jpg|thumb|Domain Design]]
 +
'''Scenario 1'''-- Chord Chart Practice.
 
The user loads a chord chart for the song they want to practice.
 
The user loads a chord chart for the song they want to practice.
 
Next the user presses the start button.  
 
Next the user presses the start button.  
Line 6: Line 9:
 
The user plays notes on the instrument. These notes and their duration are recorded on the chord chart .  Notes are coloured one colour for correct and another for incorrect.  
 
The user plays notes on the instrument. These notes and their duration are recorded on the chord chart .  Notes are coloured one colour for correct and another for incorrect.  
  
The chart is repeated X times or until the user presses the start button a second time.
+
The chart is repeated X (default 3) times or until the user presses the start button a second time.
  
 
The user can choose where to start the play from. The default will be the beginning or the last start point. Playback can only start from the beginning of a bar.
 
The user can choose where to start the play from. The default will be the beginning or the last start point. Playback can only start from the beginning of a bar.
Line 13: Line 16:
  
  
'''USE CASE 2'''-- Load, Save, Enter New Chord Chart
+
'''Scenario 2'''-- Load, Save, Enter New Chord Chart
 +
 
 +
The user can save the currently recorded session so that it can be referred to later.
 +
 
 +
The user can load a previously saved session.
 +
 
 +
The user can load a chord chart.
 +
 
 +
The user can enter a new chord chart and save it to a file.

Revision as of 14:09, 21 August 2008

I like to play guitar and like any musician I would like to play it much better. My music theory is reasonably good so last year I did a jazz course and picked up a bit of experience playing on stage. I'm not so good at improvisation yet and so I have decided to create a tool that will help me improve . It seems like a good idea for an OO project and so here it is.

Domain Design

Scenario 1-- Chord Chart Practice. The user loads a chord chart for the song they want to practice. Next the user presses the start button. After a short pause the program will count in two full bars then an indicator will start to scroll along the chart to mark progress in time with the tempo.

The user plays notes on the instrument. These notes and their duration are recorded on the chord chart . Notes are coloured one colour for correct and another for incorrect.

The chart is repeated X (default 3) times or until the user presses the start button a second time.

The user can choose where to start the play from. The default will be the beginning or the last start point. Playback can only start from the beginning of a bar.

Chord charts can be of the form ABA, ABAC, ABB, etc. with repeats.


Scenario 2-- Load, Save, Enter New Chord Chart

The user can save the currently recorded session so that it can be referred to later.

The user can load a previously saved session.

The user can load a chord chart.

The user can enter a new chord chart and save it to a file.

Personal tools