Sunday, March 1, 2009

CopyCat 1.0

This Post is about CopyCat 1.0 (StandAlone Application in Java) which has been developed by nitd_developers for the College Tech-fest.

We had been approached with the Requirement for a Stand-Alone Application which could generate a Random Path so that Each Team is assigned a slightly Different Path with similar Constraints like the No of Turns being fixed and the max of steps it can take in a particular Direction till the next turn is encountered. We also took it up as challenge as we had never worked on Random Path Generation before.

Things weren't coherent at the beginning as to what was required to be done so that the Random Path generated strictly adheres to the Constraints. Then Swapnil came up with a set of equations which Govern the no of steps to be taken before a turn is encountered and also constraining the equation with another variable which keeps note of the turns.

Now,using this Governing Equation we could come up with 2 different set of Paths which Different Constraints.

Then,as an addition to the Random Path Generation ,We Provided support for Team Registration and Assigning Randomly Generated Paths to each Team Beforehand and then Viewing the Path assigned at a later Stage.


Few Screenshots of CopyCat 1.0

1) Team Details Panel:





2) GridPanel:




Positives for nitd_developers from this Application:

- It was Fun as always and also Gained a fair Idea about Random Generation with Constraints.

- Code was More Readable this time and used a better IDE(NetBeans) this time.

- Avoided Mistakes that were Committed last time (especially Code Duplication).

- Avoided Database for Trivial Data Storage Instead Serialized the Objects.


Things that we need to Improve Upon:

- Firstly,It would be making the entire Design more Flexible.It is more a continuous Process and we are definitely moving a step forward in that front.

- Using Standard Layouts in GUI was Missing yet again.We would need to come up with some Solution for that.(Null Layout should have been avoided).

- Finally,We need to be better than atleast ourselves every time we take up a new Task.



PS: If you have any Suggestions/Queries then Feel Free to Contact nitd_developers at nitd_developers@googlegroups.com

No comments: