...
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
What is this sprint aiming to achieve? Sprint 1 is all about planning and designing. You’ll be planning your work up until the end of Sprint 2 (Week 5). The learning outcomes of this sprint can be broken down into four major pillars:
|
...
Within your team, allocate team roles.
Convert the initial specification for your assigned service category into a list of requirements.
Decide on a stack architecture for your service.
Identify any initial constraints that will affect the team’s performance in the project
Create an initial API interface design for your service.
Plan for the completion of work for the following sprint to complete a MVP of the serviceAPI.
2. Team Roles 🎱
Based on your individual and collective strengths, discuss and as a team allocate the following roles:
...
3. Requirements Engineering 🔍
Using Confluence, convert the specification for your assigned service into a list of requirements.
You may, but are not expected to use a controlled language notation such as Connextra Notation (User Stories & Acceptance Criteria). A list of dot points with statements detailing the definition of done will suffice, however.
You will need to logically group features that are related, and differentiate between functional and non-functional requirementsYou will be assigned an API category by your tutor. You will need to define more precisely what your API will be covering:
The value of the API from a consumer’s perspective
The expected inputs
The expected outputs
You may add other information such as non-functional requirements (e.g. access, performance).
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
The requirements will be long and complex - try not to be intimidated by that! They are intentionally open-ended for you to define the scope of your application yourselves. Allocating Make sure you read the API requirements provided and that your API complies with the category managed by your mentor. Allocating someone in your team as a Product Owner who can become a Subject Matter Expert on the domain will help you understand the requirements better. You can also clarify the requirements by talking to your mentor. |
...
Route names
Route description
CRUD method (GET, POST, PUT, DELETE)
Parameters
Return values
Exceptional flows
Descriptions of composite parameter / return types
You are welcome to use an alternative approach to designing your API, such as GraphQL, however all design decisions must be documented. You may use Swagger for this phase if you wish, however you are not required toWe expected documentation to be informal at this stage, perhaps using examples of requests and responses. You will need to create a finalised API Design with Swagger proper documentation in the next sprintsprints.
Place your design inside a Confluence page called Interface.
...
Document any important reasoning that occurs as part of this process inside a Confluence page called Planning.
7.
...
Identify and document any constraints - potential bottlenecks, blockers or other obstacles that may arise in the project and affect your performance as a team. Briefly note down any measures you as a team can put in place to exploit the constraints.
Document this inside a Confluence page called Constraints.
8. Scrum Communications 🏈
As part of this sprint you will need to demonstrate your ability to communicate and work as a team. You will need to have:
A sprint planning meeting;
Regular standups, either synchronous or asynchronous (at least 3 a week); and
A sprint retrospective meeting.
You will need to take minutes for your meetings and record these on Confluence. Minutes should contain information on:
Who was there;
What was discussed; and
Action items.
Meeting minutes should also be taken at mentoring sessions.
You are welcome to use whatever asynchronous communication platform you as a team choose (MS Teams, Slack, Facebook, Discord) - however your tutor will setup a MS Teams Channel for you to communicate in, and this is the only place we will look when marking your communication and resolving disputes.
Inside a Confluence page called Communications, document any reasoning and screenshots of communications outside MS Teams.
...
Marking Criteria 
Criteria | Description |
---|---|
Requirements |
(20%) |
|
|
|
|
|
Initial Software Architecture Design (20%) |
|
|
API Layer:(1) Chosen(2) Justified appropriately(3) Considerations taken into account(4) Consideration of multiple options and elimination to decide upon the best one
| |
Initial API Design (20%) |
|
Project Planning (40%) |
|
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
Remember to communicate proactively with your mentor about teamwork issues as they arise. For example, if Bob hasn’t been attending team meetings and completing their work in Week 2, then you should tell your mentor in Week 2. If you fail to raise the issue in time, we may not be able to address the issue and/or apply redistribution of marks. |
...
8. Submission ⬆️
Sprint 1 Submission Guidelines
Make sure you have a single link to your online documentation website with the 4 sections of Sprint 1 as sub-links
Place a link to your online documentation website in the Moodle Sprint 1 submission. Ensure that your tutor has full access.
The grading tutor will assess the state of your Jira board and Confluence space at the submission deadline as your final submission.
...
Applications for Special Consideration and ELS assessment accomodations will not include extensions as this is a group project with no scope for extending deadlines. The course authority will determine an appropriate adjustment in cases where a Special Consideration request is approved or a student has an equitable learning plan. Students in either of these positions should email se2021@cse.unsw.edu.au.
...
9. Plagiarism 
The work you and your group submit must be your own work.
...