Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

ACS233 Systems Engineering and Object Oriented Programming
Systems Engineering Project

For ACS233, you will have 6 assignments over semester 1 and 2 (3 assignments in each
semester), which you will work on within a (same) group. The assignments are as follows:
- 1. Requirements document 15%
- 2. Design document 15%
- 3. Implementation using C for Arduino 20%
- 4. Reliability 15%
- 5. UML class diagram 15%
- 6. Implementation using OOP C++ for Arduino 20%
In semester 1, your group is tasked with writing the requirements, designing and implementing
a burglar alarm system for a building. The implementation will be using an Arduino. You will
be following the systems engineering V-model.
In semester 2, techniques used in software engineering will be used to create a UML class
diagram and an object oriented program of the system. You will also be discussing the reliability
of your system- an important part of any system.
Traceability between the 6 assignments must be maintained. It may be necessary to
update the initial requirements document, and design document as you progress
through the project, and if so these documents will need to be resubmitted.
Throughout this project you will need to demonstrate project management skills, as well as
having the opportunity to write individual reflections and use WebPA to obtain individual marks
from group marks.
Your group is tasked with building a SMART burglar alarm system, following the systems
engineering V-model. The system has the following sensors and actuators:
• Keyboard for PIN/password protection (inside the building)
• Buzzer and red light to raise the alarm
• PIR motion sensor
• Magnetic window sensor
• Solenoid for unlocking a door
• Green light to indicate sensor activation/ successful unlocking of door
• A webcam for facial recognition
The final implementation will consist of real sensors and actuators controlled via an Arduino.
The SMART burglar alarm system must abide by the following constraints:
• The burglar alarm must be PIN controlled, and the PIN can be changed.
• There needs to be a limit on the number of times a PIN can be entered to de-activate
the system (ie, when a user is coming back to the building).
• The user wants the keypad to be located inside the building, and not outside (you need
to think about the implication of having the keyboard inside).
• The software must be capable of informing the user of the status of the sensors and
actuators, eg movement detected, alarm sounding. During execution, the software
must display appropriate information on the computer screen, and the information to
be displayed must be agreed in a requirement specification.
• The building has at least one main door and a window.
• The software must run on either the University Managed Desktop or on a personal
device.
• Other appropriate customer/stakeholder needs must be determined by your groups.
The final list of requirements (both functional and non-functional) must take account of
all of the customer/stakeholder needs and the constraints above, and must be
specified in this document.
Your SMART burglar alarm system needs to work properly as if it is to be installed and
used in an actual building.
More Details on Semester 1 Assignments:
The group project comprises three components over semester 1, following the systems
engineering V-model:
Requirements document (ACS233-001) 15%: Gantt chart, UML use case diagram, user
requirements, and system requirements.
Assignment released: Thursday 14 October (Semester 1, Week 3)
Assignment due: midnight Wednesday 3 November (Semester 1, Week 6)
Design document (ACS233-002) 15%: UML state diagram, UML activity diagram of software
and traceability table.
Assignment released: Thursday 25 November (Semester 1, Week 9)
Assignment due: midnight Wednesday 15 December (Semester 1, Week 12)
Hardware and software implementation (ACS233-003) 20%: Demonstration of the
hardware and software.
Assignment released: Monday 17 January (Semester 1, Week 13)
Assignment due: Wednesday 26 January (Semester 1, Week 14)
Please note that the implementation assignment is during the exam
weeks. You need to be in Sheffield for Monday 17th January.
Marking will be on Thursday 27th and Friday 28th January.
Details for each of these three assignments, including marking criteria, is given in the
appropriate sections below.
Please note all of these deadlines, and certain details might change as the semester
progresses. Any changes will communicated to you in a timely manner.
Components:
You will be given a set of components in order to be able to complete this assignment. I’ve
included images and information of some of the components below.
• A MEGA 2560 Arduino is provided for controlling the burglar alarm system (including
USB cable).
• Various resistors are provided to act as pull-up or pull-down resistors for the sensors.
• Different coloured LEDs.
• A breadboard with male-male and female-male wires.
• The webcam is a Logitech HD C270 webcam. The webcam does not connect directly
to the Arduino, so you need to interface it via Matlab or Python.
• A diode, for use with the solenoid.
Facial recognition and tracking:
This is the hardest part of the project to implement. Work on this after you get all the
other features working. There are numerous sources of code, available in Matlab or Python,
to perform these tasks. You are expected to do some wider reading around this topic and then
use freely available sources in your implementation. I am not expecting you to code this part
from scratch! Please make sure you cite any code you use. I will give a brief lecture and
demonstration on facial recognition in January.
RS Pro Door and Window switch surface mount 500(dc)mA, 50V
dc.
TruSens HC-SR505 Mini PIR Motion Sensor. Please refer to
data sheet on ACS233 Blackboard for information on the
pins. Please also note that the output stays high for
around 8s after the sensor detects movement.
RS PRO 1 → 30 V ac 78dB Through Hole Continuous External
Piezo Buzzer, 3500 → 4500 Hz
BD911 npn BJT transistor for use with the solenoid.
Please refer to data sheet on ACS233 Blackboard for
information on the pins. Please do NOT attempt to
connect the transistor before reading the data sheet
because you can damage the Arduino and other
components.
Pimoroni COM2700 mini push-pull solenoid 5V 0.42A
Some recommended reading and examples of code:
https://uk.mathworks.com/discovery/face-recognition.html
https://uk.mathworks.com/matlabcentral/fileexchange/49914-streaming-face-detection-
training-recognition
Steps for facial recognition and tracking:
1. Database of photos, or a webcam with a live stream
2. Recognise a face in the photo using certain features, eg, shape and size of eyes, jaw,
cheekbone. Each face is usually given a name (optional).
3. Extract these features
4. Machine learning algorithms (classification) are applied to the extracted features so as to
obtain a model.
5. Use this model on a new dataset so as to identify the face in the photo (or live stream). The
new images will need to have the same features extracted from them before using the model.
You will be given the components after the Christmas break during the exam period.
Exact time to be confirmed. This session is compulsory (penalties will apply).
Components will NOT be handed out before the Christmas holidays because I do not
want one person from the group to start working independently.
Requirements Document (ACS233-001)
Assignment weighting: 15% of module mark
Assignment released: Semester 1, Week 3
Assignment due: All submission drop boxes found in in the Coursework folder in ACS233
Blackboard
1) You must submit the completed requirements document as a single PDF document
(GroupX.pdf, where X is your group number) to the Turnitin link “Requirements
Document ACS233-001” (one document per group). Deadline is midnight
Wednesday 3 November (Semester 1, Week 6).
2) Each individual in the group must submit a peer assessment of the contribution of each
group member to this assignment, using the link “WebPA for Requirements Document
ACS233-001”. Deadline is midnight Thursday 4 November.
Feedback date
No later than Semester 1, Week 9. This will include the overall mark, individual component
marks and comments on performance on the assignment. The attached marksheet shows the
areas on which feedback will be provided.
Learning outcomes
By doing this assignment, students will
• Develop skills in capturing, analysing and documenting requirements
• Develop skills in diagramming using UML.
• Improve project management and teamwork skills
Assignment briefing
This assignment will assess your ability to apply the techniques that you are learning in
ACS233, specifically working to create a partial requirements document along with project
management tools for a SMART burglar alarm system. In order to determine the requirements
for the system, you must first investigate the problem you have to solve. In this assignment,
you are given some freedom to decide exactly what your system will do, but this freedom is
constrained as stated previously. You should search for resources which will help you
investigate the problem. Once you have a general understanding of the problem, you will then
need to think about what further information you need to produce a Gantt chart and the
requirements completely.
Your requirements document must be no more than eight pages long including diagrams
(use a sensible font with font size 11 and single line spacing). The sections you must include in
your requirements document are these:
• Introduction and context: The need for the system and a brief statement of its overall
purpose.
• Project Management: A detailed Gantt chart. The Gantt chart needs to have a detailed
breakdown of the whole project (so covering all 3 components of this project) and it needs
to take into account the V- model, including testing individual sub systems. The Gantt chart
must also show who is responsible for what.
• User Requirements: The services the system needs to provide, described in formal
language and with one or more UML use case diagrams.
• System Requirements: A detailed textual description of functional requirements and non-
functional requirements. The system requirements must be traceable to the user
requirements. You can use outline numbering form for the textual requirements, OR you
can represent your requirements using SysML requirements diagram.
• Individual: Describe and evaluate the part/s: of the research you did, and the report that
you wrote. Each description should be clearly headed with the name of the individual
student who wrote the description. This section should be no more than two pages long
in total, which means that each of the four group members should aim to write about half a
page.
Marking Sheet for Requirements Document
Marking Criterion Marks/Comments
Introduction and context: How well does the introduction
explain the need and purpose for the system?
-1 if not given
Comments on Introduction:
Project Management: How well does the Gantt chart
breakdown the workload for the requirements, design and
implementation and testing of the system? Does the Gantt
chart show milestones?
______/2
Comments on Project Management:
User Requirements:
How well do the user requirements describe the services the
system needs to provide?
/2
How appropriate are the use cases in the use case diagram (or
diagrams)? How appropriate are the actors shown in the use
case diagram?
/2
Mark for User Requirements:
______/4
Comments on User Requirements:
System Requirements Definition:
Are the system requirements sufficiently detailed? How well is
each system requirement stated? Does each requirement
have a unique ID? Are they written formally?
/3
How well do the system requirements cover non-functional, as
well as functional requirements?
/2
Do the requirements section describe a sensible SMART
burglar alarm system, adhering to the constraints given?
/3
Mark for System Requirements Definition:
______/8
Comments on System Requirements Definition:
Individual
Does this individual clearly state their contribution to this
assignment- please refer to the assignment briefing? Is this
description clear and easy to read? Has sufficient work been
done by the individual?
______/1
Comments on Individual Description
Total Mark
Individual marks will be derived from group marks by
including webPA scores
________/15
Design Document (ACS233-002)
Assignment weighting: 15% of module mark
Assignment released: Semester 1, Week 9
Assignment due:
1) You must submit the completed design document as a single PDF document to the
Turnitin link “Design Document ACS233-002” in Course Work-> Submissions in
ACS233 Blackboard. The document must be submitted as a PDF GroupX.pdf where
X is your group number. Deadline is midnight on Wednesday 15 December
(Semester 1, Week 12).
2) Each individual in the group must submit a peer assessment of the contribution of
each group member to this assignment, using the link “WebPA for Design Document
ACS233-002” in the Course Work-> Submissions in ACS233 Blackboard. Deadline
is midnight on Thursday 16 December (Semester 1, Week 12).
Feedback date
No later than Monday 20 January (Semester 1, start of exam weeks). This will include the
overall mark, individual component marks and comments on performance on the assignment.
General feedback on the whole class performance will also be provided. The attached mark
sheet provide guides to the areas on which feedback will be provided.
Learning outcomes
By doing this assignment, students will
• Develop skills in creating a system design to satisfy requirements
• Develop skills in creating a traceability table to ensure the design meets the
requirements
• Improve project management and teamwork skills
Assignment briefing
You will work in the same groups as for assignment ACS233-001 (the requirements
document), and the system you are developing remains the same: SMART burglar alarm
system.
This assignment will assess your ability to apply the techniques that you are learning in
ACS233, specifically working to create a design and traceability document for a hardware +
software system. You need to ensure that any feedback on your requirements document has
been taken account of, and that the system requirements are updated accordingly; this is likely
to involve partially rewriting the requirements.
Your design and traceability document must be no more than eight pages long including
diagrams. The document for ACS233-002 must include these sections:
• Introduction: a very brief preamble giving a context and an overview for the document.
• Feedback from ACS233-001 (requirements): A detailed analysis explaining how the
feedback provided in the requirements document has been taken into account for in the
design document.
• UML state diagram: You need to provide the states and events for your SMART burglar
alarm system.
• UML activity diagram: You need to provide the control flow of the software required for the
SMART burglar alarm system. You need to make sure you include all sensors and actuators
mentioned in your requirements. Details of how you plan to do the facial recognition need
to be included, eg obtaining photos of faces, feature extraction etc., but not the exact
algorithms used (so I don’t want the details of the type of feature extraction method used).
Your activity diagram needs to have sections highlighted so as to be able to link to the
traceability table. See * at the end of the briefing.
• Traceability table: The traceability table needs to map the sections of the UML activity
diagram that will satisfy certain requirement/s. All requirements needs to be traceable. More
information given at the end of the briefing. *
• Individual: Describe and evaluate the part/s: of the research you did, and the report that
you wrote. Each description should be clearly headed with the name of the individual
student who wrote the description. This section should be no more than two pages long
in total, which means that each of the four group members should aim to write about half a
page.