Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 36

CAN THO UNIVERSITY

COLLEGE OF INFORMATION AND COMMUNICATIONS


TECHNOLOGY
----------

GROUP PROJECT

COURSE: INTRODUCTION TO SOFTWARE ENGINEERING


COURSE CLASS: CT107HM04

DIGITAL ECONOMY
Instructor: Ph.D.Phan Phuong Lan
Group members:
B2014911 – Nguyen Phuc Truong Giang
B2014951 – Duong Anh Thu
B2015022 – Pham Thao Uyen

Cần Thơ, 2022


DIGITAL ECONOMY

Group Organization

# Student Code Full Name Role


B2014911 Nguyễn Phúc Trường Giang
1 Team Leader

B2014951 Dương Anh Thư


2 Vice of Team Leader

B2015022 Phạm Thảo Uyên


3 Member

PLAN
Task Board
The
evaluation
Member Position Task
on
completion

- Providing tasks for the team 


- Designing the main page of the
Nguyễn Phúc website 
Trường Giang - Editing content 
Team
B2014911 Leader - Doing “user management” case in the
SRS 
- Doing the “Introduction”, “Overall
Description” in the SRS 
- Designing data model 
- Doing the “login” case in the SRS 
- Searching information and editing
Dương Anh Thư Vice of document 
Team - Doing unit testing 
B2014951 Leader - Doing web interfaces 
- Doing the “Requirement
Specification” in the SRS 
Phạm Thảo Uyên Member - Doing the “Introduction”, “Product
Perspective” in the SRS 

2
DIGITAL ECONOMY

- Doing the “add products” case in the


B2015022 SRS 
- Doing unit testing 
- Designing data model 

Revision History
Name Date Reason For Changes Version
Saturday coffe 5/5/2022 Issue with copyright 1.0

3
DIGITAL ECONOMY

Table of Contents
A. Software Requirements Specification............................................................7
1. Introduction...................................................................................................7
1.1 Purpose.....................................................................................................7
1.2 Product Scope...........................................................................................7
1.3 Definitions, Acronyms and Abbreviations...............................................7
1.4 References.................................................................................................8
2. Overall Description.......................................................................................8
2.1 Product Perspective..................................................................................8
2.2 Product Functions.....................................................................................8
2.3 User Classes and Characteristics............................................................10
2.4 Operating Environment..........................................................................10
2.5 Design and Implementation Constraints.................................................11
2.6 Assumptions and Dependencies.............................................................11
3. Requirements Specification.........................................................................11
3.1 External Interface Requirements............................................................11
3.1.1 User Interfaces 11
3.1.2 Hardware Interfaces 11
3.1.3 Software Interfaces 11
3.1.4 Communications Interfaces 12
3.2 Functional Requirement..........................................................................12
3.2.1 User Management 12
3.2.2 Add products 13
3.3 Nonfunctional Requirements..................................................................17
3.3.1 Performance 17
3.3.2 Reliability 17
3.3.3 Safety and Security 17
3.3.4 Adaptability and Portability (khả năng thích ứng và ứng dụng) 18
3.3.5 Business Rules 18
3.4 Other Requirements................................................................................18
4
DIGITAL ECONOMY

B. Software Design Specification........................................................................19


1. Introduction.................................................................................................19
1.1 Purpose...................................................................................................19
1.2 Product Scope.........................................................................................19
1.3 Definitions, Acronyms and Abbreviations.............................................19
1.4 References...............................................................................................19
2. Application Architecture.............................................................................20
2.1 Application Architecture........................................................................20
2.2 Description..............................................................................................20
3. Data Design.................................................................................................21
3.1 Data Description.....................................................................................21
3.1.1 Conceptual Data Model 22
3.1.2 Logical Data Model 22
3.1.3 Physical Data Model 23
4. Detailed Design...........................................................................................24
4.1 Function REQ001 (User Management)..................................................24
4.2 Function REQ002 (Add Product)...........................................................26
4.3 Function REQ003 (Login)......................................................................29
5. References to Requirements........................................................................30
6. Appendices..................................................................................................30
C. Unit Testing....................................................................................................31
1. Introduction.................................................................................................31
1.1 Purpose...................................................................................................31
1.2 Definitions, Acronyms and Abbreviations.............................................31
1.3 References...............................................................................................31
2. Test Cases....................................................................................................31
2.1 Test 1 <User Management>....................................................................31
2.1.1 Drawing the flow graph 31
2.1.2 Determining a basis set of independent paths32
2.1.3 Preparing test cases 33
2.2 Test 2 <Add products>...........................................................................33
2.2.1 Drawing the flow graph 33

