SECoursework 2025
SECoursework 2025
_________________________________________________________________________
ACADEMIC MISCONDUCT
Your submission for this coursework will be scrutinised for plagiarism, collusion, and other forms of academic
misconduct. Please ensure that the work that you submit is your own, and that you have cited and referenced
appropriately, to avoid having to attend an academic misconduct hearing. You can find more information
about academic integrity and how to mitigate plagiarism here:
https://roehampton.libwizard.com/f/academic_integrity
The coursework is worth 70% of the total module mark. Delivery of the coursework is divided
into four Sprints. You will deliver the sprints as a group.
For each sprint, all members of the group will receive the same mark.
You will also be evaluated for your individual contribution to the project via your individual
reflection document, worth 20% of the coursework mark. The marks for the coursework
element are divided as follows:
Coursework description
Overview
Each group will produce a ‘full stack’, dynamic web application which can be deployed using
Continuous Integration/Continuous Deployment techniques.
Technologies
Frontend:
• HTML
• CSS
• JavaScript
• PUG templating system
Backend:
• Node.js
• Express.js
• MySQL database
• Docker
• Git
• Github actions
Project management:
• Github project
Your application must be built using the tools and techniques taught in the module.
Theme
For 2025, our theme will be “Sharing, exchange and mutual aid”.
To address the theme, students should consider how they can use their skills to promote
community development and help solve real problems, for example: waste, climate change
and cost of living crisis, and/or support their interests and hobbies. They will do this by
creating a dynamic, database driven web application through which users can exchange
goods or services co-operatively, for mutual benefit rather than financial gain.
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
Each group will choose one of the project ideas presented by the staff team - indicative
examples below. They can suggest their own idea which will need to be validated by a
member of the staff team by the end of week 2.
The groups will be expected to consider usability, security and ethics as they develop their
application. While all groups will start with basic functionality, the projects will allow
increasing creative input and unique ideas as they develop.
Deliverables
You will work on the project using a ‘scrum’ project management methodology. This means
that you will work as a team to deliver your project iteratively.
Your progress will be discussed weekly during ‘stand-up ‘meetings in lab time with your
lecturer, and formally via the code-review assessment points.
The aim of this sprint is to check that the project workflow is set-up for the team, you have
clarified your project idea and adopted a code of conduct.
Checklist Submission 1
The following must be in place:
• GitHub repository for coursework set-up and at least one commit from every group
member
• Product Backlog created and kanban board in Github project created
• Scaffolding files added to github and README file customised for your project
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
• Correct branches for GitFlow workflow created - includes `master`, `develop`, and
`release` branches
• Each member of the team able to run the development environment using Docker
• A single PDF document with:
o Your group members and group name
o Project description refined
o Code of Conduct
o At least two ‘Personas’
o Ethical issues identified
o Meeting records completed
The aim of this sprint is to assemble the initial requirements and ensure that specifications
are ready for sprint 3.
Checklist Submission 2
The aim of this sprint is to begin the application development by creating some simple
features. All members of the team must show that they can build the development
environment and have contributed code. For your sprint review you will be expected to be
able to have your database populated and be able to run your code
Checklist Submission 3
Initial requirements implemented using MySQL, Express and PUG, using Docker containers
for the team development environment and demonstration. To include at minimum (these
pages must use data pulled from your database):
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
In your sprint 3 review, you will plan your final sprint which will be tailored to each groups
progress
The aim of this sprint is to complete your ‘MVP’ to by adding features and refining your design
as much as possible. The scope of your sprint 4 will be tailored to each group and will be
determined in your sprint 3 review meeting.
You will also add some CI/CD workflows using github actions.
Checklist Submission 4
• User login
• Basic matching algorithm
• User points or ratings
• Advanced ratings or points system
• In-app messaging
• Advanced matching algorithm / recommendations
• Use of external APIs where relevant (eg. Transport, maps, weather)
Presentation
A presentation of your application idea, ethical issues and and MVP during week 12. Ppt file
to be uploaded to Moodle.
Individual Assessment
Individual contributions to the team will be assessed based on attendance at the various
meetings and code reviews, and via the metrics gathered from tools such as GitHub.
Individual contributions can lead to a scaling of the overall coursework grade if the module
team have evidence that illustrates a lack of contribution to the team deliverable.
The coursework must be delivered as part of a team. If anyone is dismissed from their team
this means they cannot deliver the coursework and is at high risk of failure for the whole
module. Dismissal from a team involved the following process:
Any dismissed team member has a week to appeal the decision to the module team with
suitable evidence provided.
___________________________________________________________________________
The meetings will take place during the lab sessions. Each group will be given 10 minutes
maximum for the code review. Your group will be allocated a time for the code review. The
details of the individual review points are below. These meetings must be attended at the
stated time. Guidelines for grading the group:
▪ Being late for the meeting or not being ready when the meeting starts will result in
the grade for that review being capped at 40%
▪ Not attending the meeting will mean the code review will be marked at 0%
▪ All team members should attend the code review; however commitments and other
considerations will be taken into account. Individuals attendance at reviews will be
monitored to ensure the team is contributing collectively to the project.
▪ Being ready means that you are ready to present the points for the code review. This
means that you have a computer with your application ready to run.
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
___________________________________________________________________________
Individual component
TBC
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
Marking Scheme:
Sprint 1
Criteria Excellent Satisfactory Not Satisfactory Not attempted
Both GitHub repository and GitHub repository and task GitHub repository and task No GitHub repository and
Technical aspects the
task board created and all board created but not all team board created but only one task board created, or
completeness of technical
members have joined and members have joined and person joined, or one of these simply just created with
deliverables.
contributed. contributed. aspects not created. nothing additional done.
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
Sprint 2
Criteria Excellent Satisfactory Not Satisfactory Not attempted
User story
Most user stories are on task User stories are not clearly
tracking suitable All user stories are on task board,
board, and generally tracking of tracked in all instances, and User stories are not tracked, or
documentation and with suitable tracking of story
progress is being undertaken but detail is missing in areas, the level of tracking is very
tracking of user stories progress including assignment of
some gaps in areas, for example such as the assignment of limited.
using a suitable task tasks to individuals.
assignment of people. people to stories.
board.
Use case diagrams that clearly map Use case diagrams generally map to
Use case diagrams do not No diagrams provided, or use
to user stories provided and user stories and provide good-
Software design the map well to user stories and case diagrams do not map to
provide high-quality information of quality information of the system
suitability and are lacking in some detail. user stories. Activity diagrams
the system design. Activity design. Activity diagrams are good-
completeness of the Activity diagrams also lack not provided, do not cover
diagrams are of high-quality quality but no not cover the
software design some detail on the overall much or the system flow of
illustrating the flow of control in complete flow of control in the
presented given the flow of control in the control, or are inappropriate.
the application. Suitable class, application. Suitable class, state,
application design system. Class, state and Class, state and sequence
state, and sequence diagrams are and sequence diagrams are also
proposed. sequence diagrams are diagrams not provided or are
also provided based on the idea provided based on the idea
sparse. inappropriate.
specified. specified.
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
Sprint 3
Criteria Excellent Satisfactory Not Satisfactory Not attempted
All user stories are on task Most user stories are on task User stories are not clearly
User story tracking suitable
board, with suitable tracking board, and generally tracking of tracked in all instances, and User stories are not tracked, or
documentation and tracking
of story progress including progress is being undertaken but detail is missing in areas, such the level of tracking is very
of user stories using a
assignment of tasks to some gaps in areas, for example as the assignment of people limited.
suitable task board.
individuals. assignment of people. to stories.
has made in the delivery of on the current project and current project and capabilities of project and capabilities of the
their technical requirements. capabilities of the team. the team. team.
Obvious evidence that the Evidence that the team is Some evidence of the team No or little evidence of the
GitHub repository
team is collaborating well, collaborating, and in general collaborating. Not as clear team collaborating. Team is
practice evidence of team
everyone is committing to everyone is committing to the that the whole team is not using GitHub universally.
collaboration and good
the project, and commits are project. Commits are not always committing to the project. Commit practice is non-
practice in GitHub.
frequent and small. frequent and small. Commit practice needs work. existent or poor.
Sprint 4
Criteria Excellent Satisfactory Not Satisfactory Not attempted
All user stories are on task Most user stories are on task User stories are not clearly
User story tracking suitable
board, with suitable tracking of board, and generally tracking of tracked in all instances, and User stories are not tracked,
documentation and tracking
story progress including progress is being undertaken but detail is missing in areas, such or the level of tracking is very
of user stories using a
assignment of tasks to some gaps in areas, for example as the assignment of people limited.
suitable task board.
individuals. assignment of people. to stories.
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
Evidence that the team is Some evidence of the team No or little evidence of the
GitHub repository Obvious evidence that the team
collaborating, and in general collaborating. Not as clear team collaborating. Team is
practice evidence of team is collaborating well, everyone is
everyone is committing to the that the whole team is not using GitHub universally.
collaboration and good committing to the project, and
project. Commits are not always committing to the project. Commit practice is non-
practice in GitHub. commits are frequent and small.
frequent and small. Commit practice needs work. existent or poor.
Individual Contribution
Module name: Software Engineering (CMP020N204S)
Lecturer: Dr Lisa Haskel, Dr Touseef Tahir, Dr Mamoona Humayuan
Coursework 2025
Good discussion level provided Discussion is good but lacks Discussion is poor and
Discussion overall level of Excellent overall level of
although unclear or inconsistent in clarity and consistency in does not provide clarity
discussion in the report. discussion provided.
a couple of places. places. to the report.
Excellent level of appraisal of the Good level of appraisal of the No team appraisal or
Critical team appraisal ability to Team appraisal is brief and
team’s work and how they have team’s work and how they have little team appraisal and
critically analyse other team doesn’t really analyse the
contributed to the delivery of the contributed to the delivery of the how they have
members’ contribution to the individual roles within the
project, including individual roles project, although might be lacking contributed to project
project process based on role. team.
undertaken in the project. exploration of individual roles. delivery.