Uploaded by animeshagarwal282

Software Engineering Lab Manual

advertisement
AJAY KUMAR GARG ENGINEERING COLLEGE
Affiliated to Dr. A.P.J. Abdul Kalam Technical University
Lucknow, UP
B.Tech. Information Technology
Session :- 2023-24
Semester :- 6th
Software Engineering Lab
Subject Code :- KCS651
Submitted To :-
Submitted By :-
Mr. Pankaj Singh
Animesh Agarwal
(Assistant professor, IT Department)
(2100270310034)
List Of Experiments
S.No.
Name of Experiments
1
Prepare a SRS document in line
with the
IEEE recommended standards
2
Draw the use case diagram and
specify the role of each of the
actors. Also state the
precondition, post condition and
function of each use case
3
Draw Level-0 and level-1 Data
Flow Diagram
4
Draw Sequence Diagram
5
Draw Activity Diagram
6
Draw the class diagram
7
Draw the collaboration Diagram
8
Draw state chart Diagram
Date
Sign
Experiment – 1
Problem : Prepare a SRS document in line with the IEEE standards
Purpose: The purpose of this Software Requirements Specification (SRS)
document is to outline the requirements for the development of a railway
reservation system which able to create reservation, cancel Reservation,
Viewing Train information, Viewing Reservation Details, Updating Train
information, Updating Reservation details, and generate reports
Document Conventions: This Document was created based on the IEEE
template for System Requirement Specification documents
Scope:
•
Development of a railway reservation system
•
Ability to create reservations
•
Functionality for cancelling reservations
•
Allowed to create alarm call for train time
•
Feature for viewing train information
•
Capability for viewing reservation details
•
Functionality for updating train information
•
Capability for updating reservation details
•
Ability to generate reports
•
Provide feedback and ratings for booking train
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Overall Description
Product Perspective: It will empower us to the railway train info like their
journey time, Arrival/Departure Time, Seat availability and reservation billing
and cancellation of the tickets.
Product Features :
-
create reservation
cancel Reservation
Viewing Train information
Viewing Reservation Details
Updating Train information
Updating Reservation details
- generate reports
Guest Interface:
•
•
•
•
•
•
View_Train_Info
Search_Train
Create_Account
Customer_Login
Purchase_Ticket
Purchase_History
Train Management Interface:
•
•
•
•
•
•
•
•
•
•
Login_Function
Staff_Module
Reservation_Module
Ticket_Module
Membership_Module
Train_Module
Cost_Module
Availability_Module
Report_Module
Access_Module
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Operating Environment
•
•
•
•
•
Linux-8
Windows-7
Windows-8
Windows-10
Mac OS
System Feature
1. User Registration and Authentication: Allow users to register their
accounts securely and log in to access the system's functionalities.
2. Reservation Management:
- Create Reservation: Enable users to search for available trains based on
their preferences (e.g., date, time, destination) and book tickets seamlessly.
- Cancel Reservation: Allow users to cancel their reservations with ease,
adhering to the system's cancellation policies.
- Viewing Reservation Details: Provide users with comprehensive details
of their reservations, including journey information, seat allocation, and
payment status.
- Updating Reservation Details: Allow users to modify their reservation
details such as change of travel dates, passenger information, or seat
preferences, subject to availability and fare adjustments.
3. Train Information Management:
- Viewing Train Information: Offer users access to a comprehensive
database of trains, including schedules, routes, available classes, and fare
details.
- Updating Train Information: Enable administrators to manage and
update train schedules, routes, seat availability, and fares efficiently. This
includes adding new trains, updating existing schedules, and removing
discontinued services.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
4. Reporting and Analytics:
- Generate Reports: Provide administrators with tools to generate various
reports such as booking summaries, revenue reports, occupancy rates, and
customer feedback analysis. These reports can offer insights into system
performance, popular routes, peak travel times, and revenue trends, facilitating
informed decision-making and strategic planning.
5. Payment Integration:
- Integrate secure payment gateways to facilitate seamless transactions for
ticket purchases, ensuring user data protection and compliance with financial
regulations.
6. Notifications and Alerts:
- Implement a notification system to keep users informed about their
reservation status, updates on train schedules, and any changes or disruptions
in their planned journeys.
7. Accessibility and Localization:
- Ensure the system is accessible to users with diverse needs by incorporating
features such as screen reader compatibility, keyboard navigation, and
language localization options.
8. Customer Support and Feedback:
- Provide channels for users to seek assistance, report issues, or provide
feedback regarding their experience with the system. Implement mechanisms
for addressing customer inquiries promptly and efficiently to enhance user
satisfaction.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
External Interface Requirements
• User Interfaces
- Intuitive and responsive UI design for seamless user experience across
devices.
- Clear navigation menus and buttons for easy access to
features.
• Hardware Interfaces
- Compatibility with standard hardware configurations for accessing
the website (e.g- desktops, laptops, smartphones, tablets).
• Software Interfaces
- Integration with external services for payment processing and order
fulfilment.
- Use of APIs for location services (e.g., for calculating delivery distances) and
other third-party functionalities.
Non-Functional Requirements
Performance Requirements
- The website should load quickly and respond promptly to user interactions.
- System downtime should be minimized to ensure uninterrupted service
availability.
Security Requirements
- Implementation of encryption protocols (e.g., SSL) to protect user data during
transmission.
- Robust authentication and authorization mechanisms to prevent
unauthorized access to user accounts and sensitive information.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Reliability Requirements
- The website should be resilient to system failures and able to recover
gracefully from errors.
- Regular backups of database content to prevent data loss in case of
unexpected events.
Usability Requirements
- Intuitive UI design with clear instructions and error messages to guide users
through the ordering process.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 2
Aim: Draw the use case diagram and specify the role of each of the actors.
Also State the precondition, post condition and function of each use case.
Use Case analysis:
Use Case Analysis is an article situated technique for planning data frameworks
by separating necessities into client capacities. Each case is an exchange or
grouping of occasions performed by client. Use Cases are concentrated to
figure out what items are needed to achieve them and how they connect with
different articles.
Goals of use case analysis:
• Design system from user’s perspective
• Communicate system behaviour in user terms.
Characteristics of use case analysis:
• Use-Case: The certain ways in which the system is being used.
• Each use case represents a “complete idea” or end-to-end transaction of
user/server request.
Some key components of use case analysis:
• Actors: In software model actors are basically people who interact with
the system in any way. Each actor has a different purpose and one serves
the purpose for the other one. They are interdependent on each other.
• Connections: Relationship from actors to use actors
• Relationships: Links among actors or among use cases.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 3
Aim: Draw activity diagram.
Theory: An activity diagram is a behavioral diagram I.e., it depicts the
behavior Of a system. An activity diagram portrays the control flow from
a start point to a Finish point showing the various decision paths that
exist while the activity is being Executed. We can depict both sequential
processing and concurrent processing of Activities using an activity
diagram. They are used in business and process modelling where their
primary use is to depict the dynamic aspects of a system. An activity
diagram is very similar to flowchart.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 4
Aim: Draw class diagram.
Theory: Class diagrams are the main building blocks of every objectoriented method. The class diagram can be used to show the classes,
relationships, interface, association, and collaboration. UML is
standardized in class diagrams. Since classes are the building block of an
application that is based on OOPs, so as the class diagram has an
appropriate structure to represent the classes, inheritance, relationships,
and everything that OOPs have in their context. It describes various kinds
of objects and the static relationship between them.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 5
Aim: Draw sequence diagram.
Theory: A sequence diagram is the most commonly used interaction
diagram.
• Interaction diagram – An interaction diagram is used to show the
interactive behavior of a system. Since visualizing the interactions
in a system can be a cumbersome task, we use different types of
interaction diagrams to capture various features and aspects of
interaction in a system.
• Sequence Diagrams – A sequence diagram simply depicts
interaction between objects in a sequential order i.e. the order in
which these interactions take place. We can also use the terms
event diagrams or event scenarios to refer to a sequence diagram.
Sequence diagrams describe how and in what order the objects in
a system function. These diagrams are widely used by
businessmen and software developers to document and
understand requirements for new and existing systems.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 6
Aim: Draw Collaboration diagram.
Theory: The collaboration diagram is used to show the relationship between
the objects in a system. Both the sequence and the collaboration diagrams
represent the same information but differently. Instead of showing the flow of
messages, it depicts the architecture of the object residing in the system as it is
based on object-oriented programming. An object consists of several features.
Multiple objects present in the system are connected to each other. The
collaboration diagram, which is also known as a communication diagram, is
used to portray the object's architecture in the system
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 7
Aim: Draw State chart diagram.
Theory: The name of the diagram itself clarifies the purpose of the diagram
and other details. It describes different states of a component in a system. The
states are specific to a component/object of a system.
A State Chart diagram describes a state machine. State machine can be defined
as a machine which defines different states of an object and these states are
controlled by external or internal events.
Activity diagram explained in the next chapter, is a special kind of a
Statechart diagram. As State Chart diagram defines the states, it is used to
model the lifetime of an object
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 8
Aim: Draw Component diagram.
Theory: UML Component diagrams are used in modelling the physical aspects
of object-oriented systems that are used for visualizing, specifying, and
documenting component-based systems and also for constructing executable
systems through forward and reverse engineering. Component diagrams are
essentially class diagrams that focus on a system's components that often used
to model the static implementation view of a system.
- Components in data classes packages:
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Components in view level packages:
Components in Controller Classes Packages:
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 9
Aim: Draw Deployment diagram.
Theory: Deployment diagrams are used to visualize the topology of the
physical components of a system, where the software components are
deployed.
Deployment diagrams are used to describe the static deployment view of a
system. Deployment diagrams consist of nodes and their relationships.
Purpose of Deployment:
Diagrams The term Deployment itself describes the purpose of the
diagram. Deployment diagrams are used for describing the hardware
components, where software components are deployed. Component
diagrams and deployment diagrams are closely related.
Component diagrams are used to describe the components and
deployment diagrams shows how they are deployed in hardware.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Experiment – 10
Aim: Draw ER diagram.
Theory:
ER Model is used to model the logical view of the system from data perspective
which consists of these components:
Entity, Entity Type, Entity Set – An Entity may be an object with a physical
existence – a particular person, car, house, or employee – or it may be an
object with a conceptual existence – a company, a job, or a university course.
An Entity is an object of Entity Type and set of all entities is called as entity set.
e.g.; E1 is an entity having Entity Type Student and set of all students is called
Entity Set.
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Animesh Agarwal
(2100270310034)
IT-3
2023-24
Download