Program Design for Network Routing using Dijkstra's Algorithm


Added on  2019-09-16

6 Pages828 Words262 Views
Division of Applied Sciences, Computing & Engineering Computing BSc Programmes Task A: You are create a program design to support your companies design of network routingdesign. This will initially be at the command line to prove the concept and then extended. Your organisation needs to model and simulate its shortest path design based on theDijkstra’s shortest path algorithm Shortest-paths is a broadly useful problem-solving model Maps Robot navigation. Texture mapping. Typesetting in TeX. Urban traffic planning. Optimal pipelining of VLSI chip. Subroutine in advanced algorithms. Telemarketer operator scheduling. Routing of telecommunications messages. Approximating piecewise linear functions. Network routing protocols (OSPF, BGP, RIP). Exploiting arbitrage opportunities in currency exchange. Optimal truck routing through given traffic congestion pattern. Code for this problem is to be created in Python using the command line for proof ofconcept and to be based on a file to be provided (See guidance ). 1.Open the file and read on the data into suitable data structure.2.Perform the shortest path calculation. 3.Output the results to the VDU. 4.Save the results to a file. 1

Task B. Your algorithm has proven to be successful and a GUI version is urgently required by thenetwork team. You are therefore requested to create a GUI version of the original designwith the following demands 1. Input from a data file 2, Graphical display of the graph. 3.The calculated shortest path to be highlighted 4.A save file option 5.The ability to create a route graphically adding nodes and lines using the mouse. Guidance:Your tutor will act as the Network specialist, will be available for interview during class / labsessions. A router diagram will be provided. You may solve the shortest path by simple (manual calculation) but for a more advanceapproach you will implement the Dijkstra algorithm to demonstrate a deeper understandingof the issue. Further guidance: You are to use TkInter for the GUI development The design of a realistic and easy-to-understand user interface is expected. Your solution should include classes, methods and event/general functions as appropriate.Refer to the Assessment criteria below for guidance on how to pass this assignment. Yourwork will be assessed on how you define / model the requirements in your designdocumentation and how you communicate your design decisions. You may obtain furtherguidance from the module tutor. Submission: (All submissions are through the relevant assessment Moodle on Moodle) 2

A full report containing your design documentation Testing and debugging Demonstrate your GUI solution. Assessment:To obtain a ‘C’ all the criteria listed must be achieved. Higher grades will be given for workof higher quality. For example a ‘B’ – ‘B+’ for work of high quality in some areas and a ‘A’for work of high quality in all or most areas. Learning Outcomes Assessment Criteria To achieve each outcome a student must demonstratethe ability to: Implementprogramdesigns in an object-oriented programminglanguage. Investigate software design methodologies andpractices to produce appropriate analysis, design,requirement and user documentation Quality will be demonstrated by the following: 1.Creativity and adaptability 2.Showing synthesis of concepts 3.Breadth and depth of the solution design 4.Autonomy and independence 5.Coherence of design 6.Extent of exploitation of the GUI 3

End of preview

Want to access all the pages? Upload your documents or become a member.

Related Documents
The Programming Paradigms : Assignment

Individual Effort Sources for Materials