Car Rental Management System - System Architecture Document

August 31, 2017 | Author: Ravindu Hasantha Naulla | Category: Use Case, User (Computing), Software Architecture, Customer Relationship Management, Digital Technology
Share Embed Donate


Short Description

PHP, Mysql...

Description

Software Engineering Project

Car Renting Management System Software Architecture Document Version 1.0

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

Revision History Date 11-04-2016

Confidential

Version 1.0

Description Initial design details

Software Engineering Project, 2016

Author N. Ravindu Hasantha

Page 2 of 18

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

Table of Contents 1.

Introduction

4

1.1 1.2 1.3 1.4 1.5

4 4 4 4 4

Purpose Scope Definitions, Acronyms, and Abbreviations References Overview

2.

Architectural Representation

4

3.

Architectural Goals and Constraints

5

4.

Use-Case View

5

4.1 4.2

6 6

5.

6.

Use case diagram Use-Case Realizations

Logical View

12

5.1

12

Architecturally Significant Design Packages

Process View

13

6.1

Activity diagrams 6.1.1 Create customer account 6.1.2 Reserve vehicle 6.1.3 Update vehicle details 6.2 Sequence diagrams 6.2.1 Update vehicle details 6.2.2 Reserve vehicle 6.2.3 Search for vehicle

13

7.

Data View

18

8.

Quality

18

Confidential

13 14 15 16 16 17 17

Software Engineering Project, 2016

Page 3 of 18

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

Software Architecture Document 1.

Introduction

1.1

Purpose This document provides a comprehensive architectural overview of the system, using a number of different architectural views to depict different aspects of the system. It is intended to capture and convey the significant architectural decisions which have been made on the system.

1.2

Scope The system is divided into two subparts according to the users of the system: Customer subsystem – System consist of all the functionalities related to customers. Business subsystem – System consist of all the functionalities related to business end. (Company staff) This document covers entire system and all its subparts. The functionalities of the system are also clearly divided into the above mentioned subparts and explained in simple and understandable way.

1.3

Definitions, Acronyms, and Abbreviations CRMS – Car Renting Management System SRS – Software Requirements Specification Customer – The person who wants to rent a car

1.4

References

[1] "Tutorialspoint," [Online]. Available: http://tutorialspoint.com. [Accessed 08 04 2016].

1.5

Overview The following is discussed in this document: Architectural representation in the next section. Architectural goals and constraints. Design model diagrams:

2.



Usecase diagram



Class diagram



Activity diagram



Sequence diagram



ER diagram

Architectural Representation

Confidential

Software Engineering Project, 2016

Page 4 of 18

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

Logical view – Class diagram Process view – Activity diagrams, Sequence diagrams Data view – ER diagram

3.

Architectural Goals and Constraints This system will be using an API to implement the text message sending functionality. Which can be considered as using an off-the-shelf product

4.

Use-Case View

Following are the main use cases identified in the system 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.

Customer wants to create an account Customer wants to login to the system Customer wants to view vehicle with details Customer wants to request text message notification Customer wants to reserve vehicle for renting Customer wants to update/ cancel reservation Customer wants to give feedback on vehicle Admin wants to add/ remove new vehicle/ vehicle category Admin wants to update vehicle details Admin wants to change vehicle status Admin wants to change cost details Admin wants to view report System wants to send availability details via text message

Confidential

Software Engineering Project, 2016

Page 5 of 18

CRMS Software Architecture Document 4.1

Version: 1.0 Date: 11-04-2016

Use case diagram Following figure is a high level abstraction of usecases found in CRMS. The stakeholder “Admin” might be separated into few more stakeholders considering the expansion of the system.

4.2

Use-Case Realizations

Use case name

1.

create an user account

Actor

customer

Description

In order to log in to the system new customer must create an account providing basic details

preconditions

Customer should have an email address

Main flow

Choosing create account option Provide basic details including email Set username and password Confirm account from email account

Successful end/post condition Confidential

Success notification & e mail confirmation Software Engineering Project, 2016

Page 6 of 18

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

Fail end/post condition

Re submission of the form with changes

Extensions

If the email address or the NIC number already available in the system, the user will be asked login with existing account

2.

Use case name

Logging in to the system

Actor

Customer

Description

Customer must log in to use the system

preconditions

Username, password

Main flow

Enter username and password Log in

Successful end/post condition

Login successful notification and customer view of the system

Fail end/post condition

Login failed notification & redirect to login page

Extensions

N/A 3.

Use case name

View vehicle with details

Actor

Customer

Description

Customer can search for a vehicle and view the details

preconditions

Customer must be logged into the system

Main flow

Search for vehicle using keywords Select the desired vehicle

Successful end/post condition

Detailed view of the vehicle

Fail end/post condition

N/A

Extensions

N/A

Use case name

4.

Request text message notification

Actor

Customer

Description

Customer can request for text message notification to be received when a vehicle is available

preconditions

Customer must be logged into the system Vehicle must be unavailable at the moment

Main flow

View vehicle details Select text message notification function

Successful end/post condition

Function enabled notification

Fail end/post condition

Function enabling failed notification

Confidential

Software Engineering Project, 2016

Page 7 of 18

CRMS Software Architecture Document Extensions

Use case name

Version: 1.0 Date: 11-04-2016 In the case of contact number not available, the customer will be asked to provide an contact number 5.

Reserve vehicle for renting

Actor

Customer

Description

