Software Design Specifications v1
Software Design Specifications v1
Caravan
Version: 00.04
Project Code
Supervisor Twaha Ahmed Minai
Co Supervisor Dr. Hironao Takahashi
Project Team Rameez Raja
Mahad Saddique
Irtija Alam
Document History
Versio Name of Person Date Description of change
n
0.01 Rameez Raja 20/3/2018 Added Sequence and State
diagrams
0.02 Irtija Alam 23/3/2018 Added Class diagram
0.03 Mahad Siddiqui 24/3/2018 Added Database Design
Distribution List
[Following table will contain list of people whom the document will be distributed after every sign-off]
Page 2 of 22 of
<Project code> Software Design Specification <Version 00.04>
Name Role
Twaha Ahmed Minai Supervisor
Dr. Hironao Takahashi Co Supervisor
Document Sign-Off
[Following table will contain sign-off details of document. Once the document is prepared and revised, this
should be signed-off by the sign-off authority.
Any subsequent changes in the document after the first sign-off should again get a formal sign-off by the
authorities.]
Document Information
Page 3 of 22 of
<Project code> Software Design Specification <Version 00.04>
Category Information
Customer Personal Project
Project Caravan
Document Software Design Specification
Document Version 1.0
Status Draft
Rameez raja
Author(s) Mahad Sadique
Irtija Alam
Approver(s) Twaha Ahmed Minai
Issue Date 1/4/2018
Document Location Karachi
Distribution Supervisor
Page 4 of 22 of
<Project code> Software Design Specification <Version 00.04>
Table of Contents
1 6Introduction8
1.1 Purpose of Document 8
1.2 Intended Audience 8
1.3 Document Convention 8
1.4 Project Overview 8
1.5 Scope 8
2 7
2.1 Assumptions and Dependencies 9
2.2 Risks and Volatile Areas 9
3 8
3.1 System Level Architecture 10
3.2 Software Architecture 10
4 8
5 9
5.1 Design Class Diagram 12
5.2 Database Design 12
5.2.1 ER Diagram 12
5.2.2 Data Dictionary 12
5.2.2.1 Data 1 12
5.2.2.2 Data 2 12
5.2.2.3 Data n 12
5.3 Application Design 14
5.3.1 Sequence Diagram 14
5.3.1.1 <Sequence Diagram 1> 14
5.3.1.2 <Sequence Diagram 2> 14
5.3.1.3 <Sequence Diagram n> 14
5.3.2 State Diagram 14
5.3.2.1 <State Diagram 1> 14
5.3.2.2 <State Diagram 2> 14
5.3.2.3 <State Diagram n> 14
5.4 GUI Design 14
5.4.1 <Use Case Name - Mock Screen 1> 14
5.4.2 <Use Case Name - Mock Screen 2> 14
5.4.3 <Use Case Name - Mock Screen 3> 15
6 22
Page 5 of 22 of
<Project code> Software Design Specification <Version 00.04>
1 Introduction
1.1 Purpose of Document
This document is created to maintain the design specification of our project, it will
provide clarity of what we shall develop and the document can be used by developers or
reviewers for their understanding.
1.5 Scope
● Payment methods (billing solution, fare estimation) - Tentative.
● Ride share.
● User login system (driver profile management system and customer profile
management system).
● Driver and customer ranking system.
● Run time location tracking.
● Relevant information of route according to user’s preference.
Page 6 of 22 of
<Project code> Software Design Specification <Version 00.04>
2 Design Considerations
2.1 Assumptions and Dependencies
Assumption:
● SMS Verification and Email Verification is a must for users to register. Only verified
and authenticated logged in user can use our service.
● We shall be covering the premises of Karachi city only for our preliminary
coverage, not any other city or country.
● We assume that we shall be using Android OS as a preliminary stage, and would
not focus on compatibilities to other popular OS, such as IOS, unless we find the
adequate need.
● We shall make the application compatible to the following versions of Android OS:
Android Oreo (8.0) Android Nougat (7.0 – 7.1.2) Android Marshmallow (6.0 –
6.0.1)
● We shall be using the following devices for our debugging and testing: Motorola
G4 plus. Samsung S7 Huawei Mate 10
Dependencies:
● User should have a unique id & password for their login process.
● Above 18 years age user should submit their CNIC
● Below 18 years age user should submit their school/college/or any other official
● Only verified and authenticated logged in users shall be the ones to book or to
put their vehicle for carpooling. • Geo-location and mapping system
● User Trust
● Passengers depend on Drivers and vice versa.
Page 7 of 22 of
<Project code> Software Design Specification <Version 00.04>
3 System Architecture
3.1 System Level Architecture
4 Design Strategy
The drivers can initiate carpooling event, view their previous events, update their profile, & view
their feedback given by passengers, through their interface. The passengers can request ride,
view their previous events, update their profile, & view their feedback given by drivers & others
passengers, through their interface. The system admin can view drivers & passengers profile,
feedback. To be precise, the system admin will manage the information through his interface.
4.3.1 Backend
A custom Backend as a Service (BaaS) might be in order, therefore following are the usage for
the backend:
Hosting: Cloud, such as EC2
Database: Relational DB, SQL, such as MySQL initially for ease. If the total user count
increases on a high rate in future, Non-Relational DB, NoSQL, such as MongoDB nodejs can be
used.
4.3.2 Frontend
This app is specifically designed to perform effectively on only android operating system.
Therefore, our frontend would be developed through Android Studios and the programming
language would be Java. For creative designing, we will use Adobe Photoshop.
Page 9 of 22 of
<Project code> Software Design Specification <Version 00.04>
Page 10 of 22 of
<Project code> Software Design Specification <Version 00.04>
Page 11 of 22 of
<Project code> Software Design Specification <Version 00.04>
5.2.2.2 Data 2
Page 12 of 22 of
<Project code> Software Design Specification <Version 00.04>
5.2.2.3 Data 3
Page 13 of 22 of
<Project code> Software Design Specification <Version 00.04>
5.2.2.4 Data 4
5.2.2.5 Data 5
Page 14 of 22 of
<Project code> Software Design Specification <Version 00.04>
Page 15 of 22 of
<Project code> Software Design Specification <Version 00.04>
5.3.1.1 SignUp
5.3.1.2 Booking
Page 16 of 22 of
<Project code> Software Design Specification <Version 00.04>
Page 17 of 22 of
<Project code> Software Design Specification <Version 00.04>
Page 18 of 22 of
<Project code> Software Design Specification <Version 00.04>
5.3.2.2 Car
Page 19 of 22 of
<Project code> Software Design Specification <Version 00.04>
Page 20 of 22 of
<Project code> Software Design Specification <Version 00.04>
Page 21 of 22 of
<Project code> Software Design Specification <Version 00.04>
6 References
http://www.ijritcc.org/download/1429421413.pdf
http://leeds-faculty.colorado.edu/moyes/html/documents/ShredSledBusinessPlan.pdf
http://www.sce.carleton.ca/faculty/wainer/papers/CarPool.pdf
7 Appendices
NA
Page 22 of 22 of