1. Trang chủ
  2. » Giáo Dục - Đào Tạo

ỨNG DỤNG DECEE CHỦ đề e COMMERCE

56 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng Dụng Decee Chủ Đề E-Commerce
Tác giả Đặng Ngọc Duy, Đỗ Ngọc Cường
Người hướng dẫn ThS. Huỳnh Tuấn Anh
Trường học Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Công nghệ thông tin
Thể loại Báo cáo đồ án
Năm xuất bản 2021
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 56
Dung lượng 5,54 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tổng quan đề tài Nhóm đã đề ra kế hoạch phát triển một ứng dụng di động để phục vụcho việc mua sắm cho người dùng và ứng dụng Decee là giải quyết cho vấn đềnày E-shop cung cấp các dụng c

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO ĐỒ ÁN 2

ĐỀ TÀI: ỨNG DỤNG DECEE

CHỦ ĐỀ E-COMMERCE

GVHD: ThS.Huỳnh Tuấn Anh

Sinh viên thực hiện:

● Đặng Ngọc Duy - 18520655

● Đỗ Ngọc Cường - 18520542

Trang 2

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 3

LỜI CẢM ƠN

Nhóm em xin gửi lời cảm ơn tới thầy Huỳnh Tuấn anh vì đã tận tình vàtrực tiếp giảng dạy nhóm chúng em, những lời góp ý cũng như truyền đạt củathầy đã góp phần ảnh hưởng rất lớn tới định hướng đồ án của nhóm em kỳ này

và cũng sẽ là định hướng tương lai của nhóm chúng em bây giờ

Trong quá trình thực hiện, cũng như quá trình làm báo cáo, nhóm chúng

em khó lòng tránh khỏi những sai sót, chúng em mong thầy bỏ qua cũng nhưnhững đóng góp của thầy sẽ là những kinh nghiệm để nhóm em có thể hoànthiện đồ án hơn vào những lần sau Một lần nữa em xin chân thành gửi nhữnglời cảm ơn thầy

Chúng em xin chân thành cảm ơn!

Nhóm nghiên cứu

Tp Hồ Chí Minh, tháng 12 năm 2021

Trang 4

1.4 Xác định không gian địa lý hoạt động và các thuộc tính của không

Trang 5

1.5.2 Mô tả nghiệp vụ bằng các view 4+1 20

1.6 Phạm vi kiến thức để giải bài toán (chuyên môn, nghiệp vụ) 21

2.4.1.2 Người dùng thay đổi thông tin cá nhân 32

Trang 6

2.5.2 Sequence Diagram 39

2.5.2.2 Người dùng thanh toán giỏ hàng 39

Trang 7

I GIỚI THIỆU TỔNG QUAN

2.2 Tổng quan đề tài

Nhóm đã đề ra kế hoạch phát triển một ứng dụng di động để phục vụcho việc mua sắm cho người dùng và ứng dụng Decee là giải quyết cho vấn đềnày

E-shop cung cấp các dụng cụ để cho người dùng tương tác và sử dụng

để buôn bán Người chủ cửa hàng có thể đưa lên các sản phẩm mong muốn, vàngười dùng phổ thông có thể kiếm những mặt hàng đó và mua các mặt hàng.Cùng với hệ thống admin hệ thống đảm bảo giá cả phải chăng và người dùngluôn không bị lừa đảo, kèm theo đó là các yếu tố bảo mật đảm bảo thông tincủa người dùng sẽ không bị lộ ra ngoài

2.3 Phạm vi nghiên cứu

Phạm vi bài toán chỉ bao gồm các nghiệp vụ của một ứng dụng của mộtứng dụng E-commerce hỗ trợ việc mua sắm trực tuyến Ứng dụng không đi sâu

Trang 8

2.4 Nội dung nghiên cứu

Các dịch vụ liên quan đến E-commerce với các tính năng cơ bản củamột ứng dụng buôn bán hàng hóa trực tuyến Ứng dụng này giúp cho các chủcửa hàng trực tuyến có thể quản lý hàng hóa của mình, đồng thời là nơi cho cácngười dùng phổ thông có thể mua hàng hóa với trải nghiệm tốt nhất khi muahàng online

