Assignment#01-SampleSolutions (1)
pdf
keyboard_arrow_up
School
Carleton University *
*We aren’t endorsed by this school
Course
3120
Subject
Industrial Engineering
Date
Feb 20, 2024
Type
Pages
10
Uploaded by CaptainMusicBoar31
SYSC 3120: Software Requirements Engineering
Module 1 - Assignment
Fall 2023
Dr. N. Kahani
Carleton University
Department of Systems and Computer Engineering
Posted: September 11, 2023
Due: September 27, 2023
Due on Wednesday, September 27, 2023 by 11:55PM
This module assignment contains 10 pages (including this cover page) and 5 problems. You are responsible
for ensuring that your copy of the assignment is complete. Bring any discrepancy to the attention of your
instructor.
Special Instructions:
1.
Solve as many problems as you can.
2. Start early, as this module assignment can be much more time-consuming than you might initially
think!
3. The burden of communication is upon you. Solutions not properly explained will not be considered
correct. Part of proper communication is the appearance and layout. If we cannot “decode” what you
wrote, we cannot grade it as a correct solution.
4. You may consult outside sources, such as textbooks, but
any use
of
any source
must
be documented
in the assignment solutions.
5. You are permitted to discuss
general aspects
of the problem sets with other students in the class, but
you must hand in your own copy of the solutions.
6. Your module assignment solutions are due by 11:55PM on the due date and must be submitted on
Brightspace
.
•
Late assignments will be graded with a late penalty of 10% of the full grade of the assignment
per day
up to 48 hours past the deadline
.
7. You are responsible for ensuring that your module assignment is submitted correctly and without
corruption.
Problem
1
2
3
4
5
Total
Points:
6
8
12
8
8
42
Page 1 of 10
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
The purpose of this module assignment is to exercise your understanding of functional and non-functional
requirements and writing high-quality requirements. It aims to assess your ability to identify and explain
the different types of requirements and to document high-quality requirements that describe the visible
behaviour of a software system.
The following example, which describes two safety features for a car, illustrates the kind of informal
specification that a software or system engineer must translate into a computable form.
Note that the
SafeCar
described below is simplified significantly for this assignment.
SafeCar
: A Safer Car for a Car Manufacturing Company
A car manufacturing company (
CarCompany
) plans to enhance the safety of one of its top-selling car models,
the MX. This improvement will occur in four phases, with the first phase described in this document. During
Phase 1, the company will prioritize the development of Adaptive Cruise Control (ACC) and Collision
Warning (CW) systems. This is necessary because the current MX model only offers basic cruise control,
and the absence of these two features can lead to customer dissatisfaction and potential market losses.
Therefore, adding ACC and CW is a strategic decision aimed at retaining current customers and attracting
new ones. The company aims to develop the new features in a cost-effective way, and allows customers to
opt out from the new features if they choose to do so. This flexibility is essential for the satisfaction of both
existing and potential customers.
The company has allocated 50 million CAD to assemble a team of mechanical, electrical, and software
engineers for the rapid development of these features.
Both features must seamlessly integrate into the
existing system, which runs on an Electronic Controller Unit (ECU) equipped with Automotive Grade Linux.
The integration should not require any enhancements to the ECU’s specifications, such as in memory, ports,
or CPU. Both ACC and CW will rely on radar sensors and cameras.
More specifically, ACC should use
a long-range radar to automatically observe the road ahead, control the vehicle’s speed, and maintain a
safe following distance, with detection capabilities extending up to 200 meters ahead.
It will incorporate
intelligent throttle control logic to ensure smooth acceleration and deceleration while consistently tracking
and matching the driver’s selected target speed.
Also, it will enable drivers to effortlessly manage ACC
through an intuitive user interface. This interface should allow users to activate or deactivate the features
using a dedicated SET button, and adjust speeds easily through dedicated acceleration and deceleration
buttons.
By default, the ACC should be disabled when the car starts.
Pressing the SET button, while driving
forward at a speed greater than 40 KPH, should activate ACC. ACC should maintain or decrease the car
speed by requesting no throttle instead of braking. ACC should accelerate when the current speed is less
than the target speed, and the target vehicle is farther than 50 meters from the vehicle.
Depressing the
brake or pressing the SET button again shall cause ACC to be disabled.
An error event at any time,
when ACC is on, should cause the ACC to fail, and it should remain in the failed state until the vehicle is
restarted. If the Accel/Decs button is held while the target speed is less than 100 KPH, the target speed is
incremented/decreased for every second that the button is being held.
CW feature is supposed to assist drivers by helping to prevent or mitigate accidents. It should combine long
and short-range radars with a video camera to monitor the road ahead (including part of the side-fronts).
In the event that a vehicle or obstacle approaches, CW should notify the driver of a possible collision
through proper audible or visual alerts, and can also provide braking force as soon as an imminent collision
is detected.
The CW feature is disabled until the driver turns it on by pressing the CW On/Off button.
Once the vehicle’s speed exceeds 25 KPH while driving forward, the feature is engaged and warns the driver
and/or takes action if a possible threat is encountered. To detect threats, CW should be integrated with
an external pre-processing unit that computes data from the sensors/cameras, and converts it into a threat
input for CW. The threat input could be either: None, Mild, Near, or Imminent. If a threat input is received,
one of the following actions should be taken:
•
If no threat is detected, or the obstacle ceases to be present, no warning and no braking intervention
will be made.
Page 2 of 10
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
•
In the case of a mild threat, a mild threat warning will be output with no braking intervention.
•
In the case of a near threat, a near threat warning will be output, and soft braking will occur to slow
the vehicle, and avoid the potential collision (i.e., Brake = 30%). The reaction should be taken in less
than a second from the time the threat is detected.
•
In the case of an imminent threat, an imminent threat warning will be output, and full-force braking
will occur to mitigate the collision as much as possible (i.e., Brake = 80%, which is called halt mode).
The reaction should be taken ASAP.
If the vehicle is brought to the halt mode, it will be held at the halt until the driver presses on the brake
pedal beyond a threshold (the brake pedal threshold is set to 10 percent depression) to resume control of
the vehicle. The driver acceleration pedal that exceeds 35 percent depression should override CW decisions.
Releasing the acceleration pedal to less than 35 percent depression with CW Enabled sends CW back to the
active mode (CW will not be overridden by the driver decision). An Error event at any time when CW is on
will cause a transition to the failed mode that cannot be recovered from until the vehicle is restarted. Note
that CW and ACC also need to interact with each other, and when both features are activated, the ACC
decision should be overridden by the CW decision, if there is a conflict between two features.
CarCompany’s management places high importance on the security, accessibility, cost-effectiveness, and
safety aspects of these features.
As a result, the development process should adhere to ISO/IEC/IEEE
standards whenever necessary. Additionally, the system must align with relevant privacy legislation. Moreover,
there’s a pressing need to finish the development ASAP, to ensure inclusion of the features in the upcoming
MX model, scheduled for launch within the next 8 months.
*Important Notes*
1. The primary challenge in this module assignment lies in identifying the relevant details from an informal
description of a system. Often software engineers are provided with a messy collection of details for a
problem and they must make decisions about which details are important and which are not. They need
to make important judgements to decompose complex problems into a form that is comprehensible by
a variety of system stakeholders. In practice, there is no person that is able to tell a software engineer
precisely how many requirements, operations, and stakeholders there are, or should be, for a particular
system. For this reason, a software engineer needs to be systematic in their approach, and develop a
system that captures the most important details that must be conveyed to the relevant stakeholders.
2. For this module assignment, you may be required to think beyond the description provided above.
If you feel it necessary to make assumptions regarding missing information, or to clarify the stated
requirements, please ensure that your assumptions are clearly and properly documented, and that they
are reasonable for the given system.
Submission Requirements
Please read the following instructions very carefully and follow them precisely before submitting your assignment!
The following items are required for a complete assignment submission:
1.
PDF Module Assignment Solutions
: Submit a detailed document that carefully and concisely
describes your solutions to the problems in this module assignment. Please ensure that your document
is well-organized and that the problem numbers and sub-parts are clearly provided to facilitate the
grading of your solutions.
Grading Notes
An important part of this module assignment is following instructions. As such, the following grade
penalties
will be applied for failure to comply with the submission requirements outlined above:
Page 3 of 10
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
•
Failure to submit the Module Assignment Solutions will result in a grade of
0
for the assignment.
•
Failure to submit the Module Assignment Solutions in the required format (PDF) will result in
deduction of
5%
of the full grade of the assignment.
Page 4 of 10
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
Problem 1
[6 points]
With respect to the
SafeCar
system description on Page
2
:
(a) [2 points] Identify the System-as-is.
Solution:
Award 2 points for identifying reasonable problems with the existing system.
The current MX model falls short in offering sufficient support for critical safety features such
as Collision Warning (CW) and Adaptive Cruise Control (ACC), placing it at risk of customer
dissatisfaction and potential market losses.
These features have become standard in most
modern vehicles, and their absence in the MX model could adversely affect its appeal and
competitiveness within the automotive market.
(b) [2 points] Identify the System-to-be.
Solution:
Award 2 points for identifying suitable objectives, opportunities, or alternatives for
improving the existing system.
The new model will provide CW and ACC features to customers at a reasonable price, while
allowing them to opt out of the features if they wish.
The two features are provided by a
system composed of hardware (sensors and cameras) and software components that are mainly
responsible for providing a safe controller for these features. More specifically, ACC receives
inputs from the sensors, and based on their input, maintains a safe distance from the target
vehicle by sending the appropriate input to acceleration and brakes.
Similarly, CW receives
threat level data and applies a safe control logic to prevent or mitigate accidents by providing
alerts and applying brakes if required.
(c) [2 points] Identify the Software-to-be.
Solution:
Award 2 points for identifying the specific functionality of the software component
of the system-to-be.
The system-to-be is intended to improve the safety of the MX model, by providing ACC and
CW features. ACC relies on inputs from long-range radars to automatically adjust a vehicle’s
speed to maintain a safe following distance from the vehicle ahead, without requiring constant
manual acceleration and braking by the driver. Additionally, the CW feature alerts the driver
with visual and audible warnings if it detects an impending collision with another vehicle or
obstacle, helping to prevent accidents by providing timely alerts for evasive actions.
Page 5 of 10
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
Problem 2
[8 points]
With respect to the
SafeCar
description on Page
2
, identify
at least eight (8)
functional requirements
of the system-to-be. Remember that some of the functional requirements may not necessarily be stated
explicitly in the provided system description!
Because you may have to add missing information or
clarify requirements, try to always make reasonable assumptions.
Solution:
Award 1 point for each correctly identified functional requirement. Students may have
identified additional or alternative functional requirements beyond those listed below. Points should
be awarded for any functional requirement that is reasonable for the given system.
Some possible functional requirements include the following:
1. The system shall activate ACC by pressing the SET button while driving forward at a speed
greater than 40 KPH.
2. When ACC is enabled, the system shall maintain or decrease the car’s speed by requesting no
throttle instead of braking.
3. When ACC is enable, the system shall accelerate the car when the current speed is less than
the target speed, and the vehicle ahead is farther than 50 meters from the car.
4. When ACC is enabled, if ACC fails due to an an error, the system shall keep ACC in the failed
state until the car is restarted.
5. When ACC is enabled, if the Accel/Decs button is held while the target speed is less than 100
KPH, the system shall increment/decrease the target speed for every second until the button
is held.
6. When CW is enabled and a mild threat is detected, the system shall give a mild threat warning.
7. When CW is enabled and a near threat is detected, the system shall give a near threat warning
and apply soft braking (i.e., Brake = 30%).
8. When CW is enabled and an imminent threat is detected, the system shall give an imminent
threat warning and apply full-force braking (i.e., Brake = 80%).
Page 6 of 10
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
Problem 3
[12 points]
With respect to the
SafeCar
description on Page
2
, identify
two
non-functional requirements that are
reasonable for each of the following categories. Remember that some of the non-functional requirements
may not necessarily be stated explicitly in the provided system description! Because you may have to
add missing information or clarify requirements, try to always make reasonable assumptions.
(a) [2 points] Interface Requirements
Solution:
Award 1 point for each correctly identified requirement. Students may have identified
additional or alternative requirements beyond those listed below. Points should be awarded for
any correctly identified requirement that is reasonable for the given system.
Possible interface requirements may include:
•
The system shall integrate with an external pre-processing unit that computes data from
the sensors/cameras, and converts it into a threat input for CW.
•
The system shall interact with users through buttons to control the CW and ACC features.
•
The system shall integrate with existing components to apply brakes and perform acceleration/deceleration.
(b) [2 points] Performance Requirements
Solution:
Award 1 point for each correctly identified requirement. Students may have identified
additional or alternative requirements beyond those listed below. Points should be awarded for
any correctly identified requirement that is reasonable for the given system.
Possible performance requirements may include:
•
The system shall add new safety features without using more than 1GB memory and 600
cycles of the CPU time.
•
The system shall react to an imminent threat in less than a millisecond.
•
The system shall react to a near threat in less than a second.
(c) [2 points] Accuracy Requirements
Solution:
Award 1 point for each correctly identified requirement. Students may have identified
additional or alternative requirements beyond those listed below. Points should be awarded for
any correctly identified requirement that is reasonable for the given system.
Possible accuracy requirements may include:
•
When CW is enabled, the system shall warn the driver and take actions only based on
threats when the vehicle’s speed exceeds 25 KPH while driving forward.
•
When ACC is enabled, the system shall accelerate the vehicle when the current speed
is less than the target speed, and the target vehicle is farther than 50 meters from the
vehicle.
Page 7 of 10
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
(d) [2 points] Architectural Requirements
Solution:
Award 1 point for each correctly identified requirement. Students may have identified
additional or alternative requirements beyond those listed below. Points should be awarded for
any correctly identified requirement that is reasonable for the given system.
Possible architectural requirements may include:
•
The system shall run on Automotive Grade Linux.
•
The system shall run on an ECU and use long or short-range sensors.
(e) [2 points] Compliance Requirements
Solution:
Award 1 point for each correctly identified requirement. Students may have identified
additional or alternative requirements beyond those listed below. Points should be awarded for
any correctly identified requirement that is reasonable for the given system.
Possible compliance requirements may include:
•
The system shall comply with relevant privacy legislation.
•
The system shall comply with ISO/IEC/IEEE standards.
(f) [2 points] Development Requirements
Solution:
Award 1 point for each correctly identified requirement. Students may have identified
additional or alternative requirements beyond those listed below. Points should be awarded for
any correctly identified requirement that is reasonable for the given system.
Possible development requirements may include:
•
The cost of developing the new system shall not exceed
$50
M
.
•
The system shall be delivered within the next 8 months.
Problem 4
[8 points]
Consider the
SafeCar
description started on Page
2
stating some of the system requirements. Referring
to the guidelines for writing high-quality requirements discussed in Lecture 1.4, list as many problems
as you can.
NOTE
: Although the description is rather short, do not rush! Read it over and over, many times, and
identify statements that are not verifiable, vague, ambiguous, incomplete, missing, lacking metrics, etc.
There are at least 8 to 10 problems in the stated requirements.
Solution:
Award 1 point for each identified problem with the requirements. Student are expected
to identify at least 8 problems.
Students may have identified additional or alternative problems
beyond those listed below.
Points should be awarded for any problem that is reasonable for the
given system.
Some possible problems with the requirements include the following:
1. “should not require any enhancements to the ECU’s specifications such as memory, ports, or
CPU.”
→
ambiguous; memory, ports, or CPU need to be specified clearly.
Page 8 of 10
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
2. “It will incorporate intelligent throttle control logic to ensure smooth acceleration and deceleration.”
→
not measurable; what does ‘smooth’ mean here?
3. “it will enable drivers to effortlessly manage ACC through an intuitive user interface.”
→
it is
not clear what ‘effortless’ means in this context. Also, ‘intuitive’ is subjective and needs to be
clearly explained.
4. “as much as possible (i.e., Brake = 80%, which is called halt mode). The reaction should be
taken ASAP.”
→
‘ASAP’ is not measurable.
5. “Additionally, the system must align with relevant privacy legislation.”
→
vague; What is the
relevant privacy legislation?
6. “Moreover, there’s a pressing need to finish the development ASAP to ensure inclusion ...”
→
not measurable, ambiguous; what does ‘ASAP’ mean here?
7. “As a result, the development process should adhere to ISO/IEC/IEEE standards whenever
necessary”
→
vague; what are the exact standards?
8. “CW should notify the driver of a possible collision through a proper audible or visual alerts”
→
ambiguous; the audible and visual need to be explained.
Students may have identified additional problems beyond those listed above.
Page 9 of 10
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
SYSC 3120 — Module 1 -
Assignment
Due Date: September 27, 2023
Problem 5
[8 points]
Rewrite each of the statements of requirements of the
SafeCar
description from Problem 4, solving each
of the problems you have found. Use the standard form for writing requirement statements, discussed
in Lecture 1.4. Because you will have to add missing information or clarify requirements, try to always
make reasonable assumptions.
Solution:
Award 1 point for each requirement statement that is written in the standard form
and addresses the identified problems in Problem 4.
Award only 0.5 points for each requirement
statement that is not written in the standard form, but addresses the identified problems in Problem
4.
Some possible restatements of the requirements may include the following:
1. “should not require any enhancements to the ECU’s specifications such as memory, ports, or
CPU.”
→
The addition of new features shall not require more than 1GB memory, and 600
CPU cycles per second.
2. “It will incorporate intelligent throttle control logic to ensure smooth acceleration and deceleration.”
→
The system shall not accelerate or decelerate the speed of the car suddenly, i.e., by more
than 5 meters per second.
3. “it will enable drivers to effortlessly manage ACC through an intuitive user interface.”
→
The system shall enable drivers to manage ACC by using two buttons (e.g., SET button, and
Accel/Decs button) that will be placed, for example, on the vehicle’s steering wheel.
4. “ as much as possible (i.e., Brake = 80%, which is called halt mode). The reaction should be
taken ASAP. ”
→
The system shall take the reaction in less than 1 millisecond.
5. “Additionally, the system must align with relevant privacy legislation.”
→
The system shall
comply with Personal Information Protection and Electronic Documents Act (PIPEDA), and
Canada’s Anti-Spam Legislation (CASL) act of Canada.
6. “Moreover, there’s a pressing need to finish the development ASAP to ensure inclusion
....
”
→
The development team shall finish the system development within 6 months (for example) to
ensure its inclusion.
7. “As a result, the development process should adhere to ISO/IEC/IEEE standards whenever
necessary”
→
As a result, the development process shall adhere to ISO 26262 and ISO 21434;
the main safety standards.
8. “CW should notify the driver of a possible collision through a proper audible or visual alerts ”
→
The CW feature shall notify the driver by displaying text on the car display in three colors:
green, yellow, and red, representing three different threat levels. Also, it shall use three types
of sounds (Beeping Patterns, Audible Voice Alerts, Tones) to ensure the driver notices the
warnings.
Students may have identified additional problems beyond those listed above.
END OF MODULE ASSIGNMENT
Page 10 of 10