1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án TN xây dựng sàn dầu thầu trực tuyến

89 61 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

Định dạng
Số trang 89
Dung lượng 2,4 MB

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

Nội dung

mẫu báo cáo đồ án xây dựng website đấu thầu trực tuyến, phân tích và thiết kế theo hướng đối tượng UML giới thiệu về framework laravel, có hình ảnh tham khảo, Chi tiết code đồ án xin liên hệ doantran1690gmail.com

Trang 2

Danh mục chữ cái viết tắt

7 XHTML Extensible HyperText Markup Language

10 SATD Structured Analysis and Design Technique

Trang 3

Danh mục hình ảnh

Trang 4

Lý do chọn đề tài

Công nghệ thông tin nói chung và nghành lập trình website nói riêng ngày càng phát triển trong thời đại ngày nay Nó mang lại lợi ích to lớn cho nên kinh tế Ở bên khách hàng đó là: giúp cho người dùng tiếp cận sản phẩm

rõ ràng hơn, tiếp cận được nhiều sản phẩm hơn, có nhiều dịch vụ hơn, có nhiều sự lựa chọn hơn cũng như được chăm sóc kỹ càng hơn.Còn ở bên cung cấp dịch vụ, được tiếp cận khách hàng nhiều hơn, nắm rõ được nhu cầu kháchhàng từ đó đưa các dịch vụ cũng như cải thiện các dịch vụ của mình

Trong thời đại số này, mọi việc đều cần phải nhanh nhưng hiệu quả phải cao, mang lại lợi ích kinh tế, một trong số đó là việc vận chuyển các loại mặt hàng(thuỷ sản, hoa quả, thực phẩm, ) Đây là một phần quan trong trong tất cả các ngành nghề nhưng chưa được quan tâm đầu tư một cách xứng đáng.Người có nhu cầu vận chuyển chưa tìm được dịch vụ vận chuyển một cách hợp lý nhất, trong khi đó thì các công ty vận chuyển lại chưa tiếp xúc được với người có nhu cầu, hoặc có tình trạng công ty vận chuyển lại đang độc quyền dẫn đến giá và các dịch vụ quá cao, khiến cho người dùng phải chịu nhiều thiệt thòi

Chính vì những lý do trên em chọn đề tài “ Xây dựng sàn đấu thầu vận chuyển trực tuyến”

Mục đích của đề tài

• Tạo ra một nền tảng giúp đầu thầu dễ dàng tiện lợi hơn

• Người dùng có thể chọn cho mình giá cả và dịch vụ tốt nhất

• Công ty vận chuyển có thể tiếp xúc được với nhiều tầng lớp khách hàng,

từ đó đưa ra các chiến thuật phát triển cho công ty, doanh nghiệp

• Tránh tình trạng chèn ép giá của các công ty, doanh nghiệp

Trang 5

Chương 1: Cơ sở lý thuyết 1.1 Ngôn ngữ lập trình PHP

• Ví dụ như người dùng có thể nhập số lượng hàng hóa muốn mua khi thanh toán online, và PHP có thể được dùng để xử lí thông số này

1.1.4 Một số quy tắc code của PHP

Đuôi file được dùng là php

• Những file mặc định được xử lí như mã PHP

có đuôi file định nghĩa là “.php” Như đã nói ở trên, PHP có thể được lồng ghép trong codeHTML như sau, ví dụ một file tên

• Mã PHP được đặt ở giữa phần mở đầu ở dòng

1 và phần kết thực ở dòng 3 như sau

Trang 6

Đặt dấu chấm phẩy ở cuối mỗi dòng code