5
DIGITAL ECONOMY

2.2.2 Determining a basis set of independent paths35


2.2.3 Preparing test cases 36
2.3 Test 3 <Add products>...........................................................................36
2.3.1 Determining a basis set of independent paths38
2.3.2 Preparing test case 38

6
DIGITAL ECONOMY

A.Software Requirements Specification

1. Introduction

1.1 Purpose

Saturday Coffee Shop is a website for the customers who can view and buy drinks. The
website is available for domestic use and can be downloaded and used for free.
Provide detailed specifications required by sotware for online shopping. Customer can install
and use it on smartphones that use Android and IOS operating systems. Computes run on
Microsot Windows 7, 8, 10 playfoms. The website allows transaction management, providing
visual information about products for customers and managers

1.2 Product Scope

 Customers
 Desiners
 Programmers
 Testers
 Clients

1.3 Definitions, Acronyms and Abbreviations

Term Definition
Active Article The document that is tracked by the system; it is a narrative
that is planned to be posted to the public website.
Author Person submitting an article to be reviewed. In case of
multiple authors, this term refers to the principal author,
with whom all communication is made.
Database Collection of all the information monitored by this system.
Editor Person who receives articles, sends articles for review, and
makes final judgments for publications.
Field A cell within a form.
Historical Society Database The existing membership database (also HS database).
Member A member of the Historical Society listed in the HS
database.
Reader Anyone visiting the site to read articles.
Review A written recommendation about the appropriateness of an
article for publication; may include suggestions for
improvement.
Reviewer A person that examines an article and has the ability to
recommend approval of the article for publication or to
request that changes be made in the article.
Software Requirements A document that completely describes all of the functions
Specification of a proposed system and the constraints under which it
must operate. For example, this document.
Stakeholder Any person with an interest in the project who is not a
developer.
7
DIGITAL ECONOMY

User Reviewer or Author.

1.4 References

[1] IEEE Computer Society, IEEE Recommended Practice for Software Requirements
Specifications, IEEE Std 830-1998, 1998.
[2] Karl E. Wiegers, Software Requirements Specification Template, 1999.
[3] Bộ Tông tin và Truyền thông, Hướng dẫn về các yêu cầu phi chức năng chung cho các hệ
thống thông tin cung cấp dịch vụ công trực tuyến, 2013.
[4] https://en.m.wikipedia.org/wiki/Digital_economy

2. Overall Description

2.1 Product Perspective

Nowadays, social media has become a part of people's daily basis. According to
wearesocial.com, in January 2021 there will be 4.33 billion users worldwide, with this number
increasing by more than 10 percent (398 million new users) since 2019. And according
techjury.net, users will spend 2 hours and 24 minutes per day on social media in 2020 and
50.1% of the time spent on mobile was done using social media apps. And due to the Covid-
19 pandemic, the needs of using social media have increased tremendously, especially
websites that are made for entertaining

So, in order to satisfy the need of shopping, Saturday Coffee Shop developers created a
website called Saturday Coffee Shop for providing the needs of drinks that they can use with
everyone, everywhere.

2.2 Product Functions

 Customers

8
DIGITAL ECONOMY

 Administractor

9
DIGITAL ECONOMY

 Manager

2.3 User Classes and Characteristics

 Users: Customer
 Manager
 Administrator: programmers, resource manager, account manager, event manager

2.4 Operating Environment

Hardware: PC, laptop, smartphone, tablet


