The reviews for your API have been pushed to separate branches (prefixed with
api-review-
) of your code repository in the task-1
group. You should merge
these branches to your master
branch at your convenience (and delete the
source branches afterwards).
Please pay attention when merging the two branches, because each will contain
the numactl
example program and there is a chance of collisions. The best
approach is to check out the individual branches, rename the files to match
what you would like them to be and then create a pull request for the branch
and merge. In each branch, the review can be found in the .nprg043/reviews
directory, under a non-conflicting file name, so these should not cause any
trouble when merging.
Your next task is to give a short presentation of your API during the labs. More specifically, you are required to:
-
Read the reviews and consider reflecting useful feedback in your API design. This is important, because your API will be soon exported to other students so that they can write tests for it.
This does not mean that you have to completely rework the API (like changing its style), but you should plug the most glaring holes in the design and in the documentation.
-
Prepare a PDF with a few presentation slides — assume that you will have at most 6-7 minutes (possibly including a question from the audience). This is necessary so that the presentations can be collected in advance to minimize presentation switching time.
-
Give a short talk about your API design during your “home” labs. Teams split between two labs have to give a talk during one of the labs, subject to capacity limitations.
Please note that this task should be done in approximately 1 week.
Guidelines
Content
- Key use cases driving your requirements
- What do you want/don’t want to support (goals/non-goals)
- API style and overview of API usage
- Demonstrate key concepts on the
time
command - Briefly mention advanced concepts if any
- Demonstrate key concepts on the
- Present highlights of your design
- How do you make life easier for users?
- Incorporate comments from reviews
- Respond to the most important ones
Execution
- Stick to the time limit
- Other teams need to present too
- Be specific, avoid general introductions
- Avoid black background
- Makes the presentation difficult to view
Submission
Submit the presentation through your code repository (in the task-1
group)
as a single PDF file stored in .nprg043/presentations/api-design.pdf
. Keep
in mind that file names in GIT (and on Linux) are case-sensitive.
You may want to keep a copy of the presentation elsewhere in the project (if
you want it to be part of the project structure). The same applies to source files
used to produce the presentation PDF, but the api-design.pdf
file must
be present in the .nprg043/presentations
directory at deadline.
Full points will be awarded only if you submit the presentation PDF on time AND your team gives a talk during the labs.
Tag the commit with the final version of your presentation using the
task-3-submission
tag.
Because your code will be exported to other teams (to implement tests), you
can also use the task-4-export
tag to indicate the commit at which you want
your API to be exported to other students for Task #4.
If there is no task-4-export
tag, the export will take a commit indicated
by the task-3-submission
tag or the last commit from the master
branch
before Task #3 deadline.
Split teams
If your team is split between two lab classes, please send an e-mail to the course instructor indicating during which lab class would you prefer to give your talk.
Keep in mind, though, that your preference may be impossible to satisfy if too many split teams apply for the same class.