Designed for use with GitHub Classroom, this
repository contains the starter for Laboratory 5 in Computer Science 203. As
part of this assignment, you should answer all of the questions in the
reflection.md
file, furnishing evidence of your contributions to this week's
effort towards completing the long-term software engineering project. Students
who have questions about this task should talk with a student technical leader
or the course instructor. Before the due date for this laboratory assignment,
please ensure that:
-
You made significant contributions to the shared GitHub repository for this week of the long-term software engineering project, as evidenced by commits to the master branch of the repository that you and your team members merged through the use of the GitHub Flow model.
-
The build status for the shared GitHub repository for the software engineering project is passing. In particular, please ensure that all linting checks, for both the source code and technical writing, and all test cases are passing.
-
The GitHub repository for the long-term software engineering project does not have any unresolved issues in it that you could have already handled.
-
The GitHub repository for the long-term software engineering project has open issues or pull requests for which there is evidence that you are making a significant contribution to the task.
-
This GitHub repository contains a completed reflection file. Please make sure that the contents of your reflection file passes the linting checks that are run in Travis CI.
-
This GitHub repository contains a completed assessment file. Notably, you should copy over the reflection file from the previous week and then continue to add to that version of the file as you demonstrate the mastery of new technical and professional skills in software engineering throughout this week. Please make sure that the contents of your assessment file passes the linting checks that are run in Travis CI.
-
You have followed the required best practices for asking the course instructor for feedback on the work that you completed for this laboratory assignment.
Please remember that this assignment includes a more rigorous assessment of your work on the long-term software engineering project as, by the completion of this week, we will be at the half-way point for the project. This means that in addition to meeting all of the requirements outlined in the assignment sheet, your submission must pass the following checks that GatorGrader automatically assesses:
- The assessment.md in has at least 400 word(s) in total
- The assessment.md in has exactly 12 of the
heading
tag - The assessment.md in has exactly 15 paragraph(s)
- The command output has exactly 0 of the
Add Your Name Here
fragment - The command output has exactly 0 of the
Add Your Name Here
fragment - The command output has exactly 0 of the
TODO
fragment - The command output has exactly 0 of the
TODO
fragment - The file assessment.md exists in the directory
- The file conduct.md exists in the directory
- The file reflection.md exists in the directory
- The reflection.md in has at least 400 word(s) in total
- The reflection.md in has exactly 15 of the
heading
tag - The reflection.md in has exactly 1 of the
code_block
tag - The reflection.md in has exactly 7 of the
list
tag - The repository has at least 10 commit(s)
If GatorGrader's automated
checks pass correctly, the tool will produce the output like the following in
addition to returning a zero exit code (which you can access by typing the
command echo $?
).
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Passed 15/15 (100%) of checks for cmpsc-203-spring-2020-lab5! ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
Throughout the completion of this software engineering project you must adhere to the code of conduct that we developed as part of a previous laboratory assignment. In addition to reporting any violations of the code of conduct, please make sure that you attest to the fact that you followed the code of conduct. Students who think that the software engineering team should revise some aspect of the code of conduct must use the GitHub issue tracker for that repository to suggest, discuss, and implement any required changes. Please note that, at the time this project was released, the members of the software engineering team did not finish the code of conduct and thus the instructor released the incomplete version to all students in the course.
Even though this long-term software engineering project involves a multiple-week effort, you are expected to make significant contributions to the project every week. As a means for documenting your contributions to this project, you should fully complete the reflection document and, additionally, annotate the assessment guide to track your mastery of the professional and technical skills in the field of software engineering. For every category for which you decide an assessment is appropriate, you should write a complete paragraph that reports your current level of mastery and the evidence that you would furnish to support your assessment. If there is not a paragraph next to one of the assessment criteria, then the instructor will assume that you are currently working at the :disappointed: level. Please note that you are responsible for documenting your mastery of all the technical and professional skills in software engineering by the completion of this long-term software project.
Taking inspiration from the principles of specification-based grading, the grade that a student receives on this assignment will have the following components:
-
Travis CI Build Status: Since additional checks on the source code and/or technical writing may be encoded in Travis CI's actions, students will receive a checkmark grade if their last before-the-deadline build passes and a green ✔ appears in their GitHub commit log instead of a red ✗. As with the previous grading component, students are encouraged to repeatedly revise their source code and technical writing in an attempt to get their Travis CI build to pass.
-
Mastery of Technical Writing: Students will also receive a checkmark grade when the responses to the technical writing questions presented in the
reflection.md
andassessment.md
reveal a mastery of both writing skills and technical knowledge. To receive a checkmark grade, the submitted writing should have correct spelling, grammar, and punctuation in addition to following the rules of Markdown and providing technically accurate answers. Students are encouraged to ask the course instructor or a student technical leader to use the GitHub issue tracker to provide feedback on their mastery of technical writing skills. -
Mastery of Technical Knowledge and Skills: Students will also receive a checkmark grade when their GitHub repository reveals that they have mastered all of the technical knowledge and skills developed during the completion of this assignment. As a part of this grade, the instructor will assess aspects of the project including, but not limited to, the use of effective Markdown syntax and appropriate Git commit messages. Students are encouraged to ask the course instructor or a student technical leader to use the GitHub issue tracker to provide feedback on how well their work demonstrates mastery of the assignment's technical knowledge and skills.
Students who wish to receive feedback on their work for this laboratory assignment should first open an issue on the issue tracker for this GitHub repository, giving an appropriate title and description for the type of feedback that you would like the course instructor to provide. After creating this issue, you will see that GitHub has created a unique web site that references this issue. To alert the course instructor to the fact that the issue was created and that you want feedback on your work, please send it to him by a Slack direct message at least 24 hours in advance of the this week's assignment due date. After the instructor responds to the issue, please resolve all of the stated concerns and participate in the discussion until the issue is closed.
All grades for this week of the laboratory assignment will be reported through a student's GitHub repository using either messages in the GitHub commit log or issues raised in the issue tracker. Students should ask questions about their grade for this project in GitHub so as to facilitate an effective conversation about the submitted deliverables.
If you have any problems with the completion of this assignment, then please create an issue in this repository using the "Issues" link at the top of this site. Before this assignment is submitted by the due date, all the issues in this repository should have been assigned to a team member, discussed, handled, marked as resolved, and then closed.