• PHP quy định mỗi dòng mã cần phải kết thực bằng dấu chấm phẩy (, ví dụ như:

• <?php

• echo ‘Message 1’;

• echo ‘Message 2’;

• ?>

• Trong ví dụ trên, các dòng chữ “Message 1”

và “Message 2” sẽ lần lượt hiển thị ra màn hình, bạn có thể thấy mỗi dòng echo đều đượckết thúc bằng dấu chấm phẩy

• Có 3 cách để viết comment trong mã PHP như sau:

Trang 7

• nhiều dòng

• */

• ?>

1.1.5 Cú pháp cơ bản của PHP

• Sau đây là một số cú pháp cơ bản của PHP

Khai báo biến

• Khi viết phần mềm, sẽ có những chuỗi thông tin có thể sử dụng lại, được lưu dưới dạng biến (variable)

• Biến có thể được dùng để lưu hầu hết loại dữ liệu, từ những chuỗi text dài ngoằng, đến những con số, true false (Boolean) …

• Tuy nhiên, PHP có một số biến được định nghĩa sẵn không thể bị ghi đè, ví dụ như

$GLOBALS, hay $_GET

• Ví dụ ta có một đoạn code sau:

đó có thể được thay đổi tùy theo logic của ứng dụng

• Có một số quy tắc cho việc định nghĩa biến trong PHP như sau:

• Bắt đầu bằng kí tự dollar ($)

• Nhưng ký tự được cho phép dùng cho tên biến bao gồm a-z, A-Z, 0-9

và _

• Không thể đặt tên biến bắt đầu bằng chữ số 0-9

• Tiếng nhật cũng có thể được dùng như tên biến, nhưng không nên vậy

Trang 8

• Các đặt tên biến cũng không quá khắt khe, tuy nhiên nên đặt sao cho rõ ràng, dễ hiểu và đúng bản chất biến.

Các toán tử (operator)

• Toán tử trong PHP là các ký hiệu có thể được

sử dụng trong việc tính toán

• Có các toán tử số học như cộng trừ nhân chia,các toán tử dùng để so sánh, hoặc toán tử dùng cho suy luận…

• Ví dụ ta có một đoạn code sau:

If statement / while statement

• Đoạn mã “if” thường được dùng để kiểm tra phần sau đó có giá trị đúng (TRUE) hay không, và sẽ thực thị đoạn mã bên trong nếu thỏa điều kiện trên

Trang 9

• Đoạn mã “while” được dùng để chạy những đoạn code lặp đi lặp lại, cho đến khi điều kiệnwhile không còn được thỏa.

Khai báo hàm (function)

• Các hàm (function) trong PHP là tổng hợp của nhiều đoạn code được nhóm lại và có thể thực thi toàn bộ khi hàm được gọi

Trang 10

1.2 Cơ sở dữ liệu Mysql

• MySQL thêm dữ liệu vào cơ sở dữ liệu

• MySQL sửa dữ liệu trong cơ sở dữ liệu

• MySQL xóa dữ liệu khỏi cơ sở dữ liệu

• MySQL truy vấn dữ liệu từ cơ sở dữ liệu

• MySQL tạo cơ sở dữ liệu, tạo bảng

1.2.3 Tầm quan trong của MySQL đối với website

• Website luôn cần phải làm việc với cơ sở dữ liệu MySQL là một hệ quản trị cơ sở dữ liệu

có tốc độ cao, ổn định, dễ sử dụng, và có lượng người dùng hỗ trợ đông đảo Do đó, nó

là sự lựa chọn hàng đầu trong việc phát triển website

1.2.4 Các kiểu dữ liệu trong MySQL

• Trong MySQL, kiểu dữ liệu được chia làm baloại chính: kiểu số, kiểu văn bản, kiểu ngày tháng

• Kiểu Số

Trang 11

• Kiểu văn bản

Trang 12

• CREATE DATABASE database_name;

• Ví dụ: Tạo một Database có tên là Quantriduan

Trang 13

• Trong MySQL để chọn một database nào đó

ta sẽ sử dụng cú pháp sau:

• USE database_name;

• Ví dụ: Để sử dụng Database Quantriduan ta dùng câu lệnh như sau:

• Use Quantriduan;

• b Câu lệnh tạo bảng

• Để tạo một bảng trong MySQL, chúng ta sử dụng cú pháp dưới đây:

• CREATE TABLE table_name ( column_name1 data_type(size), column_name2 data_type(size), column_name3 data_type(size), );

• Trong đó:

• table_name là tên của bảng mà bạn muốn tạo

• column_name1 là tên cột thứ nhất của bảng (Tương tự: column_name2

và column_name3 lần lượt là tên cột thứ hai và cột thứ ba)

• data_type là kiểu dữ liệu của cột

• size là kích thước tối đa của kiểu dữ liệu của cột

Trang 14

• c Cú pháp thêm dữ liệu vào bảng

• INSERT INTO table_name (column1,column2,column3)

Trang 15

• e Câu Lệnh truy xuất dữ liệu

• Khi bạn muốn truy xuất dữ liệu (lấy dữ liệu) của một bảng nào đó, chúng ta có 2 cú pháp:

• Cú pháp 1:

• SELECT * FROM name_table;

• Cú pháp này sẽ truy xuất tất cả dữ liệu của bảng có tên là name_table

• Lưu ý: Dấu sao (*) có nghĩa là chọn hết các cột của bảng

• Cú pháp 2:

• SELECT name_column1, name_column2 FROM name_table;

Trang 16

• Cú pháp này sẽ truy xuất tất cả dữ liệu của haicột có tên là name_column1 và

name_column2 trong bảng có tên là name_table

1.3 Giới thiệu mô hình MVC

MVC là chữ viết tắt của Model - View - Controller, đây là một

mô hình kiến phần mềm được tạo ra với mục đích quản lý và xây dựng dự án phần mềm có hệ thống hơn Mô hình này được dùng khá rộng rãi và đặc biệt

là trong các ngôn ngữ lập trình web

Trong mô hình này thì:

Model: có nhiệm vụ thao tác với cơ sở dữ liệu, nghĩa là nó sẽ chứa tất

cả các hàm, các phương thức truy vấn trực tiếp với dữ liệu

và controller sẽ thông qua các hàm, phương thức đó để lấy dữ liệu rồi

gửi qua View

View: có nhiệm vụ tiếp nhận dữ liệu từ controller và hiển thị nội dung

sang các đoạn mã HTML, bạn có thể hiểu nôm na đây người ta còn gọi

là thành phần giao diện

Controller: đóng vài trò trung gian giữa Model và View Nó có nhiệm

vụ tiếp nhận yêu cầu từ client sau đó xử lý request, load model tương ứng và gửi data qua view tương ứng rồi trả kết quả về cho client

Ưu điểm:

• Hệ thống phân ra từng phần nên dễ dáng phát triển

Trang 17

• Chia thành nhiều modun nhỏ nên nhiều người có thể làm chung dự án

• Vấn đề bảo trì cũng tương đối ok, dễ nâng cấp

• Dễ dàng debug trong quá trình xây dựng

Laravel là một PHP Framework mã nguồn

mở miễn phí, được phát triển bởi Taylor Otwell với phiên bản đầu tiên được ra mắt

vào tháng 6 năm 2011 Laravel ra đời nhằm

mục đích hỗ trợ phát triển các ứng dụng web, dựa trên mô hình MVC (Model – View – Controller)

Laravel hiện được phát hành theo giấy phép

MIT, với source code được lưu trữ tại Gitthub

1.4.2 Tại sao nên sử dụng Laravel?

1 Bắt đầu dễ dàng

Trang 18

• Lý do đầu tiên phải kể đến chính

việc Laravel có thể sử dụng cực dễ dàng cho

người mới bắt đầu, kể cả khi bạn chỉ biết sơ

về PHP, bạn vẫn có khả năng phát triển 1 website với 5 trang trong vòng vài giờ

2 Có mã nguồn mở

Framework Laravel với mã nguồn mở miễn

phí, cho phép bạn xây dựng ứng dụng web lớn và phức tạp một cách nhanh chóng, dễ dàng

• Tất cả điều bạn cần làm ở đây là cài đặt PHP, cộng với một trình soạn thảo văn bản để bắt đầu

3 Hỗ trợ cộng đồng

• Trường hợp bạn mắc kẹt với những bug khó nhằn, nhưng có người đã trải qua và hướng dẫn bạn thì không còn gì tuyệt hơn

Laravel có một hệ thống thư viện hỗ trợ vô

cùng lớn và mạnh hơn hẳn các Framework khác

• Nếu bạn report lỗi hoặc vi phạm bảo mật trong Framework, phản hồi của cộng đồng sẽ rất nhanh chóng

4 Dựa trên cấu trúc MVC

• Cấu trúc MVC và lập trình hướng đối tượng OOP vẫn được giữ lại trong

Framework Laravel, giúp cung cấp tài liệu

tốt hơn, và tăng hiệu suất hơn

Trang 19

5 Được xây dựng dựa trên những Framework hiệu quả nhất

Vì ra đời muộn nên Laravel được thừa hưởng

những ưu điểm và thế mạnh của Framework khác, khi có phần route cực mạnh Ví dụ

điện hình là Laravel sử dụng một số thành

phần tốt nhất của Symfony

6 Di chuyển Database dễ dàng

• Di chuyển Database là một trong những tính

năng trọng yếu của Laravel Nó cho phép bạn

duy trì cấu trúc cơ sở dữ liệu ứng dụng mà không nhất thiết phải tạo lại

• Di chuyển Database còn cho phép bạn viết

mã PHP để kiểm soát Database, thay vì sử

Trang 20

dụng SQL Nó còn cho phép bạn khôi phục những thay đổi gần đây nhất trong Database

7 Tính năng bảo mật hoàn thiện

• Ứng dụng của bạn sẽ an toàn khi dùng

Framework Laravel Kỹ thuật ORM của Laravel sử dụng PDO, chống chèn SOL

• Ngoài ra, tính năng bảo vệ crsf

của Laravel giúp ngăn chặn giả mạo từ yêu

cầu trang chéo Đó là cú pháp tự động thoát bất kì HTML nào đang được truyền qua các tham số xem, nhằm ngăn chặn kịch bản chéo trên trang web

• Điều bạn cần thực hiện ở đây là sử dụng các thành phần thích hợp của khuôn khổ

• Với 7 lợi ích tuyệt vời như thế thì sẽ là một mất mát lớn nếu bạn không sử dụng

Framework Laravel này

• Dưới đây, HYBRID TECHNOLOGIES sẽ chỉbạn cách cài đặt phiên bản mới nhất

– Laravel 5.8 trong vòng 3 phút.

Cách cài đặt Laravel

• 1 Yêu cầu máy chủ

Framework Laravel cần một vài yêu cầu về

hệ thống để cài đặt thành công Tất cả các yêucầu này hiện được đáp ứng bởi máy

ảo Laravel Homestead Do đó nếu được, bạn

nên sử dụng Homestead làm môi trường phát triển Laravel

• Tuy nhiên, nếu bạn không sử dụng Homestead, bạn sẽ cần đảm bảo rằng máy chủcủa bạn đáp ứng được các yêu cầu sau:

• PHP >= 7.1.3

• OpenSSL PHP Extension

Trang 21

Laravel sử dụng Composer để quản lý

các dependencies của nó Vì vậy, trước khi sử

dụng Laravel, hãy đảm bảo bạn đã cài

đặt Composer trên máy của mình

• Cách 1: Thông qua Laravel Installer

Đầu tiên, tải xuống Laravel Installer bằng

Composer:

• Khi cài đặt xong bạn cần chắc chắn rằng

đường dẫn tập tin thực thi của Composer đã

được thêm vào nhằm giúp hệ thống

thực thi Laravel có thể được định vị bởi hệ

thống của bạn Đường dẫn này tồn tại ở những vị trí khác nhau tùy vào hệ điều hành của bạn, tuy nhiên, dưới đây là những vị trí phổ biến:

Trang 22

bạn mở cửa sổ lệnh (đối với Windows

thì chọn Shift + click chuột phải và

chọn Commad Window Here hoặc Git BASH Here) và gõ dòng lệnh sau:

• Sau khi hoàn tất cài đặt , lệnh sẽ

tạo ra một bản cài đặt Laravel hoàn toàn mới

trong thư mục bạn chỉ định Ví dụ: sẽ tạo ra một thư mục có

tên chứa một bản cài đặt Laravel mới với tất cả các dependencies của Laravel đã

được cài đặt Trong đó, chính là tên thư

mục Laravel project của bạn.

Và chúng ta đã cài đặt xong Laravel.

• Cách 2: Thông qua Composer

• Ngoài ra, bạn cũng có thể cài

đặt Laravel bằng cách ban hành

lệnh cho Composer trong giao diện dòng lệnh Terminal của bạn

• Trong đó, chính là tên thư

mục Laravel project của bạn Và chúng ta đã cài đặt xong Laravel rồi

3 Chạy Laravel

Trang 23

• Sau khi cài đặt thành công, mở WebServer và tìm thư mục trong thư mục Laravel project, hoặc thực thi lệnh dưới đây:

• Khi đó, màn hình console xuất hiện thông báo:

Tức là Laravel project của bạn đã khởi chạy.

• Lúc này, vào trình duyệt gõ:

1.5 thiết kế hướng đối tượng UML

1.5.1 Giới Thiệu

• Ngôn ngữ mô hình hóa thống nhất (tiếng Anh: Unified Modeling Language, viết tắt thành UML) là một ngôn ngữ mô hình gồm các ký hiệu đồ họa mà các phương pháp hướng đối tượng sử dụng để thiết kế các hệ thống thông tin một cách nhanh chóng

• Cách xây dựng các mô hình trong UML phù hợp mô tả các hệ thống thông tin cả về cấu trúc cũng như hoạt động Cách tiếp cận theo mô hình của UML giúp ích rất nhiều cho những người thiết kế và thực hiện hệ thống thông tin cũng như những người sử dụng nó; tạo nên một cái nhìn bao

Trang 24

quát và đầy đủ về hệ thống thông tin dự định xây dựng Cách nhìn bao quát này giúp nắm bắt trọn vẹn các yêu cầu của người dùng; phục vụ từ giai đoạn phân tích đến việc thiết kế, thẩm định và kiểm tra sản phẩm ứng dụng công nghệ thông tin Các mô hình hướng đối tượng được lập cũng là cơ sở cho việcứng dụng các chương trình tự động sinh mã trong các ngôn ngữ lập trình hướng đối tượng, chẳng hạn như ngôn ngữ C++, Java, Phương pháp mô hình này rất hữu dụng trong lập trình hướng đối tượng Các mô hình được sử dụng bao gồm Mô hình đối tượng (mô hình tĩnh) và Mô hình động.

• UML sử dụng một hệ thống ký hiệu thống nhất biểu diễn các Phần tử mô hình (model elements) Tập hợp các phần tử mô hình tạo thành các Sơ đồ UML (UML diagrams) Có các loại sơ đồ UML chủ yếu sau:

• Sơ đồ lớp (Class Diagram)

• Sơ đồ đối tượng (Object Diagram)

• Sơ đồ tình huống sử dụng (Use Cases Diagram)

• Sơ đồ trình tự (Sequence Diagram)

• Sơ đồ cộng tác (Collaboration Diagram hay làComposite Structure Diagram)

• Sơ đồ trạng thái (State Machine Diagram)

• Sơ đồ thành phần (Component Diagram)

• Sơ đồ hoạt động (Activity Diagram)

• Sơ đồ triển khai (Deployment Diagram)

• Sơ đồ gói (Package Diagram)

• Sơ đồ liên lạc (Communication Diagram)

1.5.2 Một số dạng biểu đồ UML phổ biến

a) Biểu đồ Use case (Use Case Diagram)

