0% found this document useful (0 votes)
5 views31 pages

FILE.ois

The document outlines the practical lab file for the Object Oriented Software Engineering course at Delhi Technological University, focusing on the Car Rental Management System. It includes various experiments such as problem statements, initial requirements, use case diagrams, and software requirement specifications. The aim is to automate vehicle rental processes, improve customer experience, and streamline operations for rental agencies.

Uploaded by

mohit.121322
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views31 pages

FILE.ois

The document outlines the practical lab file for the Object Oriented Software Engineering course at Delhi Technological University, focusing on the Car Rental Management System. It includes various experiments such as problem statements, initial requirements, use case diagrams, and software requirement specifications. The aim is to automate vehicle rental processes, improve customer experience, and streamline operations for rental agencies.

Uploaded by

mohit.121322
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 31

DELHI TECHNOLOGICAL UNIVERSITY

(Formerly Delhi College of Engineering)


Shahbad Daulatpur, Bawana Road, Delhi 110042

DEPARTMENT OF COMPUTER ENGINEERING

CO326: Object Oriented Software Engineering


Practical Lab File

Submitted To: Submitted By:


Prof. Ruchika Malhotra Manish
(23/SE/095)
INDEX

S.No. Experiment Signature


1 Write the Problem Statement of Car Rental
Management System.
2 Write the initial requirement of Car Rental
Management System.
3 Design Use Case Diagram of Car Rental
Management System.
4 Design Use Case Description of Car Rental
Management System.
5 Write the Software Requirement Specification
Document of Car Rental Management System.
6 Design Class diagram of Car Rental
Management System.
7 Design Sequence Diagram of Car Rental
Management System.
8 Design Collaboration Diagram of Car Rental
Management System.
9 Design Activity Diagram of Car Rental
Management System.
10 Design Test Cases of Car Rental Management
System.
Experiment-1
Aim- Write the Problem Statement of Car Rental Management System.

INTRODUCTION TO ONLINE CAR RENTAL SYSTEM

1.1 Introduction
This project is intended for use by a Car Rental Company that specializes in renting cars to
customers. It is an online system that allows customers to view available cars, register, view
profiles, and book vehicles.

1.2 Motivation
The advancement of information technology and internet penetration has greatly improved
various business processes and communication between companies (service providers) and their
customers, including the car rental industry. This E-Car Rental System has been designed to offer
the following services:
● Improve Business Processes: To be able to use internet technology to project the rental
company's services to the global world rather than limiting their services to their local
domain alone, thereby increasing their return on investment (ROI).
● Online Vehicle Reservation: A tool that allows customers to reserve available cars
online in advance of their expected pick-up date or time.
● Customer registration: A registration portal that stores customer information, monitors
their transactions, and uses it to provide better and more personalized services to them.
Group bookings: Allows the customer to reserve space for a group, such as a wedding or
a corporate meeting (Event management).

1.3 Problem Statement


A car rental is a vehicle that can be rented for a fee and used for a set period of time. Getting a
rental car allows people to get around even if they do not have access to their own personal
vehicle or do not own one at all. The person in need of a car must contact a rental car company
and make a reservation for a vehicle. This system improves customer retention while also
streamlining vehicle and staff management.

1.4 Objectives
The objective of the project is to automate vehicle rental ad reservation so that the customers do
not need to call and spend unnecessary time to reserve a vehicle.
● To transform the manual process of hiring car to a computerize system
● To validate the Rental car system using user satisfaction test
● To produce the documentation such as Software Requirement Specification(SRS),
Software Design Description as system development reference

1.5 Scope
This project covers a wide range of topics, from business concepts to the computing field, and it
necessitated the completion of several research projects in order to meet the project's objectives.
The following topics are covered:
● Car rental industry: This includes research into how the car rental business is conducted,
the processes involved, and the opportunities for improvement.
● PHP Technology used for the development of the application.
● General customers as well as the company’s staff will be able to use the system
effectively.
● Web-platform means that the system will be accessible 24 hours a day, seven days a
week, except when there is a temporary server issue, which is expected to be minor.
Experiment-2
Aim- Write the initial requirement of Car Rental Management System.

Initial Requirements Document (IRD)

Title of Project Car Rental Management System


Stakeholders Admin, Rental Agents, Developers, Customers
Techniques Used 1. Interviews
2. Brainstorming
3. User Observation
4. Interface Analysis
5. Document Analysis
6. Role-play
7. Surveys
Name of Person/Designation PQR/Admin
Date 10 March 2024
Version 1.0.00

