- Ensure you know tP expectations
- Start proper milestone management
- Add the first functionality increment
Feel free to improve AB3 in any way you see fit. While not very 'buggy', AB3 is not 'perfect' either (it is not meant to be a 'model solution'). In particular, find and fix any bugs it has. If you are not sure if something is a bug or an intended behavior, you can post in the forum to check.
While we are on the topic, also note that the architecture of AB3 doesn't suite every kind of application either. As you gain more experience in other application domains, you will learn different types of architectures that you can add to the collection of different architectures that you can consider for future projects. The same goes for the tool chain and the tech stack of AB3. Therefore, do not try to apply AB3 as a template for every other project you encounter in the future.
PR review comments matter! Remember to do proper PR reviews throughout the tP, at least for non-trivial changes, as the quality and quantity of PR review comments you have given to peers affect your tP marks (under the project management aspect).
1 Ensure you know tP expectations
- If you haven't done so already, make sure you know individual and team expectations of the tP
2 Start proper milestone management
- Set up the issue tracker as described in the panel below, if you haven't done so already.
- Start proper schedule tracking and milestone management as explained in the panel below.
Try to achieve all milestone requirements, but do not fret if you miss a few. You will get full marks for this aspect as long as you achieve about 75% of the milestone requirements on average. Yes, that's a pretty low bar, but we have set it low in order to reduce workload and stress. Ideally, you should achieve 90-100%.
3 Add the first functionality increment
- Ensure you are aware of the instructions for planning this iteration, given as part of previous week's tP instructions, and also repeated in the panel below for your convenience:
Iteration deadline: midnight before week 9 tutorial (i.e., in about 1.5 weeks). Do your best to have a demo-able product by the midnight before the following week's tutorial (i.e., the soft deadline for weekly tP tasks). That way, the period between that deadline and the lecture (i.e., soft deadline for weekly tP tasks) can be used as a buffer in case you overrun the soft deadline.
Push as hard as you can afford to in this iteration: While we have kept the expectations bar low for this iteration (so as not to overwhelm inexperienced programmers), you are encouraged to push as hard as you can in this iteration. Reason: past students have lamented not doing enough in
v1.2
that left 'too much' to do inv1.3
andv1.4
.
At the same time, we recommend you should also play it safe by aiming to reach a smallest possible version early and squeeze more in only if there is time left.From this point onwards each member is expected to contribute code to each , preferably each week; only merged code is considered as contributions .
If you plan to rename the Java packages, you may want to do it around this time. Doing it later can be more difficult (e.g., it can cause more merge conflicts), and can cause problems in our code authorship tracking. Also note that renaming packages is optional.
Note: you are required to follow the forking workflow for at least for the first part of this iteration: