5com2007 21 champioships at rare earth care part 1 design 1 project sc
Search for question
Question
5COM2007
าการ 21
Champioships at Rare Earth (CARE) part 1 - Design
1. Project scope
Read the supporting case study in the document 'CARE Case Study 2022_23".
2. Tasks and Outcomes
Your team is required to produce the following design documents
Task 1: User Stories
•
Task 2: Use Case Diagram
•
Task 3: Specification of interface CARE
Task 4: Specification of back-end domain classes
The results of these tasks, should be assembled into the provided document: "Cwk 4 part 1 template ", so that
only one .docx is submitted. Only ONE submission per team is required.
Task 1: User Stories
-
Using the user stories grid in Task 1 of the 'Cwk 4 template' document, elicit some user requirements via 5 user
stories. Although the implementation at this stage assumes only one user – the player. You should consider
different possible roles for the player and provide user stories for the following roles:
•
Rare Earth Vizier - 3 user stories
Rare Earth Commandant - I user story
Tournament Master - 1 user story
Each of your user stories should identify just ONE key function required by the game. Your team does NOT need
to provide a comprehensive set of user stories. Only 5 user stories need to be selected. Your aim is to show that
you can identify key functional requirements and document them correctly using the User Story template.
In addition to being key functions in the game, the user stories your team selects should be atomic, NOT epic.
For example: clearly the Vizier wants to "win the game", but this is not a good user story as it is too wide in
scope; so identify some of the functions which the Vizier would want in order to achieve this aim. The CARE Case
Study document provides a lot of detail which is not relevant at this stage. This is an exercise identifying some
key functions while leaving consideration of some details for later.
The user story template also requires you to document acceptance criteria for each user story to ensure each
requirement (via the user story) is testable. Tip: if the acceptance criteria for a user story is difficult to write,
check that your user story is atomic/broken down and not an 'epic'.
Task 2: Use Case Diagram
Your team is required to identify a more comprehensive set of requirements to help in specifying an interface.
You should produce a Use Case Diagram to show
Use cases identifying the functionality required by the key actor roles in this game.
ONE <<include>> and ONE <<extend>> use case
Again, you may need to ignore some of the details given in the Case Study specification; this is about identifying
key functions, NOT about detailed rules and procedures. You should NOT be considering HOW the functions will
be implemented, but WHAT they will be providing (a look at the FIRE interface might be helpful)
Hand-drawn diagrams are acceptable but they must be neat and readable. Or you may use a computer-based
tool (such as drawio)). Screenshots can be used to incorporate the diagram into the "Cwk 4 template".
Page 1 of 4 Task 3: Interface CARE specification
Your team should now consider the Use Cases identified for the Vizier and produce a specification for the CARE
interface class. Use cases for Commandant and Tournament Master are NOT required in this interface class.
The game will have two "front end " (VIEW) classes providing for interaction with the player: a menu driven
command line and a Graphical User interface. Section 3 of the CARE Case study describes WHAT is required by
the Vizier(player), but (like in ParkUI of Cwk 3) this should be achieved by calling methods specified in the CARE
interface class. You CARE interface class should specify the signatures of all the methods which you think "front
end" (View) classes may need to call. The interface is concerned with the overall functional requirements of the
system, not their implementation, which will be provided in a key implementing class. This class is likely to
devolve some of its functions to other lower level classes.
Your interface methods should have an appropriate name and should specify parameters. They should be
documented in a Javadoc style (see interface ZAPP, as an example). To reduce coupling, your interface
CARE should only have parameters and return values which are either primitive data types (int, boolean...etc),
String or the interface itself. The interface should make no assumptions about other classes to be used to
implement the system, and certainly not consider any interactions with the player(user). It should NOT be
concerned with input/output.
Task 4: Back-end Domain classes
Back-end domain classes are those which arise from the problem domain (what the project is about). This is a
first draft attempt at identifying these classes. For this task your team should list classes which you think you
would include in the "controller" (back end) part of your implementation.
Give the class an appropriate name which reflects the type of object it will specify
List the fields you expect it to have (together with their types/classes).
Identify any classes which will use inheritance (and the class from which they inherit)
It has already been decided the class which will implement the CARE interface is to be called Tournament (like
Cwk 3 Park class). You do NOT need to include this class (or similar) in your list. Also, do NOT include "front
end" classes which either communicate with users, or test the system
3. Team Working
You are expected to produce this assignment as a team. That means that you must communicate with each other
and cannot just allocate each of the tasks to a different individual team member. It is essential that you meet to
discuss a team solution. A typical work flow might be:
Each individual team member reads the case study
• Each individual team member produces a solution to each task
•
The team meets to discuss the individual solutions and arrive at an agreed team solution
An individual team member is asked to produce the documentation for the task solution
The team reviews documentation produced by the individual team member and agrees amendments,
corrections, omissions... etc.
A final version is agreed and arrangements are made to complete the Cwk 1 part 1 template
This process may lead to some robust discussion, but that is good and likely to lead to a better solution.
However, you are reminded that good teamwork is dependent on respect, politeness and consideration of
people's feelings. Contributions by individuals should be respected even if you think they are wrong. It is up to
you to persuade team members of the correctness of your view, not impose/harangue/shame; you may learn
something by considering other views. All Team members should feel able to contribute without fear. But
equally, all team members are expected to engage/contribute (no shrinking away and leaving it to others).
Page 2 of 4 All 4 tasks must be consistent with each other ("tell the same story"). You can't achieve this if team members
"do their own thing". So co-operation, communication and agreement is essential
In part 2, your team will be expected to use project management software to support your teamwork, and to
provide evidence of this. You are NOT required use project management s/ware for part 1. However, you may
choose to set this up from the start of your work on this assignment. These are aspects of management, which
you have already encountered at level 4:
•
•
Communication - ways for members to communicate with one another.
Planning (Kanban) - ways of identifying, allocating and tracking the progress of project tasks
Repository (version control) centralised access to the project so that team members can make tracked
additions/amendments and it is possible to go back to earlier versions.
For part 2, we will NOT prescribe which s/war you should use; you can use any s/ware which does the job. There
will be more information on this in part 2, but you should begin discussions on this now.
4. Marking Criteria
The assignment must be completed in your assigned teams only. Individual submissions or those with incomplete
teams will not be accepted without the prior discussion of the module leader. Only ONE submission per team is
required/allowed.
You will be assessed against the following criteria:
Task 1: User Stories
Criteria
User stories are appropriate for the stakeholder [2 each]
Acceptance criteria across the user stories demonstrate tests [2 each]
User stories internally consistent
Task 2: Use Case Diagram
Appropriate choice of actors
Appropriate/complete choice of use cases
ONE use case connected to others by <<include>>
ONE use case connected to another by <<extends>>.
Correct use of Use Case Diagram conventions
Task 3 - CARE interface
Appropriate/complete range of method
primitive parameters only
method documentation consistent
Task 4 - Back-end Domain classes
Appropriate/complete set of classes
Appropriate list of class fields with types
Identification of inheritance relationships
Consistency between tasks
Actual
Mark
Max
Mark
10
10
5
Total Part 1
25
3
10
2
2
3
Total Part 2
20
10
4
6
Total Part 3
20
10
10
5
Total Part 4
25
10
FINAL TOTAL
100
Page 3 of 4 4. Team Contribution
As a team you should consider and submit the "Cwk 4 part 1 Roles and Contributions Form" posted with the
assignment. This asks you to give a percentage “contribution” that each team member has made.
If you all agree then you should complete a single team form in your submission.
If you cannot agree, then each team member who disagrees should complete the form individually instead.
4.2. Individual marking
Individual student's Cwk 4 mark will be calculated based the assignment mark. Each team member is expected to
contribute 25%. No individual team member can score higher than the mark awarded for the assignment.
Where a team member's contribution is significantly lower than that of other team members, they will be
awarded only a proportion of the assignment mark.
Contribution
>= 25%
% of assignment mark
100%
20% <= contribution <25%
80%
15% <= contribution <20%
60%
10% <= contribution <15%
40%
5% <= contribution <15%
20%
% as listed
<5% contribution
The raw final mark out of 100 will be scaled to be worth 10% for the module overall.
5. Submission
1. Cwk 4 part 1 template document which contains solutions to Tasks 1-4
2. Cwk 4 part 1 Roles & Contribution Form
Only ONE submission per team is required
Page 4 of 4