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

688 Answers

Hire Me
expert
Muhammad Ali HaiderFinance

608 Answers

Hire Me
expert
Husnain SaeedComputer science

766 Answers

Hire Me
expert
Atharva PatilComputer science

992 Answers

Hire Me

Get Free Quote!

277 Experts Online