Phân tích thiết kế HTTT là học phần chuyên ngành và bắt buộc đối với ngành
HTTT Kinh tế. Đây cũng chính là kiến thức không thể thiếu để phát triển cũng như
quản trị các HTTT. Và để áp dụng vào các bài toán thực tế, ngoài kiến thức lý
thuyết đòi hỏi người dùng phải sử dụng thành thạo các công cụ phân tích thiết kế để
có thể mô hình hóa hệ thống. Hiện nay có nhiều công cụ hỗ trợ phân tích và thiết kế
hệ thống như Rational Rose, Enterprise Architect, Power Design, Trong đó
Enterprise là phần mềm có nhiều ưu điểm nổi trội như: giao diện đồ họa trực quan
dễ dàng sử dụng, dung lượng nhẹ và đòi hỏi cấu hình cài đặt không cao, thiết kế
theo mô hình chuẩn UML 2.4.1, hỗ trợ toàn bộ các biểu đồ của UML và có chức
năng generate từ mã code mà ít công cụ có được. Tuy nhiên, thực tế cho thấy hiện
nay vẫn chưa có một giáo trình hay tài liệu tham khảo tiếng Việt nào trình bày cụ
thể về EA, nên hầu hết người dùng sử dụng các công cụ khác hoặc tự mò mẫm với
các tài liệu bằng tiếng anh. Vì vậy việc nghiên cứu một cách đầy đủ về EA và ứng
dụng nó vào PTTK HTTT là cần thiết, và sản phẩm của đề tài có thể là một tài liệu
hữu ích cho sinh viên cũng như giáo viên và những người dùng phát triển HTTT.
72 trang |
Chia sẻ: Trịnh Thiết | Ngày: 05/04/2024 | Lượt xem: 386 | Lượt tải: 3
Bạn đang xem trước 20 trang tài liệu Luận văn Nghiên cứu và ứng dụng mạng phần mềm Enterprise Architect trong phân tích thiết kế các hệ thống thông tin, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC THƯƠNG MẠI
BÁO CÁO TỔNG KẾT
ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG
Đề tài: Nghiên cứu và ứng dụng mạng phần mềm Enterprise
Architect trong phân tích thiết kế các hệ thống thông tin
Mã số: CS16-04
Chủ nhiệm đề tài: ThS. Đinh Thị Hà
Hà Nội, tháng 4/2017
Lời cảm ơn ............................................................................................................................ 4
DANH MỤC TỪ VIẾT TẮT .............................................................................................. 5
DANH MỤC HÌNH VẼ, BẢNG BIỂU .............................................................................. 6
Chương 1. Tổng quan nghiên cứu đề tài ........................................................................... 8
1.1 Tính cấp thiết nghiên cứu của đề tài ................................................................... 8
1.2 Tổng quan tình hình nghiên cứu về đề tài .......................................................... 8
1.3 Các mục tiêu nghiên cứu của đề tài ..................................................................... 9
1.4 Đối tượng và phạm vi nghiên cứu ....................................................................... 9
1.5 Phương pháp ......................................................................................................... 9
1.6 Kết cấu của báo cáo .............................................................................................. 9
Chương 2. Tổng quan về HTTT và phương pháp phân PTTK hướng đối tượng ....... 11
2.1 Tổng quan về HTTT ............................................................................................... 11
2.1.1 Khái niệm .............................................................................................................. 11
2.1.2 Các thành phần của HTTT .................................................................................. 12
2.1.3 Quy trình phân tích và thiết kế HTTT ............................................................... 14
2.1.4 Các phương pháp PTTK HTTT.......................................................................... 17
2.2 Phương pháp PTTK hướng đối tượng................................................................... 19
2.2.1 Các khái niệm cơ bản về mô hình ....................................................................... 19
2.2.2 Tiến trình phát triển phần mềm .......................................................................... 20
2.2.3 Công cụ trợ giúp ................................................................................................... 22
Chương 3. Nghiên cứu Enterprise Architect trong phân tích và thiết kế các HTTT . 24
3.1 Sơ lược về EA ...................................................................................................... 24
3.1.1 Lịch sử phát triển và đặc điểm ....................................................................... 24
3.1.2 Tính năng ......................................................................................................... 25
3.2 Cài đặt công cụ .................................................................................................... 28
3.2.1 Yêu cầu cấu hình và cài đặt ............................................................................ 28
3.2.2 Cài đặt và thiết lập môi trường ...................................................................... 29
3.3 Giao diện người dùng ......................................................................................... 29
3.4 Mô hình hóa HT với EA ..................................................................................... 32
3.4.1 Làm việc với dự án .......................................................................................... 32
3.4.2 Làm việc với gói (Package) ............................................................................. 36
3.4.3 Làm việc với biểu đồ (Diagram)..................................................................... 43
3.4.4 Làm việc với thành phần (Element) .............................................................. 54
3.4.5 Làm việc với liên kết (Connector) .................................................................. 64
3.4.6 Làm việc với tài liệu, dữ liệu, báo cáo và nâng cấp mô hình ....................... 69
Chương 4. Kết luận ........................................................................................................... 70
4.1 Các kết luận ......................................................................................................... 70
4.1.1 Những vấn đề mà đề tài đã làm được ............................................................. 70
4.1.2 Những hạn chế của đề tài ................................................................................ 70
Tài liệu tham khảo ............................................................................................................. 71
Phụ lục ................................................................................................................................ 71
Lời cảm ơn
Nghiên cứu khoa học là một trong những nhiệm vụ của người giảng viên. Mỗi kết quả
nghiên cứu đều mang đến một giá trị nhất định trong chuyên môn cũng như kinh nghiệm
trong làm việc và giảng dạy. Với mục đích tìm hiểu một công cụ hỗ trợ giảng dạy cũng
như tạo một nguồn tài liệu tiếng Việt cho sinh viên chuyên ngành Hệ thống thông tin thị
trường và thương mại, tôi đã lựa chọn đề tài “Nghiên cứu và ứng dụng phần mềm
Enterprise Architect trong phân tích thiết kế các hệ thống thông tin”. Để hoàn thành được
đề tài này, ngoài những kiến thức chuyên môn, còn có sự hỗ trợ, động viên của các đồng
nghiệp và bạn bè. Nhân đây tôi cũng xin gửi lời cảm ơn tới gia đình, bạn bè thân và các
đồng nghiệp trong bộ môn đã luôn động viên và tạo điều kiện cho tôi trong suốt quá trình
thực hiện đề tài.
Hà nội, ngày 20 tháng 3 năm 2017
DANH MỤC TỪ VIẾT TẮT
Từ viết tắt Giải nghĩa
HTTT Hệ thống thông tin
EA Enterprise Architect
PTTK Phân tích thiết kế
DN Doanh nghiệp
NSD Người sử dụng
UML Unified Modeling Language
UC Use Case
DANH MỤC HÌNH VẼ, BẢNG BIỂU
Chỉ số Tên hình
2.1 Sơ đồ tổng quát các thành phần của HTTT
3.1 Giao diện trang Start Page
3.2 Hộp thoại Select model(s)
3.3 Hộp thoại Open Project
3.4 Giao diện của cửa sổ dự án
3.5 Hộp thoại Create New View
3.6 Hộp thoại New Model Package
3.7 Hộp thoại New Diagram
3.8 Hộp thoại thuộc tính của gói
3.9 Hộp thoại tùy chọn nội dung hiển thị của gói
3.10 Hộp thoại New Diagram
3.11 Hộp thoại thuộc tính của biểu đồ
3.12 Hộp thoại Change Diagram Type
3.13 Hộp thoại Save
3.14 Thực đơn tùy chọn sắp xếp thành phần
3.15 Hộp thoại Feature Visibility
3.16 Hộp thoại Show Features in Diagram
3.17 Hộp thoại Suppress Features in Diagram
3.18 Hộp văn bản chú thích
3.19 Cửa sổ Toolbox
3.20 Hộp thoại New Element
3.21 Hộp thoại Set Parents and Interfaces
3.22 Hộp thoại Option
3.23 Hộp thoại Advanced Settings
3.24 Sự kiện thu gọn của gói
3.25 Sự kiện đầy đủ của gói
3.26 Hộp thoại Default Appearence
3.27 Biểu tượng Quick Linker với UC
3.28 Thực đơn con các quan hệ của Quick Linker
3.29 Hộp thoại Link to Element Feature
3.30 Biểu đồ quan hệ tính năng – tính năng giữa hai thành phần
3.31 Hộp thoại Remove Connector
3.32 Hộp thoại Link Relation
Chương 1. Tổng quan nghiên cứu đề tài
1.1 Tính cấp thiết nghiên cứu của đề tài
Phân tích thiết kế HTTT là học phần chuyên ngành và bắt buộc đối với ngành
HTTT Kinh tế. Đây cũng chính là kiến thức không thể thiếu để phát triển cũng như
quản trị các HTTT. Và để áp dụng vào các bài toán thực tế, ngoài kiến thức lý
thuyết đòi hỏi người dùng phải sử dụng thành thạo các công cụ phân tích thiết kế để
có thể mô hình hóa hệ thống. Hiện nay có nhiều công cụ hỗ trợ phân tích và thiết kế
hệ thống như Rational Rose, Enterprise Architect, Power Design, Trong đó
Enterprise là phần mềm có nhiều ưu điểm nổi trội như: giao diện đồ họa trực quan
dễ dàng sử dụng, dung lượng nhẹ và đòi hỏi cấu hình cài đặt không cao, thiết kế
theo mô hình chuẩn UML 2.4.1, hỗ trợ toàn bộ các biểu đồ của UML và có chức
năng generate từ mã code mà ít công cụ có được. Tuy nhiên, thực tế cho thấy hiện
nay vẫn chưa có một giáo trình hay tài liệu tham khảo tiếng Việt nào trình bày cụ
thể về EA, nên hầu hết người dùng sử dụng các công cụ khác hoặc tự mò mẫm với
các tài liệu bằng tiếng anh. Vì vậy việc nghiên cứu một cách đầy đủ về EA và ứng
dụng nó vào PTTK HTTT là cần thiết, và sản phẩm của đề tài có thể là một tài liệu
hữu ích cho sinh viên cũng như giáo viên và những người dùng phát triển HTTT.
1.2 Tổng quan tình hình nghiên cứu về đề tài
Ngoài nước Enteprise Architect (EA) là một phần mềm hỗ trợ phân tích và
thiết kế hệ thống của hãng SparxSystem. Phiên bản EA đầu tiên được ra mắt vào
năm 2000, và phiên bản mới nhất 12.1 ra được giới thiệu vào 16/3/2016 với sự phát
triển hoàn thiện không ngừng. Ngoài các tài liệu hướng dẫn, đào tạo của công ty
SPARX Systems, có nhiều công trình nghiên cứu và ứng dụng EA trên thế giới. Cụ
thể như:
“ Use Case Driven Object Modeling with UMLTheory and Practice” (2007) của các tác giả
Doug Rosenberg, và Matt Stephens, NXB Apress- ISBN 13: 978-1-59059-774-3
“Fifty enterprise Architect tricks” (2012) của tác giả Peter Doomen, NXB Leanpub
ISBN 9781626278991
Trong nước: EA là một công cụ hỗ trợ phân tích và thiết kế hệ thống, vì vậy
người dùng có tư tưởng khi cần dùng thì mới tìm hiểu để sử dụng và thông thường
nó được giáo viên giới thiệu cho sinh viên tự tìm hiểu chứ không được đào tạo bài
bản như một học phần kỹ năng, vì vậy không có nhiều công trình hoàn chỉnh nghiên
cứu về công cụ này. Dưới đây là một số đề tài:
“Enterprise Architect: Giới thiệu và ứng dụng trong bài toán quản lý đề tài khóa
luận tốt nghiệp của sinh viên” (2009) do nhóm sinh viên Hoàng Thế Tùng, Bùi Văn
Quý Nguyên Trung Kiên – Đại học Công nghệ, ĐHQG Hà nội thực hiện.
“Hướng dẫn sử dụng phần mềm Enterprise Architect” do nhóm sinh viên
Nguyễn Mạnh Dũng, Nguyễn Hùng Sơn, Trần Văn Tài – KHMTK3-Đại học Công
nghiệp Hà nội thực hiện
1.3 Các mục tiêu nghiên cứu của đề tài
Mục tiêu: Đề tài sẽ thực hiện tìm hiểu và nghiên cứu phần mềm Enterprise
Architect nhằm ứng dụng vào công việc phân tích và thiết kế các hệ thống thông tin
bằng phương pháp hướng đôí tượng
Sản phẩm ứng dụng: Báo cáo đề tài và bản phân tích thiết kế mẫu sẽ là tài liệu
tham khảo hữu ích cho giáo viên cũng như sinh viên trong quá trình giảng dạy và
học tập các học phần PTTK HT và HTTT quản lý.
1.4 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu
Phần mềm Enterprise Architect
Lý thuyết phân tích thiết kế HTTT hướng đối tượng
Phạm vi nghiên cứu
Phần mềm EA phiên bản 7. 5.847 và các HTTT đặc biệt là HTTT quản lý
bán hàng, và HTTT quản lý thư viện.
Các loại biểu đồ trong phương pháp PTTK hướng đối tượng
1.5 Phương pháp
- Loại dữ liệu: định tính
- Phương pháp thu thập dữ liệu thứ cấp: thu thập
- Phương pháp xử lý dữ liệu: phân tích, so sánh đối chiếu
1.6 Kết cấu của báo cáo
Ngoài lời mở đầu, mục lục, danh mục bảng biểu, hình vẽ, phụ lục, tài liệu tham
khảo, báo cáo được chia thành 4 chương như sau:
Chương 1. Tổng quan về đề tài nghiên cứu
Chương 2. Tổng quan về HTTT và phương pháp phân PTTK hướng đối tượng
Chương 3: Nghiên cứu Enterprise Architect trong phân tích và thiết kế các
HTTT
Chương 4: Kết luận
Chương 2. Tổng quan về HTTT và phương pháp phân PTTK hướng đối tượng
2.1 Tổng quan về HTTT
2.1.1 Khái niệm
Khái niệm hệ thống: Hệ thống là một tập hợp có tổ chức gồm nhiều phần tử, có
các mối quan hệ ràng buộc lẫn nhau và cùng hoạt động hướng tới một mục đích
chung.
Các phần tử của hệ thống là các thành phần hợp thành hệ thống và được hiểu theo
nghĩa rộng:
- Các phần tử có thể rất đa dạng, chẳng hạn trong hệ thống mặt trời thì các
phần tử là mặt trời, quả đất,; có khi các phần tử lại là những đối tượng trừu tượng
như là một phương pháp, một lập luận, một quy tắc, như trong các hệ thống tư
tưởng. Như vậy các phần tử có thể là rất khác biệt về bản chất, không những giữa
các hệ thống khác nhau mà có thể ngay trong cùng một hệ thống.
- Các phần tử không nhất thiết là sơ đẳng mà có thể là những thực thể phức tạp
và có thể được xem như những hệ thống. Bởi vậy, hệ thống thường có tính phân
cấp: hệ thống được hợp thành từ nhiều hệ thống con, và mỗi hệ thống con lại được
hợp thành từ những hệ thống nhỏ hơn.
Khái niệm HTTT: HTTT là tập hợp người, thủ tục và các nguồn lực để thu thập,
lưu trữ, xử lý và phân phối thông tin trong một tổ chức, doanh nghiệp (DN).
HTTT có thể là một hệ thống không chính thức nếu nó dựa vào truyền miệng,
hoặc là một hệ thống chính thức nhưng thủ công nếu dựa vào các công cụ như giấy,
bút. Trong khi đó, hệ thống thông tin hiện đại là hệ thống tự động hóa dựa vào máy
tính và các công nghệ thông tin khác. Với hệ thống này, các thành phần cấu tạo của
nó bao gồm: các phần cứng, phần mềm, các hệ mạng, con người và dữ liệu.
Ngày nay HTTT đã được ứng dụng trong mọi lĩnh vực khác nhau của đời sống
xã hội. Tùy theo quan điểm mà có thể phân loại các HTTT theo các tiêu chí khác
nhau. Ví dụ như xét về mặt mục đích ứng dụng hay chức năng nghiệp vụ, HTTT có
thể được phân chia thành: HTTT tài chính kế toán, HTTT Marketing, HTTT quản
lý kinh doanh và sản xuất, HTTT nguồn nhân lực, HTTT văn phòng. Nếu xét theo
quy mô tích hợp từ hệ thống con, thì HTTT có thể được chia thành: hệ thống quản
lý nguồn lực, hệ thống quản lý chuỗi cung ứng, hệ thống quản lý quan hệ khách
hàng, hệ thống quản lý tri thức. Hay nếu xét theo các cấp quản lý trong một tổ chức
DN, HTTT có thể phân loại thành: hệ thống xử lý giao dịch, hệ thống thông tin
quản lý, hệ thống hỗ trợ ra quyết định, hệ thống chuyên gia.
Khái niệm hệ thống thông tin quản lý: là HTTT nhằm cung cấp các thông tin
cần thiết cho sự quản lý, điều hành của một tổ chức, DN. Hạt nhân của HTTT quản
lý là một cơ sở dữ liệu chứa các thông tin phàn ánh tình trạng hiện thời và hoạt
động kinh doanh hiện thời của DN. Từ thông tin thu thập được từ môi trường của
DN kết hợp với thông tin có trong cơ sở dữ liệu, HTTT quản lý sẽ tạo ra các thông
tin mà nhà quản lý cần.
2.1.2 Các thành phần của HTTT
Mỗi một HTTT được cấu thành từ các yếu tố: phần cứng, phần mềm, cơ sở dữ
liệu, mạng, con người.
Phần cứng: Phần cứng gồm các thiết bị được sử dụng trong quy trình xử lý
thông tin. Phần cứng là các thiết bị hữu hình có thể nhìn thấy và cầm nắm được.
Dựa trên chức năng và cách thức hoạt động, người ta phân biệt các thiết bị phần
cứng ra thành thiết bị nhập/ thiết bị xuất, thiết bị xử lý, thiết bị lưu trữ.
Phần mềm: Là tập các chỉ lệnh theo một trật tự xác định nhằm điểu khiển thiết bị
phần cứng tự động thực hiện một công việc nào đó. Phần mềm được biểu diễn thông
qua ngôn ngữ lập trình. Phần mềm sử dụng bởi hệ thống thông tin được chia ra
thành: phần mềm hệ thống (hệ điều hành), phần mềm ứng dụng ( hệ soạn thảo văn
bản, bảng tính, hệ quản trị cơ sở dữ liệu), và phần mềm chuyên dụng trong các
lĩnh vực ngân hàng, kế toán,
Cơ sở dữ liệu: Cơ sở dữ liệu là một tập hợp dữ liệu có tổ chức, có liên quan
được lưu trữ trên các thiết bị lưu trữ thứ cấp để có thẻ thỏa mãn yêu cầu khai thác
thông tin đồng thời của nhiều người sử dụng hay nhiều chương trình ứng dụng với
mục đích khác nhau. Chức năng của cơ sở dữ liệu trong một hệ thống thông tin:
- Lưu trữ thông tin
- Đáp lại các truy vấn tức thời
- Thống kê, phân tích, dự báo
- Thiết lập báo cáo
Mạng: Mạng máy tính là một tập hợp các máy tính và thiết bị được nối với nhau
thông quan các đường truyền vật lý theo một kiến trúc nào đó nhằm chia sẽ các dữ liệu
và tài nguyên mạng.
Con người: Là chủ thể điều hành và sử dụng hệ thống thông tin. Trong một
HTTT phần cứng và phần mềm được coi là đối tượng trung tâm còn con người
đóng vai trò quyết định. Con người là chủ thể, trung tâm thu thập, xử lý số liệu,
thông tin để máy tính xử lý. Công tác quản trị nhân sự HTTT trong doanh nghiệp là
công việc lâu dài và khó khăn nhất. Nguồn lực con người ở đây được chia thành hai
nhóm chính:
+ Người xây dựng và bảo trì hệ thống là nhóm người làm nhiệm vụ phân tích, lập
trình, khảo sát, bảo trì.
+ Nhóm sử dụng hệ thống là các cấp quản lý, người thiết lập các mục tiêu, xác định
nhiệm vụ, tạo quyết định.
Hình 2.1.Sơ đồ tổng quát các thành phần của HTTT
Các thành phần của hệ thống thông tin có các mối liên hệ với nhau. Mối liên kết
giữa các thiết bị trong một hệ thống thông tin bằng các dây dẫn là những mối liên
hệ của hệ thống có thể nhìn thấy được. Ngược lại, phần lớn các mối liên kết giữa
các yếu tố cấu thành nên hệ thống thông tin là không thể nhìn thấy được. Chúng
được hình thành và diễn ra khi hệ thống hoạt động. Chẳng hạn, như việc lấy dữ liệu
từ các cơ sở dữ liệu, và việc truyền dữ liệu đi xa hàng trăm cây số, việc lưu trữ dữ
liệu trên các thiết bị.
2.1.3 Quy trình phân tích và thiết kế HTTT
Quy trình phân tích thiết kế hệ thống thông tin gồm các giai đoạn sau: Lập kế
hoạch, phân tích hiện trạng, phân tích khả thi, đặc tả, thiết kế, lập trình, kiểm thử,
khai thác, bảo trì. Các giai đoạn cụ thể được trình bày như sau
Lập kế hoạch
Thực hiện một dự án tin học hóa có thể rất tốn kém,đòi hỏi nhiều công sức và
thời gian trước khi mang lại lợi nhuận. Các nhân tố thường ảnh hưởng đến việc lập
kế họach là: Thời gian, mức đầu tư (investment),những yếu tố không chắc chắn của
dự án,nguồn nhân lực (số lượng,trình độ, khả năng của người thiết kế và những
người sử dụng cuối), những tình huống bất ngờ, những đánh giá sai lệch thực tế
Người ta thường cấu trúc hóa việc lập kế hoạch bằng cách:
- Tách riêng các phân bổ nhân lực, thời gian và kinh phí.
- Lập dự án tổng thể, kế hoạch cho một giai đoạn và các kế hoạch chi tiết.
- Song song với việc lập kế hoạch là việc kiểm tra, báo cáo định kỳ.
Kết quả của giai đoạn lập kế hoạch là xác định rõ ràng các phân hệ,chức năng
của chúng trong HTTT tương lai, xác định các khả năng ứng dụng trên mạng hoặc
truyền thông,bố trí công việc theo nhóm chuyên gia, phân chia kinh phí
Phân tích hiện trạng
Phân tích(hay khảo sát) hiện trạng là giai đoạn phân tích các hoạt động của
HTTT vật lý hiện hữu. Mục tiêu cần đạt được là làm sao có được các thông tin (liên
quan đến những yêu cầu đặt ra trong bước lập kế hoạch) với độ tin cậy cao và chuẩn
xác nhất, mới nhất.
Có nhiều phương pháp phân tích hiện trạng:
- Phỏng vấn,trực tiếp hoặc gián tiếp,các đối tượng liên quan (giám đốc,nhân
viên, vị trí làm việc)
- Lập phiếu điều tra,thăm dò.
- Quan sát, thu nhập mẫu biểu.
Mỗi phương pháp đều có ưu điểm, nhược điểm riêng và được áp dụng sao cho
phù hợp với tình hình thực tế. Sau khi có được các kết quả phân tích hiện trạng,
phân tích viên phải biết cách tổng hợp các dữ liệu,các xử lý thu nhập được và hợp
thức hóa.
Phân tích khả thi
Giai đoạn này có vai trò quyết định vì nó sẽ dẫn đến các lựa chọn quyết định
HTTT tương lai cùng các bảo đảm tài chính, bao gồm 4 bước như sau:
Bước 1: Phân tích,phê phán HTTT hiện hữu nhằm làm rõ các điểm yếu hoặc
mạnh. Sắp xếp các vấn đề cần giải quyết theo thứ tự mức độ quan trọng của chúng.
Bước 2 : Xác định các mục tiêu mới của các dự án,khả năng sinh lãi,thời gian
trả lãi nếu như việc này chưa được thực hiện ở giai đoạn lập kế hoạch.
Bước 3 : Xác định một cách tổng quát các giải pháp về chi phí triển khai phân
hệ (dự án),chi phí hoạt động trong tương lai,kết hợp phân tích ưu điểm và khuyết
điểm của từng giải pháp.
Bước 4: Lựa chọn những người chịu trách nhiệm phù hợp với giải pháp nào đó
đã xác định.Nếu không tìm được những người như vậy hoặc chi phí ước tính cao so
với mục tiêu đề ra thì phải quay lên bước 2. Bước 4 trong trường hợp này thường
lặp đi lặp lại nhiều lần.