Overview
Engineering Design 3 is a team-based project requiring 5-6 members from different engineering programs. Effective teamwork is crucial for success and is part of your assessment. This guide helps you establish productive team dynamics from day one.Team Formation
Team Size and Composition
- Size: 5-6 members per team
- Diversity: Members from different programs (mechanical, electrical, software, etc.)
- Benefit: Each member brings unique skills and perspectives
Finding Team Members
Attend First Week Classes
Most teams form during the first week. Introduce yourself and your strengths.
Skills Assessment
Share your skills openly:
- Programming (C++, Python, MATLAB)
- CAD/mechanical design
- Electronics/PCB design
- Linux/ROS2 experience
- Project management
Team Contract
A team contract is a required deliverable in your project proposal. It establishes ground rules and expectations.Essential Elements
Your team contract should include:1. Meeting Schedule
1. Meeting Schedule
Mandatory:
- Regular Meeting Time: Fixed weekly schedule (e.g., Friday 1:30 PM)
- Duration: Minimum 30 minutes
- Location: Specify (on-campus, online, hybrid)
- Attendance Policy: Consequences for missing meetings
2. Communication Protocol
2. Communication Protocol
Define:
- Primary communication channel (Discord, WhatsApp, Slack, Teams)
- Expected response time (e.g., within 24 hours)
- Emergency contact method
- File sharing platform (Google Drive, GitHub, OneDrive)
3. Participation Requirements
3. Participation Requirements
Each member must:
- Verbally contribute at least 5 minutes during meetings
- Present current work, challenges, and upcoming tasks
- Complete assigned tasks by agreed deadlines
- Review and provide feedback on others’ work
4. Task Distribution
4. Task Distribution
Guidelines:
- Tasks must be split fairly among members
- Each person should have independent and collaborative tasks
- Responsibilities should match skills when possible
- Workload should be roughly equal
- Project Manager: Coordinates meetings, tracks deadlines
- Mechanical Lead: CAD design, 3D printing, assembly
- Electronics Lead: PCB design, wiring, power management
- Embedded Systems Lead: ESP32 programming, PID control
- ROS2 Lead (2 people): ROS2 setup, SLAM, navigation
- Documentation Lead: Report writing, video editing
5. Decision Making
5. Decision Making
Define how decisions are made:
- Consensus (everyone agrees)
- Majority vote (50%+ agreement)
- Lead decision with team input
- Escalation to instructor for deadlock
6. Conflict Resolution
6. Conflict Resolution
Process:
- Direct communication between involved parties
- Team discussion during meeting
- Mediation by project manager
- Escalation to instructor during office hours
7. Consequences for Non-Compliance
7. Consequences for Non-Compliance
Define penalties for:
- Missing meetings without notice
- Not completing assigned tasks
- Poor quality work
- Lack of communication
Important: Consequences must be reasonable and fair. The goal is accountability, not punishment.
8. Signatures and Dates
8. Signatures and Dates
Required:
- All team members must sign and date the contract
- Include in project proposal appendix
- Refer to contract when issues arise
Sample Team Contract Template
Meeting Best Practices
Before the Meeting
Set Agenda
Share meeting agenda 24 hours before
- Topics to discuss
- Decisions needed
- Presentations required
Prepare Updates
Each member prepares:
- What I completed since last meeting
- Current challenges/blockers
- Next tasks and timeline
During the Meeting
Assign Roles
- Facilitator: Keeps meeting on track
- Timekeeper: Ensures we stay on schedule
- Note-taker: Records minutes
- Rotate these roles each week
Follow Structure
- Check-in (5 min): Quick round table
- Updates (15 min): Everyone shares progress
- Discussion (10 min): Solve problems together
- Action items (5 min): Assign next tasks
- Next meeting (2 min): Confirm time/place
After the Meeting
Distribute Minutes
Send meeting notes within 24 hours including:
- Attendees
- Key decisions made
- Action items with assigned owners and deadlines
- Next meeting time
Common Team Problems and Solutions
Problem: Team member not contributing
Problem: Team member not contributing
Signs:
- Missing meetings repeatedly
- Not completing assigned tasks
- No communication or updates
- Private conversation: Ask if they’re facing challenges (personal, workload, understanding)
- Redistribute tasks: Maybe task doesn’t match their skills
- Set clear deadlines: Specific, achievable milestones
- Document issues: Keep meeting minutes showing pattern
- Instructor consultation: As last resort during office hours
Problem: Disagreement on technical approach
Problem: Disagreement on technical approach
Example: Team split on using Arduino IDE vs VSCode/PlatformIOSolutions:
- List pros/cons: Create comparison table
- Prototype both: Quick test with each approach
- Expert input: Ask instructor or tutor during tutorial
- Vote: If no clear winner, use majority vote
- Document decision: Record why choice was made
Problem: Unequal workload distribution
Problem: Unequal workload distribution
Signs:
- Some members working 10+ hours, others <2 hours
- Resentment building in team
- Quality suffering due to overload
- Track time: Use simple time log for 1-2 weeks
- Visualize work: Create task board showing who’s doing what
- Rebalance: Redistribute tasks mid-project
- Parallel work: Break large tasks into parallel subtasks
- Skills training: Help less experienced members upskill
Problem: Poor communication
Problem: Poor communication
Signs:
- Missed deadlines due to misunderstanding
- Duplicate work
- Surprises during meetings
- Structured updates: Daily/twice-weekly async updates in channel
- Shared documents: Living Google Doc with current status
- Git commits: Descriptive commit messages
- Quick standups: 5-min sync before work sessions
- Over-communicate: Better to share too much than too little
Problem: Last-minute rushes
Problem: Last-minute rushes
Signs:
- Working all night before deadlines
- Rushed, low-quality work
- Stress and burnout
- Internal deadlines: Set team deadlines 1 week before official
- Incremental progress: Small weekly milestones
- Buffer time: Account for unexpected issues
- Early integration: Don’t wait until last minute to combine subsystems
- Start early: Order components and begin work immediately
Task Distribution Strategies
Work Package Assignment
Assign work packages based on skills and interest:| Work Package | Recommended Skills | Team Members |
|---|---|---|
| WP1: MATLAB Simulation | MATLAB, Math, Kinematics | 1-2 members |
| WP2: CAD Design | Mechanical design, 3D modeling | 1-2 members |
| WP2: PCB Design | Electronics, circuit design | 1 member |
| WP3: Embedded Control | C/C++, microcontrollers | 1-2 members |
| WP4: ROS2 Setup & URDF | Linux, Python, XML | 1 member |
| WP4: ROS2 Navigation | ROS2, algorithms, Python/C++ | 2 members |
| WP5: Integration | Everyone (collaborative) | All members |
| Documentation & Reports | Strong writing, organization | 1-2 members + reviews from all |
Overlap is good! Two people working on complex work packages (WP4) provides redundancy and knowledge sharing.
Parallel vs Sequential Work
Some tasks can be done in parallel, others must be sequential: Parallel (Weeks 1-6):- Person A: MATLAB simulation (WP1)
- Person B: CAD design (WP2)
- Person C: PCB design (WP2)
- Person D: ESP32 environment setup (WP3)
- Person E: ROS2 environment setup (WP4)
- Hardware must be built before testing
- ROS2 packages build on each other (URDF → Control → Localization → SLAM → Nav)
- Integration requires all subsystems ready
Collaboration Tools
Recommended Toolstack
Communication
Discord (recommended) or Microsoft Teams
- Channels for each work package
- File sharing
- Voice/video calls
- Screen sharing
Version Control
GitHub (required)
- Code repositories
- Version history
- Branching for features
- Pull request reviews
Documentation
Google Docs or Overleaf (LaTeX)
- Collaborative report writing
- Real-time editing
- Comment and suggestion mode
Task Management
Trello, Notion, or GitHub Projects
- Kanban boards
- Task assignments
- Deadline tracking
File Sharing
Google Drive or OneDrive
- Large files (CAD, videos)
- Datasheets and references
- Meeting minutes
Scheduling
Google Calendar or When2Meet
- Shared team calendar
- Meeting scheduling
- Deadline reminders
Git Workflow for Teams
Branching Strategy
main: Stable, working codedevelop: Integration branchfeature/motor-control: Individual featuresfix/encoder-bug: Bug fixes
Commit Best Practices
- Frequent commits (every significant change)
- Descriptive messages: “Add PID controller for left motor” not “Update code”
- Push regularly to back up work
Weekly Meeting Checklist
Use this template for your weekly meetings:Instructor Support
When to contact the instructor:Tutorial Sessions
Tutorial Sessions
Purpose: Technical questions and team mediation
- Ask technical questions about work packages
- Request objective feedback on team dynamics
- Get guidance on design decisions
- Other teams present can provide additional perspectives
Office Hours
Office Hours
Purpose: Private discussions and conflict resolution
- Escalate serious team conflicts
- Discuss individual grade concerns
- Get personalized project advice
- Issues logged in meeting minutes
Email
Purpose: Administrative questions
- Deadline extensions (with valid reason)
- Clarification on assignment requirements
- Submission issues