0% found this document useful (0 votes)
95 views14 pages

Technical Documentation

Uploaded by

Jacer Smat
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)
95 views14 pages

Technical Documentation

Uploaded by

Jacer Smat
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

Documentation

Technical Documentation

BookBay

November 13, 2020


COMPLYING WITH ALL APPLICABLE COPYRIGHT LAWS IS THE RESPONSABILITY OF
THE USER. WITHOUT LIMITING THE RIGHTS UNDER COPYRIGHT, NO PART OF THIS
DOCUMENT MAY BE REPRODUCED, STORED IN INTO A RETRIEVAL SYSTEM, OR TRANS-
MITTED IN ANY FORM OR BY ANY MEANS (ELECTRONIC, MECHANICAL, PHOTOCOPY-
ING, RECORDING, OR OTHERWISE), OR FOR ANY PURPOSE, WITHOUT THE EXPRESS
WRITTEN PERMISSION OF PAYVISION. PAYVISION MAY HAVE PATENTS, PATENT APPLI-
CATIONS, TRADEMARKS, COPYRIGHTS, OR OTHER INTELLECTUAL PROPERTY RIGHTS
COVERING SUBJECT MATTER IN THIS DOCUMENT. EXCEPT AS EXPRESSLY PROVIDED
IN ANY WRITTEN LICENSE AGREEMENT FROM PAYVISION, THE FURNISHING OF THIS
DOCUMENT DOES NOT GIVE YOU ANY LICENSE TO THESE PATENTS, TRADEMARKS,
COPYRIGHTS, OR OTHER INTELLECTUAL PROPERTY.

1
Title: Documentation
Version: 1.0
Company: CompanyName
Creation date: November 13, 2020

File history:

Date Author Description


November 13, 2020 BookBay Document creation

2
Contents
1 Introduction 7
1.1 Context of the Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.1 Project context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.2 Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.3 Existing Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.4 Our Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Functional Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 Functional Needs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2 Non-Functional Needs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Flutter Development Phase 10


2.1 Use-Case Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.1 Global Use-Case Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.2 Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.3 Global Use-Case Diagram and Description . . . . . . . . . . . . . . . . . 10
2.1.4 Detailed Use-Case Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Class Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.1 Global Class Description . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.2 Detailed Class Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Sequence Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.1 Global Sequence Description . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.2 Detailed Sequence Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4 Mockups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3 Tables 12
3.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4 Figures 13
4.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3
List of Figures
1 My figure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4
List of Tables
2 My table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5
Listings

6
1 Introduction

1.1 Context of the Project

1.1.1 Project context

Over the years, technology has revolutionized the world, every part of our daily lives is related to
the science of craft in one way or another. Cloud computing and Software as a Service (SaaS)
are two terms we hear almost every day now. When companies looking for technology to run
their own business, they are bombarded with descriptions of hosted or cloud-based platforms.
That they can be SaaS, IaaS, or PaaS applications. What do these different terms mean? It’s
easy to confuse all the meanings of them. Cloud computing as the new offspring of parallel pro-
gramming and grid computing offered, through its ease of use and its reachability, companies
has the possibility to extend their businesses, without the hassle of managing the full stack from
hardware, middleware and Software. Enterprise users are able now to use applications for a
range of needs, including management tools, customization, etc... In this context, our project is
to create and deploy a online shops for old books and rare documentations named “BookBay”,
SaaS that enable book lovers to find their desire of finding rare items to read without much
hassle .

1.1.2 Problem

Books are the essential blocks of building someone’s knowledge yet in the era of technology
it is becoming more and more difficult to obtain some of them spatially in 3rd world countries
. Yet Finding a certain book is not the only challenge that a person can face. With the never
ending increase in book prices and the waiting lists for certain titles .

1.1.3 Existing Solutions

In this part, we will seek to explore the different solutions that are offered to the reader and try to
analyze the different features, meaning the pros and cons in order to deliver a well-thought-of
solution that will respond to the pressing needs of our client. Having said that, we have chosen
to tackle 3 existing solutions, namely:

• AL kitab

• Ceresbookshop

• Culturel

First, let us briefly introduce these 3 solutions:

AL Kitab Library saw the light of day early in

7
Cersobookshop

Culturel

1.1.4 Our Solution

1.2 Functional Study

