User:BenMcDonald

From CSSEMediaWiki
(Difference between revisions)
Jump to: navigation, search
(New page: == Ben McDoanld's page == I am doing my design study for my COSC426:Augmented Reality project. I need a design for a boxing skills trainer. No code has been written so far. I have made a...)
 
Line 2: Line 2:
  
  
I am doing my design study for my COSC426:Augmented Reality project. I need a design for a boxing skills trainer. No code has been written so far. I have made a sketch of the requirements for the design of the software.
+
I am doing my design study for my COSC426:Augmented Reality project. I need a design for a boxing skills trainer. No code has been written so far. I have made a sketch of the requirements for the design of the software. The project is in C++ using the libraries open scene graph (osg) and augmented reality tool-kit open scene graph (ARTosg)
  
* A score needs to be generated from a set of tested skills:.
+
Requirements:
 +
* A score needs to be generated from a set of tested skills:
 
** Consistent guard
 
** Consistent guard
 
** Eyes forward and on opponent
 
** Eyes forward and on opponent
Line 12: Line 13:
 
* The performance on the skills needs to be evaluated and for additional activities to be recommended to the athlete.
 
* The performance on the skills needs to be evaluated and for additional activities to be recommended to the athlete.
 
* An athlete’s evaluation history, progress and general details to be recorded and recoverable.
 
* An athlete’s evaluation history, progress and general details to be recorded and recoverable.
 +
 +
== Iteration One ==
 +
[[Image:BenM's UMLI1.png|border|700px]]
 +
== Design: ==
 +
[[Observer|Observer Pattern]]:
 +
* Subject - Observable
 +
* ConcreteSubject - Athlete
 +
* Observer - Observer
 +
* ConcreteObserver - Trainer
 +
Maxims that have been useful:
 +
* [[Command query separation]] - One plus of C++ is that you can mark queries, and enforce them, with the const keyword.
 +
* [[Design by contract]] - Using assert's to enforce preconditions at the moment
 +
 +
This is only the beginning of the design. I hope to remove the update methods from and add inheritance to the athlete class by creating a WiiMoteAthlete.

Revision as of 08:39, 15 September 2009

Ben McDoanld's page

I am doing my design study for my COSC426:Augmented Reality project. I need a design for a boxing skills trainer. No code has been written so far. I have made a sketch of the requirements for the design of the software. The project is in C++ using the libraries open scene graph (osg) and augmented reality tool-kit open scene graph (ARTosg)

Requirements:

  • A score needs to be generated from a set of tested skills:
    • Consistent guard
    • Eyes forward and on opponent
    • Bobbing and weaving
    • Timing of punches
  • Each skill needs to be modelled and the evaluation method for each skill also needs to be modelled.
  • The performance on the skills needs to be evaluated and for additional activities to be recommended to the athlete.
  • An athlete’s evaluation history, progress and general details to be recorded and recoverable.

Iteration One

BenM's UMLI1.png

Design:

Observer Pattern:

  • Subject - Observable
  • ConcreteSubject - Athlete
  • Observer - Observer
  • ConcreteObserver - Trainer

Maxims that have been useful:

This is only the beginning of the design. I hope to remove the update methods from and add inheritance to the athlete class by creating a WiiMoteAthlete.