Skip to content

Commit

Permalink
Merge pull request #8 from MIT-Emerging-Talent/constraints
Browse files Browse the repository at this point in the history
add constraints
  • Loading branch information
sashour82 authored Dec 27, 2024
2 parents be1b3ec + eb0eb53 commit 1dd1a29
Show file tree
Hide file tree
Showing 2 changed files with 74 additions and 27 deletions.
96 changes: 70 additions & 26 deletions collaboration/constraints.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,78 @@
<!-- this template is for inspiration, feel free to change it however you like! -->
# **Constraints**

# Constraints
Every project operates within a unique set of boundaries that define what is possible,
practical, and achievable. These constraints help shape the project’s scope, set
expectations, and guide decision-making throughout its lifecycle. By understanding
and defining these limitations early, we can establish a clear framework for what
the project can and cannot include.

Some boundaries around our project.
Constraints are not just obstacles; they can also be tools for innovation. When
used constructively, they push us to think critically and find creative solutions
within the defined boundaries. This document outlines both **external factors**
(which we cannot control) and **internal constraints** (both involuntary and voluntary)
that influence our approach. Together, these considerations will help us craft a
realistic and impactful project that meets its objectives efficiently and effectively.

## External
## **External Constraints** 🚧

<!--
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
- ...
-->
External constraints are limitations imposed by factors outside the team’s direct
control. These constraints shape the scope, timeline, and feasibility of the project,
requiring careful planning and adaptability. Key external constraints include:

## Internal: Involuntary
- **Internet Connectivity** 🌐: Unreliable or slow internet access can disrupt
- communication, research, and collaborative workflows, affecting project progress.
- **Power Outages** ⚡: Unpredictable power cuts can interrupt work, delay progress,
- and impact productivity, especially in locations without backup power.
- **Competing Workload** 📚: Team members juggling other responsibilities, such
as additional jobs or unrelated projects, can reduce the time and focus dedicated
to the current project.
- **Resource Availability** 🔧: Limited access to external tools, materials, or
technologies required for the project can create bottlenecks.

<!--
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
-->
## **Internal Constraints: Involuntary** 🔒

## Internal: Voluntary
Internal involuntary constraints arise from unavoidable limitations within the team
or organization. These constraints are inherent and require careful management to
ensure they do not hinder project success. Key involuntary constraints include:

<!--
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
-->
- **Time Availability** ⏳: Team members may have limited hours to dedicate to the
project due to fixed schedules, personal commitments, or overlapping responsibilities.
- **Varied Skill Sets** 🛠️: Differences in expertise or gaps in knowledge within
the team can create dependencies, requiring additional training or external support
to complete certain tasks.
- **Other Priorities** 🔄: Internal competing priorities, such as involvement in
other projects, deadlines, or other responsibilities, can reduce the focus and
effort allocated to this project.

Recognizing these constraints helps the team set realistic goals, plan effectively,
and address challenges proactively to maintain productivity.

## **Internal Constraints: Voluntary** 💡

Voluntary internal constraints are self-imposed limitations set by the team to guide
the project and ensure quality, efficiency, and alignment with goals. These constraints
reflect deliberate decisions made to improve outcomes and maintain focus. Key voluntary
constraints include:

- **Time Management Rules** 🕒: Allocating specific working hours or limiting overtime
to maintain work-life balance and prevent burnout.
- **Skill Development Focus** 📈: Prioritizing tasks that align with team members’
learning goals or strengths to foster growth while ensuring quality output.
- **Project Scope Definition** 🎯: Deliberately narrowing the scope to focus on essential
features and deliverables, avoiding unnecessary complexity or scope creep.
- **Adherence to Standards** 📑: Committing to practices like clean coding, thorough
documentation, and consistent testing, as well as going through the code review checklist
to ensure quality and consistency throughout the project.

These constraints are designed to create a structured and sustainable workflow, enabling
the team to deliver a high-quality project while fostering creativity and collaboration.

## **Call to Action** 🚀

We encourage everyone to continuously evaluate the constraints that affect their
work and communicate any challenges or solutions as they arise. If you encounter
any
constraints that impact your ability to deliver, collaborate with the team to develop
a plan and overcome them and free to create an issue. Together, we can navigate
these challenges and ensure
the success of the project!
5 changes: 4 additions & 1 deletion collaboration/guide/0_repository_setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,10 @@ repository and configure it for collaboration:
[repository description](https://stackoverflow.com/questions/7757751/how-do-you-change-a-repository-description-on-github)
- Add or remove topics from your repository
- Update your main README with your group name and an initial overview of your
project. (You can change this as much as you want.)

project. (You can change this as much as you want.)


Check failure on line 21 in collaboration/guide/0_repository_setup.md

View workflow job for this annotation

GitHub Actions / md_formatting

Multiple consecutive blank lines [Expected: 1; Actual: 2]
- Under settings in your repository select:
- _Issues_
- _Projects_
Expand Down

0 comments on commit 1dd1a29

Please sign in to comment.