Trang 25

• Một biểu đồ Use case chỉ ra một số lượng cáctác nhân ngoại cảnh và mối liên kết của chúngđối với Use case mà hệ thống cung cấp Một Use case là một lời miêu tả của một chức năng mà hệ thống cung cấp Lời miêu tả Use case thường là một văn bản tài liệu, nhưng kèm theo đó cũng có thể là một biểu đồ hoạt động Các Use case được miêu tả duy nhất theo hướng nhìn từ ngoài vào của các tác nhân (hành vi của hệ thống theo như sự mongđợi của người sử dụng), không miêu tả chức năng được cung cấp sẽ hoạt động nội bộ bên trong hệ thống ra sao Các Use case định nghĩa các yêu cầu về mặt chức năng đối với hệ thống.

• Hệ thống: Với vai trò là thành phần của biểu đồ use case, hệ thống biểu diễn ranh giới giữa bên trong và bên ngoài của một chủ thể trong phần mềm chúng ta xây dựng.Một hệ thống ở trong biểu đồ use case không nhất thiết là một hệ phần mềm; nó có thể là một chiếc máy,hoặc là một hệ thống thực như một doanh nghiệp, một trường đại học,…

• Tác nhân(actor):là người dùng của hệ thống, một tác nhân có thể là mộtngười dùng thực hoặc các hệ thống máy tính khác có vai trò nào đó trong hoạt động của hệ thống Như vậy, tác nhân thực hiện các use case.Một tác nhân có thể thực hiện nhiều use case và ngược lại một use case cũng có thể được thực hiện bởi nhiều tác nhân