Consolidated list of Initial Requirements


Catchy and user-friendly interface
Smooth and fast user experience
Admin shall manage vehicle inventory and system settings
Front-desk staff shall check vehicle availability for reservation
System shall send rental confirmation emails to customers
Rental agents shall manage customer reservations
System shall calculate rental charges based on duration and vehicle type
System shall generate reports on rental transactions and revenue
Front-desk staff shall register new customers and vehicles
Rental agents shall allocate vehicles to customers
Experiment-5
Aim- Write the Software Requirement Specification Document of Car Rental Management
System.

SOFTWARE REQUIREMENT SPECIFICATION

1. Introduction

1.1 Purpose
The purpose of this document is to comprehensively describe all the requirements for the Car
Rental Management System. It serves as a primary communication tool between stakeholders,
including administrative staff, rental agents, developers, and customers. The document outlines
functional and non-functional requirements that define the scope of the system and guide the
development process. While face-to-face conversations may occur during the project, only the
requirements documented herein or in future revisions will be considered as the basis for system
development.

1.2 Scope
The software product under consideration is the Car Rental Management System, designed to
streamline the operations of a car rental agency. The system facilitates vehicle allocation to
customers, reservation management, billing, reporting, and administrative functions. Rental
agents utilize the system to allocate vehicles based on availability and customer requirements,
while customers use it to search for available vehicles, make reservations, and view billing
details. The intention of the system is to improve operational efficiency, reduce overtime costs,
and enhance customer satisfaction by accurately managing vehicle inventory and reservations.

1.3 Definitions, Acronyms, and Abbreviations


● SRS: Software Requirements Specification
● GUI: Graphical User Interface
● ID: Identification Number
● Reservation: An agreement to rent a vehicle for a specified period.
● Inventory: A list of available vehicles for rental.
● Billing: The process of calculating and generating invoices for rental transactions.

1.4 References
Lauesen, S. (2003). Task Descriptions as Functional Requirements. IEEE Computer Society.
Available: http://www.itu.dk/~slauesen/Papers/IEEEtasks.pdf
1.5 Overview
This document provides a comprehensive overview of the requirements for the Car Rental
Management System, detailing functional and non-functional requirements, user characteristics,
constraints, and assumptions. It serves as a reference guide for stakeholders involved in the
development, implementation, and maintenance of the system.

2. Overall Description

2.1 Product Perspective


The Car Rental Management System is a standalone application designed to streamline and
automate the operations of a car rental agency. It serves as a central platform for managing
vehicle inventory, reservations, billing, reporting, and administrative functions. The system
interacts with users through a web-based interface, providing easy access to rental services and
information.

2.1.1 System Interfaces


The system shall interact with users via a web-based interface accessible through standard web
browsers. It shall communicate with external services such as payment gateways and email
servers for processing transactions and sending notifications. The system shall utilize a relational
database management system (RDBMS) such as MySQL for data storage and management.

2.1.2 User Interfaces


The user interface shall be intuitive and user-friendly, featuring interactive elements for vehicle
search, reservation booking, and account management. It shall provide clear instructions and
guidance to users throughout the rental process, ensuring a seamless and efficient experience.
The interface shall support customization and personalization options for users to tailor their
preferences and settings.

2.1.3 Hardware Interfaces


The system shall run on standard hardware configurations, including servers for hosting the
application and databases, as well as client devices such as desktop computers, laptops, tablets,
and smart phones for accessing the system. It shall utilize network interfaces for communication
between server and client components, ensuring smooth data exchange and real-time updates.

2.1.4 Software Interfaces


The system shall integrate with external payment gateways for processing transactions securely
and efficiently. It shall interact with the database management system for data storage, retrieval,
and manipulation operations. The system shall interface with email servers for sending
automated notifications to users regarding reservation confirmations, reminders, and updates.

2.1.5 Communication Interfaces


The system shall support communication protocols such as HTTP/HTTPS for transmitting data
between client and server components. It shall implement secure communication channels using
encryption and authentication mechanisms to protect sensitive information during transit.

2.1.6 Memory Constraints


The system shall efficiently manage memory usage to optimize performance and ensure
responsiveness under varying load conditions. It shall implement caching mechanisms to store
frequently accessed data in memory for faster retrieval and reduced latency.

