...
Activity/Proficiency | Fundamental Awareness | Novice | Intermediate | Advanced |
---|---|---|---|---|
Code management | Fetching code samples and other material from a code repository prepared by others, and being aware of the flow. | Basic commands for committing, pushing and pulling, and understanding what merge conflicts are and how to handle them. | Versions, tagging and branching and merging. Forking and updating. | Deployment and releases. |
Continuous integration | Running pre-made tests on their code and understanding the fundamental idea of testing code behavior. | Writing and running their own unit tests (not necessarily TDD). Using a build system for assembling a runnable application. | Unit and integration testing, driven by build system. | CI automation using a server. |
Issue tracking | Use issues tracking system to report bugs (to some system they are using). | Use issues to manage requirements that drive development. | Kansan-like management | |
Code review | Going through code with others, to improve/ensure quality. | Pull requests, for contributing fixes to other system. | Using code review within own process, to close issues. |
...
Activity/Semester | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
---|---|---|---|---|---|---|---|---|
Code management | ||||||||
Continuous integration | ||||||||
Issue tracking | ||||||||
Code review |