• Tác nhân được kí hiệu:

• hoặc

Trang 26

• Các use case: Đây là thành phần cơ bản của biểu đồ use case Các use case được biểu diễn bởi các hình elip.Tên các use case thể hiện một chức năng xác định của hệ thống

• Các Use case được kí hiệu bằng hình elips

• Mối quan hệ giữa các use case:

o Association: thường được dùng để mô tả mối quan hệ giữa Actor

và Use Case và giữa các Use Case với nhau

Trang 27

• Ví dụ quan hệ include:

o Extent: Extend dùng để mô tả quan hệ giữa 2 Use Case Quan hệ Extend được sử dụng khi có một Use Case được tạo ra để bổ sung chức năng cho một Use Case có sẵn và được sử dụng trong một điều kiện nhất định nào đó

Trang 28

b) Biểu đồ lớp (Class Diagram)

• Một biểu đồ lớp chỉ ra cấu trúc tĩnh của các lớp trong hệ thống Các lớp là đại diện cho các “đối tượng” được xử lý trong hệ thống Các lớp có thể quan hệ với nhau trong nhiều dạng thức:

• liên kết (associated - được nối kết với nhau),

• phụ thuộc (dependent - một lớp này phụ thuộc vào lớp khác),

• chuyên biệt hóa (specialized - một lớp này là một kết quả chuyên biệt hóa của lớp khác),

