Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Assignment Topic: A Design Proposal of Software to Support Operation of a Driverless Car


Scenario: As a Software Engineer, you are given the role of designing the software which supports the operation of a self-driving car. In your research around the capabilities of self-driving cars, you can search for keywords that include autonomous vehicle, driverless car, robotic car.

You are required to identify three operations that you wish to support in your software and provision capability for them through the use of an object-oriented Python program. The system should support the ability for a customer to interact with the system through a front-end.

Running in the system back-end should be a capability that simulates the generation and collection of data attributes that represent the wider environment within which the driverless car is operating.

You can view the design document here: Design Document

Learning Objectives

  • Prepare UML models to support the object oriented design process.
  • Implement data search algorithms to process stored data in the most efficient approaches.

Reflection

This was a very interesting assignment, I had to do a lot of research on the topic of driverless cars and how they work. Choosing the 3 operations was quite difficult as one will have to manage the complexities of the chosen operation, I decided to go with the following operations:

  • Traffic Signal Detection
  • Object Detection
  • Lane Detection

Designing the UML Diagrams was a bit tricky, I got confused by the difference between Activity and State Machine Diagrams (evidenced by the feedback I received from this assignment) but looking back I should have taken the time to do more research.

UML Diagram Resources