Download - Online (Repaired)
1
OnlineRailway Reservation
Page 1
2
Developed by:Developed by:Giridharan RavindranGiridharan Ravindran
Roll No : 16Roll No : 16T.Y.B.Sc. (Computer Sci.) 2010-2011,T.Y.B.Sc. (Computer Sci.) 2010-2011,
S.K.Somaiya College,VidyaviharS.K.Somaiya College,Vidyavihar
Page 2
3
ACKNOWLEDGEMENT It gives me great pleasure in presenting this project report. Its justification will never sound good if I do not express my vote of thanks to our S.K Somaiya College and Respective Principal I would also like to thank our Coordinator Mrs for her timely support in the completion of this project. I thank our internal project guide Mrs. Swati Maurya, who has done a lot to keep this project systematically and on schedule. I am thankful for their valuable guidance at every stage of the project. Finally, I would thank to all others, who give their extended support to complete this project.
Page 3
4
(Giridharan Ravindran)
INTRODUCTION TO THE ORGANIZATION
Indian Railways have been divided into 9 Zones - Western, Central,
Eastern, Northern, North Eastern, Northeast Frontier, Southern, South
Central & South Eastern covering the largest route length of over
63000 Kms of total Indian boundary. The last stations of the four
directional boundaries are West-Mumbai, South-Kanyakumari, East-
Guwahati, North-Jammu. It is the most convenient way of travelling if
you are travelling on a budget. The railways have one of the most
Page 4
5efficient communication systems between 2 stations. The types of
class available are 1st class, AC 2tier, AC 3tier, 2nd class sleeper &
chair car. The 1st class being phased out being converted in to AC 2
tier/AC 3 tier (recently being introduced in some of the trains).
INTRODUCTION TO THE RESERVATION SYSTEM
The Indian Railways (IR) carries about 5.5 lakh passengers in reserved accommodation every day. The computerised Passenger Reservation System (PRS) facilitates booking and cancelling of tickets from any of the 4000 terminals (i.e PRS booking windows) all over the country. These tickets can be booked or cancelled for journeys commencing in any part of India and ending in any other part, with travel times as long as 72 hours and distances up to several thousand kilometers. The application was first implemented at the Secunderabad PRS site in September 1994 and subsequently at the other four PRS sites. Currently, the PRS servers are maintained at the five sites in Delhi, Mumbai, Kolkata, Chennai and Secunderabad and operate in a distributed database process environment. Communication of all the terminals with their server was established using Railway/Department of Telecommunication (DOT) channel lines, fibreoptic cable/microwave channels, switches, modem, multiplexers etc. The inter-networking of five PRS nodes was completed in April 1999. Interconnectivity is established between the five PRS centres over 2 mbps leased Bharat Sanchar Nigam Limited (BSNL) lines. The system has the capability of issuing reserved tickets from anywhere to anywhere, in any train, date or class between any pair of stations from any booking terminal of the PRS. passengers’ request for reservation, cancellation and modification of journey are handled by the system through requisition slips. Major outputs generated by the system are Reservation cum-
Page 5
6journey tickets, Cancellation/Modification tickets, Reservation Charts and Daily Terminal Cash Summary. The system is also capable of generating different types of Management Information System (MIS) Reports. Indian railway is having ten zonal railways namely Eastern Railway (ER), Northern Railway (NR), Southern Railway (SR), Central Railway (CR), Western Railway (WR), South Central Railway (SCR), North Eastern Railway (NER), South Eastern Railway (SER), North East Frontier Railway (NFR) and East Central Railway (ECR).
RAILWAY RESERVATION METHODS : Online Booking Counter Booking ONLINE BOOKING:
This facility is given to general public by railway department.
With the help of this facility people can book their tickets through
internet, sitting in their home by a single click of the mouse. Using
their credit card people can easily get their tickets done within
minutes. There are certain charges for online booking as well.
COUNTER BOOKING:
This is oldest method of booking the ticket. The reservation
counters are there at railway departments from where people can get
the tickets to their respective destinations. Nowadays there are various
ticket counters, apart from railway station counters where tickets are
available.
Page 6
7
EXISTING RESARVATION SYSTEM – SHORT COMMING
Railway passengers frequently need to know about their ticket reservation status, ticket availability on a particular train or for a place, train arrival and departure details, special trains etc. Customer information centers at the railways station are unable to serve such queries at peak periods. As of now there are no call centers facilities available to solve the queries of the Indian passengers and customers. The number of reservation counters available to the Indian passengers and customers are very less. On most of the reservation centers in India there are always long queues, so it takes a long time for any individual to book the tickets. In case of booking e-ticket or I- ticket by IRCRC the only disadvantage is any individual cannot plan for onward journey. In case of e-ticket and I- ticket if there is any case of cancellation the amount to be refunded to the customer is not been credited to the customer’s account instantly, it takes a long time
Page 7
8
PROPOSED RESERVATION SYSTEM- ADVANTAGE
The proposed system is comparatively faster than the existing system. As the proposed system is comparatively faster than the existing system, there will be very less rush and shorter queues at the reservation counters or centers. In the proposed system, we are also making database for all the trains running across the country. As required, we can edit the database of the trains and also add the new trains which will be proposed in future budgets
Page 8
9
Gantt Chart
Page 9
10
Gnatt Chart
Page 10
11
DEFINITION OF EVENT
The event table is a table of data that is
typically written to the log file for each scenario
and also appears in the Analysis window. The
event table contains timing information about
specific events that occur during the scenario.
Only stimulus events with event codes will
appear in the event table.
Page 11
12
Srno Event Trigger Source Activity Response Destination
1 Passenger Create an accounts
New Account
Passenger Create a new account
Gets an new userid and password
Passenger
2 Passenger needs to get information about seats and fares
Click on Enquiry Desk
Passenger Check for seat availability and gets the fares detail
Yes/no response according to enquiry made by the passenger
Passenger
3 Passenger makes a reservation of ticket
Click on booking section for reservation of ticket
Passenger Reservation of ticket
Confirmation of ticket
Passenger and management
4 Passenger pays of the ticket
Paying of ticket
Passenger Payment of ticket is done in 2 ways either in -Credit card-Debit card
produce the final ticket along the payment detail to the passenger
Passenger and Management
5 Passenger cancel a
Cancelling of ticket
Passenger Cancelation of
Confirmation Passenge
Page 12
13ticket reservatio
n ticketcancelation of ticket and take refund acknowledgement
r and management
USE CASE DIAGRAMS
A use case diagram acts as a focus for the description of user requirements. It describes the relationships between requirements, users, and the major components. It does not describe the requirements in detail; these can be described in separate diagrams or in documents that can be linked to each use case.
ELEMENTS OF USE CASE DIAGRAMS
ELEMENT DESCRIPTION(1)Actor
An actor portrays any entity (or entities) that performs certain roles in a given system. The different roles the actor represents are the actual business roles of users in a given system. An actor in a use case diagram interacts with a use case
(2)Use Case Represents the actions performed by one or
more actors in the pursuit of a particular goal.
A use case is a kind of type.
Page 13
usecase
14(3)System Boundary A system boundary defines the scope of what a
system will be. A system cannot have infinite functionality. So, it follows that use cases also need to have definitive limits defined. A system boundary of a use case diagram defines the limits of the system
(4)Include An including use case calls or invokes the
included one. Inclusion is used to show how a
use case breaks into smaller steps. The
included use case is at the arrowhead end.
1: Usecase Daigram for Enquiry
Page 14
usecaseUsecase
se
15System
Passenger
login
ask for help
check seat availablity
<<include>>
about fare
<<include>>
2:Usecase for Resevation of ticket
Page 15
16System
Passenger
login
fill details in the form
books ticket
payment for ticket
prints the ticket
Use Case: Make Reservation
Actors: Passenger
Purpose: Reserve a seat or berth
Overview: Allows the user to make a reservation for a journey.
Normal Flow: 1.User logs in
2. User specifies the train and journey details.
3. User specifies passenger details
4. User specifies payment details
5. User confirms transaction
3:Usecase for Cancellation
Page 16
17System
Passenger
login
fill cancellation form
cancel a ticket
refund acknowledgment
Use Case: Make Cancelation
Actors: Passenger
Purpose: Cancel a seat or berth
Overview: Allows the user to make a reservation for a journey.
Normal Flow: 1.User logs in
2. User specifies the train and journey details.
3. User specifies passenger details
4. User cancel a ticket
5. User get refund acknowledgment
ENTITY RELATIONSHIP DIAGRAM:
Page 17
18An ERD is a model that identifies the concepts or entities that exist in a system and the relationships between those entities. An ERD is often used as a way to visualize a relational database: each entity represents a database table, and the relationship lines represent the keys in one table that point to specific records in related tables. ERD’s may also be more abstract, not necessarily capturing every table needed within a database, but serving to diagram the major concepts and relationships. This ERD is of the latter type, intended to present an abstract, theoretical view of the major entities and relationships needed for management of electronic resources. It may assist the database design process for an e-resource management system, but does not identify every table that would be necessary for an electronic resource management database.
ELEMENTS OF A ER DIAGRAM
Entity: An entity is an object or concept about which you want to store
information.
Relationships: Relationships illustrate how two entities share
information in the database structure.
Key attribute: A key attribute is the unique, distinguishing characteristic of the entity. For example, an employee's social security number might be the employee's key attribute
Page 18
19
Train Passenger
Enquiry for
books
cancels
gets
Refund
Ticket
has
Seat Avialability
User checks
has
User checks
Fare
General Fare
d
Concessional Fare
hasproduces
Class Payment
d d
Ac Sleeper General Credit Debit
ACTIVITY DIAGRAMS
Page 19
20An activity diagram shows a business process or a software process as a flow of work through a series of actions.They are useful for analyzing usecase by describing what action needs to be taken place and when they should occur describing a complicated sequential algorithm and modeling application with parallel processes.
ELEMENTS OF A ACTIVITY DIAGRAM
ELEMENT DESCRIPTION(1)Initial Activity This shows the starting point or first
activity of the flow. Denoted by a solid circle. This is similar to the notation used for Initial State.
(2)Activity Represented by a rectangle with rounded (almost oval) edges
(3)Decisions Similar to flowcharts, a logic where a decision is to be made is depicted by a diamond, with the options written on either sides of the arrows emerging from the diamond, within box brackets.
(4)Concurrent Activities Some activities occur simultaneously or in parallel. Such activities are called concurrent activities. For example, listening to the lecturer and looking at the blackboard is a parallel activity. This is represented by a horizontal split (thick dark line) and the two concurrent activities next to each other, and the horizontal line again to show the end of the parallel activity.
(5)Final Activity The end of the Activity diagram is shown by a bull's eye symbol, also called as a final activity.
Check for seat availabilityPage 20
21
Login
System checks deails
Enquiry Desk
Fill all required details
not ok
ok
Passenger
Reservation of Ticket
Page 21
22
Login
Books a ticket
Fill all required details
System checks deails
System confirms & books ticket
oknot ok
Passenger pays for ticket
Credit Card Debit Card
Passenger
Close form
Cancelation of Ticket
Page 22
23
Passenger
Login
Fill details for cancelation
System checks details
Cancel a ticket
Refund acknowledgement
ok
not ok
CLASS DIAGRAMPage 23
24The class diagram is the main building block in object oriented modelling. They are being used both for general conceptual modeling of the systematics of the application, and for detailed modelling translating the models into programming code.The classes in a class diagram represent both the main objects and or interactions in the application.
A class is represented by a rectangle. The following diagram shows a typical class in a class diagram
multiplicities
association
Common multiplicities
0..1 No instances, or one instance (optional, may)1 Exactly one instance
1..* one or more instances
0..* zero or more instances
Page 24
Class Name
List of variables/methods
List of methods
Class Name
List of variables/attributes
List of methods
Class Name
List of variables/attributes
List of methods
25Train
+tno+tname+boarding+destination
+get_details()+set_details()
Ticket
+pnr_no+quota+distance
+calculates()
Seat Availablity
+date+seats booked+seats vacant
+check()+count_seats()
Passenger
+pid+pname+age+address+contact+email
+get_details()+books_ticket()
1
*
11..*
1
1..*
Fare
+no_of_tickets
+checks_type()
Refund
+canceled_date+tickets_canceled+amt_returned
+valid_ticket()+gets_details()
Class
+type
Ac Sleeper General
Concessional Fare
+type+crate
General Fare
+grate
11
1
1
11
Page 25
26OBJECT DIAGRAM
Object diagrams are derived from class diagrams so object diagrams are dependent upon class diagrams.
Object diagrams represent an instance of a class diagram. The basic concepts are similar for class diagrams and object diagrams. Object diagrams also represent the static view of a system but this static view is a snapshot of the system at a particular moment.Object diagrams are used to render a set of objects and their relationships as an instance.
multiplicities
association
Common multiplicities
0..1 No instances, or one instance (optional, may)1 Exactly one instance
1..* one or more instances
0..* zero or more instances
Page 26
Class Name
List of variables/
attributes
Class Name
List of variables/
attributes
Class Name
List of variables/
attributes
27
t : Train
tno:=6012tname:=Chennai-Mumbai Expressboarding:=Kalyandestination:=Chennai
s : Seat Availablity
date:=17/ 06/ 10seats_booked:=100seats_vacant:=200
t : Ticket
pnr_no:1quota:=railwayemployeedistance:=1318 kms
p : Passenger
pid:=6024pname:=Girishage:=20address:=Badlapur(W)contact:=9960324168email:[email protected]
r : Refund
canceled_date:=10/ 08/ 10tickets_canceled:=2amt_returned:=2000
f : Fare
no_of_tickets:=4
cr : Concesssional Rate
type:=railwayemployeecrate:=5000
c : Class
has
has
has
has
gets
has
hasbooks
Page 27
28SEQUENCE DIAGRAMS
A sequence diagram shows an interaction, which represents the sequence of messages between instances of classes, components, subsystems, or actors. Time flows down the diagram, and it shows the flow of control from one participant to another
ELEMENTS OF A SEQUENCE DIAGRAM
ELEMENTS DESCRIPTION(1)Actor
Or
A participant that is external to the
system that you are developing.
(2)LifeLine A vertical line that represents the sequence of events that occur in a participant during an interaction, while time progresses down the line. This participant can be an instance of a class, component, or actor.
(3)Messages (a)Synchronous
(b)Simple
(c)Return
The sender sent the message to the receiver and wait for the procedure completion
One object sends the messages to the passive object
It returns message from called procedure of receiver to the sender
Page 28
: Class name
29u : User s : System1 : create new account()<<create>>
2 : accepts userid and passwod3 : updates the acccount on system()
4 : Help Desk (Enqiury)()
5 : provides the enquiry form6 : fill the enquiry form()
7 : verify the details()
8 : provide an error [if any]
9 : accept the information
10 : Click on booking section()
11 : switch to booking form
12 : enter the details for booking ticket()13 : provide error [if any]
14 : confirmation of reservation ticket
15 : pays for ticket through debit card /credit card()
16 : display ticket
17 : takes printout of ticket()
18 : fill details of cancelation()
19 : provide an error [if any]
20 : confirmation of cancel ticket
21 : refund acknowledgement to passenger
Page 29
30
COLLARABATION DIAGRAM
A collaboration diagram describes interactions among objects in terms of sequenced messages. Collaboration diagrams represent a combination of information taken from class, sequence, and use case diagrams describing both the static structure and dynamic behavior of a system.
BASIC COLLABORATION DIAGRAM SYMBOLS AND NOTATIONS
CLASS ROLES
CLASS ROLES DESCRIBE HOW OBJECTS BEHAVE. USE THE UML OBJECT SYMBOL TO
ILLUSTRATE CLASS ROLES, BUT DON'T LIST OBJECT ATTRIBUTES.
Association roles
Association roles describe how an association will behave given a particular
situation. You can draw association roles using simple lines labeled with
stereotypes.
Messages
Unlike sequence diagrams, collaboration diagrams do not have an explicit way to
denote time and instead number messages in order of execution. Sequence
numbering can become nested using the Dewey decimal system. For example,
nested messages under the first message are labeled 1.1, 1.2, 1.3, and so on.
Page 30
31
p : Passenger
s : System
7:Verify the details13:Cross check the details20:Verify the detail for cancelation
4:Help Desk (Enquiry)
6:Fill the enquiry form10:Click on Booking Section12:Enter details for booking of ticket16:Pay for ticket through credit / debit card19:Fill details for cancelation
8:Provide an error [If any]
5:provide the enquiry form
9:Accept the information11:Switch to booking form14:Provide an error [If any]15:Confirming reservation of ticket17:Display ticket21:Provide an error [If
any]22:Confirming cancelation of ticket23:Refund acknowledgement
18:Takes printout of ticket
The a condition for a message is usually placed in square brackets immediately
following the sequence number. Use a * after the sequence number to indicate a
loop.
Page 31
32STATE DIAGRAMS
State diagrams (also called State Chart diagrams) are used to help the developer better understand any complex/unusual functionalities or business flows of specialized areas of the system. In short, State diagrams depict the dynamic behavior of the entire system, or a sub-system, or even a single object in a system. This is done with the help of Behavioral elements
Elements of a State DiagramELEMENTS DESCRIPTION(1)Initial State This shows the starting point or first
activity of the flow. Denoted by a solid circle. This is also called as a "pseudo state," where the state has no variables describing it further and no activities.
(2)State Represents the state of object at an instant of time. In a state diagram, there will be multiple of such symbols, one for each state of the Object we are discussing. Denoted by a rectangle with rounded corners and compartments
(3)Transition An arrow indicating the Object to transition from one state to the other. The actual trigger event and action causing the transition are written beside the arrow, separated by a slash. Transitions that occur because the state completed an activity are called "triggerless" transitions
(4)Final State The end of the state diagram is shown by a bull's eye symbol, also called a final state. A final state is another example of a pseudo state because it does not have any variable or action described.
Page 32
33
new Account
entry/Click on login form
Login
entry/Click on EnquiryFormentry/Click on Booking Sectionentry/Click on Cancelation of ticket
Enquiry Deskclick on enquiry form Fill all details in form
do/Check the enquiryexit/display the appropriate message
Books a ticket
Fills the details
System confrims
do/books ticket
Debit Card
click on booking section
pay either through
Credit card
Close FormCancels a tcket
do/checks validity
Cancels ticket
Refund acknoweledgement to passenger
clicks on cancelation form
Page 33
34Structure Chart
A Structure Chart (SC) in software engineering and organizational theory is a chart, which shows the breakdown of the configuration system to the lowest manageable levels.This chart is used in structured programming to arrange the program modules in a tree structure. Each module is represented by a box, which contains the module's name. The tree structure visualizes the relationships between the modules.A structure chart is a top-down modular design tool, constructed of squares representing the different modules in the system, and lines that connect them. The lines represent the connection and or ownership between activities and subactivities as they are used in organization charts. A structure chart is a top down modular design tool, constructed of squares representing the different modules in the system, and lines that connect them. The lines represent the connection and or ownership between activities and subactivities as they are used in organizational chart.Programmers use a structure chart to build a program in a manner similar to how an architect uses a blueprint to build a house. In the design stage, the chart is drawn and used as a way for the client and the various software designers to communicate. During the actual building of the program (implementation), the chart is continually referred to as the master-plan"..
A structure chart depicts
the size and complexity of the system, and number of readily identifiable functions and modules within each function and whether each identifiable function is a manageable entity or should be broken
down into smaller components.
A structure chart is also used to diagram associated elements that comprise a run stream or thread. It is often developed as a hierarchical diagram, but other representations are allowable. The representation must describe the breakdown of the configuration system into subsystems and the lowest manageable level. An accurate and complete structure chart is the key to the determination of the configuration items, and a visual representation of the configuration system and the internal interfaces among its CIs. During the configuration control process, the structure chart is used to identify CIs and their associated artifacts that a proposed change may impact.
Page 34
35
Page 35
36COMPONENT DIAGRAMS
A component diagram shows the organizational dependency among software components including source code components,binary code components or executable components.
ELEMENTS OF A COMPONENT DIAGRAM
ELEMENT DESCRIPTION(1) Component The objects interacting with each
other in the system. Depicted by a rectangle with the name of the object in it, preceded by a colon and underlined.
(2) Class/Interface/Object
Similar to the notations used in class and object diagrams
(3) Relation/Association
Similar to the relation/association used in class diagrams.Gives relation between to components
Page 36
37
Page 37
38
PACKAGE DIAGRAM
Package diagrams can use packages that represent the different layers of a software system to illustrate the layered architecture of a software system. The dependencies between these packages can be adorned with labels / stereotypes to indicate the communication mechanism between the layers
ELEMENTS OF A DEPLOYMENT DIAGRAM
ELEMENTS DESCRIPTION(1)Package Package is namespace used to
group together elements that are semantically related and might change together.
A package could be shown as a rectangle with a small tab attached to the left side of the top of the rectangle.
(2)Members of Package Members of the package may be shown within the boundaries of the package. In this case the name of the package should be placed on the tab.
Page 38
39
Ticket
Passenger
Books the ticket
Payment
Cancelation
Cancel the ticket
Page 39
40
DEPLOYMENT DIAGRAMS
The basic deployment diagram element is the node. The node represents the environment in which a component or a set of components execute. This means that a node in a deployment diagram can represent a multitude of things—physical hardware such as a server machine, a system software like an operating system, or even application infrastructure software like a Web server, application server, database server, and so forth. The different nodes in the deployment diagram can be interconnected to represent interdependencies, thus providing a deployment diagram that is easy to comprehend and provides the complete deployment environment of a system.
ELEMENTS OF A DEPLOYMENT DIAGRAM
ELEMENTS DESCRIPTION(1)Node The element that provides the
execution environment for the components of a system. Depicted by a cube with the name of the object in it, preceded by a colon, and underlined.
(2)Connection Similar to the relation/association used in class diagrams to define the interconnection between nodes.
Page 40
41
<<proccessor>>
<<Device>>
Print Out
<<Device>>
Monitor
Passenger
Enquriy desk
Books a Ticket
Payment
Cancelation
Refund
Page 41
42MENU HEIRARCHYMENU HEIRARCHY
ONLINE RAILWAY RESERVATION ONLINE RAILWAY RESERVATION
1. Login User a. New User
b. Forgot Passwordc. Change Password
2. Menu of the Lista. Login for Reservationb. Cancelationc. Photo d. About use. Helpf. Reports
3. Login for Reservationa. Train Details
a.1 Fares Detailsa.2 Seats Details
b. Reservation Formc. Paymentd. Final Ticket for print
4. Cancelationa. Another Loginb. Cancel Ticketc. Cancelation Page
5 . About usAbout the system information
6. Reporta. Reservation Listb. Final Ticket
Page 42
43 PROGRAM FLOWCHART PROGRAM FLOWCHART
(1) (1) PROGRAM LISTINGPROGRAM LISTING
Page 43
44Testing Techniques UsedTesting Techniques Used
1. Blackbox Testing
2. WhiteBox Testing
Page 44
45TTESTINGESTING C CONCEPTONCEPT :- :-
1) ROLE OF TESTING :-
A project is like a load trip, some projects are simple & routine like driving to store in broad daylight. But most project work doing are driving a truck off road in mountains at night those project needs headlights as lights the way.
You illuminate the road ahead so the programmer & managers, however they bicker over the map, can at least se where they are what they about to run over & how close they are to cliff. The details mission of the group varies from company. Behind those details there is common factor.
Testing is done to find information critical decisions about the project or product that are made on basis of that information.
2) TESTING :-
Once source code has been generated software must be tested to uncover many errors possible before to customer.
Its goal is design series of test cases that have likelihood of finding errors software testing technique provide systematic guidance for designing test that :-
a) Exercise internal logic of software components.b) Exercise the I/p & O/p domains of program functional behavior
& performance.Testing phase must maximize the number of errors detected &
minimize the number of test cases.
Page 45
46Testing is of two types
a) Functionalb) Structure
Functional testing has
a) Equivalence Partitioning:
can be used to reduce the number of test cases that need to developed by dividing the output domain of a programme into classes. It is systematic method of identifying sets of classes of input conditions to be tested. each equivalence class is a representative of large set of test cases may be taken to infer the elements of class .A valid input is an element of the input domain that is expected to return an erroneous value.
b) Boundary value analysis:
is one of the black box testing technique. It is based on the observation that faults tend to cluster around boundary in programmes. It is also assumed that if testing cases fails to produce an error all other domains in the system will fail to produce an error. On the basis of this an attempt can be made to cover the structure of the programme. It focuses on Exception handling, it has the high probability of finding bugs.
Page 46
47c) Cause effect graphing:
Above techniques do not consider combination of inputs. Cause Effect Graphing is a technique that aids in selecting combinations of input in a systematic way such that number of test-cases do not become unmanageably large. A cause is distinct input condition and effect is a distinct output conditions. The conditions should be stated such that they have a true or a false value.
Structural testing has
a) Control Flow Graph: Any procedural design can be designed into a control flow graph. Lines or arrows are used to show the graph where lines are edges and circles are used to show one or more actions of the nodes. It is used to show the logical and control flow of the graph.
b) Data Flow Based Testing.It mainly focuses on testing the value assignment of each variable in programme by executing sub paths from the assignment or definition to some program points in which the variable is used.
c) Mutation Testing. Is a fault based Testing technique used to test the quality of the test suite . it is generally computationally expensive.
Page 47
48d) Cyclomatic Complexity:
Derives a quantitative measure of Logical complexity. It gives the number of independent paths through strongly connected directed graphs i.e each node can be reached from anywhere. It is used mainly to find the number of paths to look at a node for testing, to help pinpoint areas of potential instability, to provide quatitative indication, and to help identify a units/ components testability, maintainability and understandability.
CCODINGODING S STANDARDTANDARD :- :-
1) TESTING OBJECTIVES
Testing is process of executing program with the intent of finding n error.
A good test case is one that has high probability of finding an as yet undiscovered error.
A successful test is one that uncovered an as undiscovered error.
a) White Box Testing
White Box Testing some times called glass box testing is test case design method that uses control structure of procedure
design to derive test cases. Using White Box testing methods derives cases that :-
Guarantee that all individual paths within module have been exercise at least once.
Exercise all logical decisions on there true & false sides. Exercise all loops at there boundaries & within there optional
bound. Exercise internal data to ensure there validity.
Page 48
49b) Black Box Testing
Black Box Testing also called behavior testing focuses on functional requirement of software. Black Box testing enables
the software engineer to derive the set I/p condition that will fully exercise all functional requirement of program. Black box
testing attempt to find in following categories:-
Incorrect or missing function. Interface error. Error in data structure or external database access. Behavior or performance error. Initialization & termination error.
TTESTEST C CASESASES :- :-
Test cases are good in revealing the presence of faults Successful in implementation of test cases implies that there are no errors in program .Test cases should be minimize as they are expensive in case of money & efforts. Primary objectives of test cases are to ensure that if there is an error or fault in program it is exercise by the test cases. An ideal test case set is one that succeeds only if there are no errors in the program. One possible ideal set of test case is one that includes all possible I/p to the program & is called exhaustive testing. A test case is good if it detect in undiscovered error in program.
Testing Approaches used.Testing Approaches used.
1) INTEGRATION TESTING :-
Page 49
50Integration testing is a systematic technique for concluding the
program structure. While at some time conducting test to uncover errors associated with interfacing. The objective is to take unit testing component & build a program structure that has been detected by design. In big bang approach, all components are combining in advance & the entire program is tested a whole. Increment integration is an anti thesis of big bang approach where the program is tested & constructed in small increments where errors are easy to correct & isolate, interfaces are more likely to be tested completely & systematic test approach may be applied.
Integration testing has two different approaches in OOP’s concept
Read-based testing: it integrates the set of classes required to respond to the set of the inputs or eventa for the system. Each thread is integrated and tested individually.Regression testing is applied to ensure that no side effects occur.
Use-based Testing: begins the construction of the system and classes that use very few of server classes.
2) Fault based Testing: The object of fault based testing in OOP system to design tests that have high possibility of uncovering faults. Because the system must meet customers Requirements and begins with the analysis of the system.
3) Validation Testing in OO context: it focuses mainly on visible actions performed and their outputs from the system. To draw better results from this testing testers should draw use-cases.
Page 50
51
Page 51