• hay đóng gói ( packaged - hợp với nhau thành một đơn vị)

• Tất cả các mối quan hệ đó đều được thể hiện trong biểu đồ lớp, đi kèm với cấu trúc bên trong của các lớp theo khái niệm thuộc tính (attribute) và thủ tục (operation) Biểu đồ được coi là biểu đồ tĩnh theo phương diện cấutrúc được miêu tả ở đây có hiệu lực tại bất kỳ thời điểm nào trong toàn bộ vòng đời hệ thống

• Một hệ thống thường sẽ có một loạt các biểu

đồ lớp – không phải bao giờ tất cả các biểu đồlớp này cũng được nhập vào một biểu đồ lớp tổng thể duy nhất – và một lớp có thể tham gia vào nhiều biểu đồ lớp

Một lớp có các thành phần sau

• Tên lớp

• Các thuộc tính

• Các phương thức

Trang 29

• Ví dụ:

• Với mỗi đối tượng của Professor, có nhiều Course Offerings có thể được dạy Với mỗi đối tượng của Course Offering, có thể có 1 hoặc 0 Professor giảng dạy

• Biểu diễn bội số quan hệ:

Trang 30

o Kết tập là mối quan hệ “là một phần” (“is a part-of”).

o Bội số quan hệ được biểu diễn giống như các liên kết khác

o Cấu thành (Composition) là :Một dạng của kết tập với quyền sở hữu mạnh và các vòng đời trùng khớp giữa hai lớp

• ▫ Whole sở hữu Part, tạo và hủy Part

• ▫ Part bị bỏ đi khi Whole bị bỏ, Part không thể tồn tại nếu Whole không tồn tại

• Sự khác nhau giữa Association, Aggregation

và Composition

Trang 31

• Tổng quát hóa (Generalization)

o Mối quan hệ giữa các lớp trong đó một lớp chia sẻ cấu trúc và/hoặc hành vi với một hoặc nhiều lớp khác

o Xác định sự phân cấp về mức độ trừu tượng hóa trong đó lớp con

kế thừa từ một hoặc nhiều lớp cha

• ▫ Đơn kế thừa (Single inheritance)

• ▫ Đa kế thừa (Multiple inheritance)

o Là mối liên hệ “là một loại” (“is a kind of”)

• Lớp trừu tượng và lớp cụ thể (Abstract and Concrete Class)

Trang 32

Các thành phần của biểu đồ tuần tự

• Đối tượng (object or class): biểu diễn bằng các hình chữ nhật

Trang 33

• Thông điệp được dùng để giao tiếp giữa các đối tượng và lớp Có nhiều loại thông điệp được định nghĩa ở phần 1.3

• Xử lí bên trong đối tượng (biểu diễn bằng các đoạn hình chữ nhật rỗng nối với các đường đời đối tượng)

Các loại thông điệp trong biểu đồ tuần tự

• Thông điệp đồng bộ (Synchronous Message)

• Thông điệp đồng bộ cần có một request trước hành động tiếp theo

• Thông điệp không đồng bộ (Asynchronous Message)

• Thông điệp không đồng bộ không cần có một request trước hành động tiếp theo

• Thông điệp chính mình (Self Message)

• Là thông điệp mà đối tượng gửi cho chính nó

để thực hiện các hàm nội tại

• Thông điệp trả lời hoặc trả về (Reply or Return Message)

Trang 34

• Là thông điệp trả lời lại khi có request hoặc sau khi kiểm tra tính đúng đắn của một điều kiện nào đó Ví dụ thông điệp loại này như tinnhắn trả về là success hoặc fail

• Thông điệp tạo mới (Create Message)

• Là thông điệp được trả về khi tạo mới một đốitượng

Trang 35

