This repository contains the assessment sheet for Computer Science 203 Spring 2019. The instructor will add this assessment sheet to a new GitHub Classroom repository each when the software engineering team is completing an assignment. The instructor invites each student in the course to master the technical and professional skills listed on this assignment sheet.
The students from Computer Science 203 Spring 2019 used GitHub flow model to collaboratively improve the assessment sheet. Students finalized the list of technical and professional skills on which they want to be assessed during the Spring 2019 semester. They also described the student behaviors that would lead to an assessment at one of the following levels:
- N = None
- I = Inadequate
- A = Adequate
- G = Good
- E = Excellent
We divided the whole group into some small teams. Each team is handling some specific topics. We created forks by teams based on this main repository. Team members of each team created pull requests to edit the part they were assigned to do. We then merged team forks to a main for to make sure we all have the same format. After that, we are safe tomerge everything into the main repository.
Software Developement with Python
- ilikerustoo - Assessment team leader, Refractoring, Debugging python programs and adopting pythonic constructs
- yeej2 - Basic/Advanced testing using Pytest; reporting code coverage with online provider
- paladp - Configuring python environment, pyenv, pipenv, linting, running, and formatting python programs
- baldeosinghm - Utilizing naming conventions and docstrings in python programs as well as using exception handling
The Professional Skills part of the Assessment Sheet is done by Team Spencer:
This group of students finished Groups and Interactions of Professional Skills:
- Lancasterwu - Interactions with the course instructor and Interactions with the Teaching assistant
- mmarconi - Attendance, Deadlines, Communication, Participation
- libailong - Conduct, Decisions, Postmortems, Conflicts, Infractions
- huangs1 - Interactions with the customer and interactions with the team leaders
This group of students finished the Individual and Revision of Guides sections:
- everitt-andrew - Python software development and Revising the assessment form
- ALEXANDERB82 - Continuous integration with Travis and Foundations of software engineering practices
- leonardoz15 - Understand and avoiding red flags and Revising the code of conduct
- reibelj - Understanding and adopting best practices, Assisting with Project management with GitHub, specifically the Flow Model and Python Development
This group of students handled commits a little differently. They created a single fork for their row and everyone commited their work to said fork. Regarless of the differences, they were responsible for the Individual and Revision of Guides section of Professional Skills.
The Foundations of Software Engineering Section was Completed by:
- szklenskij (Jared Szlenski)
- thomad74 (Dillon Thoma)
- wattob (Benjamin Watto)
This group worked together so there is no description of the specific person
Project Management With GitHub and Continuous Integration With Travis CI by:
- finneyj2 (Jahlia Finney) - Implemented rubric for Commit messages, Issue Tracking and Github flow
- Alex-Yarkosky (Alex Yarkosky) - Implemented rubric for creating and pulling PRs, README badges for Travis CI and README badges for project characteristics
- livingstonp229 (Paul Livingston) - Implemented rubric for creating and using repository branches/forks, and merging forks and branches
- ohnoanarrow (Tara Douglass) - Setup and configuring Tracis CI, performing secure releases of project deliverables, and third party integration with Travis CI
When making the Assessment Sheet, we started out rather disorganized and in a number of groups all of whom were mostly communicating with just each other. As such, we encountered the issue of having differing style guides and needed to coordinate over Slack and make some extra commits over GitHub in order to make a unified style and make sure that each of our portions fit that style guide.
We also encountered a number of obstacles in applying the grading skill to some technical and personal skills, chiefly that some of the levels didn't seem to apply to all of the skills. This and other factors, made it difficult to outline the specific diferences between some levels of the grading scale(example: the difference between inadequate and good). "None" in particular was difficult at times to distinguish from "Inadequate" in some cases. But we managed to circumvent these issues with communication among personal teams and the larger group.