School of Electrical Engineering, Computing and Mathematical Sciences Curtin University
Requirements Engineering (CMPE2002) – 2023 Assignment 2: Advanced Requirements Modeling and Specification
Due Date
20th of October, Friday (Teaching week 12 – 21.00 pm Perth local time online through Blackboard)
This assignment counts for 30% of the final marks.
Important note
1. This assignment is to be carried out in a group of a maximum of four students (preferably
Assignment 1 group within the same workshop session). Each group will submit one
report through blackboard.
2. Each group is required to continue to work on the selected problem statement from
Assignment 1.
Objective
Assignments’ 1 and 2 are closely related to each other. The two assignments together form a complete software requirements specification. In these two assignments, you will analyse the requirements and write a requirements specification for a software development project of your own choice from the problem statements provided. Assignment 1 expected you to model the problem using a mixture of modeling techniques.
Assignment 2 expects you to further use advanced modeling techniques like UML class diagram, goal modeling and i* models (both SD and SR Diagrams) and then produce a software requirements specification (SRS) document. The objective of this assignment is to give you practice in organizing the results of a requirements analysis and modeling process into a formal specification document.
Doing the Assignment
This assignment has following steps. They are listed as below:
1) Further, develop models of key aspects of the problem. Your models must include:
a) The structure of application domain information to be represented by the proposed
system (using UML Class Diagram). Include details on generalizations,
aggregation, composition, associations, cardinality and role names where they
apply.
2
b) Model stakeholder goals using “goal modeling” and capture the organisational
context, dependencies between various actors and internal intentional rationale
using the i* models (both SD and SR Diagrams).
Note: Drawings must be clear and legible. You can use open source modeling tools of your choice like ArgoUML, Star UML, PlantUML, OpenOME etc to draw your models – Strictly, do not draw models/diagrams by hand.
2) Further extend and refine identified requirements (you have already identified subset in
Assignment 1), including all functional and non-functional requirements for the new
system, the data that the system will need to manage, interfaces to other systems, and
interfaces for different classes of users.
3) Design a product backlog table that contains all the functional requirements, including the
extended ones. The product backlog table will have three columns: user stories, story
points, and iteration or sprint number. All functional requirements can be written either in
user story format or in functional/feature statement format (as encouraged in
lectures/workshops). Assume that you have 15 weeks (10 sprints/iterations) to complete
the entire project. Based on the complexity, assign a story point to each functional
requirement. Assign a sprint/iteration number to each requirement based on its priority.
Determine the scope of the project and design a burn-down and burn-up chart based on
the product backlog table.
Assume that after 7th sprint, a few new requirements are added to the product backlog table, and the scope of the project has increased. At 13th Sprint, some of the requirements are dropped. Consequently, the scope of the project changes again from the 13th sprint to 15th sprint. Show these changes through the burn-up chart and draw your conclusions. Recollect – “Change Management” discussion.
4) Trace these requirements to the models you produced in Assignments’ 1 and 2.
Requirements must be traceable to the models. Note: Just reference them.
5) Write a formal requirements specification that documents these requirements (using the
IEEE standard or Karl E. Wiegers SRS document). IEEE & Karl E. Wiegers templates are
provided on the unit webpage as ready reference).
6) Create wireframe/mockup diagrams that illustrate what the requirement or functionality
may look like when fulfilled. These must be done using appropriate diagram modeling
tools such as draw.io, cacoo.com or any other suitable tool you have come across.
7) Clearly list any assumptions you might make in completing this assignment at appropriate
places.
Written requirements of the assignment:
You should hand in a report (in .pdf format and contain all relevant graphics) of your work, not exceeding two (2) pages (not counting references, appendices, figures or tables etc). The report itself is intended just to give an overview of what you did, and the rationale for any choices you made (e.g. about what to model and how to model it; how to organize the specification; the requirements elicitation techniques used to further refine the requirements, discuss any interesting lessons learned during the elicitation and modeling process etc). Your appendices (see below) are likely to be considerably longer than this report.
3
The report should include the following:
1) A methodology section that describes your analysis process, including steps you took for
further requirements identification, elicitation, and documentation as SRS.
2) A discussion session that briefly describes any difficulties you encountered, limitations on
your analysis, interesting lessons learned during the analysis and specification process, etc.
3) A conclusion that summarizes the key points in the report, including a brief assessment of
what you have achieved overall.
4) An appendix containing all of your models (UML Class Diagram, Goal Models and the i*
Models). Make sure you provide enough commentary on the models for the reader to
understand what each model is off, and how to understand them.
5) The second appendix contains a product backlog table and all the burn-down and burn-up
charts.
6) Third appendix containing a detailed requirements specification (SRS). Use the IEEE
standard or Karl E. Wiegers SRS document to give you a structure for this document.
7) Forth appendix containing wireframe/mockup diagrams.
8) Any further appendices you feel are relevant
Assignments will be judged on the basis of visual appearance, grammatical correctness and quality of writing, as well as their contents. Please make sure that the text of your report is wellstructured, using paragraphs, full sentences, and other features of a well-written presentation. The report must not consist of itemized lists of points. Text font size should be either 10 or 12 points.
4
Team Report Form for Assignment 2
Requirements Engineering (CMPE2002) – 2023
(must be submitted separately by each team member during Week 12 Workshop to the Tutor)
Submitted by:
Signature (with date):
Description of roles and contributions of each team member:
Name | % of team effort |