University
of Leicester
SOA: Service-oriented
Architectures
Winter 2020
Reiko Heckel
(reiko@mcs.le.ac.uk)
Coursework 2: From UML to XML and JSON
This model describes the data held by a module registration system. Programmes (such as
Advanced Computer Science) have modules to which students enrolled on these pro-
grammes can be registered.
Operations
getModuleRegistrations(sid: Int): Student
Pre: Assumes sid of an enrolled student.
Post: Returns all module registrations of student matching sid including the student’s details.
getAllRegistrationsForProgramme(name: String): Programme
Pre: assumes name of an existing programme.
Post: Returns all module registrations of all students of the matching programme.
Assignment
The problems in Part A, B and C are independent of each other. While they use some of the
same class models and requirements, they are concerned with different operations, scenar-
ios and target languages. Therefore, your design choices to A, B and C can be different, too.
Part A: JSON – based on Part 2.5
Create a sample JSON object that could be returned as a result of invoking
getModuleRegistrations (12345678) as specified above, in the following steps:
1. Create a reduced class diagram containing only the elements relevant to this task.
[basic, 5 marks]
2. Create a class diagram defining the structure you want to use to represent the data in
JSON. This is analogous to an XML-specific class diagram, except that the target language
is JSON. What is the structure of the mapping you have to use?
[basic, 5 marks]
Student
name: String
sid: Integer
Module
code: String
registeredFor
*
Programme
name: String
academicYear: String
enrolledIn
1
*
*
*
*
3. Create the JSON object following the structure of your JSON-specific class diagram.
[basic, 10 marks]
Part B: XML – based on Part 2.1 – 4
Design a DTD that could support the data returned by an invocation of getAllRegistra-
tionsForProgramme(“Advanced Computer Science”) as specified above, following the
steps below. Take care to create a solution that minimises redundancy to ensure a compact
representation of the data.
4. Create a reduced class diagram containing only the elements relevant to this task. Justify
your choices.
[basic, 10 marks]
5. Create an XML-specific class diagram and justify the chosen document structure using
the requirements from the scenario. [basic, 10 marks]
6. Derive the DTD and justify the style of mapping you have chosen for the attributes.
[basic, 10 marks]
7. Is the mapping from the class diagram in 5 to the DTD data preserving? Please justify
your answer. In particular
a. If the mapping does not extend data capacity, provide a valid object diagram
as counterexample and explain why there is no corresponding valid XML in-
stance.
b. If the mapping does not reflect data capacity, provide a valid XML instance as
counterexample and explain why there is no corresponding valid object dia-
gram.
[moderate, 20 marks]
Part C: Data Integration – based on Part 3.2
The class diagram below defines the data held by a timetabling system, allocating sessions
for modules held during a certain term, at certain times of the week, in certain rooms.
A personal timetable allocates to each student the timetabled sessions for the modules they
are registered in. To create such a personal timetable we need to integrate the data models
of the timetabling system and the module registration system.
The integration should satisfy the following requirements:
• All data representable with the two given models should also be covered by the inte-
grated model, i.e., both mappings from the given models to the integrated model
should extend the data capacity.
• The integrated model should be free of redundancy in the sense that every concept
should only be represented once.
• The integrated model should be able to represent consistent individual timetables
across several terms of up to five academic years.
Proceed along the following steps:
8. Identify the conceptual overlaps and conflicts between the two models in an itemised
list.
[moderate, 10 marks]
9. For each overlap or conflict you identified, explain it in a single sentence and say how
you chose to resolve it in the integrated model.
[advanced, 10 marks]
10. Create an integrated class diagram following the choices made under 9.
[advanced, 10 marks]
Submission and Mark Distributions
Submit by 4pm on Thursday, 27th February through via the module’s BlackBoard site. Upload
a single pdf document containing all your answers with the completed coursework cover
sheet as first page. This is individual work for 20% of the overall module mark. No hand-writ-
ten solutions please – use editors for diagrams and text.
The assignment contains a mix of basic, advanced and challenging questions. Jointly the
basic elements allow a pass mark of 50%. The advanced question are open-ended, requiring
your own judgment and reflection on the properties of different solutions.
Enjoy!
Room
building: String
number: String
Module
code: String
Session
weekday: Day
time: Time
InRoom
*
ofModule
1
1
*
Term
start: Date
end: Date
duringTerm
*
1
We provide professional writing services to help you score straight A’s by submitting custom written assignments that mirror your guidelines.
Get result-oriented writing and never worry about grades anymore. We follow the highest quality standards to make sure that you get perfect assignments.
Our writers have experience in dealing with papers of every educational level. You can surely rely on the expertise of our qualified professionals.
Your deadline is our threshold for success and we take it very seriously. We make sure you receive your papers before your predefined time.
Someone from our customer support team is always here to respond to your questions. So, hit us up if you have got any ambiguity or concern.
Sit back and relax while we help you out with writing your papers. We have an ultimate policy for keeping your personal and order-related details a secret.
We assure you that your document will be thoroughly checked for plagiarism and grammatical errors as we use highly authentic and licit sources.
Still reluctant about placing an order? Our 100% Moneyback Guarantee backs you up on rare occasions where you aren’t satisfied with the writing.
You don’t have to wait for an update for hours; you can track the progress of your order any time you want. We share the status after each step.
Although you can leverage our expertise for any writing task, we have a knack for creating flawless papers for the following document types.
Although you can leverage our expertise for any writing task, we have a knack for creating flawless papers for the following document types.
From brainstorming your paper's outline to perfecting its grammar, we perform every step carefully to make your paper worthy of A grade.
Hire your preferred writer anytime. Simply specify if you want your preferred expert to write your paper and we’ll make that happen.
Get an elaborate and authentic grammar check report with your work to have the grammar goodness sealed in your document.
You can purchase this feature if you want our writers to sum up your paper in the form of a concise and well-articulated summary.
You don’t have to worry about plagiarism anymore. Get a plagiarism report to certify the uniqueness of your work.
Join us for the best experience while seeking writing assistance in your college life. A good grade is all you need to boost up your academic excellence and we are all about it.
We create perfect papers according to the guidelines.
We seamlessly edit out errors from your papers.
We thoroughly read your final draft to identify errors.
Work with ultimate peace of mind because we ensure that your academic work is our responsibility and your grades are a top concern for us!
Dedication. Quality. Commitment. Punctuality
Here is what we have achieved so far. These numbers are evidence that we go the extra mile to make your college journey successful.
We have the most intuitive and minimalistic process so that you can easily place an order. Just follow a few steps to unlock success.
We understand your guidelines first before delivering any writing service. You can discuss your writing needs and we will have them evaluated by our dedicated team.
We write your papers in a standardized way. We complete your work in such a way that it turns out to be a perfect description of your guidelines.
We promise you excellent grades and academic excellence that you always longed for. Our writers stay in touch with you via email.