Smartphone : Support software for Android operating system, version must be from Android
7.0 or higher. Running the iOS operating system, the version must be iOS 10.0 or higher. The
RAM must be 1.5 GB, the internal memory must be 500 MB available, the CPU speed must
be 1.95 GHz.
Personal Computer (PC): The system supports Windows operating systems, the version must
be from Windows 7.0 or above. Run macOS operating, version must be from macOS 11.0 or
higher. Ram must be from 2 GB. internal memory must use 1 GB, CPU speed must be from
2.0 GHz.
Tablets: System supports Android operating system, version Android 7.0 or above. running
on iPad iOS, version iPad iOS 10.0 or Higher. RAM must be 1.5 GB. storage must be 500MB
or more, CPU speed must be 1.95 GHz.
Laptop: System supports Windows, version Window 7.0 or above. Running macOS, the
version must be macOS 11.0 or above. RAM must be at minimum 2GB, Minimum storage is
1GB, CPU speed must be 2.0 GHz.
10
DIGITAL ECONOMY

2.5 Design and Implementation Constraints

Transmission control protocol (TCP): It divides any message into a series of packets that are
sent from source to destination and there it gets reassembled at the destination. Internet
protocol (IP): it is designed as an addressing protocol, mostly used with TCP. The IP
addresses in packets help in routing them through different nodes in a network until a reaches
the destination system.

File transfer protocol (FTP): Allow users to transfer files from one machine to another. This
includes multimedia files, program files, etc.

Post office protocol (POP): Allow users to receive Emails. Simple mail transport Protocol
(SMTP): SMTP is designed to send and distribute outgoing
Email.

Hyper text transfer protocol (HTTP): it is designed for transferring a hypertext among two or
more systems. HTML tags are used for creating links. These links may be in any form like
text or images.

Telnet: help users connect one system to another. It is also called as remote login

2.6 Assumptions and Dependencies

<List any assumed factors (as opposed to known facts) that could affect the requirements
stated in the SRS. These could include third-party or commercial components that you plan to
use, issues around the development or operating environment, or constraints. The project
could be affected if these assumptions are incorrect, are not shared, or change. Also identify
any dependencies the project has on external factors, such as software components that you
intend to reuse from another project, unless they are already documented elsewhere (for
example, in the vision and scope document or the project plan).>

3. Requirements Specification

3.1 External Interface Requirements

3.1.1 User Interfaces

Interface on smartphones and tablets: Web name(1), account login(2), search(3), quick
selection bar(4), item other contacts(5)

3.1.2 Hardware Interfaces

Personal Computer, smartphone, laptop, tablet

3.1.3 Software Interfaces

Smartphones: Running Android operating system (version from Android 7.0 or higher), IOS
operating system (version from IOS 10.0 and above).

11
DIGITAL ECONOMY

PC: Running Windows operating system (the version must be from Windows 7.0 or higher),
macOS operating system (the version must be from macOS 11.0 or higher).

Tablets: Running Android OS (version 7.0 or above), iPad iOS (version 10.0 or above).

Laptop: Running Windows (version 7.0 or above), macOS (version 11.0 or above).

3.1.4 Communications Interfaces

Internet Protocol Suite, Protocol Stack, Transmission Control Protocol, Internet Protocol,
Hypertext Transfer Protocol.

3.2 Functional Requirement

3.2.1 User Management

Use Case: User Management ID: REQ001


Main actor: Administrator Priority: Essentil
Brief description: user account management

Trigger: Admin
Type: internal
Relationship:
+Association: <Actor>
+Include:
+Extend: Add user, Delete user

12
DIGITAL ECONOMY

+Generalization: [use case 1, use case 2...]


Normal flow:
1. Admin selects functions to manage users
2.
Sub 1: <add user> if the admin selects to add user
Sub 2: <delete user> if the admin selects to delete user
3. Choose one user
4. The system displays user account
5. Admin can choose add or delete user account

Subflows:
Sub 1: <add user>
• Add gmail and password
• Check if user gmail is correct or not?
Yes -> Message to user
No -> Message to user "Gmail is not correct"
• Update information
Sub 2: <delete user>
• The user want to delete the account or the offending user account
• Admin choose the account
• Deleting the account

Alternate/Exceptional flows:

3.2.2 Add products

13
DIGITAL ECONOMY

ID: REQ002

Use Case: Add products


Main actor: Manager Priority: Essentil
Brief description: add products