2.1.7 Operations
The system shall perform operations such as vehicle registration, reservation management,
billing, reporting, and administrative functions. It shall handle concurrent user interactions and
data processing tasks efficiently, ensuring smooth and uninterrupted operation.

2.1.8 Site Adaptation Requirements


The system shall be adaptable to different geographical locations and business requirements,
supporting multi-site deployments and customization options. It shall provide localization and
internationalization features to accommodate users from diverse regions and languages.

2.2 Product Functions


The Car Rental Management System shall provide the following key functionalities:

● Vehicle Registration: Admins shall be able to register new vehicles into the system,
providing details such as make, model, year, registration number, and rental price per day.
● Reservation Management: Users shall be able to search for available vehicles and make
reservations based on criteria such as location, date, vehicle type, and rental duration.
● Billing and Payment Processing: The system shall calculate rental charges, process
payments securely, and generate invoices for completed bookings.
● Reporting and Analytics: The system shall generate reports on key metrics such as
revenue, occupancy rate, and popular vehicle models for analysis and decision-making.
● Administrative Functions: Admins shall have access to a dashboard for managing
system settings, user accounts, and vehicle inventory.

2.3 User Characteristics


The Car Rental Management System shall cater to the following user roles:

● Admins: Responsible for managing the system settings, user accounts, and vehicle
inventory.
● Rental Agents: Handle customer inquiries, allocate vehicles, and manage reservations.
● Customers: Search for available vehicles, make reservations, and view billing details
through the user interface.

2.4 Constraints
● Regulatory Compliance: The system shall comply with data protection regulations such
as GDPR and PCI DSS to ensure the security and privacy of user data.
● Compatibility: The system shall be compatible with major web browsers and operating
systems to provide a consistent user experience across different platforms.
● Scalability: The system architecture shall be scalable to accommodate future growth in
user base and vehicle inventory, supporting increased demand and data volume.

2.5 Assumptions for Dependencies


The Car Rental Management System assumes the following dependencies:

● Availability of stable internet connection for users to access the system.


● Availability of sufficient hardware resources to support system operations and
performance requirements.
● Compliance with external service providers' terms and conditions for integrating payment
gateways and other third-party services.
Experiment-3
Aim- Design Use Case Diagram of Car Rental Management System.

Theory
A Use Case Diagram is a vital tool in system design, it provides a visual representation of how
users interact with a system. It serves as a blueprint for understanding the functional
requirements of a system from a user’s perspective, aiding in the communication between
stakeholders and guiding the development process.

A use case diagram is a representation of a user’s interaction with the system that shows the
relationship between the user and different use cases in which the user is involved. A use case
diagram is used to represent the dynamic behavior of a system.

It encapsulates the system’s functionality by incorporating the use cases, actors and their
relationship. It models the tasks, services and functions required by a system/subsystem of an
application.

It depicts the high-level functionality of a system and also tells how the user handles a system. A
use case diagram is typically used to portray the dynamic aspects of a system. It gathered the
system needs, depicted the external view of the system, recognized the internal as well as
external factors that influenced the system and represented the interaction between actors.

This diagram consists of following components –

1) Actors: The users that interact with a system. An actor may be a person, an organization or an
outside system that interacts with an application or system and they appear outside the rectangle.

2) Use Case: It is a list of actions or event steps, typically defining the interactions between a
role/actor and a system, to achieve a goal. These use cases are represented within a rectangle
providing functionality.

3) Relationships: It is basically a solid line that describes the relationship between actors and use
cases or between the use cases.
Experiment-4
Aim- Design Use Case Description of Car Rental Management System.

USE CASES DESCRIPTION

Use Case 1: Register as Member

Introduction: This use case describes the process by which a user registers as a member on
the car rental platform.
Actors: Customer
Precondition: The user accesses the car rental system website or mobile application.
Postcondition: The user's registration information is stored in the system, and they become a
registered member.
Event Flow
Basic Flow:
1. The user navigates to the registration page on the car rental platform.
2. The user enters their personal details, such as name, email, phone number, and password.
3. The user submits the registration form.
4. The system validates the entered information.
5. If the information is valid, the system registers the user as a member and sends a
confirmation email.
6. The user receives the confirmation email and verifies their account.
7. The user's registration is completed successfully.

