A Diagram For Railway Management Systems
Summary: I have prepared use case diagram for the given scenario. Along with the use case diagram, I have prepared specification for individual use cases. Besides, I have prepared an activity diagram.
(a) Class Diagram
-Staff ID
Staff
+Create new staff
-Staff Name
+Delete existing staff
+Update staff
Clerical Assistant
-Clerical Assistant ID
-Clerical Assistant Name
– Clerical Assistant Contacts
-Join Date
+ Print address label
+Record customer details
+Print ticket and sale ticket
Station Master
-Station Master ID
-Station Master Name
-Station Master Contacts
-Join Date
+ Provide hand to hand ticket
+Record ticket type details
Rail way manager
-Manager ID
-Manager Name
-Manager Contacts
-Join Date
+ Record time details
+Record engine details
Ticket Booking
-Customer ID
-Booking date
-Booking rate
+ Create Booking
+ Delete Booking
Customers
-Customer ID
-Customer Name
-Customers contacts
+ Give Tickets
+ Give requirements
+ Get booking
Booking via mail
-Customer ID
-Booking date
-Booking rate
+ Create Booking
+ Delete Booking
Booking over telephone
-Customer ID
-Booking date
-Booking rate
+ Create Booking
+ Delete Booking
Booking In person
-Customer ID
-Booking date
-Booking rate
+ Create Booking
+ Delete Booking
Figure 2.1: Class Diagram
(b) Attributes and methods:
Class Name: Staff.
Attributes:
Staff ID
Staff Name
Method:
Create new staff()
Delete Existing Staff()
Update existing Staff()
Class Name: Railway manager
Attribute:
Manager ID
Manager Name
Manager Contacts
Join date
Operations:
Record time details()
Record engine details()
Class name: Station Master
Attribute:
Station master ID
Station master Name
Station master contacts.
Join date
Operations:
Provide hand to hand tickets()
Record ticket type details()
Class name: Clerical Assistant
Attribute:
Clerical Assistant ID
Clerical Assistant Name
Clerical Assistant contacts.
Join date
Operations:
Print address labels()
Record customer details()
Print and sales ticket ()
Class name: Customer
Attribute:
Customer ID
Customer Name
Customer contacts.
Operations:
Give tickets()
Give requirements()
Get booking()
Class name: Ticket Booking
Attribute:
Customer ID
Booking date
Booking rate
Operations:
Create Booking ()
Delete Booking()
Class name: Booking in person
Attribute:
Customer ID
Booking date
Booking rate
Operations:
Create Booking ()
Delete Booking()
Class name: Booking over telephone
Attribute:
Customer ID
Booking date
Booking rate
Operations:
Create Booking ()
Delete Booking()
Class name: Booking via mail.
Attribute:
Customer ID
Booking date
Booking rate
Operations:
Create Booking ()
Delete Booking()
Summary:
I have prepared a class diagram and described the attributes and methods for each of the classes.
Task 3
Introduction:
In this task, I have to prepare three different diagrams based on analyzing the system. These three diagrams will be behavioral models using object oriented method.
Sequence diagram:
A sequence diagram is a model showing sequences of events and interactions that happen within several layers and persons within the system. In need of behavioral modeling, sequence diagram helps to understand relevant behavior of the potential system. Following diagram shows the sequential diagram for the suggested system.
Sequence Diagram
Customers
Staffs
Ticket Booking
Request for ticket booking
Check Booking Info
Check customer info
Request customer details
Give customer detail
Choose ticket
Confirm ticket booking
Figure 3.1: Sequence diagram
State Machine:
State machine is close to activity diagram. Whereas in activity diagram, interactions are displayed, here the state of the different layers of the system is displayed. Following diagrams demonstrates state machine diagrams for ticket processing and providing it to customers hand to hand, to address or via mail.
Requesting ticket booking
Checking ticket availability
Ticket not available
Cancel
Provide ticket information
Make choice of ticket
Ticket not chosen
Confirm ticket booking
Cancel
Print ticket
Provide ticket to customer
Figure 3.2: State Machine Diagram
Communication Diagrams:
2. Select customers () 2.1. Show customers ()
3. Select Ticket Availability () 3.1. Show ticket availability ()
4. Choose ticket () 4.1. Show ticket ()
1. Start UI {}
: Ticket booking
: Ticket booking
<<Control class>>
<<Boundary class>>
3.2 Get ticket information ()Staff
4.2 confirm ticket booking
2.2 Get customers details ()
: Ticket booking
: Customers
<<Entity class>>
<<Entity class>>
Figure 3.3: Communication Diagram
Summary: I have prepared three different diagrams representing behavioral modeling of the proposed system.
Task 4
Introduction:
In this task, I have to demonstrate the data protection laws available in the locality. Besides, I have to describe how they can be implemented. This discussion has to be practical enough in contrast with the real scenario.
Some words on data protection laws:
Data protection laws deal with the intellectual property of any organization. In a general sense, this talks about how the intellectual property should be protected and what will be happened if the data is damaged. And if it is deliberate, then what procedure will be used to prevent any further approach. Data protection laws in a sense is a vital approach that establishes promise to protect any company’s intellectual property.
(a) Our countries scenario with data protection laws:
Unfortunately, in our country there are no governmental data protection laws available. Since protecting intellectual property is the major thing for any organization, organizations use their own protocol for protecting data. Big IT dependent companies across the country have their individual data protection laws.
Following sections cover data protection management available in our country-
Accessibility Restriction: Accessibility within a particular system area is determined by administrators, which prevent wrong persons to be in a wrong place. Any person with no prior knowledge on any advance part of a system can cause damage to it even though unintentionally. Within the area of confidential data sources, not everyone should be allowed to access.
User Authentication: After ensuring minimal user restriction, establishing user authentication allows the system to be protected from unauthorized activity. A system is bound within limit; users are bound with limits of usage or activities, which lead into the necessity of user authentication.
Distribution of level: This is another major approach by which it is ensured that there are multiple levels of the system within which multiple levels of users are allowed to do activity.
System Security: System must be protected both physically and logically. Tickets room must be preserved from free access. Data stored should be encrypted. Disk partitions usage should be restricted to bare minimal.
(b) Implementation of protection laws against the railway’s system:
The computer system being developed can be secured by implementing one of the above-mentioned ways. Following points cover some of the ways that would be sufficient for the railway:
The most usable way is user authentication method. To access the system, user has to enter the username and password. The password should match length and complexity requirements. This authentication procedure can protect the system from any unauthorized access of the system.
Different level of authentication can be implied. While somebody is trying to breach the system, he may find one of the passwords, but not likely will get all to breach all the data.
Level of accessibility is another approach highly effective for the new system. Administrator will have the full access when other will have limited access within their usage limitation.
(c) Ensuring data protection in the current system:
Testing: Testing all the security procedure potentially available and planned for the current system.
Validation: Validation procedures would be set for the system. When users will try to enter the system with passwords and usernames, system will check for validity and permission limitation.
Encryption: System will have the capability to encrypt potential sensitive data. This will protect data from being unveiled to a wrong hand.
Summary:
I have gathered information on security and protection laws and application of the laws with the current system. Possible details of methods that can be implemented for the current system are also given.
Task 5
Introduction:
In this task, I have to demonstrate the system’s capability of preparing tickets. Along with preparing tickets, I also have to describe that how the system will be able to prepare tickets that cannot be copied easily and will be easy to print with cost effective printing medium. Besides, I also need to describe the hardware related with printing by researching available options.
New system will mainly deal with the tickets. Preparing tickets is one of the major jobs with protection features from being copied. Following section demonstrates some methods by which tickets can’t be copied-
Copy prevention methods:
In each ticket, ticket creator will give a 12 digit number as a barcode. Each time ticket’s barcode will be checked by checker software or barcode scanner.
Ticket must not be printed on any typical paper. Each ticket will be printed on specialized printing paper that is not likely to be copied or available.
Each ticket will carry individual customer’s identification along with the seat number. Every detail must be unique within all the tickets.
Practically watermarks are given with conventional software. So, specialized watermark should be printed on the ticket.
Specialized hologram is another way to protect ticket from being copied.
Allowing customers to select multiple tickets of different types:
There are several procedures here to allow customers to make choice from different types of ticket.
In person: When station master will deal with the booking of a ticket, he will deal with a person face to face. Customer can practically look through available tickets and make choice that suits them the most.
Via telephone: When a client will get connected through a telephone, then clerical assistant will provide with enough information. When customers will ask clerical assistant for ticket booking, assistant will provide available options after knowing the destination of the customers.
Via email: When customers will request for a ticket via email, clerical assistant will record the email. Then he will send a feed back by giving all detailed options that are available. Then after processing all data, selected ticket will be confirmed.
Printing hardware and media details:
For printing the tickets, several system components will be necessary. Printers, printing servers, computers will be necessary. Among the conventional products for these purposes, there are so many which can be used here to establish the printing service for the labels and tickets.
Details of suggested conventional product for printing
Device
Vendor
Price ($)
Computer
HP
500
Ticket Printer
HP
150
Computer maintenance
250
Application software
Atlas developer ltd.
250
Power Supply
200
Printing Server
1000
Figure 5.1: Hardware details
Brief details of some components:
Application Software:
Application software for preparing tickets and printing them on a media is customized software developed by a conventional developer. Rather than buying mass market software, it’s better to have one specifically made for specific purpose. This will also be a better option for security issue
Ticket printers:
Rather than installing general purpose printers, ticket printers are suggested to be used. Ticket printers are specially made for printing tickets. Following image shows a typical ticket printer-
Figure 5.2: Ticket Printer
Printing Server:
Printing server is a typical server installed for printing purposes. This server is established by computers.
Summary:
I have demonstrated several issues on printing and printing media for ticket serving purposes. I have also discussed about the hardware that could be set to establish system for printing those tickets.
Task 6
Introduction:
In this task, I have to prepare several normalized table with relevant information within different levels. After completing normalization tables, I have to prepare data dictionary entries for all items included in the database design.
Task 6 (a)
Ticket booking normalization:
Normalization refers to dividing a database into several tables to determine their relationship among each other.
Data Aggregation:
Serial No.
Booking Type
Customer ID
Customer Name
Customer Address
Date
Staff Type
Staff ID
Staff Name
Seat No.
Total.
2. Choosing key: Serial No.
3. Converting to 1NF (Removing repeating data):
Serial No (PK)
Booking name
Booking type
Customer Id
Customer name
Customer address
Date
Staff type
Staff Id
Staff name
4. Converting to 2NF (Removing Partial Key Dependency):
Serial No (PK)
Booking name
Booking type
Customer Id
Customer name
Customer address
Date
Staff type
Staff Id
Staff name
5. Converting to 3NF (Removing non-key dependency):
Ticket Booking
Serial No (PK)
Booking name
Booking type
Customers:
Customer Id
Customer name
Customer address
Date
Staff
Staff type
Staff Id
Staff name
Task 6 (b)
Data Dictionary for Customer:
Data dictionary
Railway
System:
S5D
Type: structure Name: customer
Alias
: Client
Definition:
Customer=
customer Id+
customer name+
Customer contacts+
Occurrence:
Picture:
Author:
Rajan Khan
Date
10.2.2011
Figure: Data dictionary for customers.
2. Data dictionary for staff
Data dictionary
Railway
System:
S5C
Type: structure Name: Staff
Alias
: employee
Definition: Staff:
Staff Id+
Staff name+
Staff Contacts
Occurrence:
Picture:
Author:
Rajan Khan
Date
10.2.2011
Figure: Data Dictionary for Staff
3. Data dictionary for ticket booking.
Data dictionary
Academic
theater
System:
S8c
Type: structure Name: Ticket Booking
Alias
Ticket Booking
Definition: Ticket booking :
Ticket serial No+
Ticket Booking date+
Ticket Booking rate+
Occurrence:
Picture:
Author
Rajan Khan
Date
10.2.2011
Figure: Data Dictionary for ticket booking
Summary:
I have completed normalized data tables and dictionary entries for all the items that will be included in the database.
Task 7
Introduction:
In this task, I have to remark the objected oriented methodology for designing system or developing system. Besides, I have to relate my remarks with the system design that I have done for the previous tasks. Then, along with describing object oriented methods, I also have to remark structured methods.
Differentiation between both methods:
For Task 1:
Object Oriented: For designing diagrams in task 1, use case diagram and activity diagram are used. For analyzing every detail use case diagram include detailed specification.
Structured: As per the requirements stated in structured diagram, DFD (Data Flow Diagram) could solve the problems of task 1.
For task 2:
Object Oriented: Since object oriented methods are practically dependent on object-class architecture, here class diagram is used.
Structured: In structured methodology, ERD (Entity Relationship Diagram) is used.
For task 3:
Object Oriented: Here the sequence and communication diagram are used.
Structured: Here the ELH (Entity Life History) would be used.
Object Oriented Methods:
Advantage:
System can be very large. In object oriented method, modularization divides whole system into several manageable smaller parts or objects. In that way, when parts are developed, they can be synchronized to make the whole system working.
Object oriented applications are more scalable than the structured tools.
With looking at the modules of the system, it is possible to make an overview on how the system is going to be.
Disadvantage:
Legacy Systems are built in structured programming languages. So when it is necessary to convert those systems, it becomes a tough job.
Object Oriented Database Management Systems are not available.
Since there are many choices with object oriented methodology, sometimes unexpected confusion can rise.
Structured Methods:
Advantage:
In structured programming, system requirements are defined much before programming starts.
With proceed of development, amount of necessary changes starts to decrease.
Disadvantages:
Every detail should be planned and structured. Without any direct link, it’s impossible to go in a random manner, unlike the object oriented.
Overview of a system before it is developed is not likely to be available.
Summary:
I have remarked advantages and disadvantages of both the structured and object oriented methodology. Besides, I have remarked the application of both the methodology with task 1 to task 3.
Task 8
Introduction:
In this task, I have to produce a comprehensive report with detailing all the tasks that I have completed. Then I will have to make an appendix reviewing my works.
Executive Summary
Preparing functional modeling:
This includes two diagram and one specification details for one of the diagrams.
Use case diagram (With Specification)
Activity Diagram.
Structural Modeling:
Class Diagrams.
Detailed attribute and operations.
Behavioral Modeling:
Sequence diagram
State machines
Communication Diagrams.
Data Protection issues:
Available data protection laws.
Implementation of the issues with the system.
Safe ticket management:
How to create safe tickets.
How the customers will be able to select multiple choices.
What hardware will be used to print the tickets?
Relational database designing:
Creating normalized tables.
Creating data dictionary.
Evaluating object oriented method:
Advantage and disadvantages of object oriented methods.
Contrasting with structured method.
Report
Within all the phases of the tasks, several designing and evaluating have been done. In this report, all of them will be included for a better demonstration. Following section covers comprehensive details of task 1-7 respectively.
Task 1: Functional Modeling
Use case diagram for railway management system:
Use case diagrams are useful to understand the system from the viewpoint of user. In this part there are three objects. There are customers, clerical assistant and ticket booking. Customers request for the ticket booking then clerical assistant check ticket information and clerical assistant get booking information. Clerical assistant request to customer their information then customer give details information and customer choose ticket set. At a last customer confirm ticket booking to clerical assistants.
Several use case diagrams could be set into the scenario. But one compact use case diagram is used to cover potential features of the system rather than creating multiple diagrams. This has saved a lot of time.
Activity Diagram for Railway Management System:
Railway management’s potential activities are shown in this diagram. Railway manager will record the time information and hauling engine information, station master will sale ticket hand to hand and clerical assistant will serve through mail or telephone- everything is covered in this activity diagram.
Task 2: Structural Modeling
Class Diagrams:
Several classes can be found from the proposed system. Class diagrams are drawn based upon those classes found from the railway management system’s scenario. These classes include attribute and operations details within each of the class.
Task 3: Behavioral Model
Sequence Diagram:
This diagram outlines the sequential presentation of occurrence within the system. By the help of this diagram, expected behavior of the system can be understood. Comprehensive presentation of all the persons interacting with the system in a flow based order; this really helps to understand the system
State machine diagram:
This diagram demonstrates the states of the processes. From recording time details to processing ticket booking, every state is defined in this diagram. This clearly shows the end of activity.
Communication Diagram:
In this top order diagram, only the main operation and interacting persons are displayed in a comprehensive and technical way.
Task 4: Data Protection Issues
Our countries scenario:
Big IT dependent companies across the country have their individual data protection laws.
Accessibility Restriction: Accessibility within a particular system area is determined by administrators, which prevent wrong persons to be in a wrong place. Any person with no prior knowledge on any advance part of a system can cause damage to it even though unintentionally. Within the area of confidential data sources, not everyone should be allowed to access.
User Authentication: After ensuring minimal user restriction, establishing user authentication allows the system to be protected from unauthorized activity. A system is bound within limit; users are bound with limits of usage or activities, which lead into the necessity of user authentication.
Distribution of level: This is another major approach by which it is ensured that there are multiple levels of the system within which multiple levels of users are allowed to do activity.
System Security: System must be protected both physically and logically. Tickets room must be preserved from free access. Data stored should be encrypted. Disk partitions usage should be restricted to bare minimal.
(b) Implementation of protection laws against the railway’s system:
The computer system being developed can be secured by implementing one of the above-mentioned ways. Following points cover some of the ways that would be sufficient for the railway: The most usable way is user authentication method. To access the system, user has to enter the username and password. The password should match length and complexity requirements. This authentication procedure can protect the system from any unauthorized access of the system.
Different level of authentication can be implied. While somebody is trying to breach the system, he may find one of the passwords, but not likely will get all to breach all the data.
(c) Ensuring data protection in the current system:
Testing: Testing all the security procedure potentially available and planned for the current system.
Validation: Validation procedures would be set for the system. When users will try to enter the system with passwords and usernames, system will check for validity and permission limitation.
Encryption: System will have the capability to encrypt potential sensitive data. This will protect data from being unveiled to a wrong hand.
Task 5: Evaluating ticket processing procedure
Copy prevention methods:
In each ticket, ticket creator will give a 12 digit number as a barcode. Each time ticket’s barcode will be checked by checker software or barcode scanner. Ticket must not be printed on any typical paper. Each ticket will be printed on specialized printing paper that is not likely to be copied or available. Each ticket will carry individual customer’s identification along with the seat number. Every detail must be unique within all the tickets. Practically watermarks are given with conventional software. So, specialized watermark should be printed on the ticket. Specialized hologram is another way to protect ticket from being copied.
Allowing customers to select multiple tickets of different types:
There are several procedures here to allow customers to make choice from different types of ticket. When station master will deal with the booking of a ticket, he will deal with a person face to face. Customer can practically look through available tickets and make choice that suits them the most. When a client will get connected through a telephone, then clerical assistant will provide with enough information. When customers will ask clerical assistant for ticket booking, assistant will provide available options after knowing the destination of the customers. When customers will request for a ticket via email, clerical assistant will record the email. Then he will send a feed back by giving all detailed options that are available. Then after processing all data, selected ticket will be confirmed.
Printing hardware and media details:
For printing the tickets, several system components will be necessary. Printers, printing servers, computers will be necessary. Among the conventional products for these purposes, there are so many which can be used here to establish the printing service for the labels and tickets.
Device
Vendor
Price ($)
Computer
HP
500
Ticket Printer
HP
150
Computer maintenance
250
Application software
Atlas developer ltd.
250
Power Supply
200
Printing Server
1000
Brief details of some components:
Application software for preparing tickets and printing them on a media is customized software developed by a conventional developer. Rather than buying mass market software, it’s better to have one specifically made for specific purpose. This will also be a better option for security issue Rather than installing general purpose printers, ticket printers are suggested to be used. Ticket printers are specially made for printing tickets.
Task 6: Normalization and data dictionary
Normalization:
Here database is scattered into several tables to determine relationships within each of them.
Data Dictionary:
Data dictionary is build with entries from all the items that will be included in the database.
Task 7: Evaluating Object Oriented Methodology
Differentiation between both methods:
For Task 1: For designing diagrams in task 1, use case diagram and activity diagram are used. For analyzing every detail use case diagram include detailed specification. As per the requirements stated in structured diagram, DFD (Data Flow Diagram) could solve the problems of task 1.
For task 2: Since object oriented methods are practically dependent on object-class architecture, here class diagram is used. Structured: In structured methodology, ERD (Entity Relationship Diagram) is used.
For task 3: Here the sequence and communication diagram are used. Here the ELH (Entity Life History) would be used.
Object Oriented Methods:
Advantage: System can be very large. In object oriented method, modularization divides whole system into several manageable smaller parts or objects. In that way, when parts are developed, they can be synchronized to make the whole system working. Object oriented applications are more scalable than the structured tools. With looking at the modules of the system, it is possible to make an overview on how the system is going to be.
Disadvantage: Legacy Systems are built in structured programming languages. So when it is necessary to convert those systems, it becomes a tough job. Object Oriented Database Management Systems are not available. Since there are many choices with object oriented methodology, sometimes unexpected confusion can rise.
Structured Methods:
Advantage: In structured programming, system requirements are defined much before programming starts. With proceed of development, amount of necessary changes starts to decrease.
Disadvantages: Every detail should be planned and structured. Without any direct link, it’s impossible to go in a random manner, unlike the object oriented. Overview of a system before it is developed is not likely to be available.
Order Now