Sepm Unit 11

4 minute read

Published:

Learning Outcomes Achieved

  1. Identify and apply appropriate software engineering and project management methodologies, tools and techniques for the development of solutions to real-world problems
  2. Explore the implications of computer and network architectures for system-level design and development, as appropriate for risk and quality management
  3. Systematically develop and implement the skills required to be effective member of a development team in a virtual professional environment, adopting real-life perspectives on roles and team organisation

Project Report

This week, the second half of the assignment was due, which was a project report showcasing what has been built so far and what is needed to get the project to completion. I will discuss this in greater detail in my Unit 12 reflection, but here, I would like to discuss the learning outcomes achieved.

This assignment (i.e., building something for a customer) depended heavily on good execution of project management principles (along with selecting a good SDLC method in the first place). We weren’t able to follow Scrum by the book since it wasn’t a full-time project, however, we still managed to apply the core principles to such a degree that we were able to complete the project on time. Due to this, I would say that I achieved learning outcome 1. Through all the teamwork and collaboration involved, I would say that I have achieved learning outcome 4 because in 11 weeks, we managed to create a playable game, which actually could be released on the Google Play store in its current state- I consider that a great achievement.

We later received the following feedback:

  • Good discussion of progression; a good summary of current status, with a good plan and use of scrum; details well presented, good (if slightly limited) use of references. As a development recommendation please be very careful when selecting alt. prog languages so as not to alienate team members.
  • You chose a complex model, which resulted in a somewhat confusing demo - which stressed how the model chosen was possibly less appropriate for this module - however it resulted in a good discussion of limitations - good for criticality.
  • Everyone was involved and presented a section of the presentation; there was good handover between presenters, however, the recording was quite basic and didn’t really deviate from a basic PPT presentation.
  • Overall the presentation was clear and well organised, and finished within the allocated time. The Demo was generally less well organised

The most interesting part of the feedback for me was “the recording was quite basic and didn’t really deviate from a basic PPT presentation”. I take this to mean that we were perhaps not successful at holding the viewer’s attention. When time allows, I’ll watch the recording again and think of ways that it could have been made more exciting or engaging to view.

Code Review Session

As an additional component to the assignment in this unit, a live code review was held with the module tutor. I worked with Andrey on this and we received the following questions:

  • How do you know that your app can’t be broken? I answered by mentioning the open closed principle, how we did manual tests, and then unit tests. I think I could have said it more concisely by explaining what our development process is: we follow the test pyramid and have tests at various levels of integration. We used manual testing as well- when we found bugs from manual tests, I wrote patches and then tests (not for all cases though, due to time requirements).
  • Which requirements did you meet? We mentioned 5, and I think we handled this one well.
  • What role did Gherkin take in your feature development? Andrey summed up the issue well: we needed more resources to implement it fully- Kotlin doesn’t have native Gherkin support, and it would take additional work (from a financial and time perspective) to find ways of integrating it.

By completing this part of the assignment, I would say that I achieved learning outcome 2, because I outlined all the decisions made during development of the project. My thinking was also challenged by the question regarding quality management- it caught me off guard because I didn’t know whether to answer it from a technical or non technical perspective.

Artefacts

Project repository
Presentation document for code review
Assignment: Project report artefacts (all meeting minutes, gantt chart, slides)
Assignment: Presentation transcript
Assignment: Demo source code
Assignment: Presentation link