Alternate Flow:
If the entered information is invalid, the system prompts the user to correct the errors and
resubmit the form.
Special Requirements:
The system should ensure that each email address is unique to prevent duplicate registrations.
Passwords should be securely hashed and stored in the database.
Associated Use Cases:
Process Rental: After registration, the user can proceed to rent a car.
Make Reservation: The registered member can make reservations for vehicles.

Use Case 2: Make Reservation

Introduction: This use case describes the process by which a registered member makes a
reservation for a vehicle.
Actors: Customer
Precondition: The user is logged in to their account on the car rental platform.
Postcondition: A reservation is created for the selected vehicle, and the user receives a
confirmation.
Event Flow
Basic Flow:
1. The user searches for available vehicles based on location, date, and other criteria.
2. The user selects a vehicle from the search results.
3. The user specifies the rental dates and any additional preferences.
4. The user confirms the reservation.
5. The system validates the reservation details and checks for vehicle availability.
6. If the vehicle is available, the system creates a reservation and sends a confirmation to the
user.
7. The user receives the reservation confirmation via email or on the platform.

Alternate Flow:
If the selected vehicle is not available for the specified dates, the system notifies the user and
suggests alternative options.
Special Requirements:
The system should display real-time availability and pricing information for vehicles.
Users should be able to modify or cancel reservations within a specified timeframe.
Associated Use Cases:
Process Rental: The reservation process is a precursor to renting a vehicle.
Return Car: Once the reservation period is over, the user can return the vehicle.

Use Case 3: Return Car

Introduction: This use case describes the process by which a customer returns a rented
vehicle to the car rental agency.
Actors: Customer
Precondition: The customer has rented a vehicle from the car rental agency.
Postcondition: The rental agreement is terminated, and the vehicle is checked back into the
system as available for rent.
Event Flow
Basic Flow:
1. The customer arrives at the designated return location with the rented vehicle.
2. The customer informs the rental agent of their intent to return the vehicle.
3. The rental agent inspects the vehicle for any damages or discrepancies.
4. If there are no issues, the rental agent closes the rental agreement in the system.
5. The system updates the vehicle's status to "available for rent."
6. The customer receives a confirmation of the return.

Alternate Flow:
If there are damages or issues with the vehicle, the rental agent follows the protocol for handling
such situations, which may involve documenting the damages and initiating repairs.
Special Requirements:
The return process should be quick and efficient to minimize customer wait times.
The system should maintain accurate records of vehicle returns for billing and inventory
purposes.
Associated Use Cases:
Process Rental: Returning the vehicle concludes the rental process.
Add New Car: After a vehicle is returned, it becomes available for rent again.

Use Case 4: Give Feedback


Introduction: This use case describes the process by which a customer provides feedback on
their rental experience with the car rental agency.
Actors: Customer
Precondition: The customer has completed a rental with the car rental agency.
Postcondition: The customer's feedback is recorded in the system for review and analysis by
the car rental agency.
Event Flow
Basic Flow:
1. The customer accesses the feedback submission form on the car rental platform.
2. The customer provides ratings and comments on various aspects of their rental
experience, such as vehicle quality, customer service, and overall satisfaction.
3. The customer submits the feedback form.
4. The system records the feedback and notifies the car rental agency.
5. The car rental agency reviews the feedback and takes any necessary actions based on the
customer's comments.

Alternate Flow:
If the customer encounters any issues with the feedback submission process, they may contact
customer support for assistance.
Special Requirements:
The feedback form should be easy to access and user-friendly to encourage participation.
The system should allow customers to submit feedback anonymously if desired.
Associated Use Cases:
Reply to Customer's Feedback: After receiving feedback, the car rental agency may respond to
the customer's comments or take corrective actions as needed.

Use Case 5: Add New Car


Introduction: This use case describes the process by which an admin or authorized user adds
a new car to the car rental inventory.
Actors: Admin
Precondition: The admin is logged in to their account on the car rental platform.
Postcondition: The new car is added to the inventory and is available for rental.
Event Flow
Basic Flow:
1. The admin accesses the admin dashboard or management interface on the car rental
platform.
2. The admin navigates to the "Add New Car" section.
3. The admin enters the details of the new car, such as make, model, year, registration
number, and rental price per day.
4. The admin uploads photos and additional information about the car.
5. The admin submits the new car details.
6. The system validates the information and adds the new car to the inventory.
7. The new car is now available for rental on the platform.