Customer can reserve the selected vehicle to be rented

preconditions

Customer must be logged into the system Selected vehicle must be available in the given duration

Main flow

View vehicle details Select vehicle for renting Fill in necessary details about reservation Calculate cost (optional) Confirm vehicle reservation

Successful end/post condition

Successful reservation notification

Fail end/post condition

Reservation failed notification

Extensions

Email notification confirming reservation

Use case name

6.

Update/ cancel reservation

Actor

Customer

Description

Customer can update or cancel the reservation beforehand

preconditions

Customer must be logged into the system Customer should have an existing reservation

Main flow

Select the existing reservation Select update/ cancel reservation option Update: Change necessary details Submit reservation

Successful end/post condition

Successfully updated/cancelled notification

Fail end/post condition

Failed update/cancellation notification

Extensions

Email notification confirming reservation

Confidential

Software Engineering Project, 2016

Page 8 of 18

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

7.

Use case name

Give feedback on vehicle

Actor

Customer

Description

Customer can provide a feedback about the vehicle and the service provided by the company

preconditions

Customer must be logged into the system Customer must have at least one completed renting process

Main flow

Select renting history Select the renting instance to give feedback Fill in the feedback form and submit

Successful end/post condition

Feedback success notification

Fail end/post condition

N/A

Extensions

Feedback is added to the relevant vehicle 8.

Use case name

Add/remove new vehicle/vehicle category

Actor

Admin

Description

In the case of business expansion, new vehicles/categories can be added to the system and also removed from the system.

preconditions

Admin must be logged into the system When removing vehicle should not be reserved by a customer

Main flow

Select add new vehicle/ vehicle category function or remove vehicle/vehicle category function Add: Fill the form details and upload relevant pictures Confirm the addition Remove: Confirm removal

Successful end/post condition

Addition/removal success notification

Fail end/post condition

Failed Adding/ removal notification

Extensions

N/A

Confidential

Software Engineering Project, 2016

Page 9 of 18

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

9.

Use case name

Update vehicle details

Actor

Admin

Description

Details of the vehicles can be changed in the case of modification

preconditions

Admin must be logged into the system

Main flow

Select vehicle to be updated Select update function Enter changed details Confirm update

Successful end/post condition

Successfully updated notification

Fail end/post condition

Update failed notification

Extensions

N/A 10. Change vehicle status

Use case name Actor

admin

Description

The availability status of the vehicle can be changed

preconditions

Admin must be logged into the system

Main flow

Select vehicle Change status using dispatch or return function

Successful end/post condition

Successfully changed notification

Fail end/post condition

Failed notification

Extensions

N/A 11. Change cost details

Use case name Actor

Admin

Description

Admin can change the charges of renting

preconditions

Admin must be logged into the system

Main flow

Select vehicle/ vehicle category Change the charges and confirm

Successful end/post condition

Successfully changed charges notification

Fail end/post condition

Changing charges failed notification

Extensions

N/A

Confidential

Software Engineering Project, 2016

Page 10 of 18

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

12. View report

Use case name Actor

Admin

Description

Admin is able view statistical reports regarding the transactions happened in the system

preconditions

Admin must be logged in

Main flow

Select generate report function Select the report type and time duration Generate report

Successful end/post condition

Requested report

Fail end/post condition

Failed to generate report notification

Extensions

N/A 13. Send availability details via text message

Use case name Actor

System

Description

System will be sending a text message to the relevant customers regarding availability of a selected vehicle

preconditions

The requested vehicles status changed from unavailable to available

Main flow

Generate text message Send out the text message using text message API

Successful end/post condition

Test message sent successfully

Fail end/post condition

Failed to send message notification

Extensions

N/A

Confidential

Software Engineering Project, 2016

Page 11 of 18

CRMS Software Architecture Document

Version: 1.0 Date: 11-04-2016

5.

Logical View

5.1

Architecturally Significant Design Packages The following is a very basic model of the system using UML class diagram. The level of abstraction is high. This system is a web based application. More detailed data model of the system is presented in section 7.

Confidential

Software Engineering Project, 2016

Page 12 of 18

CRMS Software Architecture Document

6.

Process View

6.1

Activity diagrams

6.1.1

Create customer account

Confidential

Version: 1.0 Date: 11-04-2016

Software Engineering Project, 2016

Page 13 of 18

CRMS Software Architecture Document

6.1.2

Version: 1.0 Date: 11-04-2016

Reserve vehicle

Confidential

Software Engineering Project, 2016

Page 14 of 18

CRMS Software Architecture Document

6.1.3

Version: 1.0 Date: 11-04-2016

Update vehicle details

Confidential

Software Engineering Project, 2016

Page 15 of 18

CRMS Software Architecture Document

6.2

Version: 1.0 Date: 11-04-2016

Sequence diagrams

6.2.1

Confidential

Update vehicle details

Software Engineering Project, 2016

Page 16 of 18

CRMS Software Architecture Document 6.2.2

Reserve vehicle

6.2.3

Search for vehicle

Confidential

Version: 1.0 Date: 11-04-2016

Software Engineering Project, 2016

Page 17 of 18

CRMS Software Architecture Document

7.

Version: 1.0 Date: 11-04-2016

Data View

The data view is represented using an Entity-Relationship diagram.

8.

Quality The system architecture will enforce all the capabilities of the system such as extensibility, reliability, portability.

Confidential

Software Engineering Project, 2016

Page 18 of 18

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF