CET235

【CET235】Module Code: CET235
Module Title: Internet Of Things
Assessment Number: 1 of 2
Assessment Title: Single IoT Device Prototype
The following learning outcomes will be assessed:
Knowledge

  1. An understanding of the tools, techniques and frameworks
    available for the development of applications for IoT devices.
    ?
    Skills
  2. Use of appropriate programming language concepts for the
    development of applications for IoT devices.
    ?
  3. Application of industry standard tools and practices to the
    deployment and testing of IoT device applications, including the
    acquisition, interpretation and visualisation of data.
    ?
    Deadline for submission of deliverables:
    Submission Date and Time 5PM, FRIDAY 14th MAY 2021
    Submission Location Submission via Canvas Assignment Page
    Professional Practice Week 1 contributes 30% to your final module mark and
    assesses learning outcomes 1, 3 and 4.
    This assessment is taking place as a Professional Practice Half Week.
    Important Information
    You are required to submit your work within the bounds of the University Infringement of
    Assessment Regulations (see the Programme Handbook). Plagiarism, paraphrasing and
    downloading large amounts of information from external sources, will not be tolerated and
    will be dealt with severely. Although you should make full use of any source material, which
    would normally be an occasional sentence and/or paragraph (referenced) followed by your
    own critical analysis/evaluation. You will receive no marks for work that is not your own.
    Your work may be subject to checks for originality which can include use of an electronic
    plagiarism detection service. Where you are asked to submit an individual piece of work, the
    work must be entirely your own. The safety of your assessments is your responsibility. You
    must not permit another student access to your work. Where referencing is required, unless
    otherwise stated, the Harvard referencing system must be used (see the Programme
    Handbook).
    Page 2 of 5
    Scenario
    Rationale
    You are currently working for a software development company who provide IoT system
    solutions to small and medium sized technology companies in the food, hygiene and biomedical
    sectors.
    Currently you are working on a contract that requires a proof of concept prototype to monitor
    environmental conditions during access to a controlled bio-medical manufacturing area. This
    controlled area is normally sealed and kept under steady state conditions. However, it is
    sometimes required to access this area for very short time periods to perform upkeep and
    maintenance tasks whilst the manufacturing process continues.
    The contract calls for you to provide a prototype software simulated IoT solution aimed at
    logging environmental conditions during these access periods. In addition, you are to
    provide a console based desktop application that will allow basic visualisation and analysis
    of the logged data from the simulated IoT system.
    Tasks
  4. Software Simulated IoT Prototype System – You need to provide a suitable
    software simulated IoT prototype rig (using software simulated MCUs, sensors, input
    devices, output devices etc) that will allow the temperature and relative humidity to
    be recorded and then logged during an access period to the controlled area. In this
    prototype system, you will be simulating the actual access period to the controlled
    area (obviously, as you do not have the manufacturing facility available to you).
    You must provide the following functionality, with updates in your program happening
    approximately once every second:-
    a. A recorded log of the current temperature (in Celsius) and relative humidity (in %),
    this must only be recorded and logged during an access period.
    b. A date and time timestamp of each set of readings from a. above as they are
    recorded in the log.
    c. If the currently active access period has lasted around 10 seconds or less then
    show a green coloured indicator light.
    d. If the currently active access period has exceeded 10 seconds then show a red
    coloured indicator light.
    e. If there is no currently active access period then no coloured lights should be
    showing.
    f. A visual output of the current date, time, temperature and relative humidity
    readings whether there is a currently active access period or not.
    Page 3 of 5
    g. A visual output of the approximate number of seconds a currently active access
    period has lasted.
    When providing the above functionality make sure you only record and log readings
    during active access period, not outside of these. In order to properly prototype your
    system you will have to provide a way to simulate these access periods. You will also
    need to provide a way to gracefully stop and shut down the run of your prototype.
    You can assume the date and time for all your readings begins at 12th May 2021
    (which is a Wednesday), 9:30am, 0 seconds and 0 microseconds.
    As this is a simulation, you can record readings that are somewhat manipulated from
    the environmental sensor so you can see and test the operation of the prototype.
    Such simulated data can then be observed when utilising it in the desktop application
    detailed below.
  5. Desktop Application – Using the recorded and logged data taken from a run of the
    prototype IoT system, you need to provide a console based desktop application that
    provides the following output for each access period logged in the data:-
    a. Start date and time of the access period.
    b. End date and time of the access period.
    c. Approximate number of seconds the access period lasted.
    d. A list of all the recorded readings (including the timestamp for each) during the
    access period
    As stated, this output is required to be purely textual, displayed in a console terminal
    and does not need to be output in a graphical format. The individual elements of the
    output can be in any order but it must be obvious for which access period each set of
    data is associated.
    Note: You can adapt tutorial example code and sample solution code to help
    you in solving both of these tasks detailed above.
    Deliverables
  6. Python 3 script(s) that provide the functionality detailed in Task 1 (Software
    Simulated IoT Prototype System) above. This Python 3 script(s) should be
    properly structured and commented to ensure good quality and describe how
    each element of the script operates in providing the solution.
  7. A detailed guide (word processed and provided as a Microsoft Word document)
    as to how the required simulated IoT rig is to be prototyped, how the Python 3
    scripts are to be run and how to retrieve the logged readings from the simulated
    monitoring device after a run of your prototype program has finished.
    The emphasis here is on detailed. Assume that the user of this guide does have
    the same CET235 simulated prototype rig software available you had available
    during the teaching sessions on the CET235 module. Use diagrams, screen shots
    Page 4 of 5
    etc. to support your guide so that it is obvious how to operate your software
    simulated prototype rig solution, how to run your Python 3 script(s) and how to
    retrieve your logged readings.
  8. Python 3 script that provides the functionality detailed in Task 2 above. This script
    should be properly structured and commented to ensure good quality and
    describe how each element of the script operates in providing the solution.
  9. A detailed guide (word processed and provided as a Microsoft Word document)
    as to how to run your desktop application, in particular describing how to get the
    logged readings from the software simulated IoT system into the desktop
    application for visualisation and analysis. In addition, provide a set of screen shots
    and descriptions of these screen shots explaining what is being output in your
    application so that the user can understand what they are seeing.
    Submit all these scripts and documents as a single zipped archive file to the Canvas
    Assignment Page for this assessment by the deadline 5PM, FRIDAY 14th MAY 2021.
    Page 5 of 5
    Feedback and Marks Grid
    Task 1 – 70 marks
    IoT System Functionality
    (40 marks)
    Most required
    functionality
    missing or
    provided script
    not working
    Some required
    functionality
    missing or not
    relevant
    Most required
    functionality
    included and no
    irrelevant
    functions
    All or almost all
    required
    functionality
    included and no
    irrelevant
    functions
  10. 1 to 10 11 to 18 19 to 28 29 to 40
    IoT System Code Quality
    (10 marks)
    Poor code
    structuring and
    no or almost no
    code
    commenting
    Poor code
    structuring and
    only small
    amount of code
    commenting
    Satisfactory code
    structuring,
    mostly
    commented code
    Good code
    structuring, fully
    commented
    code
  11. 1 to 3 4 to 5 6 to 7 8 to10
    Very confused,
    shallow and/or
    poorly
    presented set of
    instructions in
    the guide
    Reasonable
    guide presented
    but with some
    areas of
    confusion or lack
    of detail
    Reasonable
    guide presented
    but with some
    areas of
    confusion or lack
    of detail
    Excellent guide
    that is clear,
    comprehensive
    and of high level
    of detail
    IoT System User Guide
    (20 marks)
  12. 1 to 5 6 to 10 11 to 15 16 to 20
    Task 2 – 30 marks Most required
    functionality
    missing or
    provided script
    not working
    Some required
    functionality
    missing or not
    relevant
    Most required
    functionality
    included and no
    irrelevant
    functions
    All or almost all
    required
    functionality
    included and no
    irrelevant
    functions
    Desktop App Functionality
    (20 marks)
    0 1 to 5 6 to 10 11 to 15 16 to 20
    Poor code
    structuring and
    no or almost no
    code
    commenting
    Poor code
    structuring and
    only small
    amount of code
    commenting
    Satisfactory
    code structuring,
    mostly
    commented
    code
    Good code
    structuring, fully
    commented
    code
    Desktop App Code Quality
    (5 marks)
    0 1 2 3 4 to 5
    Desktop App User Guide
    (5 marks)
    Very confused,
    shallow and/or
    poorly
    presented set of
    instructions in
    the guide
    Reasonable
    guide presented
    but with some
    areas of
    confusion or
    lack of detail
    Reasonable
    guide presented
    but with some
    areas of
    confusion or lack
    of detail
    Excellent guide
    that is clear,
    comprehensive
    and of high level
    of detail
    0 1 2 3 4 to 5

    推荐阅读