Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integerated team constraints #42

Merged
merged 4 commits into from
Jan 11, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
97 changes: 71 additions & 26 deletions collaboration/constraints.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,79 @@
<!-- this template is for inspiration, feel free to change it however you like! -->
# Constraints

# Constraints
## External

Some boundaries around our project.
- **Project Deadline and Stakes**:

Although we aspire to take a gradual approach to mastering the tools and
algorithms required for the project, the tight deadline places significant
pressure on our team. Missing this deadline could result in severe
consequences, including program eviction.

## External
- **Project Requirements**:

The project demands proficiency in Git/GitHub, code documentation, testing,
reviewing, and effective collaboration. These requirements exceed the current
skill levels of some team members, posing challenges to our progress.

<!--
constraints coming from the outside that your team has no control over:
- project deadlines
- number of unit tests required to pass a code review
- technologies (sometimes a client will tell you what to use)
- power or connectivity
- ...
-->
- **Accessibility to Computers**:

Some team members share computers with others in their households. For
instance, one member shares a computer with their sister, who lives in
another city. Access is often limited to weekends or family visits, leading
to delays and stress.

## Internal: Involuntary
- **Software Compatibility**:

<!--
constraints that come from within your team, and you have no control over:
- each of your individual skill levels
- amount of time available to work on the project
-->
One team member faced challenges downloading necessary tools like VS Code and
Git due to their laptop's ARM processor. Extensive research was required to
find compatible versions of the software.

## Internal: Voluntary
- **Poor Internet Connection**:

<!--
constraints that your team decided on to help scope the project. they may include:
- coding style & conventions
- agree on a code review checklist for the project repository
- the number of hours you want to spend working
- only using the colors black and white
-->
A team member has issues with internet connection, which makes it difficult
to carry out the project.

## Internal: Involuntary

- **Skill Gap**:

The team comprises individuals with varying levels of familiarity with the
tools and techniques required for the project. This expertise gap can hinder
effective communication, collaboration, and overall efficiency.

- **Personal Availability**:

Despite strong motivation, personal challenges occasionally arise, forcing
some members to be unavailable. These absences can delay progress and place
additional responsibilities on others.

- **Scheduling Conflicts**:

Due to differing schedules and backgrounds, finding suitable times for
everyone to meet is challenging. However, the team has shown dedication by
following up at least twice a week to engage and work together.

## Internal: Voluntary

- **Group Norms**:

- Chose WhatsApp as the primary communication app after Slack.
- Created demos and documented meetings to help members catch up.
- Set reminders, created polls, and used the GitHub project board to share
agendas and address issues/tasks.

- **Code Review Process**:

The team follows the instructor's suggestions and adheres to a standard code
review checklist. This ensures a consistent approach to coding and builds
good habits for the future.

- **Coding Style**:

The team agrees on a simple and testable coding style that all members can
review and understand.

- **Accountability**:

When a team member realizes they will not be available for a meeting, they
inform the others. This fosters accountability and trust among team members.
Loading