Overview
Description of tasks to be completed: You are required to carry out the following design task and
answer the associated questions below. Your design and answers may be based around material
presented during the module but should be complimented with wider research from relevant sources.
Your response should be no longer than 1000 words, less design diagrams, titles and references.
An autonomous vehicle is a vehicle equipped with technology that allows it to sense its environment
and operate without human intervention. Autonomous vehicles use a combination of sensors,
software, and actuators to navigate their environment. There are different levels of autonomy,
ranging from human assistance to full autonomy with no human input required. Autonomous vehicles
include land vehicles (cars, trucks, buses, trains), water vehicles (boats, ships, submarines), air
vehicles (airplanes, helicopters, drones), and space vehicles (rockets, spacecrafts). In this
coursework, you will select one type of autonomous vehicle system and carry out the following
design activities. Include the following headings as sections in your report.
System Description (10%)
Explain your system briefly from the end user perspective, including system functionalities and
performance requirements. Your description should be sufficient to identify the system boundary,
system environment interactions, stakeholders, and to extract requirements. An autonomous system
design is a large undertaking, so limit your system scope.
Software Requirement Specification (10%)
◆ Identify 5 user requirements, at least one of them should be a non-functional requirement. These
requirements are usually abstract and high-level, as the user perceives the system. Express these
requirements in an easy-to-understand format (natural language, structured natural language,
any UML diagram type). If you represent the requirements with use cases, you will usually need
to augment your diagrams with textual description, e.g., in a tabular format. Your functional
requirements could be related to sensing, perception, decision-making, communication, or any
interaction with the external environment.
◆ For each use case, represent potential threats/attacks using misuse cases. Augment your
diagrams with textual description.
◆ Expand the 5 user requirements into system requirements, by adding more details (remember
not to add implementation details). Express the system requirements in an appropriate format.
◆ Summarize your requirements in a table and give a unique ID to each requirement. For each
requirement, explain the technique(s) you are going to use to validate it.
System Modelling (40%)
Develop the following system models using appropriate UML diagrams. Your models should show
at least one security function that you decided to add based on misuse cases you developed:
◆ A context model, showing the other systems in the environment that interact with your system.
◆ An architectural design for your autonomous vehicle.
◆ A class diagram, showing identified classes and their relationships. For each class, specify the
attributes and functions. Limit your number of classes to 5-7, but count the classes related by
aggregation/composition relationship as one class.
◆ Select one class you defined in the previous task. Develop a state diagram showing all transitions
and function calls. The state diagram should be of moderate complexity, i.e., between 5-7 states.
◆ Select one function in a class and develop its activity diagram showing the flow of activities during
function execution.
◆ Develop two sequence diagrams:
□ First diagram shows an interaction scenario between system components.
□ Second diagram shows an interaction scenario between your system and external systems.
System Verification (10%)
Develop two test cases, extract one test case from the developed state diagram, and extract the
second test case from one sequence diagram.
Systems Engineering Support (20%)
Demonstrate how systems engineering methods and techniques can support/integrate with software
engineering by addressing the following points:
◆ Assess in which lifecycle stages it is particularly important for systems engineers to engage with
software engineers, and how the lifecycles of systems engineering and software engineering
might facilitate such engagement.
◆ Identify and discuss the cyber security risk of integrating software within the complex systems
and discuss how the systems engineering methods and techniques could improve the cyber
resilience.
References (5%)
You are encouraged to look for additional literature sources were appropriate to enhance your design
and report. You should include all references used at the end of the report under “References” or
“Bibliography” section. Use any citation style you like, but you need to be consistent. Also, references
need to be cited in the text where they are used, rather than at the end of the report only.
5% of the grade is allocated to the overall organization of the report, including report structure (table
of contents, section headings, figures, captions), logical flow of information, document formatting for
readability, and error-free language usage. Do not exceed the word limit by more than 10%.
Remember “A picture is worth a thousand words”. This is particularly true for engineers and computer
scientists.