Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.

README.md

Agile Development

Welcome to the final year Agile Development module. This will teach you the skills you need to work in a modern software development team. Along the way you will gain lots of experience in developing a software solution.

Learning Outcomes

On completion of this module the student should be able to:

  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.

Teaching Materials

The teaching materials are broken into 10 labs with each labsheet containing a link to the appropriate presentation. The labs follow a 2-week cycle:

  1. the first week requires you to do preparations and think about your work.
  2. in the second week you will be required to work as a professional development team.

Assessment

The assignment brief can be found here.

The grading rubric is available here.

Module Overview

During this module you will be working in medium-sized multi-skilled development teams on a real problem. The content of the module is as follows:

  1. Professional development
  2. Agile planning (planning your agile project)
  3. Sprint planning
  4. Effective sprints (and your first sprint)
  5. Automated code testing
  6. Test-driven development (and the second sprint)
  7. Non-functional testing
  8. Advanced Git (and the third sprint)
  9. Acceptance testing
  10. Continuous integration (and the fourth sprint)
  11. Automated deployment and exam revision
  12. Continuous delivery (and the bonus sprint)

The Team

You should already have access to the Moodle Site for this module. On it you will see that you have been assigned to a team of between 8 and 9 students. The teams contain a balance of skills that will enable you to complete the project. You should take a moment to identify the other members of your team and get in contact with them.

The Scenario

Local authorities such as Coventry are required to monitor the environment and report their findings to DEFrA. There are a number of targets imposed by the government. At the moment the equipment to do this is expensive. There are guidelines issued by DEFRA that explain what should be monitored and the acceptable levels as well as guidance on purchasing the equipment to carry this out.

There are two levels of monitoring:

  1. General monitoring through the use of large numbers of sensors to help identify the blackspots.
  2. Specialist units that can be placed in the worst blackspots that are capable of capturing a wider range of data at a higher accuracy. There is an example of this on Ball Hill. The systems are heavy, expensive and difficult to operate and are therefore only installed whre there is an existing pollution problem.

There are already companies providing solutions to point 2 but little on the market to give an overall picture.

You have been approached by an environmental monitoring company to develop the prototype of a new range of low-cost smart sensor boxe which they plan to sell to local authorities. These should capture data and send it over a wifi network to a central server. They also want a smartphone app that residents can use to find out about the pollution levels where they are, track over time and warn them if they exceed specified limits.

They would like to be able to monitor:

  • Temperature
  • Humidity
  • Light levels
  • Levels of UV
  • CO2
  • Airbourne dust particles
  • Ambient background noise
  • low frequency vibration caused by lorries, buses and aircraft

They would like to have a smartphone app to use the data in the following ways:

  • Map of the area with overlays showing pollution levels.
  • Summary of the pollution in the user's current location mapped against acceptable norms
  • alerts if pollution exceeds the agreed levels.

Git Tags

$ git tag -a 1718JANMAY 9b89d29 -m "1718JANMAY"
$ git push --tags origin master
You can’t perform that action at this time.