# Group Dynamics Worksheet
## Team Members:
### Andres Ibarra
My leadership style (**bold** one):
**Analyst & Architect** / Driver / Spontaneous Motivator / Relationship Master
What technical niche would you like to fill?
(2-5 bullets)
* I want to learn new technologies, so I want to volunteer to learn new frameworks and tools to solve problems
* I'm interested in learning about AI, so would be interested in helping with the search functionality
* I want to learn more about web development, so would love to help set up the components
* I want to learn about databases and security, so would love to help design that part of the project
What personal niche would you like to fill?
(1-3 bullets)
* I want to help remind people to get their stuff done
* I want to be one of the people who checks in on their teammates to see how they're doing
### Eric Leung
My leadership style (**bold** one):
Analyst & Architect / Driver / Spontaneous Motivator / Relationship Master
What technical niche would you like to fill?
(2-5 bullets)
* TODO: Write here...
What personal niche would you like to fill?
(1-3 bullets)
* TODO: Write here...
### Miles Harris
My leadership style (**bold** one):
Analyst & Architect / **Driver** / Spontaneous Motivator / Relationship Master
What technical niche would you like to fill?
(2-5 bullets)
* I'm interested in database work and designing efficient systems so I want to take the lead on information storage/database design.
* I enjoy fitting pieces of a project together and am happy to work on various integrations between our components or external services.
What personal niche would you like to fill?
(1-3 bullets)
* I'm good at looking at the big picture and making large-scale design decisions, so I want to help the group make these choices in a timely manner.
* I'm coming off a year of work where I managed a large team with very concrete projects, deadlines, etc. I gave good project management skills and want to leverage those so that we meet our deadlines and feature goals.
### Theory Millar
My leadership style (**bold** one):
Analyst & Architect / Driver / Spontaneous Motivator / Relationship Master
What technical niche would you like to fill?
(2-5 bullets)
* I hate using applications that are poorly designed from a UX standpoint, I think this helps me make better UX design choices
* I love finding creative ways to break other people's code. I can spearhead the bugtracking for our project
What personal niche would you like to fill?
(1-3 bullets)
* I think I'm decent at conflict resolution and can usually make people laugh about a disagreement after a few minutes.
* I usually do my best work when I'm alone. I see myself working on segments of the project and committing them to the repo while not necessarily sitting next to someone else in the group.
### Jason Sinning
My leadership style (**bold** one):
**Analyst & Architect** / Driver / Spontaneous Motivator / Relationship Master
What technical niche would you like to fill?
(2-5 bullets)
* I'd like to design the front-end to optimize workflow and simplify UX since I have seen Epic first-hand
* I'm fairly good at debugging and can track down bugs throughout the app
* I'm interested in AI/ML and would be interested in implementing the search functionality
What personal niche would you like to fill?
(1-3 bullets)
* I'd like to be somewhat of an architect in UX
* I'm not a ghost, but I like to just contribute to the repo whenever I have free time
### James Graft
My leadership style (**bold** one):
Analyst & Architect / Driver / Spontaneous Motivator / **Relationship Master**
What technical niche would you like to fill?
(2-5 bullets)
* I'd like to bring in personal experience w Epic as well as some knowledge about what people really want in an EMR system.
* I can help with the infrastructure of the database as well as the construction of features using react and currently existing libraries.
What personal niche would you like to fill?
(1-3 bullets)
* I'd like to be an important member of the team and be able to see my positive impact on our final product by the end of winter
* I'd like to help our team get to know each other and enjoy the time we have together
## I. Communication
*You are required to spend at least 10 hours/week outside of class. Outline a general weekly meeting schedule with at least 1 time that everybody can make. That one meeting must include the entire team in the same room, in person. The rest of the 10 hours may be split into several sessions throughout the week. A nice tool for this is [when2meet](https://www.when2meet.com/).*
### Schedule
* Meet in person at 6:30 on Mondays- location dependent on day (CECS/Library). Aim to spend 1 hour per meeting. These will be our **all hands** meetings
* We will be sprint planning at these meetings
* Optional meeting Thursday at 6:30 to resolve issues that come up
* Check in asyncronously through Slack
* Otherwise meet as needed in smaller groups to work on components and functionalities
### Responsiveness
Team members should have slack notifications on, both on computers and mobile devices.
When you want to know if a message has been seen or not, say something like "react with X emote to confirm you've read this"
* React as such after reading
> We like this idea and will be sure to implement it
## II. Decision Making
### Group
*What types of decisions need to be discussed and approved by the entire group?*
* If a decision will affect other components, we expect group members to discuss with the entire group.
* Large-scale design and data flow will be discussed with the group
* Adding a new framework or technology
* Pushes and merges to main
* Weekly meetings (at least) will help us maintain a shared vision and goal for our product
### Individual
* Design decisions that only impact the component of the project that you are working on do not need to be cleared by the rest of the group
* Visual changes
* Decisions on how/when you want to do your work, unless the work you are doing is time-sensitive and completion of your component will enable others to begin work on other features.
* We will keep personal contributions for the week in separate branches to discretely distribute work
* We will check in to make sure that the files we are working on are being edited by us alone, whenever possible, so as to prevent confusing merges
## III. Conflict Resolution
There are three main types of conflict that tend to occur in group projects:
* **Creative differences**: disagreement on any decisions related to the product
* **Personal differences**: friction between people due to manner or words said
* **Ghosting**: consistent missed deadlines or lack of contribution
Your group should decide on a plan of action to deal with each type of conflict. There can be multiple levels to each plan. Involving the instructors can be part of the plan.
Try to be as specific as possible.
* A bad plan for Ghosting: “Talk to the person.” (too vague)
* A better plan for Ghosting: “Elect the team member who is closest with that person to check in with them one-on-one. Based on the conversation, reexamine the tasks currently on that person’s plate and revise if necessary. Affirm that they are coming to the next team meeting. At the next team meeting, every team member will make an effort to include the Ghoster in any team discussions.”
### Course of Action
#### Creative Differences
If creative differences occur, we will ask that at the next team meeting the two sides prepare explanations for the how and why of their pitch. Afterwards, the rest of the team will vote, and whoever's design or plan gets the most votes will be the one we proceed with.
In the case that we reach a tie, or one team member is unwilling to compromise, we will elect a mediator who is not involved with either side to help find a solution that both parties are pleased with.
#### Personal Differences
In the case of personal differences, we hope that one or both of the team members will first resolve is between themselves and amicably come to an understanding.
As this is often not the case, we will elect a mediator to talk to both parties. We will ask the mediator to talk to both parties separately, and ask the parties to express themselves using language that does not antagonize the other ("I" language). After that, if there is a more serious, underlying issue at hand that cannot be resolved to simple conflict resolution, they will raise it with the group to brainstorm solutions.
#### Ghosting
If one or more team members are not meeting expectations or ghosting the first thing we'll do is get the group member who is closest to them to reach out individually to avoid "slacking into the void". The goal will be to understand why they aren't able to do the work they've been assigned rather than to punish or shame them.
Based on what we find out from that, we will then reassign responsibilities to alleviate pressure. If necessary, we will have a group meeting at a time of the ghosters choosing to ensure they can make it.
If none of this works and it continues to be a problem, we will involve the professors and seek help on how to proceed.
The End!