Team Collaborative Workflow and Modular System Development Guide


Syllabus

The goal of this workshop is designed to comprehensively address the foundational elements required for successful, large-scale, and collaborative development in integrated hardware and software systems. The primary objective is to demonstrate methods for enabling multiple team members to work simultaneously without generating conflicts, a goal achieved through rigorous adherence to modern version control and environment standardization. Students will gain an in-depth understanding of the inherent complexity in hardware and software integration, which involves managing diverse data streams, real-time constraints, and varying hardware specifications. This understanding is coupled with intensive, practical training on the essential software tools necessary for establishing and utilizing a standardized development environment.

The seminar structure centers on mastering the following core technologies: Git and GitHub are covered extensively, focusing on advanced branching strategies like Git Flow or Trunk-Based Development, pull request (PR) workflows, and manual conflict resolution, which directly supports simultaneous coding efforts. WSL2 (Windows Subsystem for Linux 2) is introduced as the foundational layer to ensure that all developers, regardless of their host OS, operate within a consistent Linux environment, eliminating platform-specific bugs. This consistency is further enforced by Docker, which is utilized to containerize the entire development toolchain, guaranteeing that every team member, and ultimately the deployment target, runs the exact same dependencies and configurations. VS Code is taught not just as an editor, but as an integrated development environment leveraged with its Remote Development features (specifically Remote – Containers) to allow students to code directly within the standardized Docker environment. For managing the software side of hardware integration, the course heavily features ROS2 Robotics Operating System 2, covering its distributed architecture—nodes, topics, and DDS—as the critical middleware for managing the communication complexity between perception algorithms and real-world hardware. Finally, Rhino and Grasshopper are included to address the integration challenges often encountered in robotic fabrication or custom system design, demonstrating how code logic can be seamlessly integrated into parametric geometric modeling pipelines. Mastery of this tool stack ensures that students can efficiently collaborate while confidently navigating the technical challenges of developing robust, integrated robotic systems.

 

Learning Objectives

At course completion the student will:
● Establish and Manage Collaborative Codebases
● Standardize Development Environments. Utilize WSL2 to ensure all development teams operate within a consistent Linux environment and leverage Docker to create, share, and deploy standardized, containerized development images, thereby guaranteeing dependency parity between development and deployment stages.
● Create and integrate specialized code components for geometric modeling and parametric design using Rhino and Grasshopper, demonstrating the ability to bridge algorithmic logic with physical or digital design constraints.
● Identify, diagnose, and resolve common issues arising from the inherent complexity of integrating diverse software components (e.g., operating systems, middleware, and application code) with physical hardware interfaces and sensors.
● Understand the distributed architecture of ROS2 (Robotics Operating System 2), implementing key communication patterns (Nodes, Topics, Services) to effectively manage the complex, real-time data flow and control logic required for hardware integration in perception projects.


Faculty


Faculty Assistants


Projects from this course

Workshop 2.1 – AIRFLIP

In the following blog post, we will analyse the development of the concept of our project carried out in Workshop 2.1. Team Collaborative Workflow and Modular System Development Guide, in which a Rotatory Gantry structure is proposed for the flip-type movement of a robotic arm. AIRFLIP – Rotary Gantry System for Small-Scale Cobots Overview The … Read more

Workshop 2.1 – Flip Bottle Challenge

This project was developed within the framework of MRAC Workshop 2.1: Team Collaborative Workflow and Modular System Development. The workshop focuses on learning, internalizing, and applying collaborative software development practices using Git and GitHub through the development of a modular robotic system. In this context, the group was tasked with designing and implementing a robotic … Read more