Alternate Flow:
If the admin encounters any issues during the new car addition process, they may contact
technical support for assistance.
Special Requirements:
The system should support the addition of various types of vehicles, including cars, vans, trucks,
etc.
Admins should have the option to set availability dates and restrictions for newly added vehicles.
Associated Use Cases:
Update Car Details: After adding a new car, the admin may need to make changes or updates to
its details.
Process Rental: The newly added car becomes available for rental after being added to the
inventory.

Use Case 6: Update Car Details


Introduction: This use case describes the process by which an admin or authorized user
updates the details of an existing car in the car rental inventory.
Actors: Admin
Precondition: The admin is logged in to their account on the car rental platform.
Postcondition: The changes to the car details are saved in the system and reflected in the
inventory.
Event Flow
Basic Flow:
1. The admin accesses the admin dashboard or management interface on the car rental
platform.
2. The admin navigates to the "Manage Inventory" section.
3. The admin selects the car whose details need to be updated.
4. The admin edits the relevant fields, such as rental price, availability status, or description.
5. The admin saves the changes.
6. The system validates the updated information and updates the car details in the inventory.

Alternate Flow:
If the admin encounters any issues during the car details update process, they may revert the
changes or contact technical support for assistance.
Special Requirements:
The system should maintain a revision history of car details to track changes made by admins.
Changes to car details should be reflected in real-time on the rental platform for customers to
see.
Associated Use Cases:
Add New Car: After updating the details of an existing car, the admin may need to add more cars
to the inventory.
Process Rental: Updated car details affect availability and rental rates for customers.

Use Case 7: Reply to Customer's Feedback


Introduction: This use case describes the process by which the car rental agency responds to
feedback provided by customers.
Actors: Admin
Precondition: The car rental agency receives feedback from a customer via the feedback
submission form.
Postcondition: The car rental agency's response is communicated to the customer, and any
necessary actions are taken to address the feedback.
Event Flow
Basic Flow:
1. The admin accesses the feedback management section on the car rental platform.
2. The admin reviews the feedback submitted by the customer.
3. The admin formulates a response to the customer's feedback, addressing any concerns or
issues raised.
4. The admin sends the response to the customer via email or through the platform's
messaging system.
5. If necessary, the admin takes actions to address the feedback and improve the customer
experience.

Alternate Flow:
If the feedback requires further investigation or follow-up, the admin may escalate the issue to
the appropriate department or personnel for resolution.
Special Requirements:
The system should provide templates or guidelines for formulating responses to common types
of feedback.
Responses to customer feedback should be timely and professional to maintain customer
satisfaction.
Associated Use Cases:
Give Feedback: Customers provide feedback, which may lead to further communication or
action by the car rental agency.

Use Case 8: Process Rental

Introduction: This use case describes the process by which a customer rents a vehicle from
the car rental agency.
Actors: Customer, Rental Agent
Precondition: The customer has completed the reservation process and is ready to pick up the
rented vehicle.
Postcondition: The customer receives the rented vehicle along with all necessary
documentation, and the rental agreement is initiated.
Event Flow
Basic Flow:
1. The customer arrives at the designated pickup location to collect the rented vehicle.
2. The rental agent verifies the customer's reservation details and identity.
3. The rental agent prepares the rental agreement and explains the terms and conditions to
the customer.
4. The customer signs the rental agreement and provides any required documentation, such
as a driver's license and insurance information.
5. The rental agent hands over the keys and relevant documents to the customer.
6. The customer inspects the vehicle for any damages and notes them on the rental
agreement if necessary.
7. The rental agent records the vehicle handover in the system and marks the reservation as
"fulfilled."

Alternate Flow:
If there are discrepancies or issues with the reservation or documentation, the rental agent
follows the appropriate protocol for resolving them.
Special Requirements:
The rental process should be efficient and streamlined to minimize customer wait times.
The system should generate rental agreements with all relevant details, including rental rates,
insurance coverage, and vehicle condition.
Associated Use Cases:
Return Car: After the rental period is over, the customer returns the vehicle to the car rental
agency.
Make Reservation: Renting a vehicle follows the reservation process, where the customer selects
a vehicle and specifies rental dates.

Use Case 9: Add New Staff