2.5 Kết quả hướng tới

Chủ shop: ứng dụng hỗ trợ chủ cửa hàng quản lý hàng hóa một cách tiệnlợi, nhanh chóng, tạo ra các coupon để thu hút người dùng

Về phía khách hàng phổ thông: Ứng dụng hỗ trợ mua hàng trực tuyếnvới quy trình nhanh chóng, đơn giản, theo dõi tình trạng đơn hàng một cách chitiết, nâng cao trải nghiệm người dùng với giao diện tiện dụng và dễ sử dụng

● Mysql server management: hỗ trợ nhóm lưu trữ dữ liệu cũng như là

các thao tác trên cơ sở dữ liệu

4 Source code

Frontend: https://github.com/pmn2wodee/project_2

Backend: https://github.com/TrDayken/Project-2-School

Trang 9

II CÔNG NGHỆ SỬ DỤNG

1 Flutter và Dart

1.1 Khái niệm

Flutter được Google giới thiệu là một người mới trong thế giới ứng dụng

di động Là một SDK mới của Google dành cho các thiết bị di động giúpdevelopers và designers xây dựng nhanh chóng ứng dụng dành cho các thiết bị

di động (Android, iOS) Flutter là dự án mã nguồn mở đang trong giai đoạn thửnghiệm Flutter bao gồm Reactive framework và công nghệ hiển thị 2D (2Drendering engine)và các công cụ phát triển (development tool) Các thành phầnnày làm việc cùng nhau giúp ta thiết kế, xây dựng, test, debug ứng dụng

1.2 Tại sao lại chọn Flutter và Dart

Các nhà phát triển tại Google và các nơi khác sử dụng Dart để tạo cácứng dụng chất lượng cao, quan trọng cho iOS, Android và web Với các tínhnăng nhắm đến sự phát triển phía khách hàng, Dart rất phù hợp cho cả ứngdụng di động và web Dart giúp bạn tạo ra những trải nghiệm đẹp, chất lượngcao trên tất cả các màn hình, với:

● Một ngôn ngữ được tối ưu hóa cho client

và mọi phần của mức khung được thiết kế để trở thành tùy chọn và có thể thaythế

Trang 10

Embedder Platform-specific:

Đối với hệ điều hành cơ bản, các ứng dụng Flutter được đóng gói giống

như bất kỳ ứng dụng gốc nào khác Embedder Platform-specific cung cấp

một điểm nhập; phối hợp với hệ điều hành cơ bản để truy cập vào các dịch vụnhư hiển thị bề mặt, khả năng truy cập và đầu vào; và quản lý vòng lặp sự kiệntin nhắn Trình nhúng được viết bằng ngôn ngữ phù hợp với nền tảng: hiện tại

là Java và C ++ cho Android, Objective-C / Objective-C ++ cho iOS vàmacOS, và C ++ cho Windows và Linux Sử dụng công cụ nhúng, mã Flutter

có thể được tích hợp vào ứng dụng hiện có dưới dạng mô-đun hoặc mã có thể

là toàn bộ nội dung của ứng dụng Flutter bao gồm một số trình nhúng cho cácnền tảng mục tiêu chung

Flutter Engine:

Trang 11

Cốt lõi của Flutter là Flutter Engine , phần lớn được viết bằng C ++ và hỗ trợ

các nguyên tắc cần thiết để hỗ trợ tất cả các ứng dụng Flutter Động cơ chịutrách nhiệm sắp xếp các cảnh tổng hợp bất cứ khi nào cần sơn một khung mới

Nó cung cấp triển khai cấp thấp của API cốt lõi của Flutter, bao gồm đồ họa, bốcục văn bản, tệp và mạng I / O, hỗ trợ trợ năng, kiến trúc plugin và chuỗi công

cụ biên dịch và thời gian chạy Dart

Flutter Framework:

Flutter Framework , cung cấp một framework hiện đại được viết bằng

ngôn ngữ Dart Nó bao gồm một bộ thư viện nền tảng, bố cục và nền tảngphong phú, bao gồm một loạt các lớp Làm việc từ dưới lên trên, gồm:

Foundation classes và các dịch vụ khối xây dựng như animation, painting, and gestures cung cấp các nội dung trừu

tượng thường được sử dụng trên nền tảng cơ bản

● Rendering layer cung cấp một sự trừu tượng để xử lý bố cục.

Với lớp này, bạn có thể xây dựng một cây các đối tượng có thểkết xuất Bạn có thể thao tác động các đối tượng này, với cây tựđộng cập nhật bố cục để phản ánh các thay đổi của bạn

● Widgets layer là một phần trừu tượng hóa thành phần Mỗi đối

tượng kết xuất trong lớp kết xuất có một lớp tương ứng trong lớpvật dụng Ngoài ra, lớp vật dụng cho phép bạn xác định tổ hợpcác lớp mà bạn có thể sử dụng lại Đây là lớp mà tại đó mô hìnhlập trình phản ứng được giới thiệu

● Các thư viện Material và Cupertino cung cấp các bộ điều khiển

toàn diện sử dụng các thành phần native của lớp widget để triểnkhai ngôn ngữ thiết kế Material hoặc iOS

1.4 Một số khái niệm cơ bản của Flutter

Trang 12

StatefulWidget là một widget động và nó có thể thay đổi những gì nó đang hiển thị bằng cách thay đổi state của chính nó.

Để có thể tạo một stateful widget cần phải kế thừa lớp stateful Widget bằng cú pháp

Class main extends StatefulWidget

Và để một state cần có thể render được thì phải override các phương thức build của state đó với cú pháp

@override

Widget build(buildcontext context)

Và cuối cùng để có thể đổi state của widget thì sẽ cập nhật thông qua phương thức setState() của widget

Các chức năng nên sử dụng stateful Widget là

StateLess Widget

Stateless Widget là một loại widget tĩnh và không thể tự thay đổi đượcnhững gì mà nó hiển thị sau khi render

Trang 13

Để có thể tạo ra một Stateless Widget cần phải kế thừa từ lớp StateLess widgetcủa flutter và cần phải override lại một lớp build để có thể render được widget

Class main extends Statelesswidget

@override

Widget build (buildcontext context)

Stateless widget không thể tự thay đổi được chính nó nhưng nếu widget chathay đổi thì stateless widget sẽ được khởi tạo lại

Các trường hợp nên sử dụng StateLess Widget:

1.5 Clean Architecture

Clean Architecture được xây dựng dựa trên tư tưởng "độc lập" kết hợp với cácnguyên lý thiết kế hướng đối tượng(đại diện tiêu biểu là Dependency

Inversion) Độc lập ở đây nghĩa là việc project không bị phụ thuộc vào

framework và các công cụ sử dụng trong quá trình kiểm thử

Kiến trúc của Clean Architecture chia thành 4 layer với một quy tắc phụ thuộc.Các layer bên trong không nên biết bất kỳ điều gì về các layer bên ngoài Điềunày có nghĩa là nó có quan hệ phụ thuộc nên "hướng" vào bên trong Nhìn vào

Trang 14

Entities: là khái niệm dùng để mô tả các Business Logic Đây là layer quan

trọng nhất, là nơi bạn thực hiện giải quyết các vấn đề - mục đích khi xây dựngapp Layer này không chứa bất kỳ một framework nào, bạn có thể chạy nó màkhông cần emulator Nó giúp bạn dễ dàng test, maintain và develop phần

business logic

Use case : chứa các rule liên quan trực tiếp tới ứng dụng cục bộ

(application-specific business rules)

Interface Adapter : tập hợp các adapter phục vụ quá trình tương tác với các

công nghệ

Framework and Drivers : chứa các công cụ về cơ sở dữ liệu và các

framework, thông thường bạn sẽ không phải lập trình nhiều ở tầng này Tuynhiên cần chắc chắn về mức ưu tiên sử dụng các công cụ này trong project

Trang 15

● Indirect - quá nhiều interface.

● Cồng kềnh - thể hiện ở việc có quá nhiều class so với các project cùng mục tiêu(tuy nhiên các class được thêm vào đều có chủ ý và đáp ứng đúng quy định khitriển khai kiến trúc)

