Skip to content

Syllabus for the class #1

@dejanpan

Description

@dejanpan

@Ly0n sorry for being late, but this is my proposal for the first lecture of Autoware Class. LMK if it sounds OK.

Outline

The students will in this class learn three different things: a) the overview of the class to be unfolded, b) the development environment in which they will be able to reproduce the labs and c) the details of the methods needed to develop software for the safety critical systems.

Image

image

Syllabus

Part 1

  1. Class intro (Dejan)
    1. Teacher intro
    2. Autoware in a video: https://www.youtube.com/watch?v=kn2bIU_g0oY&feature=youtu.be
    3. Why are we offering this class
    4. What will the students learn
    5. How will the students learn
  2. Brief history of Autoware
  3. Walk through the syllabus
  4. Quick start - development environment
    1. HW prerequisites
    2. Install ADE
    3. Install ROS 2
    4. Install Autoware.Auto
    5. Run object detection demo
    6. Edit and compile your code

Part 2

  1. Development of complex and safety critical software - the theory (Tobias)
    1. Popular development models (V-model, Waterfall, Agile)
    2. Software architectures (e.g. separation of concerns)
    3. Community
    4. Communication
    5. Safety and Security: https://gitlab.com/autowarefoundation/autoware.auto/AutowareAuto/-/issues/206
  2. Development of complex and safety critical software - the practice
    1. Software development workflow in Autoware.Auto:
      1. https://autowarefoundation.gitlab.io/autoware.auto/AutowareAuto/cpp-development-process.html
      2. https://autowarefoundation.gitlab.io/autoware.auto/AutowareAuto/develop-in-a-fork.html
    2. Designs and Requirements: https://www.apex.ai/post/building-safe-algorithms-in-the-open-part-1-design
    3. Testing (Validation):
      1. Unit testing: https://autowarefoundation.gitlab.io/autoware.auto/AutowareAuto/how-to-write-tests-and-measure-coverage.html
      2. Integration testing: https://github.com/ros2/launch/tree/master/launch_testing#launch_testing and https://autowarefoundation.gitlab.io/autoware.auto/AutowareAuto/integration-testing.html
      3. Structural Code Coverage
    4. Static code analysis: https://autowarefoundation.gitlab.io/autoware.auto/AutowareAuto/how-to-write-tests-and-measure-coverage.html#how-to-write-tests-and-measure-coverage-static-code-analysis
    5. Testing (Verification): Planned for the future https://discourse.ros.org/uploads/short-url/yc1H3yPx3yw0QhH25NZYEAG6Xul.pdf
    6. DevOps: https://gitlab.com/autowarefoundation/autoware.auto/AutowareAuto/-/blob/master/.gitlab-ci.yml
  3. Conclusion and the next lecture

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions