logo Use CA10RAM to get 10%* Discount.
Order Nowlogo
(5/5)

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.

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

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

[basic, 5 marks]

 

  1. 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]

 

  1. Create the JSON object following the structure of your JSON-specific class

[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.

 

  1. Create a reduced class diagram containing only the elements relevant to this task. Justify your [basic, 10 marks]

 

  1. Create an XML-specific class diagram and justify the chosen document structure using the requirements from the scenario. [basic, 10 marks]

 

  1. Derive the DTD and justify the style of mapping you have chosen for the

[basic, 10 marks]

 

  1. Is the mapping from the class diagram in 5 to the DTD data preserving? Please justify your answer. In particular
    1. 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.
    2. 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
  • The integrated model should be free of redundancy in the sense that every concept should only be represented
  • The integrated model should be able to represent consistent individual timetables across several terms of up to five academic

 

 

Proceed along the following steps:

 

  1. Identify the conceptual overlaps and conflicts between the two models in an itemised list.

[moderate, 10 marks]

 

  1. For each overlap or conflict you identified, explain it in a single sentence and say how you chose to resolve it in the integrated

[advanced, 10 marks]

 

  1. Create an integrated class diagram following the choices made under

[advanced, 10 marks]

(5/5)
Attachments:

Related Questions

. Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

. The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

. Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

. SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

. Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Um e HaniScience

601 Answers

Hire Me
expert
Muhammad Ali HaiderFinance

624 Answers

Hire Me
expert
Husnain SaeedComputer science

622 Answers

Hire Me
expert
Atharva PatilComputer science

922 Answers

Hire Me