2 Hệ thống NET

2.1 Khái niệm

.NET là một nền tảng lập trình được phát triển bởi Microsoft, chạy trên

hệ điều hành Microsoft Window .NET không phải là ngôn ngữ lập trình, mà lànền tảng cho phép các ngôn ngữ lập trình khác nhau như C# sử dụng để tạo nêncác website, ứng dụng trên Internet và bao gồm một thư viện lớp lớn có tên làFramework Class Library – viết tắt là FCL

.NET Framework được xem là một thành quả tối ưu được dựng nên từcác nhà phát triển của Microsoft nhằm tạo ra một nền tảng cho việc xây dựngcũng như triển khai nhanh chóng các ứng dụng web và dịch vụ Các ngôn ngữđược sử dụng trên nền tảng NET gồm có C#, VB.Net

Trang 16

2.2 Tại sao lại chọn NET

Theo như các ý ở trên NET là một môi trường hoàn thiện và đầy đủ đặcbiệt các các ứng dụng web .NET hỗ trợ rất nhiều từ tạo api và deployment kèmtheo đó là các thư viện hỗ trợ rất mạnh vì vậy nếu làm web app mà bỏ qua.NET có thể là một bất lợi lớn Và nhóm chọn NET với 2 tiêu chí:

● Thuận tiện cho việc deploy

● dễ mở rộng chiều ngang

2.3 Kiến trúc MVC của NET

MVC là tên gọi tắt của Model – View – Controller – một mẫu kiến trúc(architectural pattern) lâu đời và rất phổ biến trong phát triển phần mềm

Mẫu kiến trúc MVC được áp dụng rộng rãi trong ứng dụng web, desktop

và mobile Trên thực tế, mẫu MVC nguyên bản vốn được xây dựng dành choứng dụng với giao diện đồ họa tương tự ứng dụng desktop chứ không phải choứng dụng web Tuy nhiên, hiện nay mẫu kiến trúc này được sử dụng rộng rãinhất trong các web framework

Tuy nhiên, dù vận dụng ở đâu và theo cách nào, mẫu này cũng hướng tớiphân tách việc biểu diễn dữ liệu khỏi quản lý và xử lý dữ liệu Để tạo ra sựphân tách này, mẫu MVC phân chia ứng dụng ra 3 thành phần với nhiệm vụ cơbản như sau:

● Model: dữ liệu và trạng thái của ứng dụng

● View: khuôn mẫu dành cho hiển thị dữ liệu

● Controller: cập nhật model và lựa chọn view

Trang 17

MVC trong ASP.NET core

Trang 18

1.2 Xác định phạm vi bài toán

- Kết quả cuối cùng là một ứng dụng di động, web giúp khách hàng có thể muasắm trực tuyến, người bán có thể quản lý các đơn hàng, các sản phẩm và doanhthu từ các sản phẩm đã được bán ra

- Ứng dụng chỉ quản lý các sản phẩm được đăng bán trực tuyến do đó các sảnphẩm được bản trực tiếp ở cửa hàng (không được đăng bán) không nằm trongphạm vi của bài toán

1.2.1 Vấn đề về con người

● Tác nhân:

○ Người bán:

■ Tạo tài khoản và đăng ký bán hàng

■ Quản lý sản phẩm: người bán chịu trách nhiệm đăng bán các sảnphẩm, điều chỉnh giá thành các sản phẩm đã được đăng bán phùhợp với thị trường

■ Quản lý đơn hàng: người bán tiếp nhận đơn hàng trực tuyến, xácnhận thông tin, số lượng sản phẩm được mua, địa chỉ, đóng góisản phẩm và chuyển giao cho đơn đơn vị vận chuyển

■ Phụ trách việc quản lý khuyến mãi: người bán có thể tạo ra các

mã giảm giá nhằm thu hút khách hàng mua sắm tại cửa hàng củamình nhiều hơn đồng thời sẽ giảm được số lượng lớn khách muahàng trực tiếp Điều này sẽ góp phần giảm lây lan dịch bệnhtrong nạn dịch Covid-19