Trigger: Manager
Type: internal
Relationship:
+Association:
+Include:
+Extend: Add user, Delete user
+Generalization:
Normal flow:
1. Satff selects an item from the list to add to the web
2.
Sub 1: <add product> if the staff selects to add product
3. Choose one product to add
4. Staff fill in product description, price, classification and add photos and videos
5.

14
DIGITAL ECONOMY

Subflows:
Sub 1: <add product>
• Choose a product from the list
• Check if staff want to add a product
Yes -> keep adding a product
No -> Back to home pgae
• Update new product

Alternate/Exceptional flows:

3.2.1 Login

Use Case: Log in ID: REQ003


Main actor: Customer Priority: Essentil
Brief description: Customers can login to the web

Trigger: Customer
Type: internal
Relationship:
+Association: <Actor>
+Include:
+Extend: Login
+Generalization: [use case 1, use case 2...]
Normal flow:
1. Customer log in into web
2.
Sub 1: <log in by user email and user password>

15
DIGITAL ECONOMY

Sub 2: <log in by gmail or facebook>

4. Customer fill in email and password

Subflows:
Sub 1: < log in by user email and user password >
• Customer usepassword to login into web
• Check the email and password
Yes -> keep login
No -> Message to customer “User Email or Password does not match” -> Back to
login page
• Direct to homepage
Sub 2: <login by Gmail/Facebook>
• The customer want to login by Gmail/Facebook
• Check Gmail/Facebook is existing or not?
Gmail/Facebook is existing -> keep login
Gmail/Facebook is not existing -> back to login page
• Direct to homepage

Alternate/Exceptional flows:

3.3 Nonfunctional Requirements

3.3.1 Performance

Timing requirements: such as respome time, processing time, etc. The time requirement
should be qumtified to ensure measmhiles. For example the time allowed to send infitational
search results is 10 (s).
Maximum capacity: such as the number of concurrent users, bandwidth, volume of successful
transactions/unit of time, database size. For example ensuring the ability of 100 people to use
the service to access concurrently, ensuring the ability to execute 10
transactions per second

3.3.2 Reliability

Availability: the ability of a system to operate in the normal state for a defined period of time.
Example: the availability of system should be at 99,5% year-on-year, excluding the planned
16
DIGITAL ECONOMY

maintenance time, the unavailable time of system must be less than 1 hour month excluding
the system maintenance time,

Resilience: the ability of a system to recover directly affected data and re-establish the normal
operating state of the system affected by any events, interiptionsicmors. For example: in any
event (data, physical server, application server), the time allowed for the system to recover to
the normal operation is 3(h);

3.3.3 Safety and Security

Security: the level to which a system ensures the data access is allowed only for the
correspondingly authorized objects;

Integrity: the level to prevent unauthorized access or the change to the computer programs the
data of a system. For example: not allowing the unemame and password to be tramimined
over the network environment without being encrypted;

Analyzable: Implementation includes providing tools that allow the system to analyze to
identify persistent failures in the system and provide failure reports.

Correctable: The provision of system source code, documentation on system design and
documentation on system configuration... ensure the governing body of the system can casily
develop new functions on their own

Movable: Hardware platform support systems of some popular vendors such as IBM, HP.
Dell..., suppon Linux, Unix, Windows Server operating systems; support the ability to move
from a Unix-based platform to a Windows Server-based one, with no additional costs or
significant costs

3.3.4 Adaptability and Portability (khả năng thích ứng và ứng dụng)

Portability: the level of performance and efficiency of migrating a system from a hardware,
software, operating system, usage environment to other hardware, software, operating system,
usage environment. For example: The system supports the hardware platforms of some
popular vendors such as IBM, HP, Dell.... support operating systems such as Linux, Unix,
Windows Server, supports the ability to easily move from a Unix based platform to a
Windows Server-based one, with no additional costs or insignificant costs;

Adaptability: The level to which a system can be effectively adapted to a variety and the
evolution of hardware platforms, software, operating systems, and usage environment.
Adaptability includes the internal scalability of the system such as the screen sizes, the
database tables, the transaction volume, the report format etc.

3.3.5 Business Rules

Administrator rights: High access, authorization and administration for the website.
responsible for optimal website maintenance, security and construction. They're also
responsible for blocking any anonymous accounts as well as responding to user's feedback.

