Documente Academic
Documente Profesional
Documente Cultură
Assignment
Due: Week 11 Monday 12 May, 12:00 noon.
[Originally 5 May.]
Introduction
Theres a lot of information in this section, some implied. Be prepared to read it several times!
Your company, US Robotics, aims to design and sell a range of different robots for
use in homes and businesses. US Robotics needs a software system to keep track of
everything it does. In particular, this includes:
Research and development of new technology.
Production and marketing of robots.
The company employs teams of researchers. Researchers work on projects to create
new models of robots. Your software must allow researchers to create new projects,
choosing a unique codename to identify the project. Researchers must then be able to
periodically upload design specifications (documents) and performance data (spreadsheets) to be recorded as part of a project. When they do this, researchers should
also be asked to update the projects status, which can be (1) conception, (2) experimental, (3) development and (4) mature. It is expected that a project will
progress through each of these stages, from 1 to 4, over a period of months or years
(i.e. not all in one go). Some projects may also never progress beyond a particular
stage. All this information is kept in an external research database.
Projects that reach the mature stage can go on to become products to be sold. The
system helps co-ordinate this decision (since the people involved may be in remote
locations), but the person who initiates it is the companys director of marketing.
The researchers are also involved, along with the director of manufacturing. All
people involved must be logged into the system.
It is assumed that the researchers and directors have previously communicated, so
they have all the required information at hand. The director of marketing selects
one of the mature projects, proposes a model name (to replace the codename), and
proposes a price per robot and a target for the first year of sales (i.e. the number of
robots the company should aim to sell). Meanwhile, the director of manufacturing
provides estimates of the cost to make each robot, and the maximum number of robots
the company can make per month.
Page 1 of 4
SE 110
2014, semester 1
The system then displays all this information to all parties the researchers and
directors who then indicate their approval. Finally, a new product record is added
to the products database (separate from the research database).
Employees working in marketing or manufacturing are able to add relevant data to
the system as time goes on. For marketing, this means sales data the number of
robots sold in a given month. For manufacturing, this means production data the
number of robots produced in a given month. In both cases an employee must specify
the model in question, the relevant year and month, and an integer (either the sales
figure or the production figure). Both figures are kept in the products database.
The director of manufacturing marketing* is also able to update the price per robot,
and has the ability to discontinue a model. When a model is discontinued, this is
recorded in the products database and the director of manufacturing is notified. No
further production figures for discontinued models are allowed to be added.
[* Corrected on 2014-04-24.]
Your Tasks
As you are aware, your assignment mark is determined in part by your practical
work (as detailed in the unit outline). Therefore, the practical worksheet signoffs are
considered part of the assignment. You do not need to submit your practical work
simply continue to have it signed off.
The other part of the assignment is described here. Start as soon as possible, and keep
at it. If you need clarification, the ask the lecturer good, specific questions, and ask
them early.
Task I: Requirements
Your first task is as follows:
(a) Determine all the actors involved in the system.
(b) Determine all the user stories.
(What does all mean? Your set of actors and user stories should cover everything described in the previous section, and nothing else.)
(c) Develop a complete use case for the approval process for new products.
(d) Pick three other user stories, substantively different from each other, and develop each one into a complete use case.
(e) For each of your four use cases, come up with rough plan for testing that functionality. In a paragraph of plain English, explain how you would test whether
the final system correctly implements the use case.
(Were not after formal test cases for this part.)
Page 2 of 4
SE 110
2014, semester 1
[Updated on 2014-04-24.]
SE 110
2014, semester 1
This goes a little above and beyond what youve already done. You have some flexibility in how you design the various submodules use it wisely!
The methods createFakeResearchDB, etc. are not provided, nor is the production
code itself, in either source or compiled form. Thus, you wont be able to compile
and run your test cases, unless you choose to create dummy versions of the required
methods. In any case, you must still write good quality test code!
Submission
Prepare a document containing your complete solutions to the above tasks, including
all answers, discussion and source code. Your work must be neatly presented and
easy to read. Include your name and student ID!
Submit your document electronically to the Assignment area on Blackboard, in one
of the following formats: .pdf, .odt, .doc or .docx.
If you cant submit to Blackboard, email your work to david.cooper@curtin.edu.au
instead (with the subject SE110 Assignment), but do so before the deadline.
Mark Allocation
Here is a rough breakdown of how marks will be awarded. The percentages are of
the total possible assignment mark:
End of Assignment
Page 4 of 4