Agile Methodologies

 

 

 

 

 

Module Learning Outcomes Assessed
1. Demonstrate a sound understanding of how Agile Methodologies can be used to define users’ requirements, analysis and design of information systems.
2. Compare and contrast a range of current and emerging agile methodologies.
3. Evaluate the methods, techniques and tools for rapid development of various types of information systems, and the reasons for their selection and use.
4. Use a range of appropriate tools to contribute to the development of a solution to a real-world problem.

Assignment Overview
Please read this first.
Task
You have been put in multi-disciplinary teams comprising around 8 students from a number of courses at the University. Each member of the team brings a unique set of skills to the project.
You are required to design, build and test a system for capturing environmental data in real time, analysing it and presenting it in a meaningful manner.
You should consider the use of historical data supplemented with live data and are encouraged to incorporate multiple sources.
The data might include amongst other things: temperature, humidity, rainfall, pollution, etc.
The data can come from a variety of sources including:
1. Live sensors (if you have them).
2. Online data feeds (APIs).
3. Screen scraping data from websites.
Assessment
The practical project will not be marked however it will form the basis of an individual detailed reflective report and you will be expected to include evidence in this taken from the practical work.
The report reflects on your experiences, both positive and negative, of working on the assignment, applying all the concepts covered in the module theory. If you fully engage in the development process you will have the experiences and evidence you need to complete the report but, conversely, if you don’t fully participate, you will struggle to write the report as you will not have the experiences to reflect on.
The report will be graded using the associated grading rubric so take time to read through this and ask the module leader if there is any part of this you are unclear about.

Assignment Guidance
This assignment is carried out as a team. This page describes the different parts of the work and should be used to help allocate roles and responsibilities to team members and support their CPD.
Data APIs
You should aim to use as many different data feeds as possible. There are many sources of data you can incorporate into your system, here are a few to get you started but there are lots more:
1. DEFRA Data Sources Platform
2. Air Quality API
3. Weather API
Building Your Own Sensors
If you have a Raspberry Pi or Arduino you can build your own sensors to augment the data. Ideally the device needs to have a WiFi connection so it can communicate with other parts of the system however if your device lacks this capability you might plug it into a computer and send the data over the serial/USB connection to the host computer.
There are a number of low-cost microcontrollers that can be used, the most popular ones (that use the Arduino APIs) are:
1. The ESP32 development boards (include both Wifi and Bluetooth.
2. The ESP8266 board is older and cheaper but lacks the Bluetooth chip.
3. ARDUINO MKR WIFI 1010.
There are plenty of low-cost sensors you could use.
Aggregating Data
You will need a way to aggregate the data from all these different sources. One way is to implement a publish-subscribe mechanism where each data source is published to a central server using a protocol such as MQTT. For this to work you would need to set up a device to subscribe to all these data sources and store the data received in a common format (database). The device might be a raspberry pi or a cloud server.
Analysing The Data
Once the data is aggregated in a single location it will need to be mathematically analysed and a model created. This will need to be carried out on the aggregated data but should also incorporate any additional live data.
Data Visualisation

 

 

This question has been answered.

Get Answer