khaledosman / terasoft-12

Automatically exported from code.google.com/p/terasoft-12
0 stars 0 forks source link

3.09 As a user, I should see a graph with both my performance and my opponent's performance with respect to Displacement, as well as an optimal Graph #230

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Tasks:
Handling all exceptions and removing every bug

Original issue reported on code.google.com by asamg...@gmail.com on 11 May 2012 at 11:43

GoogleCodeExporter commented 9 years ago
This issue was updated by revision 
http://code.google.com/p/terasoft-12/source/detail?r=1456

Fixed several bugs related to the Optimum curve, modifications and additions
were mainly in the class OptimumEngine

Original comment by asamg...@gmail.com on 23 May 2012 at 4:00

GoogleCodeExporter commented 9 years ago

Original comment by asamg...@gmail.com on 23 May 2012 at 4:01

GoogleCodeExporter commented 9 years ago
as per SD @ https://docs.google.com/file/d/0B3al591vzPWUUnBNcjJiOFBtM0k/edit

*The SD name should be written inside the sequence diagram
*The actor lifeline is not drawn, when you draw it do not draw an activation box
*No stereo types were used, stereotypes include 
<<UI>>,<<engine>>,<<actor>>,etc... 
*There is no class called background !!
*On the arrow of the synchronous messages (or asynchronous) you should write 
the method called with parameters passed not empty
**The return to the actor should be synchronous (dotted arrow)

Original comment by mohamed....@gmail.com on 23 May 2012 at 9:39

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1547.

Removed the function SetDestinations and replaced it with the similar function 
DrawCurves in the GraphUI class, removed the function DrawRange, modified the 
PerformanceGraph class and the DrawDisqualification function.

Original comment by asamg...@gmail.com on 23 May 2012 at 10:54

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1595.

[INTEGRATION]: Added the instructions screen for experiment 1 totally using 
experiment 3's instructions screen, note: this commit is totally unrelated to 
the issue.

Original comment by asamg...@gmail.com on 24 May 2012 at 5:11

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1602.

Moved the Moving2DAvatar to a the folder Experiment1 in the UI Lib

Original comment by asamg...@gmail.com on 24 May 2012 at 6:03

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1692.

Called the DrawCurves and the DrawDisqualification functions in the 
Winnerscreen.

Original comment by asamg...@gmail.com on 24 May 2012 at 3:36

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1703.

Updated the graphs to be scalable with the screen

Original comment by asamg...@gmail.com on 24 May 2012 at 4:02

GoogleCodeExporter commented 9 years ago
class GraphUI review

- class corrent design

GraphUI {
    PerformanceGraph graph;
    //your methods (INSTANCE NOT STATIC)
}

declaring all your methods as static is a design error

method DrawLine should be moved to ui library and Texture2D blank should be 
removed from the parameters and initialized inside the method

hardcoding the values and positions of every detail causes your class 
functionality to be VERY LIMITED and cannot be reused

- DrawCurves
immposiible to understand since the local variables lack descriptive names

- DrawLabels
the spriteBatch.DrawString() call for drawing time should be done in a loop

- DrawAxis
spriteBatch.DrawString() calls should be done in loop

- DrawYLabels
common code should be broken down to a new helper method

- DrawEnvironment, DrawDisqualification
same problems poor naming conventions and duplicate code

class PerformanceGraph review

- classes corrent design
YAxisPoints{
    List<float> player1
    List<float> player2
    List<float> optimum
}

PerformanceGraph {
    YAxisPoints Displacement
    YAxisPoints Velocity
    YAxisPoints Acceleration
}

- instance variables should be initialized in a constructor not during their 
declaration

- instance variables names are not descriptive

- use Properties instead of simple getters and setters
ex : 
private List<float> player1Velocity;
public void setP1Vel(List<float> L)
{
    this.player1Velocity = L;
}
public List<float> getP1Vel()
{
    return player1Velocity;
}
public void setVel1(List<float> x)
{
    player1Velocity = x;
}

will be replaced by
public List<float> Player1Velocity { get; set; }

Original comment by bishoyba...@gmail.com on 24 May 2012 at 4:58

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1713.

Updated the graph to discard unwanted time slices

Original comment by asamg...@gmail.com on 24 May 2012 at 5:37

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1721.

Added the function Choose in the OptimumEngine, fixed the distance between each 
point while drawing the graph in the function DrawCurves

Original comment by asamg...@gmail.com on 24 May 2012 at 6:40

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1727.

Modified the Choose function and fixed the distance between the points

Original comment by asamg...@gmail.com on 24 May 2012 at 7:26

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1731.

Changed the point distance to 6

Original comment by asamg...@gmail.com on 24 May 2012 at 7:39

GoogleCodeExporter commented 9 years ago
class GraphEngine review

- remove unsed using statements

- name the variabled descriptive names

- Differentiate 
the try and catch should be removed and loop counter should be set to one

- GetTotalTime 
use Math.Max

- GetGraphPosition, SetAxis
remove unused type casts

- GetValue
could be implemented using
list[timings.IndexOf<double>(time)]

class OptimumEngine review

- the class implementation is impossible to read

Original comment by bishoyba...@gmail.com on 24 May 2012 at 8:21

GoogleCodeExporter commented 9 years ago
same as issue 233

Original comment by michel.n...@gmail.com on 24 May 2012 at 9:50

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1786.

Added the tests

Original comment by asamg...@gmail.com on 24 May 2012 at 10:45

GoogleCodeExporter commented 9 years ago
This issue was updated by revision r1787.

Committed the .csproj file

Original comment by asamg...@gmail.com on 24 May 2012 at 10:45

GoogleCodeExporter commented 9 years ago
This issue was updated by revision 
http://code.google.com/p/terasoft-12/source/detail?r=1800

[Integration] The DrawGraphs function now takes 25 as the track's length

Original comment by asamg...@gmail.com on 24 May 2012 at 11:46

GoogleCodeExporter commented 9 years ago

Original comment by asamg...@gmail.com on 24 May 2012 at 11:46

GoogleCodeExporter commented 9 years ago

Original comment by asamg...@gmail.com on 25 May 2012 at 8:25

GoogleCodeExporter commented 9 years ago
*I have been working on this long UML for a good time now however,
*I know you cannot add any thing more due to the space constraint
so i won't say make the diagram label for the three stories (although each 
story should have 1 UML)(i don't know whether it will be accepted since they 
are related or not)
*There are some small spelling mistakes (Loop is written Loo several times)
*There is nothing called IF >> if there is no else it is called OPT
if there is else it's called ALT
* There should be a call to SpriteBatch class if there is a Draw call
* The box of loop should cover all the elements inside

However GREEEEAAAAT JOB wallahy (it seems you did really suffered)
THANK YOU :)
in fact you are too close to a verify but i'm afraid i couldn't due to the 
reasons mentioned

Original comment by mohamed....@gmail.com on 25 May 2012 at 9:53