Introduction: This use case describes the process by which an admin adds a new staff
member to the car rental agency's workforce.
Actors: Admin
Precondition: The admin is logged in to their account on the car rental platform.
Postcondition: The new staff member is added to the system and granted appropriate access
privileges.
Event Flow
Basic Flow:
1. The admin accesses the admin dashboard or management interface on the car rental
platform.
2. The admin navigates to the "Manage Staff" or "Add New Staff" section.
3. The admin enters the details of the new staff member, such as name, email, role, and
contact information.
4. The admin assigns access privileges and permissions to the new staff member based on
their role and responsibilities.
5. The admin saves the new staff member's details.
6. The system validates the information and creates a new staff account with the specified
access rights.

Alternate Flow:
If the admin encounters any issues during the staff addition process, they may revert the changes
or contact technical support for assistance.
Special Requirements:
The system should support different types of staff roles, such as rental agents, administrative
staff, and managers.
Access privileges should be configurable and granular to ensure appropriate data security and
confidentiality.
Associated Use Cases:
Update Staff Details: After adding a new staff member, the admin may need to make changes or
updates to their details.
Process Rental: New staff members may be involved in various stages of the rental process, such
as customer service or vehicle inspection.

Use Case 10: View Report


Introduction: This use case describes the process by which an admin or authorized user views
reports generated by the car rental system.
Actors: Admin
Precondition: The admin is logged in to their account on the car rental platform.
Postcondition: The admin has access to relevant reports and can review them for analysis and
decision-making purposes
Event Flow
Basic Flow:
1. The admin accesses the admin dashboard or management interface on the car rental
platform.
2. The admin navigates to the "Reports" or "Analytics" section.
3. The admin selects the desired report from the available options, such as rental
transactions, revenue, or vehicle utilization.
4. The system generates the selected report based on predefined parameters and filters.
5. The admin reviews the report data and analyzes trends, patterns, or anomalies.
6. The admin may export or download the report for further analysis or sharing with
stakeholders.

Alternate Flow:
If the admin encounters any issues with report generation or access, they may contact technical
support for assistance.
Special Requirements:
The system should provide customizable report templates and filters to cater to different
analytical needs.
Reports should be generated in a user-friendly format, such as tables, charts, or graphs, for easy
interpretation.
Associated Use Cases:
Update Car Details: Analysis of reports may inform decisions related to adding new vehicles or
adjusting rental rates.
Process Rental: Rental transaction data may be included in various reports for financial analysis
and forecasting.
Experiment-6
Aim- Design Class diagram of Car Rental Management System.

Theory
The class diagram represents a static view of an application. It depicts the types of objects
residing in the system and the relationships between them. A class consists of its objects, and
also it may inherit from other classes. This diagram is used to visualize, describe, document
various different aspects of the system, and also to construct executable software code. The class
diagram represents a static view of an application. It depicts the types of objects residing in the
system and the relationships between them. A class consists of its objects, and also it may inherit
from other classes. This diagram is used to visualize, describe, document various different
aspects of the system, and also to construct executable software code.
The class diagram is the basic building block; in a class diagram, a number of classes are
recognized and arranged together, which aids in determining the structural relations between
those objects. Class diagrams are a type of UML (Unified Modeling Language) diagram used in
software engineering to visually represent the structure and relationships of classes in a system.
UML is a standardized modeling language that helps in designing and documenting software
systems.
Experiment-7
Aim- Design Sequence Diagram of Car Rental Management System.

Theory
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. It helps in
envisioning several dynamic scenarios. It portrays the communication between any two lifelines
as a time-ordered sequence of events, such that these lifelines took part at the run time. In UML,
the lifeline is represented by a vertical bar, whereas the message flow is represented by a vertical
dotted line that extends across the bottom of the page. It incorporates the iterations as well as
branching. Uses of sequence diagrams –
• Used to model and visualize the logic behind a sophisticated function, operation or procedure.
• They are also used to show details of UML use case diagrams.
• Used to understand the detailed functionality of current or future systems.
• Visualize how messages and tasks move between objects or components in a system.

Member Registration
Reservation of Car

Customer Feedback
Adding a New Car

Feedback Response
Return Car and Check Rental Details

View Report
Experiment-8
Aim- Design Collaboration Diagram of Car Rental Management System.

Theory
A collaboration diagram, also known as a communication diagram, is an illustration of the
relationships and interactions among software objects in the Unified Modeling Language (UML).
These diagrams can be used to portray the dynamic behavior of a particular use case and define
the role of each object. 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 is used to portray the object's architecture in the system. Following
are some of the use cases enlisted below for which the collaboration diagram is implemented:

1. To model collaboration among the objects or roles that carries the functionalities of use cases
and operations.
2. To model the mechanism inside the architectural design of the system.
3. To capture the interactions that represent the flow of messages between the objects and the
roles inside the collaboration.
4. To model different scenarios within the use case or operation, involving a collaboration of
several objects and interactions.
5. To support the identification of objects participating in the use case.
Experiment-9
Aim- Design Activity Diagram of Car Rental Management System.

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 modeling where their primary use is to depict the dynamic aspects of a
system. Some of the most common components of an activity diagram include:
• Action: A step in the activity wherein the users or software perform a given task. In Lucid
chart, actions are symbolized with round-edged rectangles.
• Decision node: A conditional branch in the flow that is represented by a diamond. It includes a
single input and two or more outputs.
• Control flows: Another name for the connectors that show the flow between steps in the
diagram.
• Start node: Symbolizes the beginning of the activity. The start node is represented by a black
circle.
• End node: Represents the final step in the activity. The end node is represented by an outlined
black circle.
Member Registration
Profile Modification

Customer Feedback
Reservation of Car

Payment of Car Rent


Adding a New Car

View Report
Experiment-10
Aim- Design Test Cases of Car Rental Management System.
Test Cases for Car Rental Management System

1. Vehicle Registration
● Verify Vehicle Registration: Register a new vehicle with all mandatory details. Verify
that the vehicle is successfully added to the inventory.
● Duplicate Registration: Attempt to register a vehicle with the same registration number
as an existing vehicle. Verify that the system displays an error message and prevents
duplicate registration.

2. Reservation Management
● Search for Available Vehicles: Search for available vehicles based on location, date, and
vehicle type. Verify that the system displays a list of matching vehicles.
● Book Vehicle: Book a vehicle for a specific date and time. Verify that the vehicle's
availability status is updated, and the reservation is recorded correctly.
● Cancel Reservation: Cancel a reservation before the pickup time. Verify that the vehicle
becomes available again, and the reservation is removed from the system.

3. Billing and Payment Processing


● Calculate Rental Charges: Book a vehicle for a specific duration and verify that the
rental charges are calculated correctly based on the rental price per day.
● Process Payment: Complete a reservation and proceed to payment. Verify that the
payment is processed securely and the transaction is recorded in the system.
● Generate Invoice: Complete a reservation and verify that an invoice is generated with
the correct details, including rental charges, taxes, and additional fees.

4. Reporting and Analytics


● Generate Revenue Report: Generate a revenue report for a specific time period. Verify
that the report includes total revenue, breakdown by vehicle type, and any discounts
applied.
● Occupancy Rate Report: Generate an occupancy rate report for a specific date range.
Verify that the report includes the percentage of vehicles rented out during the specified
period.
5. Administrative Functions
● Add New Vehicle: Add a new vehicle to the inventory and verify that it is successfully
registered in the system.
● Update Vehicle Details: Update the details of an existing vehicle, such as rental price or
availability status. Verify that the changes are reflected correctly.
● Delete Vehicle: Delete a vehicle from the inventory and verify that it is removed from the
system without affecting any existing reservations.

6. User Interface
● GUI Navigation: Navigate through different sections of the user interface, such as
vehicle search, reservation booking, and account management. Verify that all features are
accessible and functional.
● Error Handling: Enter invalid input or perform incorrect actions in various parts of the
system. Verify that appropriate error messages are displayed to guide the user.

7. Performance Testing
● Response Time: Perform simultaneous actions, such as searching for vehicles and
making reservations, with multiple users. Measure the response time of the system and
verify that it remains within acceptable limits.
● Concurrency Test: Simulate a high load scenario with a large number of concurrent
users accessing the system. Verify that the system can handle the load without crashing or
slowing down significantly.

8. Security Testing
● Authentication: Attempt to access restricted functionalities without logging in. Verify
that the system redirects to the login page and prompts the user to authenticate.
● Data Protection: Enter malicious input or attempt to manipulate URLs to access
unauthorized data. Verify that the system detects and prevents such unauthorized access
attempts.

9. Compatibility Testing
● Browser Compatibility: Access the system using different web browsers (e.g., Chrome,
Firefox, Safari) and verify that all features work correctly on each browser.
● Device Compatibility: Access the system from different devices (e.g., desktop, laptop,
tablet, smart phone) with varying screen sizes and resolutions. Verify that the user
interface is responsive and adapts to different devices.

You might also like