• Trong sơ đồ trên có 3 đối tượng là : người dùng, hệ thống và tài khoản Luồng xử lí của chức năng đăng nhập có thể diễn giải như sau.

1. Người dùng gửi yêu cầu đăng nhập đến hệ thống

2. Hệ thống yêu cầu người dùng nhập email và mật khẩu

3. Người dùng nhập email và mật khẩu

4. Hệ thống gửi email và mật khẩu của người dùng để kiểm tra

5. Tài khỏan kiểm tra thông tin email và password có đúng hay không

6. Tài khoản trả về kết qủa kiểm tra cho hệ thống

7. Hệ thống trả về thông báo cho người dùng

d)Biểu đồ trạng thái (State Diagram)

Biểu đồ trạng thái

• Biểu đồ trạng thái là dạng biểu đồ mô tả các trạng thái có thể có và sự chuyển đổi giữa cáctrạng thái đó khi có các sự kiện tác động của một đối tượng

• Đối với các đối tượng có nhiều trạng thái thì biểu đồ trạng thái là sự lựa chọn tốt nhất giúp chúng ta có thể hiểu rõ hơn về hệ thống

Các thành phần của biểu đồ trạng thái

• Trạng thái bắt đầu: (Initial State)

Trang 37

mượn, hết hạn lưu hành, đã mượn, mất và haitrạng thái phụ là trạng thái khởi tạo và trạng thái kết thúc.

1. Sách khởi tạo ở trạng thái "sẵn sàng cho mượn"

2. Sách chuyển từ trạng thái "sẵn sàng cho mượn" sang trạng thái "Đã mượn" khi có người mượn sách

3. Sách chuyển từ trạng thái "sẵn sàng cho mượn" sang trạng thái "Hết hạn lưu hành" khi có quyết định hết hạn lưu hành

4. Sách "đã có người mượn" chuyển sang trạng thái "Hết hạn lưu hành" khi có quyết định hết hạn lưu hành

5. Sách chuyển từ trạng thái "hết hạn lưu hành" sang trạng thái "lưu trữ" khi có quyết định lưu trữ

6. Sách chuyển từ trạng thái "đã có người mượn" sang trạng thái "mất" khi làm mất

7. Sách chuyển từ trạng thái "đã có người mượn" sang trạng thái "sẵn sàng cho mượn" khi trả sách

e) Biểu đồ hoạt động (Activity Diagram)

dễ gây nhầm lẫn Khi vẽ chúng ta cần phải xác định rõ điểm khác nhau giữa hai dạng biểu đồ này là biểu đồ hoạt động tập trung mô

tả các hoạt động và kết qủa thu được từ việc thay đổi trạng thái của đối tượng còn biểu đồ trạng thái chỉ mô tả tập tất cả các trạng thái của một đối tượng và những sự kiện dẫn tới

sự thay đổi qua lại giữa các trạng thái đó

Trang 38

Các thành phần của biểu đồ hoạt động

• Trạng thái khởi tạo hoặc điểm bắt đầu (Initial State or Start Point)

• Hoạt động hoặc trạng thái hoạt động (Activity or Action State)

• Hoạt động và sự chuyển đổi hoạt động được

ký hiệu và cách sử dụng hoàn toàn giống như trạng thái trong biểu đồ trạng thái đã nêu ở trên

• Nút quyết định và rẽ nhánh

• Nút rẽ nhánh trong biểu đồ hoạt động được kíhiệu bằng hình thoi màu trắng

• Thanh tương tranh hay thanh đồng bộ

• Có thể có nhiều luồng hành động được bắt đầu thực hiện hay kết thúc đồng thời trong hệ thống

• Thanh đồng bộ kết hợp:

• Thanh đồng bộ chia nhánh:

Trang 39

rõ luồng hoạt động của các đối tượng riêng biệt.

• Thời gian sự kiện (Time Event)

Trang 40

• Như trên hình vẽ ta thấy có ba hoạt động cùng diễn ra là xác nhận thẻ, xác nhận mã số PIN và xác nhận số tiền rút.Chỉ khi sử dụng biểu đồ hoạt động mới có thể miêu tả được các hoạt động song song như vậy

• VD2: Thêm một ví dụ nữa để chúng ta hiểu hơn về biểu đồ hoạt động với các hành động được phân làn

• Biểu đồ hoạt động thể hiện một qúa trình đặt

Ngày đăng: 05/07/2020, 18:11

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w