User's rights: All accounts will have the same values and rights, namely will be able to access
the website, be allowed to log in, search and buy movies.

17
DIGITAL ECONOMY

3.4 Other Requirements

Response time: The website must be fully loaded in 2 seconds or less. The same applies to its
specific functions
Latency: the website should try to completely load under 3 seconds
Processing time; the time for a page to load is at least 200ms or higher

Transaction processing system:

 Transaction processing systems are usually measured by the number of transactions


they can process in a given period of time.

 The system should be simple for the users to understand, protect them from data-entry
errors and allow them to easily correct their errors

 The system should be available at any time when the user makes a transaction

 The system should be able to handle the partial problems without the data. A lot of
users must be protected from trying to change at the same time of fragment data.
Appendix A: Glossary

<Define all the terms necessary to properly interpret the SRS, including acronyms and
abbreviations. You may wish to build a separate glossary that spans multiple projects or the
entire organization, and just include terms specific to a single project in each SRS.>
Appendix B: Analysis Models

<Optionally, include any pertinent analysis models, such as data flow diagrams, class
diagrams, state-transition diagrams, or entity-relationship diagrams.>
Appendix C: To Be Determined List

<Collect a numbered list of the TBD (to be determined) references that remain in the SRS so
they can be tracked to closure.>

B. Software Design Specification

1. Introduction

1.1 Purpose

This software design document describes the architectural design and detailed design of
Saturday Coffee Shop website

1.2 Product Scope

Mention the most important features of the system, inputs, data stores, and outputs.
18
DIGITAL ECONOMY

1.3 Definitions, Acronyms and Abbreviations

 
No. Term / Acronyms Definition / Explanation
     

1.4 References

[1]
https://www.researchgate.net/publication/338964690_About_the_Digital_Economy_Software

2. Application Architecture 

2.1 Application Architecture

2.2
D
e
s
c
r
i
p
t
i
o
n
 
 
 
         

Standard client Standard Standard


web database sever
Laptop Desktop Smartphone sever

Operating Windows Windows Android Ubuntu Ubuntu


system Ios
Special Chrome Chrome Chrome Apache MySQL
software Mozilla Mozilla Safari
Opera Opera Edge
Internet Internet
19
DIGITAL ECONOMY

Explorer Explorer
Hardware Minimum Minimum Minimum 100 PetaByte
25GB disk 25GB disk 8GB disk
space space space

Android 12
(latest ver)
iOS 15.4.1
Network Wifi or Wifi or Wifi or Ethernet cat.6 Ethernet cat.6
hotspot hotspot hotspot

20
DIGITAL ECONOMY

3. Data Design 

3.1 Data Description 

3.1.1 Conceptual Data Model 

 
 
 
 
 
 
 
 
 
 
 

21
DIGITAL ECONOMY

3.1.2 Logical Data Model  

 
         

3.1.3 Physical Data Model     

22
DIGITAL ECONOMY

      
 

3.2 Data Dictionary            

4. Detailed Design

4.1 Function REQ001 (User Management)

- Purpose: 
+ To manage user information   
- Interface:

23
DIGITAL ECONOMY

        
- The components of interface: the description of each numbered element of interface
is written to the following table.         
 
Number Name control Constraint
1 FrmUserManagement
BtAdd Add customer
3 BtDelete Delete customer
4. TxtID Enter the customer's
ID
5. TxtUserName Enter the customer's
name
6. TxtStatus Enter the customer’s
status
 
- Data to be used: list the tables in a database or the data structures needed by this
function.           
 
Table name / Data Method
No.
structure Add Modify Delete Query
1 USER_MANAGEMENT x     x

24
DIGITAL ECONOMY

- Process:

  
- Constrains: for example, refer to which specification of the requirement specification
document.         

4.2 Function REQ002 (Add Product)    

- Purpose: 
+ To add new products on website
- Interface:

25
DIGITAL ECONOMY

  - The components of interfaces

Number Name control Constraint


1. TxtName Enter product name
2. TxtPrice Enter product price
3. TxtCate Add Cate
4. BtPicture Add pictures
5. BtVideo Add videos
6. TxtProductDescription Description

- Data to be used: list the tables in a database or the data structures needed by this
function.           
 
