college paper writing services on UML Assignment
ISAD141: UML Assignment
2014–15
This assignment is to be an individual piece of work. You should carry out all aspects of this assignment entirely on your own. The weighting of this assignment is detailed in the module overview.
You should submit your solutions, using the accompanying cover sheet, to the Faculty Office
(ground floor Smeaton) by the deadline: 12 noon, 27th March 2015
All parts of this assignment are based upon the ASD case study (see below for details). If there are any areas that you feel are incompletely specified, inconsistent or ambiguous then please include these as assumptions. UML diagrams should not be hand-drawn.
- 1. Draw a high-level activity diagram illustrating the entire business process relating to projects
(from RFQ to project completion). (10 marks)
- 2. “Create stage plan” and “Add a task to a stage” are clearly important use cases/system service Identify 6 other critical use cases/system services. You should present each of these services as (i) a use case label; and (ii) a textual statement at the level of detail normally associated with user requirements. (12 marks)
- 3. Draw an overall use case diagram1 for the proposed system. Your diagram should include the 8 use cases2 from Question 2 above, and any other use cases that are related to these via either an extend or an include relationship3. (10 marks)
- 4. Draw a class diagram for the ASD system. You should employ composition, aggregation, association classes, specialisation, abstract classes wherever the case study suggests their u You do not need to include operations for your classes (in this question). You are welcome to include attributes if you think that they provide clarity to the meaning of any of
your classes. (18 marks)
1 You are welcome to represent your diagram as a set of diagrams (rather than a single diagram) if you prefer.
2 i.e., “Create stage plan”, “Add a task to a stage” and the further 6 that you’ve identified
3 There is no requirement for your use case diagram to be consistent with the initial use case description for “Add a task to a stage” presented in Figure 1. Instead you should focus on introducing new use cases appropriately and employing extend and include in a proper fashion.
- 5. “Add a task to a stage” is clearly an important use case/system serv Commencing with the initial (and simplified) use case description depicted below, draw a communication diagram (i.e., a use case realisation)4 for this use case. This should include the relevant boundary, control and entity classes that are needed to fulfil the required functionality.
(25 marks)
Figure 1: Initial use case description for “Add a task to a stage” | |
Actor | System |
1. User triggers use case | 2. Display list of current projects |
3. Select project | 4. Display list of current stages for the selected
project |
5. Select stage | 6. Display list of current tasks for the selected stage |
7. Enter task details | 8. Store task details; display staff workload
allocations |
9. Select member of staff to
allocate to task |
10. Allocate member of staff to task; Confirm |
Alternate flows: the alternate flows are not yet present in this initial description, and can
therefore be ignored in your use case realisation. |
For each of the entity classes within your communication diagram/use case realisation, what operations (on that class) have been identified by the use case realisation? (5 marks)
- 6. The BCS Code of Good Practice contains a number of principles (g., Maintain Your Technical Competence), each containing a number of sub-principles (e.g., “Seek to improve your …”). Similarly the BCS Codes of Conduct identifies 4 categories each containing a number of principles (e.g., “You shall have due regard for public health, privacy, security and wellbeing of others and the environment”). Identify 5 of these principles and/or sub- principles that you think are of particular relevance to those carrying out the ASD software development project, explaining specifically why you consider them to be of particular
relevance. You should write at most 500 words.
(20 marks)
4 I suggest that you present your communication diagram/use case realisation as a set of separate communication diagrams.
Active Software Development (ASD)
ASD is a software development house. They specialise in developing bespoke software systems for individual client organisations. Most of their development work is carried out by in-house staff, although occasionally they may subcontract out part of the work to an outside contractor.
ASD currently employ a management information system to support the management of their software development projects. They are happy with the functionality of this system, but it is based upon an old software package for which support is now a problem. They therefore wish to replace the present system with one which provides the same functionality, but which is based upon
modern technology.
Projects
A project has:
- A predicted launch date
- An actual launch date
- A predicted completion date
- An actual completion date
- A predicted (estimated) cost
- An actual cost
- A price (to be charged to the client)
Potential clients first submit to ASD a Request For Quote (RFQ) indicating the required characteristics of their proposed software system. In response to an RFQ, ASD enter some initial details of the project into their information system such as the client name and contact details, initial description of the system to be developed, and any associated documentation.
After an initial meeting with the client, ASD allocate a prospective project manager (from amongst the in-house staff), who then
- Updates the initial project details
- Examines existing staff workload allocations in order to develop an initial project plan (see below) for the proposed project
- Uses the project plan to produce the estimated cost, and proposed price to be charged to the client
If, on the basis of the above, the client decides to go ahead, then a contract between the client and ASD is drawn up; the terms of this contract (including penalties for cancellation and late delivery) may vary from one project to another.
Project plans and stages
Each project has a project plan consisting of a series of non-overlapping stages. For example a software development project with predicted launch and completion dates of 1/8/2015 and
31/7/2016 (respectively) might have a project plan of the form
Stage | Predicted start date | Predicted completion date |
Systems analysis | 1/8/2015 | 31/10/2015 |
Systems design | 1/11/2015 | 31/12/2015 |
Implementation | 1/1/2016 | 30/4/2016 |
Testing | 1/5/2016 | 30/6/2016 |
User training | 1/7/2016 | 31/7/2016 |
Each stage has:
- A predicted start date
- An actual start date
- A predicted completion date
- An actual completion date
- A predicted (estimated) cost
- An actual cost
Stage plans and tasks
Each stage has a stage plan made up of tasks; each task is allocated to a single member of staff who will in due course undertake the work. Each task may be dependent upon one or more other tasks: Task T2 is dependent upon T1 if T2 cannot start until T1 has finished.
Whereas the project plan is developed before drawing up the contract, individual stage plans are developed at the start of each stage. Developing the stage plan entails adding the appropriate tasks to the stage, and allocating staff to the tasks (the latter requiring information about workload allocations and information about contract staff who are contracted to the stage).
Each task has:
- A predicted start date
- An actual start date
- A predicted finish date
- An actual finish date
- A predicted (estimated) cost
- An actual cost
Staff
Each member of staff (either in-house or contract staff) is allocated to work on one or more tasks;
their workload allocation consists of the details of the tasks that they are allocated to.
Contract staff tend to be employed repeatedly and therefore (once contracted) their details are stored in the system on a permanent basis. Contract staff are contracted to individual stages: For each of the contract staff working on a stage there is a contract which identifies (amongst other details) the total hours to be committed to the stage, and the total salary to be paid to the
contractor (for their work on the stage). Contract staff may be allocated to a stage either when developing the stage plan, or previously.
**************************
Assessment criteria: In all cases the requirements identified should be implied by the case study and modelled as required (and where applicable make proper/correct use of the UML notations). Beyond this, question specific criteria are as follows:
Assessment criteria | |
Q1 | Does the activity diagram cover the full lifecycle and identify the activities suggested by
the case study (at an appropriate level of abstraction)? Are all activities labelled appropriately and are transitions labelled appropriately where necessary? |
Q2 | For each of the services identified: Is the service suggested by the case study? Is the
label a properly formed use case label? Does the user requirement describe the requirement with an appropriate level of abstraction and information content? |
Q3 | Does the use case diagram contain the use cases from Question 2? Are additional use cases introduced appropriately?
Are extend and include relationships used appropriately? |
Q4 | Are all of the classes (that are suggested by the case study) included?
Are all suggested relationships included; are they labelled appropriately; do they have correct cardinalities/multiplicities attached? Are composition, aggregation, association classes, specialisation, and abstract classes appropriately used wherever the case study suggests their use? |
Q5 | Do the communication diagrams contain appropriate boundary, control
and entity classes? Are the diagram messages numbered appropriately? Are return values clearly and appropriately depicted? Do the diagrams correctly implement the steps in the use case description? Are all required new objects and links appropriately created? Are the class operations correctly extracted from the communication diagrams? |
Q6 | Appropriate principles identified
Justification for the principles identified |
Is this the question you were looking for? If so, place your order here to get started!