Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit



Coursework Assignment

CSC-40044 System Design & Programming

 

Three files have been placed on the KLE, containing information in comma-separated values (CSV) format on the London Transport underground network:

1.  londonstations.csv contains a list of London Underground Stations with the      important data attributes id, name and total_lines, together with other attributes.

2.  londonlines.csv contains the attributes line_id and name, again with other less important attributes from the perspective of this assignment.

3.  londonconnections.csv contains the from and to station ids of all connections    between 'adjacent' stations with additional attributes line_id and time (in minutes).

Using the ideas and principles taught within this module, design and construct an application with a simple graphical user interface (GUI) that will permit users to find the fastest route between any two stations, ignoring the time taken to travel between platforms and wait for a train.

The interface should allow the user to indicate that particular lines have been closed and/or that particular stations are out of service. The algorithm should adjust to such circumstances. How your application presents station choices and resulting routes is up to you.

You may import modules as long as they ship with a basic Python3 installation. This can be         checked at the following website: https://docs.python.org/3/py-modindex.html. However, you are expected to implement your own network graph representation and associated algorithm.

You should submit either a single Python file containing your solution and integral documentation or a zipped (.ZIP format) file containing your Python code and accompanying documentation in    MS Word or PDF format, to the KLE drop-box.

Marking Scheme

Overall application design (30%)

Marks here will be awarded in accordance with the design principles established within the           course. In particular, the quality of partitioning and the design goals of Flexibility, Extensibility,     Maintainability, Robustness, Performance and Usability. Note that this need not necessarily imply an object-oriented design. Appropriate levels of abstraction, partitioning, decoupling, and             maximisation of functional cohesion, should be the driving forces.

Construction of a graph to represent the network information (20%)

Implementation of GUI (10%)

Implementation ofa basic routing algorithm (10%)

Implementation of an algorithm that takes account of line and station closures (10%)

Code quality, including error/exception handling and internal comments/documentation (20%)

 

Within each of the above categories, marking will be according to the University's generic FHEQ   level 7 assessment criteria. The pass mark is 50%.