(a) |
Choose a project that is of an appropriate scale and complexity based on the skills and abilities of team members. |
(b) |
Identify required features and desired features of the project. |
(c) |
Incorporate programming concepts and principles such as data structures, external files, libraries and/or object-oriented programming as required. |
(d) |
Develop elegant code and refine through multiple iterations. |
(e) |
Integrate code from multiple team members as required. |
(f) |
Conduct beta testing with peers and/or external participants as required. |
(g) |
Incorporate feedback from peers and/or external participants as required. |
(h) |
Conduct beta testing with peers and/or external participants as required. |
(i) |
Revise the scale and complexity of the project according to skill, available resources and available time. |
(j) |
Confirm that the project incorporates all required features. |