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.
On completion of this module the student should be able to:
- Demonstrate a sound understanding of how Agile Methodologies can be used to define users’ requirements, analysis and design of information systems.
- Compare and contrast a range of current and emerging agile methodologies
- Evaluate the methods, techniques and tools for rapid development of various types of information systems, and the reasons for their selection and use.
- Use a range of appropriate tools to contribute to the development of a solution to a real-world problem.
The teaching materials are broken into 10 labs split into 3 parts. Each week you will be provided with a labsheet that explains exactly what you will need to complete and containing a link to the appropriate presentation.
- the first two weeks cover the technical skills you will need to complete the module and the labs are to be completed individually.
- Weeks 3-4 prepare you for the agile development.
- Weeks 5-10 are where you complete the sprints and develop the software.
Link to the assignment. Link to the grading rubric.
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:
- Programming refresher with TDD.
- NodeJS and C++
- Skills
- MQTT etc.
- Team Building (Professional development)
- form teams
- skills audit
- Problem Domain Modelling (UML)
- Requirements gathering and domain mapping.
- User stories.
- Sprint 0
- Architecture.
- Data storage.
- sprint 1:
- Effective use of git
- fixed story: broadcast MQTT lat lon.
- Sprint 2
- Kanban board (electronic).
- Sprint 3
- Effective use of GitHub Issues
- Sprint 4
- Burndown charts
- Sprint 5
- User story mapping
- Exam revision