■ Thống kê doanh thu: người bán có thể thống kê doanh thu theotháng, quý, năm

Trang 19

● Phương tiện giao hàng: hợp tác cùng với các dịch vụ vận chuyển như: GHN,GHTK, G&T Express,

● Chi phí đóng gói: sử dụng nilon và băng keo để đóng gói đối với sản phẩmbình thường; đối với các phẩm “Hàng dễ vỡ” thì sử dụng thêm xốp bóng khí đểchống va đập trong quá trình vận chuyển

● Hỏng hóc trong quá trình giao hàng: hàng hoá bị hư hỏng do đóng gói không

kỹ, bị ướt hoặc do giao hàng không cẩn thận

○ Khối lượng, kích thước

○ Số lượng trong kho

● Quản lý chương trình khuyến mãi:

○ Thời gian diễn ra chương trình khuyến mãi

○ Áp dụng trên những mặt hàng, khách hàng nhất định

1.2.3 Vấn đề mua hàng

Trang 20

● Tạo tài khoản mua hàng: khách hàng có thể tạo tài khoản trên hệ thống của ứngdụng hoặc sử dụng tài khoản mạng xã hội như Google, Facebook, để đăngnhập trực tiếp (bỏ qua bước đăng ký).

1.4 Xác định không gian địa lý hoạt động và các thuộc tính của không gian

- Phần mềm được người bán và khách hàng trên cả nước sử dụng

1.5 Xác định mối quan hệ giữa sự vật và sự việc trong không gian bài toán:

1.5.1 Sơ đồ cơ cấu tổ chức

Trang 21

1.5.2 Mô tả nghiệp vụ bằng các view 4+1

1.5.2.1 Use Case view

1.5.2.2 Process view

- Biểu đồ tuần tự

Trang 22

- Dữ liệu ở chức năng chủ yếu lấy từ cơ sở dữ liệu quan hệ (SQL Server)

1.6 Phạm vi kiến thức để giải bài toán (chuyên môn, nghiệp vụ)

- Hiểu biết về xu hướng mua bán ở thị trường Việt Nam

- Kiến thức về luật, quy định của nhà nước đối với các ứng dụng/web thươngmại điện tử

- Có kiến thức về lập trình ứng dụng di động, hệ thống, web

1.7 Xác định loại bài toán

Đây là bài toán quản lý buôn bán hàng hóa trực tuyến, áp dụng trong phạm vi ViệtNam do đó chi phí mà mức đầu tư ở mức trung bình

1.8 Tổ chức thực hiện

Bước 1:

● Trao đổi với chủ đầu tư (Công ty cần xây dựng hệ thống) về các nội dung sau:

○ Bố trí thời gian và địa điểm buổi họp mặt

○ Bố trí nhân sự hai bên, phía khách hàng gồm chủ đầu tư hoặc người đạidiện

○ Thống nhất phương pháp làm việc và liên lạc giữa hai bên

○ Đề nghị bên chủ đầu tư chuẩn bị sẵn một số tài liệu đặc tả yêu cầu cùngthời gian và chi phí dự kiến cho dự án

○ Vẽ biểu đồ gantt và thực hiện các nghiệp vụ quản lý dự án (quản lý chiphí, quản lý thời gian)

Trang 23

Bước 2:

● Họp với chủ đầu tư để thống nhất các phương án đã chuẩn bị từ trước

● Bên nhóm phát triển phần mềm cần có slide trình chiếu về bài toán tổng quát,cách giải quyết và phạm vi bài toán để có thể xác định với khách hàng cách giảiquyết đối với bài toán được đặt ra và xác định phạm vi công việc của nhómphát triển

● Ghi biên bản cuộc họp

● Yêu cầu chủ đầu tư chuẩn đưa ra ước lượng về chi phí và thời gian dự kiến

Bước 3: Tiến hành khảo sát và lấy yêu cầu

● Áp dụng các phương pháp thu thập yêu cầu: yêu cầu liên quan đến việc quản lýhàng hóa, hóa đơn, khách hàng, thanh toán, lưu trữ cùng các bên thứ ba có thểphát sinh…

