Home

Summary - VLE - University of Leeds

image

Contents

1. Chester 06 40 05 48 1H42 im WarrgtnBCO 14 07 15 1H42 INewtonLe O7 24 0724 199 OOO OxfordRd 07 45 DZAT 1H42 kai 9 49 DIAGRAM NH326 1560 TWO 08515 2 L d d ManchstrP 0748 2042 Stockport 07 50 08 00 2042 j Chester 0913 josz as jo o HIE T OE HEH o 58
2. Once the diagrams and their routes have been added the coupling information is then added This results in the raw data having to be iterated through twice which does slow the process down This was done in order to check that the related train data matched up with the coupled train This could only be done once the diagram data had been added to the system Once the import has take place a message is given to the user stating that the import has been completed 4 2 6 Export Data Once the data has been imported relief points chosen route sections created and route knowledge added the data is ready to be exported Selecting export from the drop down menu carries out this process If the required processes have not been carried out when the export function is selected the system will inform the user as shown below This stops any errors taking place and informs the user of the correct action required latest Route Sections must be created before export can take place Figure 4 9 Route section error message If all the required processes have been carried out then the system will ask the user to select a file to export to The system uses a similar screen to that used when selecting a file to import this creates consistency in the system as required in the design of the interface stated in Chapter 3 The file is then exported The schedule system requires that the exported data be set out in an exact specified format The informa
3. This is useful for the system in question as it can easily be broken down into the following operational products e System Database e Selection of Relief Points e Route Section Knowledge Update e Train Data Manipulation e Create Route Sections Function 13 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish e Import Function e Export Function delivery of Ist increment increment 2 analysis design test delivery of 2nd increment increment 3 analysis design test delivery of 3rd increment increment 4 analysis design test delivery of 4th increment y calendar time Figure 2 2 A diagram of the incremental model Pressman states that the prototype method can be used in conjunction with the incremental model Prototyping enables the designer to obtain feedback from the user as to the suitability of the produced software It was therefore decided to use the incremental method breaking the software into the above products and using the prototype method to gain user feedback This is reflected in the schedule for the project found in appendix C This schedule was later updated to incorporate two missing items of work omitted These were the export function and the testing of the system These were duly added as shown in appendix D 14 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 3 Design This chapter looks at the design issues i
4. Application in the School of Computing eseeeeeeeee eens 2 1 3 Project PropoOSall siirre e a bee leye a aae 3 ANALY SIS TT 5 2 1 Background Anayasa ee ee 5 2 2 User eQuireinenis t wicticemclivacgath ci eat ee det AG tee ole 6 23 Technology e aaa e ics ton elena este ees 10 24 Methodology sexe es Hebe De eee a eee 13 STs rar e as eas cae sg eee eb ee acca oe eee nec 15 3 1 Database DESIGN svi cscs setae Or O sks arse O NEKAT KORR dR ekta cunts 15 3 2 N rmalisatlO Moneter n es ete dan casi loan eh isla rh ide den ave ee dee 18 3 3 DENGFMAlS ATOM sseui dr 252 Oea 922 SNG secede SR TYH C 229 CT 9 ZR aed 19 3 4 User Interface ae ee eee Gee ne Eee eer eRe Ree Re ere errr eee eee 21 Implementation ssia iaaiaee ete aera eee ee eek 26 4 1 Database Implementation ee K cece cece K K 26 4 2 Operational Products Implementation sss ee e e e e K e KK 27 4 2 1 Relief Point Seleccions e e e KK 27 4 2 2 Route Section Knowledge Update sees ee eee 28 4 2 3 Train Data Manipulation see e e e eee cece KK 29 4 2 4 Route Sections Function xxe ee e e K 30 422p Imp te Geers ere ene eta Se ey eer eRe Eon Rar veer 31 4 2 6 Export Data 66 ara aT RRR EAT REA ane enka ele 32 4 2 1 Process FORM ks acolo Oe tad OR eto SE ta ad ie 34 43 User Manual ci ceteccedssarnnsivacswoasumacanesesbuteeeesancetseaepaeasmseseaciaeceaseee e 35 4 4 Installation ecto eee e tenes ashe AGG Sot ee LN ates Zn aa 35 a 3 1 E E T T E 37 5
5. Delete Related Records Relationship Type One To Many Figure 4 1 Application of referential integrity through Microsoft Access Visual Studio net allows for the creation of datasets when dealing with database records Tables and relationships can be specified in a similar way to the defining of relationships in Microsoft Access One of the issues with this is that of cascading deletions which both Access and Visual Studio net include This can create the possibility of concurrency errors if at both the interface and database level records are 26 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish automatically being deleted It was decided therefore to include the cascade facility purely at the database level as this is the permanent storage area Bilgin 2002 highlights the fact that large datasets can slow a system down as the whole dataset is updated when saving to the database The implementation therefore uses a number of small datasets 4 2 Operational Products Implementation Each of the operational products was implemented in turn and are now as follows 4 2 1 Relief Point Selection The first section of the implementation was to create a system for selecting relief points As the user may need to change which points are relief points relatively frequently it was highlighted by the user that they would prefer a system of selecting points from a list in order to change them An initial proto
6. Train Driver Scheduling Jonathan Fish all data on the one screen was then applied to all screens from this point on as will be shown in the following chapter As well as making the project user centred in order to ensure good human computer interaction there are a number of standard rules that can be applied to an interface to ensure good practice Neilsen 1993 specifies the following criteria generic enough to be able to be applied to almost any interface With each rule an application to the schedule formatter software is given stating how it will be represented in the system Simple and natural dialogue This relates to issues such as the number of options given to the user at any one time and the amount of text displayed to the user and the way the information is set out on the screen The software will use the standard Microsoft grey background with black text This is a proven system and is used across most Microsoft software Information will be grouped together in the form of tables The system is not textual in nature and therefore the rules regarding layout of text do not apply Speak the users language In most cases this would mean using everyday language However as we have discussed in the first chapter the rail industry uses specialised terms These terms have been used throughout the system Clear language has also been used when providing error messages Minimise user memory load This process is in regards to di
7. carried out by one of the end users Ignacio Laplagne a PhD student in the School of Computing who tested the black box areas of the system When the user came to testing they preferred not to use the given system and found it easier to write a list of their findings Although this was not as simple to analyse as the given form the information that would have been shown on the form was still retrievable from the users notes The designer carried out the white box testing This was a very useful process and highlighted a number of problems which would probably not have been found 39 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish otherwise This included issues such as storing the data twice in the dataset when importing the data two times in a row The user would probably not carry out this action very often but by applying the test was uncovered Jacobsen et al 1999 highlight another test known as the installation test This is only relevant to customised software rather than mass market and tests that the software works correctly on the users system This test highlighted a number of small problems that were duly rectified The final test as mentioned above was that of the export facility A number of amendments were needed in this area as the schedule system is very specific in how the data should be represented Issues such as blank lines and spacing of data had to be corrected before the data was ac
8. in the spreadsheet has a heading giving the diagram information This row is used to find the start and end of a diagram The system checks to see whether the diagram already exists If it does an error message is shown to the user as follows The user is then given the option to view any further errors or to ignore them Import Error Train 007 was not found while trying to add coupling Data added to errors table Would you like to continue to view errors Yes No Figure 4 7 An example of an import error Any errors resulting from the import are shown on the import error screen shown below EE Schedule Formatter File Help Relief Points Route Sections Points Diagrams cl Diagram Diagram_Cod Engine Operation_Co Subset_Code gt CH720 175 0 TWThO xP Diagram Routes ddedTime_ Arrival Departure Diagram_Cod Driver_Neede ID Point TrainType_ lt gt Im null 21 31 CH720 0 46 Mancr ir 1C70 null 21 48 21 51 CH720 47 ManchstrP 1C70 null 21 53 21 54 CH720 48 OxtordRd 1c70 null 21 59 22 00 CH720 49 SalfdCres 1C70 fol 9910 van cuvon En DIK 107A Coupling train_id CH724 CH725K CH725K CH725K Figure 4 8 The Import Errors information screen 32 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish This allows the user to see which records were not added to the database and can then allow the user to decide what to do with this information
9. of consideration given by Reese will be looked at in the next section 5 2 Test Design Figure 2 2 in Chapter 2 highlights that testing should be carried out as part of the process of creating each operation product In light of this basic testing was carried out at each of these stages with a more in depth testing of the whole system planned once all the operational products had been produced Mosley and Posey 2002 state that designing the tests is the most important part of the testing process and highlight the need for the tests to test the requirements of a project Jacobsen et al 1999 define two types of test that can be carried out on a project e Black Box Test A black box test tests the externally observable behaviour of a system It is therefore concerned with the users interaction such as the input and expected output of the system e White Box Test A white box test tests the internal interactions between components of the system It therefore tests what the user cannot see and looks more at the interaction of the processes within the system Jacobson et al 1999 highlight that a test case should be evolved around the use cases and state that to be complete the test case must specify the input expected result and other conditions relevant for verifying the scenario of the use case This approach was therefore employed when testing the schedule formatting software The user was given a set of tasks based on the use cases
10. section creation process An example of which is shown below HE Schedule Formatter Eile Help Relief Points Route Sections Points Diagrams Import Errors Route Section Yia Point From_Point Ta Point Knowledge Via Points ChesterCS Chester YES gt Bolton Chester LludnoJn SalfdCres Lludnoin LludnoJn YES LludnoJn Chester Chester OxfordRd YES __ OxfordRd ManchstrP Manche ManchstrP YES ManchstP OxfordRd OxfordRd Chester YES o ManchtiP Manerdir YES _ BarrowCS Barrow Barrow Barrow YES Barrow Lancaster _ Lancaster Preston gt Preston Mancr ir ManchstrP OxfordRd Preston Preston BickpoolN BickpoolN Preston Preston Lancaster Lancaster Lancaster Figure 4 3 Route section screen The screen shows the list of route sections in one table and their related via points in another As it cannot be seen by looking at the route section table which records are direct and which have via points the user requested that an extra field be added This field states whether there are via points present for the route section 28 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish As specified in the constraints section of Chapter 2 the route sections are derived from the relief points and diagram data The data should therefore not be able to be amended directly All columns are therefore set to read only apart from the route knowledge which is entered once the sections have
11. specified in Chapter 2 The headings for the test were as follows 38 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish e Test Name The name of the procedure to be carried out relating directly to the use cases e Procedure The procedure involved in completing the use case This was added to ensure that the user was carrying out the use case in the correct manner and if not what the errors were as a result of e Result The result produced from the procedure e Expected Result The result expected from the system For white box testing Bennett et al 2001 state that Test designers will examine the sequence diagrams to find combinations of user input output and system start state that will test the interaction between the participating objects Tests were therefore created from the activity diagram shown in Figure 2 1 in Chapter 2 This involved repeating processes such as the import function and carrying out a stage such as the creating of route sections then amending the relief points and recreating the route sections The most important part of the testing was that of the export facility The main purpose of the software is to provide the exported data for the scheduling software The final test was therefore to check whether the system produced the same data as the old system and as to whether the data would be accepted by the scheduling software 5 3 Test Implementation The actual testing was
12. to view exported file 4 User selects to open file The system opens the file for the user The method above produces details specific to the user however in order to produce the software it is necessary to define requirements specific to the system A method for accomplishng this has been defined by European Commision 2001 defined below Data Stored The database will store a set of diagrams with the fields Diagram Code Engine Code Operation Code and Subset Code The database will store a set of journey times for each diagram with the fields point arrival time departure time train type code if a driver is needed added time code The database will store all the possible route sections based on the diagram data with the fields from point to point route knowledge The database will store a set of via points for each route section with field point The database will store a set of times taken for set processes for each type of engine with the fields train type train type code immobilisation time mobilisation time preparation time disposal time A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish System Requirements e The database will store which trains are coupled together e The system will allow relief points to be selected e The system will allow data to be imported into the database e The system will highlight any errors occurred whilst importing e The system will
13. user to export the data Allowing the user to select the file they want to export to The data is automatically exported in the format required by the scheduling software The system allows the user to manipulate the train data with a number of extra functions added such as changing the order in which trains stop Finally the system includes a manual showing clearly how to accomplish each of the tasks in formatting the data 41 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 6 2 Possible Improvements There were a number of possible improvements that were highlighted through the progression of the project these have been listed as follows e Import errors As mentioned in the previous section the software highlights those records that contain errors and are not imported These are then stored in a separate table that the user can view It would have been useful for the user to then be able to amend these errors and be then given the option of adding them to the imported data As this is not included the user would have to amend the data at the source which creates extra work e Route knowledge source data A late request for the system was to include the data used by the user when assigning the route knowledge to a route section This data is not linked to any of the data currently used within the system but would be useful to the user to have to hand when carrying out this process Sadly due to time co
14. 1 The Requirements of testing ce ee e K e e K K 37 Jonathan Fish iii A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 5 2 Test DOSIGM sxc isis aie cx ussite sec oia nak aKa A o EE E AEEA E ie LAER i SEa 5 3 Test Implementation iesca a e a tebe ids 6 Evaluation and Conclusion cesses ees ice deities ads es eee ies 6 1 Evaluation of the System e e ee 6 2 Areas for Improvement eee e e cece cece tence K K 6 3 CONCIUSION sgeir nen E EA O EE EE Bibliography sorsero eere epider e eA e aE A OE EEA AREER AEA Appendix A Reflections on the Project ee ee Ke e Appendix B The User Manual ee e cse stabs wiatveuts Meek twtageneas bad Appendix C Initial Schedule see eee ee Appendix D Updated Schedule ss sese eee eee Appendix E Example Raw Data see e eK A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 1 Introduction The introductory chapter gives an overview to the topic of scheduling which although not central to the project is the driving requirement The chapter also explains the current use of scheduling software and the data that feeds it within the School of Computing Finally it explains what improvements can be made and in particular the aims of the project to improve the current situation 1 1 A Background to Scheduling There are a number of different areas within scheduling such as Bus Scheduling and Train Scheduling and within each sector the
15. A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Summary One of the areas of study within the School of Computing is that of scheduling In order to perform scheduling of train driver shifts the original train data needs to be manipulated into a format that can be used by scheduling software The aim of this project is to create a system to import the original train data allow the user to manipulate the data manually include a number of functions for automatically processing the data and finally to have a system of exporting the data for use by the scheduling software This report explains how the project was carried out and how the requirements were met starting from the point of gathering the requirements through to implementation and testing of the final system A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Acknowledgements would like to give thanks to Dr Raymond Kwan my supervisor for the project for his assistance throughout the project would also like to thank Ignacio Laplagne who gave invaluable help in the final testing of the system Most of all would like to thank my wife who encouraged and supported me giving me motivation throughout the project ii A Data Knowledge Management System for Train Driver Scheduling Contents Introduction 4 ess 2255 ees hee sent see esse eae 1 1 1 A Background to Scheduling eee ee ee ee e 1 1 2 Current
16. This means that when a new section is manually added it can be inserted at the required place without having to move all the other records manually 29 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish As highlighted in Chapter 3 the coupling information has to have a number of restrictions so that it does not create anomalies These restrictions are implemented as follows e The add coupling button produces a form with a drop down list of diagrams to select from This allows the user to only add a current diagram reducing the possibility for errors as mentioned in Nielsen s rules in Chapter 3 When a coupling is added the related diagram is checked to see if there is a matching journey If there isn t then an error message is raised and the record is not added If a related journey is found then a related coupling is added by the system e lf acoupling is deleted then the system automatically deletes the related coupling This ensures that there is always a pair of coupled trains and no anomaly is created from having a train coupled to another but not vice versa e The final check is that the journey data of a coupled train cannot be updated It must be uncoupled first before changes are made This ensures that the journey times of the coupled trains remain the same 4 2 4 Route Sections Function The route sections are created by selecting the button on the route sections screen The system looks at whic
17. Train Driver Scheduling Jonathan Fish also ask for confirmation from the user before carrying out critical procedures such as when importing or exporting data s Help An application should provide help to the user either electronically or through paper The system will have a user manual to accompany the system 25 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 4 System Implementation This chapter discusses the implementation of the project It first looks at the implementation of the database and then takes each of the operational products as outlined in Chapter 2 It finally looks at the creation of the manual which goes along side the software and the installation requirements 4 1 Database Implementation The database was implemented in Microsoft Access as discussed in Chapter 2 The tables were implemented as defined in Chapter 3 Microsoft Access also allows for the definition of relationships between tables and these were implemented as also defined in Chapter 3 Further Microsoft Access includes the use of cascade updates and deletions as shown in Figure 4 1 to enforce referential integrity The cascade effect means that when a record is deleted or updated in a table then all records relating to that record in another table will also be updated or deleted This ensures that anomalies and redundant data are kept to a minimum Relationships e Cascade Update Related Fields IW Cascade
18. aces Disadvantages e New technology resulting in minimal amount of reference material e Minimal knowledge of product by developer Initially the clear choice in terms of a database was to use Microsoft Access This was due to the fact that the database would not need to be conFigured upon installation and would not need to store large amounts of data meaning that a powerful database system such as SQL Server was not required The fact that the interface can also be built in the same package and the developer already had a good knowledge of the system were added positive factors in making the final choice The system was first designed in Access but using the evolutionary approach Discussed in the next section it became clear that this would not offer the level of functionality and usability required by the users An alternative was therefore needed The next best option was to retain Access as the mode for storing the data but to use Visual Basic net for the interface This choice was taken because Access was still the best tool to use to store the data and as a result visual basic net was the best tool to interact with the database This was due to the fact that they are both Microsoft products and are designed to interact well and also for the reasons stated above 12 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 2 4 Methodology Pressman 2000 defines methodology as the process of providing th
19. agram 5 ae Goes Via In summary the tables for the database can be defined as follows Table Attributes Diagram DiCode EngType SubCode OpCode Diagram Via DiCode TrainTimelD RoutelD Driver TypeCode TimeCode Order Train Times ID FromPoint ToPoint Arrival Departure Route Sections ID FromPoint ToPoint Route Knowledge Route Section Via RouteSectionID Order Point Points Point Depot Relief Figure 3 2 Database Tables 17 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish We now have a full relationship schema and table definitions and can therefore go on to carry out normalisation 3 2 Normalisation The normalisation process applies a set of rules to the relation schema in order to check whether the schema is in a normal form By satisfying this normal form we can be assured that we have minimised redundancy and the possibility of anomalies caused by insertion deletion and update of the database Elmasri and Navathe 2000 Elmasri and Navathe 2000 define four normal forms to be used when assessing a relational schema as shown below e First Normal Form First normal form specifies that all attributes within a database must only include atomic values This means for example that a name should be split into forename and surname e Second Normal Form Second normal form looks at the subject of full functional dependency All non key a
20. allow the user to specify the location of the file to be imported e The system will allow route sections to be created from the imported data e The system will allow the user to view route sections with no route knowledge applied e The system will allow the user to export data in specified format e The user will be able to select the file to export to e The system will highlight the stages of progression towards exporting the data Constraints e The system will not allow the user to amend the route sections e The system will not allow trains to be coupled unless journey ties are identical e The system will not allow diagrams with the same diagram code e The system will not allow data to be exported unless relief points have been selected route sections have been created and route knowledge has been added Non Functional Requirements e The system will allow for the quick update of route knowledge e The system will offer a simple interface for updating relief points e The system will be easy to use The user requirements specified show what is required of a system but they do not specify the order in which processes are carried out within a system Bennet et al 2001 describe activity diagrams as a means of describing workflows Figure 2 1 shows the main flow of work within the schedule formatting system This can then be used to plan how the system should be implemented A Data Knowledge Management System for Train Dr
21. anual Write up project Oct 2003 Nov 2003 Dec 2003 Jan 2004 Feb 2004 Mar 2004 Apr 2004 Project start ISS 2003 Oct 20 EI 56 Jonathan Fish A Data Knowledge Management System for Train Driver Scheduling Name Understand the project Minimum requirements Understand the data involved Design the underlying database Research Visual Basic net Design Interface Functionality Implement points update screen Implement relief points screen Revision and exams Implement route sections screen Implement Diagram screen Implement import system Implement Export function Write manual Test System Write up project Appendix D Project start Sj 2003 Oct 20 i 57 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Appendix E Manchestr 00 02 O04 5 50 3691317 Mayfield O0 06 O00 5 60 369317 ManchstrF 00 12 On a ee a Oa iE ee y d d OxfordRd 00414 00414 5 50 359 1317 SalfdCres s 00420 00423 5 50 89 0030 5 5059 G17 Neu nnt HD37 DIAGRAM nas IE _ Two Ww NewtonHth 04458 502 315838 x MancrVic 05405 05406 5032 3161326 x SalfdCres 05 12 05416 S032 3158W M dl OxfordRd 05420 05420 S032 315326 x ManchstrF05 25 HB9 5032 J156 JE j Mayfield 05428 0537 5032 31538 x ManchstrP 05439 06 41 1032 315 x OxfordRd 05 42 0542 1032 NSFP w NewtonLet 06 00 06 00 1032 S15 F 326 xX WargtnBC05 09 06 10 1032 S1S F A325 x
22. are Engineering A Practitioners Approach 5 Edition McGraw Hill Redmill F 1997 Software Projects Evolutionary vs Big Bang Delivery Wiley p12 17 Reese G 2003 Java Database Best Practices O Reilly 44 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Shackel B 1997 Human Computer Interaction Whence and Whither Journal of the American Society for Information Science Schneiderman B 1998 Designing the User Interface 3 edition Addison Wesley 45 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Appendix A Reflections on the Project This appendix gives a reflection on the project and the lessons that can be learnt for future projects On the whole feel the project gave me a good understanding of the issues faced when carrying out a project from start to finish and gave me a practical understanding of the issues learnt throughout my degree such as analysis methodology database design and programming The first lesson learned was the need for a full understanding of the requirements of a project had carried out a number of interviews with the user to obtain an understanding of what was required but had also incorrectly assumed a number of factors such as the meaning of a route section This might have been avoided if had gained feedback on the requirements had obtained from the user who might have been able to highlight any disc
23. ation would have to be analysed similar to that in the route selection process in order to calculate the route sections that make up a diagram s journey A simpler approach would be to store the route sections for each diagram in a separate table that can be referred to when exporting This table could easily be created when the route sections are created In doing so it would reduce the time taken to export the data to file 20 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish LE apat Part End Depot ae T Route Sections lt n gt Arrival Order Coupled i Figure 3 3 New ER Diagram Diagram Figure 3 3 shows an updated ER diagram taking into account the changes made in the denormalisation process 3 4 User Interface When designing a system Shackel 1997 states that it must start with the end users and be user centered around them Therefore the human factors aspects become paramount It is therefore true to say that the main issue when designing the user interface is that of human computer interaction 21 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Carroll 2001 defines the subject of human computer interaction as understanding and creating software and other technology that people will want to use will be able to use and will find effective when used Carroll also states that human computer interaction can be best implement
24. been created It was requested that the user could have the option of viewing purely the records still needing route knowledge to be added It was decided that clicking on the route knowledge column name could carry this out This sorts the data showing those records without the knowledge data at the top of the list 4 2 3 Train Data Manipulation The diagram screen represents the list of diagrams and the train details for each with any coupled trains also shown An example of which is shown below EE Schedule Formatter File Help Relief Points Route Sections Points Diagrams Import Errors Coupling Info Diagram_Cod Engine Operation_Co Subset_Cc time_id train_id lt pad gt CH720 175 0 TWThO Ww K 2 CH737 ___ CH 21 175 0 FSX Delete ___ CH721 175 0 FSX coupling _ CH 22 175 0 TWThO CH723 175 0 FSX ___ CH 23K 175 0 FSX CHF24 175 0 MSX ___ CH725 175 0 TWThO ___ CH 25 175 0 TWThO CH 25K 175 0 TWThO CH 26 175 0 TwThO CH726 175 0 TWThO Train_Route Point Arrival Departure ChesterCS 04 31 gt ChesterNJ 04 34 04 38 L Chester 04 41 04 45 Lludnotin 05 39 06 25 Llandudno 06 33 06 43 Lludnon 06 51 06 59 Llandudno 07 07 07 12 Lludnon 07 20 07 29 2054 Llandudno 07 37 07 47 1H45 Figure 4 4 Diagram data screen D 5052 5052 5052 2050 2051 2D52 2D55 ooo cc 0c co co The up and down buttons allow a journey section to be moved up or down
25. cepted 40 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 6 Evaluation This is the final chapter and gives a summary to the project and evaluates the final result of the project and as to whether it meets it s initial requirements 6 1 Evaluation of the system The original requirements for the project were to create a system for the manipulation of train data Incorporating a database for holding the information an interface for each of the processes involved in the data manipulation process a set of functions for manipulating the data and exporting it and finally creating a user manual to be used along side the system These requirements have all been met The database was designed and normalised as shown in the implementation chapter The final database is not fully normalised but reasons were given for this and constraints were included to ensure referential integrity of the data The system incorporates a tool for the user to import the data that is simple to use The system shows the user clearly any records that were not imported The system does not allow these records to be imported at a later date which would have been a nice addition but was not possible due to time constraints The system also has an easy to use system for selecting relief points and a data extraction function for creating route sections based on the selected relief points The system provides a function for allowing the
26. d update route sections in the top right of the Relief Points screen as shown in Figure 6 is used to create the route sections A message box will confirm the route sections have been created once the process is complete Adding Route Knowledge The route knowledge can be added on the Route Section screen accessed by selecting the Route Sections tab as shown by the arrow on Figure 7 below ZE Schedule Formatter DER File Help Relief Points Route Sections Points Diagrams Import Errors Route Seton Yia Point Fion Point To_Point Knowledge Via Points Point Chester Chester gt Stockport LludnoJn HlyhdCMD Wilmslow _ Hlyhd CMD LludnoJn 7 Alderley Manca Chester Crewe ManchstrP LongstCMD Stafford jLongstCMD ManchstriP Wolvrhptn Chester ManchstrP _NewSt ManchstrP ManchstrP Wolvrhptn OxfordRd Chester i Stafford LludnoJn LludnoJn Crewe Chester Chester Alderley Chester Chester Wilmslow ManchstrP MancrAir NewtonHth ManchstrP _ManchstrP NewtonHth NewtonHth Mancic Mancic WiganNw WiganNw LimeSt LimeSt WiganNw Lancaster Lancaster Lancaster Lancaster Lancaster Lancaster OxfordRd WiganNw LimeSt LimeSt LimeSt Mancic MancrVic NewtonHth Mancrvic OxfordRd Figure 7 Route Section Screen The main table shows the route sections with the third column used for updating the route knowledge The via points for each route section are displayed on the right hand side table Stoppag
27. dule Formatter sss ssc ccc ec c cenen 3 Importing Data 4 Selecting Relief Points 5 Adding Route Knowledge 6 Adding Stoppage Times 7 Exporting the Data 8 Un installing the Software Jonathan Fish 48 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Installation Procedure Schedule Formatter comes with its own installation package It is therefore very easy to install by following the points below e Select the setup file e The following screen should appear ic Schedule Welcome to the Schedule Setup Wizard The installer will guide you through the steps required to install Schedule on your computer WARNING This computer program is protected by copyright law and international treaties Unauthorized duplication or distribution of this program or any portion of it may result in severe civil or criminal penalties and will be prosecuted to the maximum extent possible under the law Cancel Figure 1 Installation Screen e Click next On the next form you will be asked where you would like to store the Schedule Formatter software The default path is C ScheduleFormatter If you would like to install the software to another directory this is easily achieved by selecting browse and selecting the desired path Once selected click next e The final screen asks for confirmation that you wish to go ahead and install the software If you a
28. e technical how to s for building software It provides a method for dealing with each section of the software from requirements analysis to testing The oldest and most common of these methods is called the Waterfall method also known as the System Lifecycle Lauden and Lauden 2002 This method breaks the process into distinct sections of work carried out in a set order At the end of these sections of work the initial product is produced Redmill 1997 defines the sections of work within the method as follows e Specification e Design e Construction e Validation e Installation and acceptance testing Redmill states that the great advantage of the waterfall model is that it represents basic engineering practice that specification should precede design design should precede construction etc Laudon and Lauden 2002 however state that although The systems lifecycle is still useful for building large complex systems that require a rigorous and formal requirements analysis the approach is not suitable for many small desktop systems which tend to be less structured and more individualised This would suggest then that this method is not suitable for the software in question A method more appropriate is possibly one of the evolutionary methods such as the incremental method defined below by Pressman 2000 in Figure 2 2 Pressman says the incremental model focuses on the delivery of an operational product with each increment
29. e Times The time taken for each of the set types of stoppages can be selected from the file menu under Stop Times This will open a form as shown below 53 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish S lt Stoppage Times Train Code Engine Preperation Disposal Immobalisatio Mobalisation il 175 5 T2 158 13 156 153 150 142 Figure 8 Stoppage Times Screen As you can see from Figure 8 a table is opened where the times for each engine can be updated This is not part of the data processing and can therefore be updated at any point The data is not affected by carrying out the import function Exporting the Data Once all processes have been completed the data will be ready to be exported This will be represented on the process form by the fact that there will be a tick next to data ready for export The export function can be accessed from the file menu as shown below Schedule Formatter File Help Stop Times Process Import Export Exit te Sections Points Diagrams Import Errors on Relief Points Relief Points Figure 9 Export Selection Upon selecting the export option the system will ask you where you would like to export your file to Select a file or enter a new name and select OK The system will then ask you to give an optional title to your exported file as shown below 54 A Data Knowledge Management System for Train Drive
30. e piece of software produced in the department is the TrainTracs scheduling software which is used for the scheduling of train drivers and is also used by ScotRail for the same purpose In order to produce a timetable the TrainTracs system needs a large volume of information obtained from a number of sources The data needed by the TrainTracs system is fed in via the two sources as seen below in Figure 1 2 TRA File Constraints File Data Spreadsheet UDEN Figure 1 2 Sources of data for the schedule software A schedule is generally restricted by a number of constraints or rules such as the number of hours a driver can work in a day This information is held in a file and read into the scheduling system shown in Figure 1 2 as the constraint s file The second file holds the train times A previous scheduling process carried out by the train company creates this data The data is then passed onto the department in the form of a Microsoft Excel Spreadsheet to be used for their research This is referred to in Figure 1 2 as the data spreadsheet The train file needs to be manipulated in such a way that the scheduling software can use it Firstly the locations at which drivers can be changed on a route have to be specified Once these locations are chosen then route sections can be A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish specified A route section is a segment of any journey from one driv
31. ed within the prototyping methodology This is because the fundamental aspect of the prototype model is user feedback and it is therefore fair to say that a certain amount of the design of the interface should be due to user feedback As discussed in Chapter 2 the process of prototyping has been included in the methodology of the project and the human computer interaction should therefore be reflected in the interface as a result of this process An example of this process carried out in the project can be seen in Figure 3 4 EE Schedule Formatter Import Export Database Route Sections Driver Change Points Train Details Diagrams Load Route_Id Update Cancel All From_Point z To Point L Bescot Blackburn X Route_Knowledge 2 gt gt gt Cancel order_number point Route_ID E 1 Clitheroe 1 2 CroesNe 1 3 bescot 1 4 Wilmslow 1 Figure 3 4 Initial Route Section screen Figure 3 4 shows an early prototype of the route sections screen The screen represents one route section at any one time The user highlighted the fact that adding the route knowledge in this way would be slow and cumbersome as only one record can be viewed at a time In light of this the screen was amended to show a table of route sections which could be updated in a more efficient manner with all the route sections displayed together on the one screen This design specification of displaying 22 A Data Knowledge Management System for
32. er change location to another Each route section needs a set amount of knowledge required by any driver to travel on it The required knowledge must be specified for each section Once these processes have been carried out the file then needs to be changed into a format that the scheduling software can use and is shown on Figure 1 2 as the TRA file The process of converting the original train data into the data file used by the scheduling software is currently carried out with a mixture of manual updates to the spreadsheet and by a set of visual basic macros The main problem with this system is that it is not user friendly When using scheduling software there is often the need for using different scenarios Kwan 2004 says it may be necessary to produce many alternative sets of driver schedules for different what if options Having to update the excel spreadsheet to create these what if options can be time consuming Keeping the data in an excel spreadsheet also opens up the possibility for making the different sheets of data inconsistent with each other The system could therefore be vastly improved by having a user interface which allows for the updating of data in an easy format and to store the data in such a way that the risk of inconsistencies is reduced or eliminated The other issue is one of efficiency The fact that the data is held in a spreadsheet means that a certain amount of data is repeated It would therefore be more ef
33. features added such as the storing of import errors 43 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Bibliography Behforooz A Hudson F 1996 Software Engineering Fundamentals Oxford University Press Bennett S Skelton J Lunn K 2001 Schaum s Outline of UML McGraw Hill Bilgin P 2002 Visual Basic Net Database Programming Sybex Carroll J 2001 Human Computer Interaction in the New Millennium Addison Wesley Elmasri R Navathe S 2000 Fundamentals of Database Systems Addison Wesley Longman European Commission 2001 CORDIS TAP for Transport Karen URL http www cordis lu telematics tap_transport research projects karen html 24 April 2004 ISO IEC 2001 International Standard ISO IEC 9126 1 Software engineering Product quality Part 1 Quality model International Organization for Standardization International Electrotechnical Commission Geneva Jacobson Booch G Rumbaugh J 1999 The Unified Software Development Process Addision Wesley Johnson O 2002 IN21 Object Oriented Analysis and Design University of Leeds Kwan R 2004 Handbook of scheduling CRC Press Lauden K Lauden J 2002 Management Information Systems Managing the Digital Firm Prentice Hall Mosley D Posey B 2002 Just enough software automation Prentice Hall Nielsen J 1993 Usability Engineering Academic Press Pressman R 2000 Softw
34. ficient to hold the data in a normalised database to eliminate duplication and in doing so this would also reduce the risk of inconsistencies within the data as mentioned above 1 3 Project Proposal In light of the issues raised with the current process of holding data the aims of the project seek to solve these issues in the following ways 1 Review and document the current practices surrounding the storage and provision of data used by the traintracs system 2 Produce a system that can replace the current system within the School of Computing with a view to being used within the industry at a future date 3 Provide an efficient way of holding data Provide a user interface to allow for data manipulation A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 5 Design and implement a set of functions for the importing of data from the excel spreadsheet 6 Provide a utility for the exporting of data to the TRA file 7 Provide a user manual for the designed system A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 2 Analysis and Methodology This chapter looks at the requirements of the users in regards to the system and takes into account the processes involved In light of this information it then discusses the methodology to be employed in the design and implementation of the actual software 2 1 Background Analysis It is important when first starting to thin
35. gned for large amounts of data e Lack of flexibility in creating the user interface Microsoft SQL Server Advantages e Designed to work with large amounts of data e Allows for quick retrieval of data e Software already installed within the School of Computing e Designer already has good working knowledge of software Disadvantages e Unlikely to be available to users if used outside of School of Computing e Needs separate interface component e Would need to be conFigured on installation MySQL Advantages e Designed to hold large amounts of data e Open source software No cost issue for installation outside School of Computing e Already installed within School of Computing Disadvantages e Needs separate interface component e Would need to be conFigured on installation e Lack of usability in creating table relationships 11 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Visual Basic 6 Advantages e Can be built into Microsoft Access application e Developer has some knowledge of the product Disadvantages e Has become outdated as an interface tool due to introduction of visual studio net Visual Basic net Advantages e Latest Microsoft development tool Should be around for a long time and will not become outdated e Works well with both Microsoft Access and SQL Server e Works well with the prototyping method as it allows for the quick building of mock up interf
36. h points are relief points already selected by the user from the relief point screen It then looks at the diagram information and iterates through the list of journey times When it finds a relief point it then looks for the next relief point It then checks whether a route section has already been stored between these two points If it hasn t then the system adds the route section along with the points it goes via If the route section already exists then the system checks to see whether the via points for the two route sections are the same If they match then the system marks the stored route section as existing and does not add the duplicate If the two route section s via points do not match then the route section is added along with the via points Once the system has gone through all the diagrams it then removes all the old route sections that are no longer being used and not marked as existing In this way the old route sections that appear again in the new information are not deleted and this results in the route knowledge stored against them not being lost as stated in the user requirements As all the historic route sections are removed the user is asked to confirm before the process is carried out 30 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 4 2 5 Import data The user can choose to import data via the file option of the drop down menu As the process will delete all current data in the sys
37. hen complete Use Case Select Relief Points Actor System 1 The user highlights points to change and clicks button to make change The system changes points to relief or non relief points Use Case Create Route Sections Actor System 1 The user selects option to create route sections System creates all the possible route sections based on selected relief points and diagram data If section already exists then it is not deleted so as to retain route knowledge if entered Use Case Add Delete Coupled Information Actor System 1 The user selects a coupled record to add delete The system makes the amendment The system must ensure that the data is kept consistent with related trains Jonathan Fish A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Use Case Amend diagram data Actor System The user amends diagram data The system carries out specified amendment Will not allow duplicates and will delete related information where appropriate Use Case Export data Actor System 1 The user selects the export option The system asks the user to specify a file to export to 2 The user specifies a file to export to The system prompts user to add a title 3 User adds title or leaves blank The system confirms when complete and asks user if they wish
38. icular instances is given in the following chapter e Clearly marked exits An application should have clearly marked exists so that the user understands how to exit the application at all times The system will use the standard Microsoft cross in the top right corner It will also include an exit option in a drop down menu e Shortcuts An application should have shortcuts built in to speed up the selection of processes by the user These normally take the form of short cut keys The system will have a number of functions that can be selected from a drop down menu Short cut keys will be provided for each of these functions e Good error messages An application should give clear information when an error occurs within the system This ensures that a user can understand if they have carried out an illegal process or if there is an issue with the system outside of their control The system will have the catching of errors built into the code which in turn will provide feedback to the user of errors occurred in a easy to understand format e Prevent errors An application should have rules programmed into it that do not allow a user to carry out illegal tasks or if a task could result in an error then confirmation can be requested from the user The system will have rules built into it to stop illegal actions occurring such as disallowing the coupling of two trains with non matching data The system will 24 A Data Knowledge Management System for
39. iver Scheduling Jonathan Fish Select Reliet Points L Hot Selected Change Relief Points L Selected Create Route Sections Accept Route Sections L Amend Route Knowledge Accept Route Knowledge Figure 2 1 An activity diagram showing the flow of work in the system 2 3 Technology The right choice of technology to employ when creating a system is vital to creating a successful project Behforooz and Hudson 1996 state selection of programming languages used to code the software system can have a long lasting effect on software system performance and maintenance Technologies for the project can be split into two sections those required for the database and those for the interface Depending on which of these are chosen for one area can affect the choice of technology in the other area In order to assess the different possibilities a number of technologies were investigated showing their main advantages and disadvantages 10 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Microsoft Access Advantages e Acomplete package comprising of a database and interface allowing for the whole system to be built in one package e The software is already installed within the School of Computing and is common in most work places This allows the software to be easily deployed e Designer already has a good working knowledge of the software Disadvantages e Not desi
40. k about creating a system to understand the background to the project and the data involved Requirement gathering involves obtaining a full understanding of the current system Johnson 2002 highlights a set of techniques called O R 1 Q S which may be used to gather the software requirements The set of techniques are listed as follows e Observation e Reading Research e Interviews e Questionnaires e Sample Documents It is not always necessary to use all of the techniques in conjunction There were three techniques that were most applicable to the schedule formatting system These were Reading Research Interviews and Sample Documents The first technique was used to understand the terms used within the industry and the processes involved with scheduling In particular Handbook of Scheduling by Kwan 2004 was helpful in giving an understanding of the terms used within the train industry A summary of these words is given below e Diagram A train s complete journey for one day e Point A location that a train passes through e Relief Point A location where train drivers can change e Route Section A section of a diagram s journey between each relief point e Route Knowledge A code used to denote the knowledge needed by a train driver to be able to go along a certain route section A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish The second method was to interview those reques
41. l that is to say that a diagram must consist of a number of train times and that these train times make up a route section and so therefore must contain a number of route sections also It has the attributes driver needed train type code added time code and order Name Goes Via Type One to many Description The relationship is between route section and points Both participations are total that is to say that a route section must contain a number of points that must exist in the points table It has the attributes point and order The participation constraint in a relationship defines whether the existence of an entity is defined by its relation to another entity Elmasri and Navathe 2000 If a participation is total then every entity in one table must be related to an entity in the related table As a result of defining these entities and their relationships an ER diagram can now be defined shown in Figure 3 1 The entities are shown as rectangles with the relationships represented in the diamonds The ER Diagram gives a simple and clear view of the ER schema 16 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 2 Tura err nee Depot ag TE ON IN Route Sections Points Route Points NM GOES on iN Departure Has Train Times D Ca CB Contant ea UU Diagram Ee Gate D G Figure 3 1 ER Diagram of database used in Schedule Formatting software Di
42. le of this 35 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish iis ScheduleFormatter Select Installation Folder The installer will install ScheduleF ormatter to the following folder To install in this folder click Next To install to a different folder enter it below or click Browse Folder C ScheduleFormatter Install ScheduleFormatter for yourself or for anyone who uses this computer O Everyone Just me Figure 4 12 The installation screen The link between the Visual Basic net interface and the Access database is dynamic This therefore means that the user does not need to carry out any additional setup in defining where the database is held 36 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 5 Testing This chapter looks at the different ways in which a system can and should be tested In particular it examines how the schedule formatting software was tested and the changes made as a result 5 1 The Requirements of Testing Rees et al 2001 highlight the need for testing in order to reduce the level of risk to a producer and users business and to increase confidence that a product will provide an acceptable level of risk They state some of the main areas to consider in the field of testing as follows e How to quantify reliability e How to design tests e Which tests should be performed given time cost and reso
43. lling Schedule Formatter there will be no data available in the system Data can be imported into the system at any point This section looks at how to achieve this The import command can be found on the file menu as shown below Schedule Formatter File Help Stop Times Process Import Export Exit te Sections Points Diagrams Import Errors on Relief Points Relief Points Figure 4 Import Selection Once selected the system will give you a warning stating that all data within the system will be deleted upon importing new data It will give you the option to proceed or to cancel the import If you have selected proceed you will then be asked to select a file of data to import The file you select must be an excel spreadsheet If there are any errors in the data then the system will highlight these as shown below Import Error Train 007 was not found while trying to add coupling Data added to errors table Would you like to continue to view errors Yes No Figure 5 Import Error Any errors shown will not be added to the database but will be shown in the errors section refer to the import errors section for more details If the data is imported successfully then a message will be shown confirming the importing of data 51 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish If there is a problem with the data such that it cannot be read at all then an error mes
44. n creating the database and interface for the system It gives a detailed design specification of the database and looks at the considerations needed in the issue of human computer interaction when designing the interface 3 1 Database design Elmasri and Navathe 2000 outline a set of procedures for the designing of databases as follows e Requirements analysis e Conceptual design e Implementation Requirements analysis was covered in the previous chapter and we will now look at the conceptual design Elmasri and Navathe break this down into two steps defining the entity types and defining relationships between these entities The defining of the entities for the schedule formatting software is shown below Conceptual design Entity Type Attributes Key Points Point Relief Depot Point Diagram Engine type Diagram code Operation code Diagram Subset code Code Train Times From Point to point Departure Arrival All attributes would make key Simplified by adding ID Route Section From point To point Route Knowledge No key so ID added 15 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Relationships 1 Name Diagram goes Via Type One to many between diagram and train times and many to many between route sections and train times Description The relationship is between diagram train times and route section All participations are tota
45. nguage that provides a way for people who analyse and design object oriented systems to visualise construct and document the artefacts of software systems The language is made up of a number of types of diagram that allow a system to be modelled from its very basic design to completion The first of these is the use case diagram Jacobsen et al 1999 state that use cases must be identified for a project to be successful They benefit a project as they give a clear high level picture as to what is required of a system This is especially good for large systems as it reduces the paperwork involved in documenting the requirements and is easy to understand when many different types of user are involved in different processes As there is only one type of user the need for a graphic display of the use cases is not A Data Knowledge Management System for Train Driver Scheduling required Instead the method of use case descriptions as described by Bennett et al 2001 was used to describe the user requirements for the system as shown below Use Case Import data Actor System 1 The user selects the import option The system checks with the user that they wish to proceed 2 The user either selects no and exits or selects yes to proceed The system asks the user to specify a file to import 3 The user selects a file to import The system imports the data giving any details of errors and confirms w
46. nstraints this function was not added to the system e Data manipulation restrictions The scheduling software will not accept data with any inconsistencies such as when the time of a train arriving at a station is before it departed from the previous station Another inconsistency might be for example if the train has an additional time given to it for starting up the train when it is already started It would be helpful for the system to highlight these inconsistencies in the formatting software so that the user would be able to see any problems before the data was applied to the schedule software 6 3 Conclusion In conclusion the methodology was ideal for the project and allowed the work to be segmented into smaller units of work which also allowed or user feedback The chosen technology gave a good end product but took longer to produce and reduced the amount of features produced Being able to run the data through the scheduling software ensured that the outputted data was of a correct format The time taken to test and make corrections took longer than was scheduled and more time should have been 42 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish allocated for this at the end rather than relying on minimal testing throughout the project Overall however the project has been a success there are a number of areas where it could be improved but the core requirements have been met with a number of
47. quire complex programming and generally require more joins than their unnormalized or denormalized counterparts During the implementation phase for each of the operational products defined in Chapter 2 it was found that having the database fully normalised did cause complications and thus it needed to be denormalised This process can be defined as reducing the join of a higher normal form to a lower one Elmasri and Navathe 2000 This allows for the system to be at a high level of normalisation as a whole with certain areas at a lesser extent The designer can then implement rules and constraints to combat any inconsistencies that might be caused due to the denormalisation of the schema The process in particular to the schema for the schedule formatting system will now be discussed The train times was created as an entity rather than a relationship due to the fact that a number of trains can be coupled together between any two points A diagram can therefore share a train time with another diagram which resulted in the train times needing to be an entity In doing so a train time would have to be created separate to a diagram and then assigned to the diagram This would be impractical for the user when they are updating the database A different design therefore needs to be applied A more user friendly approach would be to have the train times as a relationship between the diagram and points tables A journey could then be added directly agains
48. r Scheduling Jonathan Fish Enter Export Title Enter title for export if required cn Figure 10 Giving the Export a Title The title you enter will appear at the top of the exported file If you would like to omit this then select cancel The export process will then continue without using a title If the export is successful a message box will appear asking if you would like to view the exported file Click OK to view the file or select cancel if this is not required Un installing the Software Un installing the software can be carried out via the windows control panel The steps to complete this process are as follows Select control panel from the start menu Select Add Remove programs e A list of installed programs will appear Select the Schedule Formatting software Select remove making especially sure you have the right program selected The computer will then remove the software and any desktop links to it 55 Jonathan Fish A Data Knowledge Management System for Train Driver Scheduling Appendix C Name understand the project minimum requirements Understand the data involved Design the underlying database Research Visual Basic net Design interface functionality Implement points update screen Implement relief points screen Christmas Holiday Revision and exams Implement route section screen Implement Diagrams screen Implement Import system Implement data correction system Write m
49. re are further considerations Within train scheduling there is the issue of train time scheduling distribution of train loads and train driver scheduling This project looks specifically at the issue of train driver scheduling defined by Kwan 2004 as a process that determines the composition of a set of driver shifts for a day s transport operation requiring coverage by drivers Kwan shows in Figure 1 1 how this fits in with the overall process of train scheduling Routes and Timetable Planning Vehicle Scheduling Driver Scheduling Driver Rostering Figure 1 1 The process of train scheduling Work on automatic scheduling began in the early 1970 s but work on train driver scheduling has only been going since the early 1990s There can be a large number of variables to take into account when scheduling and a number of algorithms have been designed such as evolutionary algorithms in order to find the most efficient solutions Details of these algorithms and there application to scheduling are not discussed further here as they are not relevant to the project A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish 1 2 Current application in the School of Computing The study of scheduling is carried out within the School of Computing Working closely with ScotRail and other train companies research is carried out in order to improve the efficiency of train time tabling software The notabl
50. re happy to go ahead then select next and the software will be installed in your specified directory 49 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Welcome to Schedule Formatter Welcome to Schedule Formatter The software is designed to let you format your schedule data in order to allow you to submit your data for train driver scheduling To achieve this goal there are a number of processes that have to be gone through in order to be able to export your data A simple form shows you the stages as shown below Process Data Imported Relief Points Selected Route Sections Created Route knowledge added File ready for exporting Figure 2 Process Screen At any point whilst using the software you can select the form to see which stage you are at The green ticks highlight the processes that have been completed The red crosses show the processes still to be completed The process form can be selected from the menu as shown below Schedule Formatter File Stop Times Process Import Export Exit Help te Sections Points Diagrams Import Errors on Relief Points Relief Points Figure 3 Process Selection The rest of this manual will go through each of these sections in turn showing how the system can be used to complete each process 50 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Importing Data When first insta
51. repancies in understanding The methodology chose for the project was a good choice and highlighted the need for a structured methodology throughout a project This enabled me to structure the work and gave me guidelines to work to which was vital for the completion of the project It showed that for any project to be successful it needs some kind of methodology to be chosen at the outstart it is also important for the designer to keep to the methodology throughout the project or else there is not much point choosing one in the first place found that the choice of technology can need more forethought than first realised Although investigated the different technologies available did not fully appreciate the time taken to learn a new tool such as Visual Basic net Although the user required more functionality feel could have provided more features had continued using Microsoft Access When choosing a technology consideration should therefore be given to the cost in learning a new technology When only having a fixed amount of time for a project the time taken to learn a new language can mean that less time is available for the development of some of the required features 46 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Schedule Formatter User Manual A Data Knowledge Management System for Train Driver Scheduling Contents 1 Installation Procedure 2 Welcome to Sche
52. sage will be shown Reasons for this could be as follows e You have selected a non excel file type e Your import file is already open by another process e Your import file is not in the correct format Selecting Relief Points Once data has been imported to the system you will see that the relief points fill up as seen in the picture below Those points where a diagram starts or ends are automatically selected as relief points Schedule Formatter DER File Help Route Sections Points Diagrams Import Errors Update RouteSections Non Relief Points Relief Points Barrow BarrowCS BickpINCS Lancaster LimeSt ManchstrP MancrAir Mancic NewtonHth OxfordRd Preston PrestonCS Southport StockptCS WiganNw WignatCS Workingtt Figure 6 Relief Point Selection Process To move points from one list to the other you can select as many points as needed from either side by clicking on the point To move the point to the other list click the double ended arrow in between the two lists When the button has been selected you will see that the selected points have moved to the opposite list Once you have selected your relief points you are now ready to create the route sections This process can be carried out at any stage but it should be noted that any new route sections created will need route knowledge adding 52 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish The button title
53. splaying what is required of the user clearly at any point within a system This ensures that the user does not need to remember a large set of rules procedures and operations It can be achieved by clearly setting out the options on the screen The system will use a number of tabs to display the screen that the user is currently in and which screens can be selected The system will also allow the user to view at which stage of the process they are at as defined by Figure 2 1 in Chapter 2 Consistency An applications layout and design should be kept consistent throughout This ensures that the user can quickly learn and understand how to use an application 23 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish The Visual Studio net framework allows for consistency throughout an application by using standard Microsoft forms These have been used throughout the system The use of standard data tables has also been used throughout e Feedback An application should give feedback to the user to ensure that they understand what the application is doing and why an error might have occurred The system will use message boxes throughout the system to inform the user if they have tried to carry out an illegal task or if an error has occurred This is especially important in the importing of data where a number of errors could take place due to errors in the data Further information as to when feedback is given in part
54. t a diagram Making this change however does have negative results Unlike with the previous design there is now no ability to represent which trains are coupled together In order to overcome this problem a new relationship was added to the database schema entitled coupled The coupled table specifies which trains are coupled to a train on a journey A coupled journey will therefore be stored at least twice one record for each train involved in the 19 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish coupling This means that if a coupled train record were removed for one train then an anomaly would occur in that the related train record would still have a coupled record entered against it In order to avoid these anomalies further constraints are required at the interface level This will be covered in the Implementation Chapter The second change to the schema is due to the route section creation process and the exporting of data for the schedule software When the data is exported only the journey times for the route sections are required along with the route knowledge for that section With the database in its current format there is no direct link between the diagram and the route sections it is composed of Figure 2 1 in Chapter 2 shows that the route sections are created from the diagram information and relief point selection process With the current design when the export takes place the diagram inform
55. ted Relief Points Selected Route Sections Created Route knowledge added File ready for exporting Figure 4 11 The process screen 4 3 User Manual The user manual gives the users of a system a resource to be able to refer to in order to gain an understanding as to how to use a system Nielsen 1993 highlights the fact that one important aspect of help and documentation whether online or a hardcopy is the quality of the writing especially including the structuring of the information and readability of the text The structuring of schedule formatting software documentation will therefore be around the processes and functions built within the system this is also helpful as Schneiderman 1998 states that a manual should be tailored to the accomplishment of specific goals The documentation is therefore based around completing each of the processes defined in the activity diagram of Chapter 2 A copy of the manual can be found in Appendix B 4 4 Installation One of the useful features of Visual Studio net is its allowance for deploying a project Many options are allowed such as whether a shortcut is placed on the user s desktop or if it should appear in the users start menu On deploying the project a setup file is created This is very simple to put on a CD and can then be easily distributed The setup program provides a simple process for the user to install the application on their computer Figure 4 12 below shows an examp
56. tem a message box is given to the user as shown below Import Data 2 jJ Al current data will be deleted Do you want to continue Figure 4 5 Import confirmation screen On selecting yes the user is then given the option to select the file they wish to import Visual Studio net provides a standard dialogue box used with most Microsoft applications for selecting files This gives the user a sense of familiarity An example is shown below Select File to Import lookin pce SSCS RR p E old_screen studForm B S original 3 testdata My Recent ownproform Tjtesting Documents D project Q ticki project ka do list D project updated requiremens Desktop Public Class Form1 user Test w questions E relief report outline w requirements Z Rescued Document schedule i schedule D Screenshot lt i 2 M Ph etwork File name aces Files of type Cancel Figure 4 6 Import file selection process The file selected must be a single sheeted excel spreadsheet The system then imports 31 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish this sheet into the Access database as a table for reference and then loads the data into a dataset The data is then methodically processed in the following way The points are added to the points table Those points where a diagram starts and ends are automatically selected as relief points Each diagram
57. ting the system A number of interviews were carried out in order to gain a specific understanding of the required system These took place over the course of the year with Professor Raymond Kwan Finally to understand the data being used sample documents were looked at in order to gain an understanding of the data involved in the process These being the raw data imported into the system an example of which is shown in appendix E A copy of how the exported data should be represented was also studied From this data and subsequent interviews the following definitions were obtained for data used in the scheduling process e Engine Code The engine code determines what type of engine is used in the train There are only around six different types of engine The times for certain train procedures such as turning the engine on and off are dependent on the type of engine used e Operation Code The operation code denotes what days the diagram runs on For example Weekends only or Monday to Thursday e Subset Code The subset code is not used within scheduling but is to be held as it is required by the industry e Added Time Code The added time code denotes if there is any extra time taken up at a relief point for events such as starting up the engine 2 2 User Requirements In modern analysis the most popular tool for capturing user requirements is the unified modelling language known as UML Bennett et al 2001 describe UML as a visual la
58. tion as to how the data should be set out was obtained both from the user and from existing example outputted files Once the export has completed the system informs the user and asks if they would like to view the exported data If they do then the file is opened in notepad as shown below 33 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Export Notepad File Edit Format Yiew Help 15 16 XZecauxvnowvs Mancrvic DEPOT NewtonHth CDEPOT oxfordRd CDEPOT Preston DEPOT Prestoncs DEPOT Southport DEPOT StockptcsS DEPOT wiganNw DEPOT wignwqtcCS CDEPOT workingtcC DEPOT prepCg dispCd mobtm immobci 6 FR B R 11 0625 OR 11 R 11 R 11 R B R TE R 13 R l3 R Lf R B R 11 R 11 R 6 R T R 5D52 5D52 2D50 2D52 2D54 1H45 1H45 1H45 5D38 1D38 1D38 1D38 1D38 1H50 1H50 1H50 Figure 4 10 An example export data file 4 2 7 Process Form The process screen shown in Figure 4 11 below was a late addition to the system and requested by the user so that they can assess what stage in the processing of data they are at as defined by Figure 2 1 in Chapter 2 The screen uses the familiar visual aid of the green tick and red cross to highlight the processes completed and those needing to be carried out 34 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish cy Process Data Impor
59. ttributes must be dependent on the whole key e Third Normal form Third normal form deals with the issue of transitivity If an attribute x is dependant on an attribute y and if an attribute z is dependant on attribute x then transitivity has occurred and the table should be broken into two further tables e Boyce Codd Normal Form This normal form is similar to third normal form The difference is that if an attribute x is dependent on an attribute y then y must be a superkey A superkey is an attribute or attributes making up the key of a table From this definition it is clear that before the schema can be tested the functional dependencies need to be defined Elmasri and Navathe 2000 describe functional dependencies as a constraint between two sets of attributes from the database The functional dependencies for the schedule formatting software are given below e DiagramCode gt EngType SubCode OpCode e DiCode TrainTimelD gt Driver TypeCode TimeCode Order 18 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish e ID gt FromPoint ToPoint Arrival Departure e ID gt FromPoint ToPoint Route Knowledge e RouteSectionID Order gt Point e Point gt Depot Relief By applying the rules referred to in Figure 3 2 we can see that all forms are met and the database is fully normalised 3 3 Denormalisation Reese 2003 states that fully normalised databases can re
60. type of this screen was created in Access and it was highlighted at an early stage that the user required a system with more functionality to that of Access At this point the tool of implementation was changed from Microsoft Access to Microsoft Visual Basic net as discussed in Chapter 2 EE Schedule Formatter Eile Help Relief Points Route Sections Points Diagrams Import Errors Update RouteSections Non Relief Points Relief Points Alderley ASHBR Aston Bangor Bescot BidstnSg Bidston Blackbur lt gt BlaenauF BickpoolS Bolton BurnleyC Carlisle ChesterNJ Chinley Clitheroe Colne Crewe CroesNeA Deansgate Eccles EdgeHIDHS EllesmrPt Greenbank Greenfeld Figure 4 2 Relief point selection screen 27 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish Two lists are used as shown in Figure 4 2 one for relief points and one for non relief points Any number of points can be selected from either list at any one time On selecting the button in between the two lists the selected points are moved to the opposite list This gives an easy to use system of selecting and de selecting the relief points in line with the guidelines set out in Chapter 3 As the route sections will need to be updated at this point in the process a button is provided to carry out this function 4 2 2 Route Section Knowledge Update The route section screen shows the data created from the route
61. urce constraints e What tests should be rerun following corrections to rectify faults The software product evaluation standard ISO 9126 from the International Organisation for Standardisation 2001 states that reliability can be measured by the three following criteria e Maturity The capability of the software product to avoid failure as a result of faults in the software This is covered more fully in the following two points e Recoverability This can be described as how a system recovers from a crash Issues involved are the possibility of corrupted files and loss of data It could be said that a fully tested system should not have to deal with the issue of recoverability however some situations are outside the control of the system such as hardware failure e Fault Tolerance This can be described as the ability of a system to degrade gracefully when unexpected software or hardware errors occur This has been discussed in the user interface section of Chapter 3 However the system needs to be tested that the code used to catch errors was implemented correctly and that no errors were missed 37 A Data Knowledge Management System for Train Driver Scheduling Jonathan Fish The testing of the system should therefore be most concerned with highlighting areas where faults occur Fixing faults where possible or adding code to allow the system to degrade gracefully if errors are outside of the systems control The further questions

Download Pdf Manuals

image

Related Search

Related Contents

Manual do Usuário Ministep Guga GK4000  Panasonic Arbitrator 360 Bill of Materials List  Manuel d`installation  Jura Capresso 13709 Coffeemaker User Manual  Cover Page - Whaley Food Service  GOT3187W-111-PCT User`s Manual VA1_12-12-2013  DIRECTIVES D`INSTALLATION Toilette deux  français  Interactive graphic consoles  Samsung S1060 Brugervejledning  

Copyright © All rights reserved.
Failed to retrieve file