View Single Post
  #1   Spotlight this post!  
Unread 28-03-2005, 21:23
dm0ney's Avatar
dm0ney dm0ney is offline
Will Code For Food (Food Optional)
AKA: Deepak Mishra
None #0217 (The ThunderChickens)
Team Role: Alumni
 
Join Date: Jan 2005
Rookie Year: 2004
Location: Shelby Twp., MI
Posts: 48
dm0ney will become famous soon enough
Send a message via AIM to dm0ney
Code Structure, Organization, Division of Labor!

How do fellow FIRST teams divide up the code for different people to work on it, do version control, and also code structure itself?


At Team #217...
The first week, we mapped out an entire whiteboard with function calls and the like. A pretty basic API which was ultimately the most important thing our team did that first week
We approached the code with two flow charts:
Robot -> Drive, Arm, Vision
OI - > Joysticks, Buttons
We filled in all our required variables, mutators, and accessors. Agreed on naming conventions and then divided the work up like this:

Programmer A = low-level commands / drive / joysticks
Programmer B = pneumatics / study on making TC Dashboard
Programmer C = arm
Programmer D = autonomous / scripting
Programmer E = vision
Programmer F = catch all, implementing all

Ultimately, We went to 3 main programmers... one lost to drive team, one lost to mechanical.

To control versions, we set up a wireless network @ our place of work and had a CVS server that we all learned how to use / taught people how to use.

Our code structure is set up in multiple files, each pertaining to what it is
(encoder.c, pid.c, oibuttons.c, userbyte.c, arm.c, vision.c, scripting.c, commands.c....... etc)
We also approached a style as close to OOP as we could using structs, pointer fun, and init statements and the like.

Parts of our code will be released in the coming weeks and feel free to find our team at Atlanta to see the code display that I'll be putting together.... eventually
__________________

Alumni
Team #217, The ThunderChickens



Student, Class of 2009
California Institute of Technology