● Lấy tài liệu doanh nghiệp

○ Mô tả các nghiệp vụ bằng các view

○ Thông tin khai thác từ bản mô tả công việc và bản mô tả chi tiết côngviệc

○ Sơ đồ cơ cấu tổ chức

○ Các quy trình

○ Các loại mẫu biểu, tài liệu sử dụng cho dự án

=> Bản chất bước này nhằm xác nhận các chức năng và phạm vi bài toán cầngiải quyết

● Đi kèm với việc lấy yêu cầu, có thể hỏi luôn các yêu cầu phi chức năng mà chủđầu tư muốn có

Bước 4: Phân tích - Thiết kế

I Phân tích

Trang 24

○ Thời gian: hoạt động 24/24 (trừ một số thời điểm bảo trì trang web)

○ Con người: Lập trình viên, Kiểm thử viên, Người dùng

○ Cách thức sử dụng sản phẩm: Ứng dụng hướng đến mọi đối tượng(không yêu cầu phải có trình độ về tin học) => Cần thiết kế sao cho dễ

sử dụng và dễ tiếp cần với người dùng

● Phạm vi địa lý:

○ Sử dụng tập trung đối với quản trị viên

○ Sử dụng phân tán đối với khách hàng – người dùng phổ thông: với cácchức năng liên quan đến vấn đề mua hàng

● Khách hàng: tất cả mọi người đều có thể mua sản phẩm

● Cách thức sử dụng sản phẩm: được sử dụng trên trình duyệt web, tất cả thiết bị

có trình duyệt web đều có thể sử dụng,

● Xác định các thành phần phi chức năng:

○ Bố cục: dễ nhìn, dễ sử dụng vì ứng dụng cần tiếp cận mọi đối tượng,

không yêu cầu trình độ tin học

○ Bảo mật thông tin khách hàng: do việc giao dịch diễn ra trực tuyến =>

ưu tiên bảo mật thông tin cá nhân và thông tin tài khoản khách hàng

○ Khả năng chịu tải giờ cao điểm: có thể xử lý đồng thời vài trăm nghìn

đến vài triệu yêu cầu truy cập ứng dụng cùng thời điểm

○ Khả năng mở rộng tốt: có thể mở rộng một cách dễ dàng để đáp ứng số

lượng người dùng lớn

II Thiết kế

● Thiết kế hệ thống theo các View đã đề cập

● Để triển khai theo phương pháp Agile, lấy yêu cầu đến đâu sẽ thiết kế đến đó

và cho Dev tiến hành hiện thực thiết kế đó

Bước 5: Thực hiện Implement

● Lựa chọn cách tiếp cận: Model first, Code First, Test first, Database first

Bước 6: Triển khai cho Khách hàng test Beta.

● Đào tạo, huấn luyện

Trang 25

và các trường hợp sử dụng cho hệ thống Ngoài các luồng công việc cơ bản, cáctài liệu giải quyết các trường hợp ngoại lệ, kết quả đầu ra ngoại lệ và các trườnghợp sử dụng liên quan khác.

2.1.2 Logical views

Audience: Designers, Programmers, Testers

Area: Yêu cầu chức năng, phân cấp đối tượng, các lớp hệ thống

Mô tả thiết kế của mô hình đối tượng Đồng thời mô tả các hệ thống con của hệthống và các mối quan hệ của chúng

2.1.3 Process views

Audience: Integrators, Programmers

Area: Các yêu cầu phi chức năng, mô tả các khía cạnh đồng thời và đồng bộcủa thiết kế Xây dựng hành vi thời gian chạy của hệ thống

2.1.4 Deployment view

Trang 26

Area: Các components: mô tả các phân hệ và bộ phận hệ thống con của hệthống.

2.1.5 Physical view

Audience: Database administrators, System engineers, Deployment managersArea: mô tả các phần tử bền vững có ý nghĩa về mặt kiến trúc trong mô hình dữliệu Mô tả ánh xạ của phần mềm vào phần cứng và hiển thị các khía cạnh phântán của hệ thống

2.2 Các mục tiêu và ràng buộc về kiến trúc

2.2.1 Phía máy chủ