First, let us introduce ourselves. We are BookBay, a Tunisian startup that has just developed
a Cross Platform application that offers an Online library . Our solution consists of a web and
mobile application akin for selling books,

1.2.1 Functional Needs

Authentication: each user has the ability to create an account and to login via the created
account’s email/username and password. Hence, the user will experience, first-hand,
the different features offered by the application to authenticated users only.

Profile Management: the Application offers a variety of account types in order to further orga-
nize profiles and customize each user’s experience accordingly.

Advanced search engine: All the users will benefit from the advanced search engines present
on the Application, which makes the user experience much more efficient and easier.

Instant Chat: To emphasize on the communication and community aspects of our Application,
we developed an Instant Chat feature that will definitely connect all the users together
to share their experiences and passion in a rather private fashion. Also, it allows
users to make long-lasting friendships and get necessary information. It allows for
more personal connections among the users.

Order Products: The users will benefit from a well-established online Shop. They get to browse
a rich product catalog and buy high-quality products right from the source.

Stock Management: The admin will have the ability to manage the stock of the product with
much ease with couple of state of the art features .

1.2.2 Non-Functional Needs

Performance: (optimization of source code and physical resources): Our website values the
user’s experience to a great degree. The easiness of surfing all along our website’s
web pages is smooth and seamless, emphasizing the great performance powers of
our code, behind the scenes.

Reliability: Our use of Cloud services, namely AWS, allows for reliability. In other words, no
downtime will be apparent.

8
Maintenance: (A Simple and clear physical and logical architecture for easy maintenance):
Maintenance is fairly easy and straight-forward thanks to the well- organized architec-
tures and the heavy use of decoupled web services.

Track Record of Hight Availability: One of the top concerns for our application is system avail-
ability, or ”uptime.”

9
2 Flutter Development Phase

2.1 Use-Case Diagram

2.1.1 Global Use-Case Diagram

In real life, the Use Cases for a small system will be fairly well worked out before work begins on
building the system. Large system tends to work more in parallel than linearly. So, some people
will work on Use Cases, while others start building code for the Use Cases already completed.
Since our Order Processing system is relatively small, we have completed all the Use Cases for
it before building the system and we have detailed some basic Scenarios as well. They seem
pretty simple. To fully understand the system’s purpose, you must know who the system is for,
that is, who will be using the system. Different user types are represented as actors. An actor
is anything that exchanges data with the system. An actor can be a user, external hardware,
or another system. So, finding actors is one of the first steps in defining our system use. Each
type of external phenomenon with which the system must interact is represented by an actor.
We defined four actors for our system and we determined in the next step, with the use case
diagram, the functionalities that are related to each of them

2.1.2 Roles

This figure allows to draw up the actors within the system, there will be four actors and each
user will have different functionality to the others.

2.1.3 Global Use-Case Diagram and Description

The rest of this chapter is the Use Case diagram for our application’s system. You’ll see a lot
of uses relationships between Use Cases. Uses are found early in the process, and allow you
to show commonality between parts of the system. Extends tends to be added later, when we
find some new requirement or functionality that extends the current system. Since we haven’t
built the first system yet, we don’t have anything to extend.

2.1.4 Detailed Use-Case Diagrams

Stock Management Module

Live Chat Module

Purchase Management Module

10
2.2 Class Diagrams

2.2.1 Global Class Description

2.2.2 Detailed Class Diagrams

Stock Management Module

Live Chat Module

Purchase Management Module

2.3 Sequence Diagrams

2.3.1 Global Sequence Description

2.3.2 Detailed Sequence Diagrams

Stock Management Module

Live Chat Module

Purchase Management Module

2.4 Mockups

11
3 Tables

For the creation of tables it is recommended to use the package ltablex, it modifies the tab-
ularx environment to combine the features of the tabularx package (auto-sized columns in a
fixed width table) with those of the longtable package (multi-page tables)

3.1 Example

This is an example of table, table 2 is a dummy table.

label 2 label 2 label 3


item 1 item 2 item 3
item 1 item 2 item 3

Table 2: My table

12
4 Figures

The figure environment takes care of the numbering and positioning of the image within the
document. In order to include a figure, you must use the \includegraphics command.

4.1 Example

Images usually will be centered and optionally resized to a percentage of the column width.
This is an example of figure, figure 1 is a dummy figure.

Figure 1: My figure

13

You might also like