Table name / Data Method
No.
structure Add Modify Delete Query
1 ADD PRODUCT x    

- Process:

26
DIGITAL ECONOMY

27
DIGITAL ECONOMY

- Constrains: for example, refer to which specification of the requirement specification


document.         

4.3 Function REQ003 (Login)    

- Purpose: 
+ For customer who log in to the website and use it
- Interface:

  - The components of interfaces

Number Name control Constraint


1. frmLogin Create an interface login system
2. txtEmail Allow import of email accounts
3. txtPassword Password must have 8 to 32 characters
4. btLogin Allow login when valid email and password
5. btGmail Connect with Gmail to login
6. btFacebook Connect witFaFmail to login
- Data to be used: list the tables in a database or the data structures needed by this
function.           
 
Table name / Data Method
No
structure Add Modify Delete Query
1 CUSTOMER x  

- Process:

28
DIGITAL ECONOMY

- Constrains: for example, refer to which specification of the requirement specification


document.         

5. References to Requirements 

<Use a table to map the components of the system to the functional requirements in SRS.
Refer to the functional requirements by the number we have assigned to them in SRS.>

6. Appendices 

<Optional.
The appendices provide the additional detailed information to assist in understanding software
design documentation.>

29
DIGITAL ECONOMY

C. Unit Testing

1. Introduction

1.1 Purpose

Unit testing is the act of examining the artifacts and the behavior of the software
under test by validation and verification. Unit testing can also provide an
objective, independent view of the software to allow the business to appreciate
and understand the risks of software implementation.

1.2 Definitions, Acronyms and Abbreviations

< List acronyms, terms, abbreviations used in the document that are almost unknown by the
reader.         
 
No. Term / Acronyms Definition / Explanation
     

>

1.3 References

<List any document or Web address that this document refers to. Provide enough information
so that the reader could access a copy of each reference, including title, author, version
number, date, and source or location.>

2. Test Cases 

2.1 Test 1 <User Management>        

Test ID: 001


Test description Test
Created by: Tester
Date of creation: 5/5/2022
Date of review: 5/5/2022
Test priority:
Pre-requisite:
Post-requisite:

2.1.1 Drawing the flow graph

30
DIGITAL ECONOMY

2.1.2

Determining a basis set of independent paths

 1-2-3-4-5-6-10
 1-2-3-4-7-8-9-10
 1-2-3-4-7-10

31
DIGITAL ECONOMY

2.1.3 Preparing test cases

Input Data
Expected Actual Status
# Test Case
ID User Status Date Result Result (Pass/Fail)
name
TC1  123 Giang  Online  7/5/22      
TC2  456 Thu Online  7/5/22      
TC3  789 Uyen Offline  5/5/22      

2.2 Test 2 <Add products>     

Test ID: 002


Test description: Test
Created by: Tester
Date of creation: 5/5/2022
Date of review: 5/5/2022
Test priority: High
Pre-requisite:
Post-requisite:

2.2.1 Drawing the flow graph

32
DIGITAL ECONOMY

33
DIGITAL ECONOMY

2.2.2 Determining a basis set of independent paths

 1-2-3-4-5-6-7-8
 1-2-3-1

2.2.3 Preparing test cases

Input Data
# Test Name Price Categor Pictu Descriptio Expected Actual Status
Case y re n Result Result (Pass/Fail)
and
Video
TC1  Love  $2  Soda Fresh      
TC2  Null Null Null   Null Null      

34
DIGITAL ECONOMY

2.3 Test 3 <Add products>     

Test ID: 003


Test description: Test
Created by: Tester
Date of creation: 5/5/2022
Date of review: 5/5/2022
Test priority: High
Pre-requisite:
Post-requisite:

35
DIGITAL ECONOMY

2.3.1 Determining a basis set of independent paths

 1-5-6-8-910
 1-5-6-7-10
 1-2-3-9-10
 1-2-3-4-10

2.3.2 Preparing test case

Input Data
Expected Actual Status
# Test Case
Result Result (Pass/Fail)
User name Password

TC1 Giang@gmail.com 123      


TC2 Giang@gmail.com 124      
TC3 Thu@gmail.com 456      
TC4 Thu@gmail.com 457      

36

You might also like