Hệ thống thương mại điện tử sẽ được vận hành tại Máy chủ Windows SQLServer sẽ được sử dụng làm máy chủ cơ sở dữ liệu trung tâm Tất cả các giaotiếp với máy khách phải tuân theo tiêu chuẩn giao thức truyền thông HTTPS,TCP / IP công cộng

2.2.2 Phía khách hàng

Người dùng sẽ chỉ có thể truy cập ứng dụng Thương mại điện tử trực tuyến.Trong giai đoạn đầu, ứng dụng này sẽ được lưu trữ dưới dạng một ứng dụngđộc lập, nhưng với các sửa đổi, nó có thể được tích hợp với các hệ thống có thể

hỗ trợ theo dõi đơn đặt hàng Khách hàng / người dùng mong muốn sử dụngcác ứng dụng di động hiện đại như Shopee, Tiki, để có được trải nghiệmngười dùng trọn vẹn

2.2.3 Bảo mật

Các tính năng bảo mật trung tâm được xử lý bởi các quan chức của viện Họ sẽđược cung cấp các tính năng truy cập đầy đủ cả ở cấp ứng dụng và cơ sở dữliệu Việc tạo tài khoản người dùng cho khách hàng, nhà cung cấp có thể đượcthực hiện bởi khách hàng, nhà cung cấp hoặc có thể là quản trị viên Khi mộtngười dùng được thêm vào hệ thống, họ sẽ có một mật khẩu mặc định màngười dùng có thể thay đổi Tất cả mật khẩu đều được mã hóa để tăng cường

Trang 27

bảo mật Các yêu cầu, cập nhật chỉ những quản trị viên có liên quan mới cóthể xem được.

2.2.4 Tính bền bỉ

Tất cả dữ liệu sẽ được lưu trong máy chủ trung tâm (Azure) Để duy trì ACID(Tính nguyên tử, Tính bảo mật, Tính toàn vẹn, Độ bền), một số biện pháp đãđược thực hiện như mã hóa mật khẩu, sử dụng các giao dịch cho tất cả các camkết cơ sở dữ liệu, v.v

2.2.5 Độ tin cậy / Tính khả dụng

Hệ thống sẽ phải trải qua một số hoạt động (Kiểm thử đơn vị, kiểm thử tíchhợp, kiểm thử hệ thống) trước khi được triển khai để đảm bảo rằng hệ thống làđáng tin cậy Máy chủ cơ sở dữ liệu Azure có thể quản lý lượng lớn dữ liệutrong môi trường nhiều người dùng để nhiều người dùng có thể truy cập cùngmột dữ liệu đồng thời, phục vụ nhiều khách hàng tại một thời điểm nhất định

mà không ảnh hưởng đến tính nhất quán và tính toàn vẹn của dữ liệu Tất cảđiều này được thực hiện trong khi mang lại hiệu suất cao

2.2.6 Hiệu suất

Hệ thống phản hồi bất kỳ yêu cầu nào theo cơ sở dữ liệu tiêu chuẩn và thời gianchờ của tập lệnh máy chủ (1 giây), hiệu suất hệ thống cũng phụ thuộc vào mạngkhả dụng và kết nối internet Do đó, hiệu suất thực tế chỉ có thể được xác địnhsau khi hệ thống đã được hoàn thiện và thử nghiệm

2.2.7 Khả năng portable và tái sử dụng

Mặc dù được thiết kế như một sản phẩm hoàn chỉnh và độc lập, bạn vẫn có thể

mở rộng sản phẩm để tích hợp trong một hệ thống khác Để duy trì khả năng tái

sử dụng, tất cả các chức năng đều được cấu trúc và phân lớp rất tốt Các

phương pháp thực hành tốt nhất Agile được tuân thủ trong suốt dự án và dự án

Trang 28

2.2.8 Công cụ phát triển

Dự án kết hợp nhiều công cụ phát triển

Công cụ phát triển: VS Code

Công cụ vẽ sơ đồ: draw.io

Database connection:

Schedule: Microsoft Project

2.2.9 Schedule

Ngày đăng: 08/03/2022, 21:38

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w