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

phân tích thiết kế hướng đối tượng sử dụng UML

55 1,3K 4
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Phân tích thiết kế hướng đối tượng sử dụng UML
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận văn
Năm xuất bản 2023
Thành phố Hồ Chí Minh
Định dạng
Số trang 55
Dung lượng 793 KB

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

Nội dung

phân tích thiết kế hướng đối tượng sử dụng UML

Trang 1

CHƯƠNG 1 MỞ ĐẦU

1 Đặt vấn đề

Ngày nay, Công nghệ thông tin đã và đang đóng vai trò quan trọng trongđời sống kinh tế xã hội của nhiều quốc gia trên thế giới, hệ thống tin học pháttriển nhanh chóng và ngày càng trở nên phức tạp

Viêc phát triển các hệ thống phần mềm ngày càng trở nên phức tạp khôngchỉ về quy mô và phạm vi ứng dụng mà còn cả sự thay đổi về nội dung Nếutrước đây, các hệ thống phần mềm sử dụng giao diện dòng lệnh từ các xâu kí

tự thì ngày nay đã được thay thế bằng giao diện đồ hoạ xu thế sự kiện: Kiếntrúc hệ thống đa tầng khách/chủ, cơ sở dữ liệu(CSDL) phân tán, Internet pháttriển mạnh mẽ làm cho các hệ thống phần mềm càng trở nên phức tạp hơn.Vấn đề đặt ra là việc xây dựng hệ thống phần mềm hiện nay, khó khăn lớnnhất không phải là tốc độ thực hiện chương trình, kinh phí hay cái gì khác mà

là độ phức tạp Vì thế hướng giải quyết là làm giảm bớt độ phức tạp của hệthống phần mềm Các phương pháp tiếp cận khác nhau đều có thể giải quyếtvấn đề này nhưng ở các mức độ khác nhau

Hiện nay, có hai cách tiếp cận phổ biến là tiếp cận hướng chức năng(truyền thống) và tiếp cận hướng đối tượng

Cách tiếp cận hướng chức năng cho phép xây dựng phần mềm là thực hiệndãy tương tác chia nhỏ và hợp nhất Chia nhỏ để hiểu rõ vấn đề và hợp nhất đểxây dựng hệ thống Các chức năng của hệ thống được nhân diện sau đó lạiđược tách thành các chức năng con Tiến trình này được lặp đi lặp lại đến khiđược các thành phần đơn giản đến mức chúng được biểu diễn trực tiếp bằngcác hàm hay thủ tục của ngôn ngữ lập trình.[1]

Kiến trúc phần mềm được cài đặt theo cách tiếp cận hướng chức năng sẽ phảnánh các chức năng hệ thống Tiếp cận hướng chức năng và cơ chế phân cấpchỉ cho lại kết quả mong muốn khi các chức năng được nhận biết đầy đủ vàkhông được thay đổi theo thời gian Tuy nhiên trong thực tế phát triển phầnmềm luôn là tiến trình động, CSDL động không bao giờ kết thúc hoàn toàn vàluôn có những thay đổi, nâng cấp Sửa đổi hay mở rộng hệ thống quá nhiềulàm cho chương trình khác xa so với ban đầu Phương pháp này thuận tiện choviệc thiết kế CSDL nhưng chỉ được diễn tả bằng một tập hợp các chức năngrời rạc, nên chỉ thích hợp cho sự phân tích bước đầu hoặc cho các hệ thốngđơn giản Sản phẩm hình thành từ giải pháp này khó bảo trì Mọi chức năngđều chia sẻ khối lượng dữ liệu lớn, các chức năng phải hiểu rõ dữ liệu đượclưu trữ thế nào, khi thay đổi cấu trúc dữ liệu kéo theo thay đổi mọi hàm liênquan.Mặt khác tiệm cận này không hỗ trợ lập trình bằng ngôn ngữ hướng đốitượng như C++, JAVA…Do đó cần phải có một phương pháp mới có khảnăng làm chủ được độ phức tạp, giúp quản lý được chất lượng, độ tin cậy phầnmềm ngay cả khi cấu trúc bị tách ra hay tiến hoá Và phương pháp được mongđợi để giải quyết vấn đề trên là phương pháp tiếp cận hướng đối tượng

Trang 2

Hình 1 Cách tiếp cận hướng đối tượng

Phương pháp phát triển phần mềm hướng đối tượng tuy là một phươngpháp mới trong những năm gần đây nhưng đã chứng tỏ được ưu thế khi lậptrình các hệ thống phức tạp, đem lại những thành quả to lớn Các nhà pháttriển phần mềm nhận thấy rằng phát triển phần mềm hướng đối tượng manglại một phần mềm thương mại có chất lượng cao với độ tin cậy cao, dễ mởrộng và dễ sử dụng lại, chạy trơn tru, phù hợp với yêu cầu của người dùng vàđặc biệt là khả năng phát triển cao

Phát triển phần mềm hướng đối tượng là cách xây dựng các modul hoặccác đối tượng có thể thay thế, hiệu chỉnh và sử dụng lại dễ dàng Hướng pháttriển này coi thế giới thực là một hệ thống các đối tượng Mô tả các đối tượngcủa thế giới thực bằng một tập rời rạc các đối tượng bao gói cả dữ liệu và chứcnăng của nó

Phương pháp phát triển phần mềm truyền thống chủ yếu tập trung vàochức năng của hệ thống - Hệ thống làm được những gì? Còn phát triển theohướng đối tượng thì tập trung vào đối tượng, cả thông tin và hành vi, chúngkết hợp giữa dữ liệu và chức năng Cho khả năng xây dựng hệ thống mềm dẻo.Phương pháp tiệm cận hướng đối tượng cho khả năng xây dựng phần mềm

để mô tả các lĩnh vực, vấn đề tốt hơn phương pháp truyền thống Các hệ thốngtạo ra sẽ dễ dàng tương thích với việc thay đổi các yêu cầu , dễ dàng bảo trìhơn, dễ dàng nâng cấp và khả năng sử dụng lại mã lệnh cao hơn Cho phépchúng ta tạo ra các modul chức năng Với phương pháp này , chúng ta quantâm đến việc hệ thống làm được gì chứ không phải hệ thống làm như thế nào

Có nhiều lý do để lựa chọn phương pháp hướng đối tượng, vì ngoài những

ưu điểm trên nó còn có một số đặc điểm sau:

Xoá bỏ ranh giới giữa các pha trong phát triển phần mềm: Phát triển phầnmềm theo phương pháp truyền thống đối với mỗi bước của tiến trình phát triểnphần mềm nó đòi hỏi các kiểu và các phương pháp khác nhau Việc chuyển từpha này sang pha khác là một sự chuyển tiếp phức tạp giữa các mô hình gầnnhư khác nhau hoàn toàn Sự chuyển giao đó không những làm chậm tiến trìnhphát triển phần mềm mà còn làm tăng cỡ của dự án và lỗi trong việc chuyển từngôn ngữ này sang ngôn ngữ khác cũng phát sinh nhiều hơn Tiếp cận hướng

Chức năng con 2.1

Chức năng con 2.2

Trang 3

đối tượng sử dụng cùng một ngôn ngữ trong phân tích, thiết kế, lập trình vàthiết kế cơ sở dữ liệu làm cho hệ thống rõ rang, rành mạch hơn.

Khuyến khích các kỹ thuật lập trình tốt: Một lớp trong hệ thống lập trìnhhướng đối tượng mô tả rõ rang giao diện Các phương thức và thuộc tính trongmột lớp liên hệ chặt chẽ với nhau Một hệ thống được thiết kế tốt, các lớp sẽđược gộp lại thành hệ thống con, nhưng vẫn giữ được tính độc lập, sự thay đổicủa lớp này không ảnh hưởng đến lớp khác

Tăng cường khả năng sử dụng lại: Vì các đối tượng được mô tả trực tiếpngoài lĩnh vực vấn đề thế giới thực nên có thể sử dụng lại Mỗi đối tượng cóthể tồn tại độc lập hoặc trong sự liên kết với một số với số ít các lớp khác.Ngoài ra phương pháp hướng đối tượng còn có tính kế thừa, cho phép các lớpxây dựng trong mỗi lớp khác do đó chỉ những phần khác nhau và những phầncải tiến được thiết kế và mã hoá Tất cả các chức năng được xây dựng trước đóvẫn được giữ lại và sử dụng lại mà không cần thay đổi

Đối với thế giới công nghệ hướng đối tượng đã triển khai ứng dụng rộngrãi Tuy nhiên, ở Việt Nam thì vẫn còn mới Gần đây, một số cơ quan đã ứngdụng phương pháp mới này vào thiết kế phần mềm nhưng vẫn còn hạn chế

2 Mục đích nghiên cứu và nội dung thực hiện.

2.2 Nội dung thực hiện

 Tìm hiểu ngôn ngữ UML và sử dụng phần mềm Rational Rose để

mô hình hoá hệ thống

 Tìm hiểu một số quy trình trong phân tích thiết kế hướng đối tượng

 Trình bày một số quy trình phân tích thiết kế hướng đối tượng sửdụng UML vào hệ thống quản lý cửa vào ra

2.3 Phương pháp nghiên cứu

Chủ yếu nghiên cứu phương pháp luận, nghiên cứu thử nghiệm ứngdụng công nghệ

Chương 2 Quy trình phát triển phần mềm hướng đối tượng sử dụng UML

Trang 4

Chương này giới thiệu về ngôn ngữ mô hình hoá thống nhất UML, giớithiệu tiến trình phát triển phần mềm RUP và giới thiệu công cụ hỗ trợ quátrình phân tích, thiết kế hướng đối tượng Rational Rose.

Chương 3 Giới thiệu bài toán

Mô tả nội dung bài toán đặt ra, xác định các yêu cầu

Chương 4 Mô hình ca sử dụng

Đi sâu vào việc xác định và mô tả chi tiết ca sử dụng của hệ thống, các tácnhân tham gia vào các ca sử dụng này và xây dựng mô hình ca sử dụng của hệthống

Chương 5 Mô hình phân tích

Phân tích chi tiết các hoạt động trong các ca sử dụng, xây dựng các lớp,phân tích và mối quan hệ giữa chúng

Chương 6 Mô hình thiết kế

Mô tả tương tác giữa các đối tượng khi thực hiện các ca sử dụng bằng cácbiểu đồ tuần tự đối tượng, xác định các lớp, các phương thức, thuộc tính củalớp và mô hình hoá dữ liệu

Chương 7 Mô tả hệ thống cài đặt

Chương này giới thiệu một số giao diện chính của chương trình

Trang 5

CHƯƠNG 2 QUY TRÌNH PHÁI TRIỂN PHẦN MỀM

HƯỚNG ĐỐI TƯỢNG SỬ DỤNG UML

2.1 Giới thiệu ngôn ngữ mô hình hoá thống nhất UML (Unified Modeling Language)

UML là ngôn ngữ mô hình hợp nhất, nó được hiểu như một ngôn ngữthống nhất những xu hướng và hình thái của cuộc cách mạng tri thức tronglĩnh vực công nghệ thông tin Nó là một phương tiện giúp cho các tổ chức cóthể nhận thức một cách tốt nhất lợi thế cạnh tranh thông qua việc nắm bắt,truyền đạt, trao đổi và nâng cao tri thức trong lĩnh vực công nghệ phần mềm.Chính xác hơn UML là ngôn ngữ mô hình hoá chuẩn để thiết kế phần mềmhướng đối tượng, được dùng để đặc tả, trực quan hoá, xây dựng và làm tài liệucho các hệ thống phần mềm[2] UML là ngôn ngữ đồ hoạ với các tập quy tắc

và ngữ nghĩa Các quy tắc và ngữ nghĩa của một mô hình được thể hiện bằngtiếng anh gọi là Ngôn ngữ rang buộc đối tượng (OCL – Object ConstraintLanguage) OCL là ngôn ngữ đặc tả sử dụng logic đơn giản để đặc tả các đặctính của hệ thống

 Hỗ trợ khả năng sử dụng lại và kế thừa ở phạm vi rộng để xây dựngnhững hệ thống phức tạp và nhạy cảm như : hệ thống tự động, hệthống thời gian thực

 Tạo ra ngôn ngữ mô hình hoá sử dụng được cho cả người và máytính

2.1.2 Công dụng của UML

 UML là ngôn ngữ chuẩn để viết kế hoạch chi tiết phần mềm

 Vạch ra cho hệ thống những chức năng chính của nó sử dụng các

mô hình tình huống sử dụng và các tác nhân

 Minh hoạ các use case bằng các biểu đồ tương tác (interactiondiagram)

 Mô tả cấu trúc tĩnh của một hệ thống sử dụng các biểu đồ lớp (classdiagram)

 Mô hình hoá trạng thái của đối tượng bằng các biểu đồ chuyển tiếptrạng thái

 Minh hoạ cấu trúc thi hành vật lý bằng các biểu đồ thành phần vàtriển khai

Mở rộng chức năng bằng các mầu cung cấp sẵn (stereotype)

Trang 6

2.1.3 Các đặc trưng và khả năng của UML

2.1.3.1 UML là ngôn ngữ mô hình đồ hoạ

Ngôn ngữ cung cấp bảng từ vựng và tập các quy tắc để kết hợp các từtrong bảng từ vựng để giao tiếp Ngôn ngữ mô hình là ngôn ngữ có từ vựng vàquy tắc tập trung vào các biểu diễn về mặt vật lý và khái niệm của hệ thống.UML là ngôn ngữ chuẩn công nghiệp để lập kế hoạch chi tiết phần mềm

Ngôn ngữ phải cho phép biểu diễn nhiều khung nhìn (views) khác nhaucủa kiến trúc hệ thống trong suốt quá trình phát triển phần mềm Từ vựng vàquy tắc ngôn ngữ UML cho ta cách thức xây dựng mô hình và đọc mô hình,nhưng không cho biết mô hình nào cần phải được lập và khi nào lập chúng màphải dựa vào quy trình phát triển phần mềm Các biểu diễn mô hình trongUML là các biểu diễn bằng đồ hoạ

2.1.3.2 UML là ngôn ngữ đặc tả có cấu trúc

Đặc tả là xây dựng mô hình chính xác, rõ rang, không nhập nhằng,hoàn thiện và đầy đủ những điểm mấu chốt của vấn đề UML hướng tới đặc tảthiết kế, phân tích và quyết định cài đặt trong quá trình phát triển và triển khai

hệ thống phần mềm

2.1.3.3 UML là ngôn ngữ trực quan

Bằng hệ thống các kí hiệu đồ hoạ và các biểu đồ với các chú giải đikèm, UML cho ta hình dung được hệ thống đang cần xây dựng từ nhiều góc

độ khác nhau

2.1.3.4 UML là ngôn ngữ làm tài liệu

UML hướng tới làm tài liệu kiến trúc hệ thống và các chi tiết của nó.UML cho khả năng biểu diễn yêu cầu, thử nghiệm, mô hình hoá các hoạt độnglập kế hoạch và quản lý sản phẩm

 Thông qua UC biểu đồ trường hợp sử dụng , tác nhân để biết giớihạn và các chức năng chính của hệ thống

 Trong UML UC (User case) được miêu tả bằng biểu đồ logic Sửdụng biểu đồ UC, tác nhân (Actor) có thể chia dự án thành các dự

án nhỏ có thể quản lý được Nhìn vào biểu đồ đó và các tài liệu mô

tả, người phân tích có thể biết hệ thống có khả năng làm gì

 Biểu diễn cấu trúc tĩnh của hệ thống bằng biểu đồ lớp Sử dụng biểu

đồ trình tự và cộng tác để thấy được trình tự và logic toàn bộ hệthống và các thông báo giữa các đối tượng

 Mô hình hoá các hành vi đối tượng bằng biểu đồ chuyển trạng thái

 Phản ánh kiến trúc cài đặt vật lý bằng biểu đồ thành phần và biểu đồtriển khai

 Mở rộng chức năng bằng stereotypes

2.1.4 Mô hình khái niệm của UML

Để hiểu, đọc được UML và tạo ra một số mô hình cơ bản ta phải hìnhdung được mô hình khái niệm của ngôn ngữ Muốn vậy đòi hỏi chúng ta phảinắm được ba vấn đề chính bao gồm :

Các khối cơ bản để xây dựng mô hình

Các quy tắc liên kết

Các cơ chế chung được sử dụng cho ngôn ngữ

2.1.4.1 Các khối cơ bản xây dựng mô hình

Trang 7

Các khối để hình thành mô hình UML gồm ba loại:

Phần tử cấu trúc là các danh từ trong mô hình UML, là bộ phận tĩnh của

mô hình để biểu diễn các thành phần khái niệm hay vật lý

 Lớp (Class)

Lớp là mô tả tập các đối tượng cùng chung thuộc tính, thao tác, quan hệ

và ngữ nghĩa Một lớp cài đặt một hay nhiều mô hình ghép nối, biểudiễn bằng hình chữ nhật có 3 phần tên, thuộc tính và thao tác

Hình 2 Lớp

 Giao diện (Interface)

Giao diện là một tập hợp các thao tác đặc tả một dịch vụ của lớp haythành phần Giao diện mô tả hành vi thấy được từ ngoài của thànhphần Biểu diễn toàn bộ hay một phần hành vi của lớp và được gắn vàolớp hay thành phần thực hiện

Hình 3 Giao diện

 Cộng tác (Collaboration)

Sự cộng tác định nghĩa một tương tác và một bộ các nguyên tắc và cácphần tử khác làm việc cùng nhau để tạo ra một hành vi cộng tác lớnhơn tổng hành vi của các phần tử

Hình 5 Cộng tác

 Ca sử dụng (Use case)

Ca sử dụng là tậo hợp các hành động mà hệ thống thực hiện để đạtđược một kết quả cho tác nhân cụ thể

Tên lớpThuộc tínhThao tácOpen()Close()

Tên cộng tác

Tên Use

Trang 8

Hình 6 Ca sử dụng

 Lớp hoạt động (Active class)

Lớp tích cực là lớp có đối tượng làm chủ một hay nhiều tiến trình hayluồng Đối tượng của nó biểu diễn các thành phần có hành vi đangtương tranh với các thành phần khác Kí pháp đồ hoạ giống lớp thôngthường nhưng biên hình chữ nhật tô đậm

Hình 8 Nút

 Phần tử hành vi

Phần tử hành vi là bộ phận động của mô hình UML Là các động từ của

mô hình, biểu diễn hành vi theo thời gian và không gian Có 2 loại

Trang 9

Hiển thịHình 9 Thông điệp

 Máy trạng thái (State machine)

Máy trạng thái là hành vi chỉ ra trật tự các trạng thái mà đối tượnghay tương tác sẽ đi qua để đáp ứng sự kiện Hành vi của lớp haycộng tác của lớp có thể được xác định bằng máy trạng thái Máytrạng thái kích hoạt nhiều phần tử, bao gồm trạng thái, chuyển tiếp

từ trạng thái này sang trạng thái khác, sự kiện và các hoạt động (đápứng sự kiện)

Hình 10 Máy trạng thái

 Phần tử nhóm

Phần tử nhóm là bộ phận tổ chức của mô hình UML Chỉ có một phần

tử thuộc nhóm này đó là gói (package) Gói là một cơ chế để tổ chức cácphần tử vào các nhóm Các phần tử cấu trúc, phần tử hành vi thậm chí là cảphần tử nhóm khác nhau có thể được đặt vào trong một gói Chỉ tồn tại vàothời điểm phát triển hệ thống chứ không tồn tại vào thời gian chạy chươngtrình

Hình 11 Gói

 Chú thích (Annotational)

Phần tử chú thích là bộ phận chú giải của một mô hình UML Là lời giải thích áp dụng để mô tả các phần tử khác trong mô hình Hay còn gọi là lời ghi chú

 Các quan hệ trong UML

 Quan hệ phụ thuộc (dependency)

Phụ thuộc là quan hệ ngữ nghĩa giữa hai phần tử trong đó thay đổi phần

tử độc lập sẽ tác động đến ngữ nghĩa của phần tử phụ thuộc

 Quan hệ kết hợp (association)

Kết hợp là quan hệ cấu trúc để mô tả tập liên kết (một liên kết là kếtnốigiữa các đối tượng) Khi đối tượng của lớp này gửi / nhận thôngđiệp thì gọi chúng có quan hệ kết hợp

 Khái quát hoá (generalization)

Khái quát hoá là quan hệ đặc biệt hoá / khái quát hoá mà trong đó đối tượng cụ thể sẽ kế thừa các thuộc tính và phương pháp của đối tượng tổng quát hoá

 Hiện thực hoá (realization)

Các đối tượng GUIChờ

Trang 10

Hiện thực hoá là quan hệ ngữ nghĩa giữa giao diện và lớp (hay thànhphần) hiện thực lớp.

2.1.4.2 Kiểu dữ liệu

Kiểu dữ liệu không phải là phần tử mô hình trong UML kiểu dữ liệu cơ

sở là kiểu dữ liệu không có cấu trúc

Có các kiểu sau:

- Boolean: kiểu đếm với true/false

- Biểu thức(Expression): là xâu ký tự có cú pháp

- Tính nhiều (Multiplicity): tập không rỗng của các số nguyên dương và ký

tự *

- Tên (Name): là xâu ký tự có khả năng đẩct phần tử

- Số nguyên (Integer): Là kiểu cơ bản và là phần tử của tập vô hạn các sốnguyên âm và dương

- Xâu (String): là trật tự của các ký tự, được sử dụng làm tên

- Thời gian (Time): xâu ký tự biểu diễn giá trị tuyệt đối hay khoảng tươngđối

- Không lý giải (Unintepreted): là cái gì đó mà ý nghĩa của nó phụ thuộcvào lĩnh vực

2.1.4.3 Biểu đồ trong UML

Biểu đồ là biểu diễn đồ hoạ tập các phần tử mô hình Vẽ biểu đồ đểbiểu diễn hệ thống đang xây dựng dưới các góc độ quan sát khác nhau UMLcho khả năng xây dựng một vài kiểu biểu đồ trực quan để biểu diễn các khíacạnh khác nhau của hệ thống, bao gồm :

 Biểu đồ ca sử dụng (Use case diagram)

Chỉ ra tương tác giữa các UC và các tác nhân UC biểu diễn các chứcnăng hệ thống Tác nhân là con ngườig hay hệ thống khác cung cấp hay thunhận thông tin từ hệ thống đang được xây dựng Chỉ ra tác nhân nào khởiđộngUC và khi nào tác nhân nhận thông tin từ hệ thống

Biểu đồ UC chỉ ra chức năng tổng thể của hệ thống đang phát triển VD:

Modify Existing Order Salesperson

Accounting System Enter New Order

 Biểu đồ tương tác (Interaction diagram)

Biểu đồ tương tác bao gồm hai dạng là biểu đồ trình tự và cộng tác

 Biểu đồ trình tự (sequence)

Biểu đồ trình tự chỉ ra luồng chức năng xuyên qua các UC, nó là biểu

đồ mô tả tương tác giữa các đối tượng và tập trung vào mô tả trật tự các thôngđiệp theo thời gian

Trang 11

Biểu đồ trình tự là biểu đồ tương tác theo trật tự thời gian của các giaotiếp bằng thông điệp giữa các đối tượng Biểu đồ được đọc từ đỉnh xuống đáy Mỗi UC có nhiều luồng dữ liệu Mỗi biểu đồ trình tự biểu diễn một luồng.

 Biểu đồ cộng tác (Collaboration)

Biểu đồ cộng tác chỉ ra các thông tin như biểu đồ trình tự nhưng theocách khác, nó tập trung vào tổ chức cấu trúc các đối tượng gửi và nhận thôngđiệp Biểu đồ cộng tác và trình tự có thể biến đổi qua lại.Biểu đồ cộng tác đốitượng được đặt trong hình chữ nhật , tác nhân là người hình cây như biểu đồtrình tự Biểu đồ cộng tác không quan tâm đến thời gian Các đối tượng giaotiếp với nhau thể hiện bằng đường nối

Biểu đồ cộng tác chỉ ra luồng sự kiện xuyên qua kịch bản của UC Biểu

đồ này cho khả năng dễ quan sát các đối tượng nhưng khó quan sát về trình tựthông tin

: Salesperson

Order Options Form

Order Detail Form

5: Create new, blank order

6: Set the order number, customer, order item

7: Save the order

 Biểu đồ lớp (Class diagram)

Biểu đồ lớp chỉ ra tương tác giữa các lớp trong hệ thống Các lớp đượcxem như kế hoạch chi tiết của các đối tượng Đường nối giữa các phần tử biểu

đồ lớp là quan hệ giao tiếp giữa chúng Phía trái của một số thuộc tính và thaotác có gắn biểu tượng khoá, có nghĩa rằng đó là các thuộc tính và thao tácriêng

Trong biểu đồ lớp có các loại lớp sau;

- Lớp tham số: là lớp được sử dụng để tạo ra họ các lớp khác Còn cótên là lớp mẫu (template)

- Lớp hiện thực: là lớp tham số mà đối số của nó có giá trị

 Biểu đồ chuyển trạng thái (state transition diagram)

Trang 12

o Biểu đồ chuyển trạng thái mô tả vòng đời của đối tượng, từkhi nó được sinh ra đến khi bị phá huỷ Biểu đồ cung cấp cách thức mô hìnhhoá các trạng thái khác nhau của đối tượng Trong khi biểu đồ lớp cung cấpbức tranh tĩnh về các lớp và quan hệ thì biểu đồ chuyển trạng thái được sửdụng để mô hình hoá các hành vi động của hệ thống, chỉ ra hành vi động củađối tượng.

Thông thường không tạo lập biểu đồ chuyển trạng thái cho mọi lớp

mà chỉ cho các lớp phức tạp

o Biểu đồ chuyển trạng thái bao gồm các thông tin về các trạngthái khác nhau của đối tượng, thể hiện các đối tượng chuyển đổi từ trạng tháinày sang trạng thái khác thế nào

o Biểu đồ trạng thái có điểm khởi đầu (hình tròn đen) và vàiđiểm kết thúc (hình tròn đen có đường bao) Các hoạt động trong biểu đồ thìđược đặt trong chữ nhật góc tròn

 Biểu đồ hoạt động (Activity diagram)

Biểu đồ hoạt động là một dạng đặc biệt của biểu đồ trạng thái, nó chỉ ramột luồng các hoạt động diễn ra từ hoạt động này đến hoạt động khác Biểu đồhoạt động hướng đến khung nhìn của hệ thống

 Biểu đồ thành phần (Component diagram)

Biểu đồ thành phần cho ta cái nhìn vật lý của mô hình Cho ta thấy cácthành phần phần mềm trong hệ thống và quan hệ giữa chúng Có hai loại thànhphần đó là thành phần khả thực và thư viện

Biểu đồ thành phần là biểu đồ UML hiển thị các thành phần của hệ thống vàphụ thuộc giữa chúng

 Biểu đồ triển khai (Deployment diagram)

Biểu đồ triển khai chỉ ra bố trí vật lý của mạng và các thành phần hệthống sẽ đặt ở đâu

Thông qua biểu đồ triển khai mà người quản lý dự án, người sử dụng, kiếntrúc sư và đội ngũ triển khai hiểu phân bổ vật lý của hệ thống và các hệ thốngcon sẽ được đặt ở đâu

2.1.5 Kiến trúc hệ thống trong UML

Kiến trúc hệ thống phần mềm được mô tả bằng các khung nhìn Cáckhung nhìn ánh xạ vào tổ chức và cấu trúc hệ thống, mỗi khung nhìn tập trungvào khía cạnh cụ thể của hệ thống

 Khung nhìn ca sử dụng (UC view)

Khung nhìn UC mô tả các chức năng, hành vi và nhiệm vụ của hệthống Khung nhìn này thể hiện mọi yêu cầu của hệ thống, do vậy khung nhìnnày luôn đứng trước mọi khung nhìn khác, được sử dụng để điều khiển, thúcđẩy và thẩm định các công việc của tất cả các giai đoạn trong quá trình pháttriển phần mềm

 Khung nhìn thiết kế (Design view)

Khung nhìn thiết kế cảu một hệ thống biểu diễn tổ chức logic các lớp

và các quan hệ của chúng với nhau Khung nhìn này mô tả cấu trúc tĩnh củacác lớp, các đối tượng và sự liên kết của chúng thể hiện mối liên kết độngthông qua trao đổi các thông điệp và được thể hiện trong các biểu đồ lớp, biểu

đồ đối tượng, biểu đồ tương tác Khung nhìn thiết kế tập trung vào cấu trúc

Trang 13

của hệ thống, từ đó nhận biết được các bộ phận cơ bản cấu thành hệ thống vàthể hiện mọi quá trình trao đổi, xử lý thông tin cơ bản trong hệ thống

 Khung nhìn cài đặt (Implemetation view)

Khung nhìn cài đặt hay còn gọi là khung nhìn thành phần, khung nhìnthực hiện bao gồm các thành phần và các file được sử dụng để kết hợp và đưa

ra các hệ thống vật lý Khung nhìn thành phần bao gồm thành phần, biểu đồthành phần và gói trong đó một vài thành phần là thư viện còn một số khác là

mã trình khả thực (.exe) và thư viện (.dll)

Người quan tâm đến khung nhìn này là người có trách nhiệm quản lý mã trình,dịch chương trình và triển khai ứng dụng

 Khung nhìn triển khai (Employment view)

Khung nhìn này tập trung vào phân bổ vật lý của tài nguyên và phân bổ

nhiệm vụ giữa các tài nguyên Liên quan đến triển khai vật lý của hệ thống,khác với kiến trúc logic

 Khung nhìn tiến trình (Process view)

Biểu diễn phân tách các luồng thực hiện chương trình, đồng bộ giữa

các luồng, phân bổ các đối tượng và lớp cho các luồng thực hiện khác nhau.Khung nhìn triến trình tập trung vào các nhiệm vụ tương tranh với nhau nhưthế nào trong hệ thống đa nhiệm

Trong biểu đồ của Rose không có khung nhìn này

2.2 Giới thiệu tiến trình RUP (Rational Unified Process)

RUP là gì? RUP là quy trình công nghệ phần mềm được phát triển bởihang Rational RUP hỗ trợ các hoạt động giữa các nhóm, phân chia công việccho từng thành viên trong nhóm, trong từng giai đoạn khác nhau của quá trìnhphát triển phần mềm

RUP sử dụng hệ thống ký hiệu trực quan của UML và cũng được phát triểnsong song với UML

Một tiến trình là tập hợp có thứ tự các bước nhằm đạt được một mục đích

có nghĩa là chuyển giao sản phẩm phần mềm phù hợp với yêu cầu nghiệp vụmột cách hiệu quả

UML là một tiến trình độc lập, có thể sử dụng kết hợp với một số tiến trình

kỹ nghệ phần mềm RUP là một cách tiếp cận hướng đối tượng phù hợp vớiUML Mục đích của RUP là cho phép tạo ra sản phẩm phần mềm tốt nhất phùhợp với yêu cầu của người sử dụng với nguồn tài chính và kế hoạch có thể dựtính trước RUP thâu tóm một số áp dụng phát triển phần mềm tốt nhất hiệnnay theo hình thức có thể làm thích hợp cho một phạm vi rộng các dự án vàcác tổ chức

Về phía quản lý, RUP cung cấp một cách tiếp cận có quy tắc về cách phâncông công việc và gán trách nhiệm trong một tổ chức phát triển phần mềm

2.2.1 Đặc điểm của RUP

RUP là một quy trình công nghệ phần mềm hoàn chỉnh, hỗ trợ tăng năngsuất làm việc theo nhóm

RUP là một tiến trình lặp Đối với các hệ thống đơn giản, việc xác địnhtoàn bộ vấn đề, thiết kế toàn bộ giải pháp, xây dựng phần mềm và kiểm thửsản phẩm cuối cùng có thể đươc thực hiện một cách đầy đủ Tuy nhiên, đốivới các hệ thống phức tạp thì việc tiếp cận trực tiếp để phát triển hệ thống là

Trang 14

rất khó thực hiện Hệ thống được xây dựng dựa vào cách tiếp cận lặp thôngqua các chu kỳ là rất linh hoạt Ngoài ra nó cũng cho phép nhận và giải quyếtrủi ro sớm hơn trước và là một tiến trình có thể tuỳ biến

RUP có khả năng tạo, duy trì và quản lý các loại mô hình Các hoạt độngcủa RUP tập trung vào việc tạo ra và bảo trì các mô hình hơn là các tài liệutrên giấy để cực tiểu hoá sự kết hợp việc tạo ra và bảo trì các tài liệu và đồngthời làm cực đại hoá nội dung các thông tin liên quan Các mô hình, đặc biệt làcác mô hình được đặc tả bằng UML, nó cung cấp sự biểu diễn giàu ngữ nghĩacho các phần mềm đang phát triển

Việc phát triển phần mềm thro RUP là lấy kiến trúc hệ thống làm trungtâm Quá trình tập trung vào sự phát triển trước và dựa trên một kiến trúc phầnmềm

Các hoạt động trong RUP được điều khiển bởi ca sử dụng RUP đặt sựquan tâm đặc biệt tới việc xây dựng các hệ thống dựa trên sự hiểu biết về hệthống được chuyển giao sẽ hoạt động như thế nào Các kí hiệu cảu ca sử dụng

và các kịch bản được sử dụng để định ra luồng tiến trình từ việc nắm bắt yêucầu đến việc kiểm thử và để cung cấp các đường đi có thể lần vết thông qua sựphát triển đến hệ thống được chuyển giao

RUP có hướng sử dụng ngôn ngữ UML, hỗ trợ các kỹ thuật hướng đốitượng Mỗi mô hình đều hướng đối tượng Các mô hình RUP dựa trên các kháiniệm của các đối tượng, các lớp và mối quan hệ giữa chúng và chúng sử dụngUML như là những ký hiệu chung

RUP được hỗ trợ bởi nhiều công cụ phát triển phần mềm Và là một quytrình có thể cấu hình được Mặc dù không có một quá trình đơn nào là thíchhợp cho tất cả các tổ chức phát triển phần mềm, nhưng RUP có thể và có thểđược chia theo quy mô để phù hợp với các yêu cầu của dự án trong phạm vi từcác đội phát triển phần mềm nhỏ đến các tổ chức phát triển phần mềm lớn.RUP được xây dựng trên một kiến trúc tiến trình đơn giản và rõ rang, kiến trúcnày mang đến sự tương đồng thông qua các tiến trình và chúng có thể thay đổi

để thích nghi với các tình huống khác nhau RUP có chứa hướng dẫn về cáchđịnh hình các tiến trình cho phù hợp với nhu cầu của một tổ chức

2.2.2 Vòng đời phát triển phần mềm theo RUP

Vòng đời phát triển phần mềm theo RUP được mô tả như sau:

Trang 15

RUP được tổ chức theo 2 chiều hay 2 trục: trục hoành và trục tung.

- Trục hoành: Tổ chức theo thời gian phát triển dự án, thể hiện khía cạnh động

của quy trình Chu kì, các pha, các quá trình lặp và các cột mốc

- Trục tung: Tổ chức theo nội dung công việc, thể hiện khía cạnh tĩnh của quy

trình

Trang 16

RUP xác định sáu luồng công việc chính:

 Mô hình hoá nghiệp vụ

Mục đích cảu luồng công việc này là phát triển một mô hình nghiệp vụ

Ý tưởng là đem lại hiểu biết tốt hơn về toàn bộ quá trình nghiệp vụ sao choứng dụng phần mềm có thể đáp ứng những quá trình nghiệp vụ này một cáchchính xác hơn Mô hình hoá nghiệp vụ thích hợp nhất trong tình huống mà ở

đó hệ thống cần quản lý một lượng lớn thông tin và một nhóm lớn nhữngngười liên quan sử dụng nó Mô hình ca sử dụng nghiệp vụ và mô hình đốitượng nghiệp vụ thông thường được tạo ra như là một phần của luồng côngviệc mô hình hoá nghiệp vụ

 Các yêu cầu

Mục đích của luồng công việc này là phát triển sự hiểu biết đầy đủ vềcác yêu cầu Ý định là đạt được sự nhất trí với khách hàng cũng như cung cấpcác hướng dẫn cho những người phát triển Mô hình ca sử dụng có thể đượctạo ra như một phần của luồng công việc này Một bản mẫu giao diện ngườidùng cũng có thể được tạo ra

 Phân tích và thiết kế

Các yêu cầu thu được trong luồng công việc được phân tích và đượcchuyển thành bản thiết kế Một kiến trúc được phát triển để hướng dẵn nỗ lựcphát triển còn lại Mô hình phân tích và thiết kế cũng sẽ được tạo ra

 Thực hiện

Trong luồng công việc này, bản thiết kế được chuyển sang mã trìnhthực hiện Một chiến lược phân hệ thống thành các hệ thống con được pháttriển Kết quả cuối cùng là một tập các thành phần tạo nên sản phẩm đượcthực hiện và sẽ được kiểm thử

 Kiểm thử

Là quá trình kiểm tra lại toàn bộ hệ thống xem các yêu cầu đã được đápứng chưa, các thành phần đã làm việc như mong đợi chưa, tìm ra các thiếu sótvẫn còn trong sản phẩm Kết quả chính thức của luồng công việc này là môhình kiểm thử và những lỗi được phát hiện trong quá trình kiểm thử

 Triển khai

Trang 17

Luồng công việc này tạo rẩn phẩm sẵn sàng hoạt động cho người sửudụng cuối cùn Các công việc trong bước này bao gồm việc đóng gói phầnmềm, cài đặt, đào tạo người sử dụng, phân phối sản phẩm.

Ngoài sáu luồng chính trên, RUP còn hỗ trợ 3 luồng công việc: quản lýcấu hình và những thay đổi, quản lý dự án và môi trường

Chiều còn lại của RUP là thực hiện việc đưa ra cấu trúc cho các bướclặp trong dự án phần mềm RUP gộp các bước lặp trong bốn pha Mỗi một phakết thúc bằng một mốc đánh dấu một vị trí quyết định mức quản lý

Mỗi pha, bước lặp trong một pha luôn có quan hệ đến nhiều luồng côngviệc Tuỳ thuộc vào bước lặp xác định, một luồng công việc cụ thể có thể tậptrung đối với một pha, trái lại các luồng công việc khác có thể thực hiện vai trònhỏ hơn trong bước lặp này Một bước lặp có thể kéo dài hơn trong luồngcông việc các yêu cầu, trong khi bước lặp sau có thể kéo dài hơn trong luồngcông việc kiểm thử và ngắn hơn trong luồng công việc các yêu cầu

Các pha trong RUP bao gồm:

Pha khởi đầuPha chi tiếtPha xây dựngPha chuyển giaoMỗi pha bao gồm một số bước lặp mỗi bước lặp là một chu kỳ pháttriển hoàn thiện, từ nắm bắt yêu cầu trong phân tích đến thực hiện và kiểm thử

 Pha khởi đầu

Trong pha này, chúng ta xây dựng các trường hợp nghiệp vụ và xácđịnh phạm vi của dự án Các trường hợp nghiệp vụ bao gồm điều kiện dànhthắng lợi, đánh giá rủi ro, dự báo tài nguyên cần thiết và kế hoạch pha của cácmốc chính Kết thúc pha này, chúgn ta xác định mục đích của dự ánvà đưa racác bước cần thiết để tiếp tục phát triển dự án

 Pha chi tiết

Mục đích cảu pha phân tích là phân tích lĩnh vực vấn đề, hình thànhnền móng kiến trúc vững chắc, phát triển kế hoạch dự án và loại bỏ những yếu

tố rủi ro lớn nhất của dự án Để đạt được mục đích này, các quyết định kiếntrúc phải được xây dựng với sự hiểu biết về toàn bộ hệ thống Muốn vậy, phải

mô tả hầu hết các yêu cầu cảu hệ thống Để kiểm tra kiến trúc, cần thực hiệnmột hệ thống minh hoạ kiến trúc đã chọn và thực hiện các ca sử dụng chính

Kết thúc pha này, chúng ta phải xác định được mục đích chi tiết của hệthống, phạm vi, sự lựa chọn kiến trúc, giải pháp cho những rủi ro chính, đồngthời đưa ra quyết định xem có tiếp tục xây dựng dự án nữa không

 Pha xây dựng

Trong pha này, chúng ta phát triển một sản phẩm hoàn thiện sẵn sangchuyển giao cho người sử dụng Các việc phải làm trong pha này là mô tả cácyêu cầu còn lại và các tiêu chuẩn chấp nhận, bổ sung bản thiết kế, hoàn thiện

sự thực hiện và kiểm thử phần mềm Kết thúcc pha này, chúng ta phải xácđịnh xem liệu phần mềm và người sử dụng đã sẵn sang hoạt động hay chưa

 Pha chuyển giao

Trong pha này, chúng ta tiến hành triển khai phần mềm tới người sửdụng Một khi hệ thống được trao cho người sử dụng Một khi hệ thống được

Trang 18

trao cho người sử dụng, các vấn đề thường nảy sinh đòi hỏi phát triển thêm đểđiều chỉnh hệ thống, làm đúng những vấn đề chưa được phát hiện hoặc loại bỏnhững đặc tính đã bị trì hoãn Pha này bắt đầu bằng phiên bản loại hai của hệthống, sau đó thì được thay thế bằng hệ thống sản phẩm.

Kết thúc pha , chúng ta phải đánh giá xem mục đích của dự án đã thoảmãn chưa và liệu chúng ta có nên bắt đầu một chu kỳ phát triển khác

2.3 Giới thiệu phần mềm Rational Rose

Rational Rose là phần mềm công cụ mô hình hoá trực quan mạnh hỗ

trợ phân tích, thiết kế hệ thống phần mềm theo hướng đối tượng Nó giúp ta

mô hình hoá hệ thống trước khi viết mã trình, nó đảm bảo tính đúng đắn, hợp

lý của kiến trúc hệ thống từ khi khởi đầu dự án

Rose hỗ trợ việc mô hình hoá nghiệp vụ, giúp ta hiểu được nghiệp vụquanh hệ thống chúng ta đang xây dựng Rose hỗ trợ quá trình phân tích hệthống bằng cách cho ta thiết kế các ca sử dụng và các biểu đồ ca sử dụng để

mô tả chức năng của hệ thống Rose cho phép thiết kế các biểu đồ tương tác để

mô tả các đối tượng làm việc cùng với nhau như thế nào để thực hiện các chứcnăng hệ thống yêu cầu Các biểu đồ lớp có thể được tạo ra để mô tả các lớptrong hệ thống và mối quan hệ giữa chúng Các biểu đồ thành phần có thểđược phát triển để minh hoạ cách các lớp ánh xạ thành các thành phần thựchiện như thế nào Cuối cùng, biểu đồ triển khai có thể được tạo ra để chỉ rathiết kế mạng cho hệ thống

Mô hình Rose là bức tranh hệ thống, nó bao gồm toàn bộ biểu đồUML, tác nhân, trường hợp sử dụng, đối tượng, lớp, thành phần và các núttriển khai trong hệ thống Nó mô tả chi tiết hệ thống bao gồm cái gì và chúnglàm việc ra sao để người phát triển hệ thống có thể sử dụng mô hình như kếhoạch chi tiết cho việc xây dựng hệ thống Rose hỗ trợ giải quyết vấn đề muônthuở là đội ngũ dự án giao tiếp với khách hang và làm tài liệu yêu cầu

Theo lập trình truyền thống sau khi đã xác lập yêu cầu hệ thống, ngườiphát triển sẽ lấy một vài yêu cầu, quyết định thiết kế và viết mã trình Cáchlàm này dẫn tới nhiều khó khăn nếu muốn hiểu và quản trị toàn bộ hệ thống,

họ khó thấy được quyết định thiết kế đã được làm trước đó Nếu không có tàiliệu thiết kế thì khó đảm bảo rằng hệ thống được xây dựng đúng là hệ thống

mà người sử dụng nghĩ tới Tuy rằng các yêu cầu được làm tài liệu đầy đủ,nhưng thiết kế chỉ tồn tại trong đầu của người phát triển nào đó, người khác sẽkhông có ý tưởng gì về cấu trúc hệ thống Nếu người phát triển chuyển đi nơikhác thì dự án sẽ gặp nhiều khó khăn Phong cách khác phát triển hệ thống làsau khi xác định yêu cầu, các thiết kế phải được làm tài liệu chi tiết Mọingười tham gia phát triển cùng trao đổi quyết định thiết kế trước khi viết mãtrình Do vậy dự án không còn phải lo lắng khi ai đó rời bỏ dự án Ngoàingười phát triển hệ thống quan tâm đến mô hình còn có thành viên khác của

dự án đều có thể thu nhận các thông tin cần thiết từ mô hình

 Khách hàng và quản lý dự án sử dụng các biểu đồ UC để có cáinhìn bao quát về hệ thống và thống nhất với nhau về phạm vi dự án

 Quản lý dự án sử dụng biểu đồ UC và tài liệu để chia nhỏ dự ánthành nhiều tiểu dự án có thể quản lý được

Trang 19

 Thông qua tài liệu UC, các phân tích viên và khách hang thấy đượccác chức năng hệ thống sẽ cung cấp.

 Thông qua tài liệu UC, người làm tài liệu kỹ thuật có thể bắt đầuviết hướng dẫn sử dụng và kế hoạch huấn luyện sử dụng

 Các phân tích viên và người phát triển, thông qua biểu đồ trình tự vàcộng tác, thấy được logic mà hệ thống tuân thủ, các đối tượng trong

hệ thống và các thông điệp giữa các đối tượng

 Đội ngũ kiểm tra chất lượng thu thập thông tin thông qua tài liệu

UC và các biểu đồ tương tác để viết mô tả kiểm tra hệ thống

 Người phát triển sử dụng biểu đồ lớp, biểu đồ biến đổi trạng thái để

có cái nhìn chi tiết về các phần hệ thống và chúng có quan hệ vớinhau như thế nào

 Đội ngũ triển khai sử dụng các biểu đồ thành phần và biểu đồ triểnkhai để thấy được các tệp khả thực (exe) , (DLL) và các thành phầnkhác cần được tạo lập, các thành phần này được triển khai trênmạng như thế nào

 Toàn bộ đội ngũ dự án sử dụng mô hình để đảm bảo rằng các yêucầu có thể được chuyển sang mã trình và ngược lại, mã trình có thểđược chuyển trở lại yêu cầu hệ thống

Rational Rose còn hỗ trợ phát sinh mã khung chương trình trong nhiều ngônngữ lập trình như C++, Visual Basic, Java, XML…

Bên cạnh đó còn hỗ trợ các nhà phân tích, thiết kế trong các lĩnh vực sau:

 Tổ chức mô hình hệ thống thành một hoặc nhiều tệp, được gọi làđơn vị điều khiển và cũng cho phép phát triển song song các đơn thểđiều khiển của mô hình

 Cho phép sao chép hay dịch chuyển các tệp mô hình, các đơn vịđiều khiển giữa các không gian làm việc khác nhau theo cơ chế ánh

Trang 20

CHƯƠNG 3 GIỚI THIỆU BÀI TOÁN

3.1 Mô tả bài toán

Hệ thống quản lý vào ra của một toà nhà được mô tả như sau:

Một toà nhà 4 tầng với tổng diện tích khoảng 5000 m2 Toà nhà đượcchia làm 5 khu vực như sau: hai khu vực để nghiên cứu, một để thí nghiệm,một là khu vực dành cho người quản lý, khu trung tâm gồm các phòng học vàhai hộit trường lớn

Toà nhà này có thể chứa khoảng 500 người vào ra mỗi ngày trong đóphần lớn là sinh viên, giáo viên, nhà nghiên cứu, quản lý, nhân viên hànhchính, làm việc chuyên môn và đông đảo khách đến làm việc, tham quan

Sau khi có rất nhiều đồ đạc bị mất, ban quản lý toà nhà đã quyết địnhhạn chế việc đi lại trong toà nhà bằng cách dùng cửa tự động bằng hệ thốngmáy tính.Việc đóng mở cửa được kiểm soát tự động bằng máy đọc thẻ đặt gầncửa Thẻ này chỉ được cấp cho những người cần đi qua các khu vực để làmviệc Quyền đi lại được phân phối theo nhóm người và nhóm cửa Mỗi người

và mỗi cửa phải luôn thuộc về một nhóm nào đó, và là một thành viên củanhóm đó, thậm chí chỉ có một người thuộc nhóm đó

Một nhóm cửa có thể bao gồm nhiều cửa phân bố khắp toàn nhà nhưngviệc quản lý vào ra thì chỉ có nhóm cửa là quan trọng còn đường đi và nhữngdịch chuyển xung quanh là không được kiểm soát Một cửa không thể là thànhviên của hơn một nhóm Tuy nhiên một người thì có thể là thành viên của vàinhóm khác nhau Vì thế quyền vào cửa của họ là sự kết hợp quyền trong nhóm

mà họ thuộc về

Quyền truy nhập được thiết lập dựa trên mỗi nhóm người và các nhómcửa dưới sự ràng buộc về thời gian Quyền này được thiết lập trong chu kỳmột năm với lịch biểu được lập cho từng tuần Sẽ có một số ít quyền vượt quáthời gian quy định, lịch biểu được lập theo tuần điển hình và quyền trong tuần

đó là không thay đổi Người quản trị có thể tạo lập nhiều tuần điển hình mà họmuốn và tiếp theo sẽ tự động thay đổi các lịch sử dụng chúng Mặt khác việcthay đổi lịch biểu bao gồm các ngày nghỉ lễ, tết không ảnh hưởng tới tuần điểnhình

 B¶ng sau tr×nh bµy mét tuÇn ®iÓn h×nh Nh÷ng vïng mµu x¸m t¬ngøng víi c¸c kho¶ng thêi gian kh«ng cho phÐp ®i vµo

Trang 21

 Hệ thống kiểm soát vào ra phải vận hành càng độc lập càng tốt,mặc dù ngời điều hành phải chịu trách nhiệm về việc cấu hình lúcban đầu và cập nhật các mẩu thông tin đa dạng cho phép định rõnhóm ngời và cửa Đội bảo vệ có một màn hình kiểm soát, và đợcthông báo về bất kỳ những cố gắng mở cửa không thành công Báo

động đợc truyền đi với sự trì hoãn ngắn: thông tin đợc cập nhậttrên màn hình kiểm soát từng phút một

 Giao diện ngời dùng phải trợ giúp họ định rõ các yêu cầu mộtcách chính xác Những yêu cầu hợp lệ và các giá trị đa vào đợc

đọc từ danh sách một cách có hệ thống và giúp xác định miền giátrị hợp lệ

 Cập nhật, sửa đổi thụng tin nhúm cửa: Quản trị yờu cầu hiển thịdanh sỏch nhúm cửa Sau đú lựa chọn một nhúm cửa Hệ thống hiểnthị thụng tin bao gồm : Tờn nhúm, danh sỏch cửa trong nhúm, danhsỏch nhúm người được chấp nhận truy nhập Quản trị sửa đổi thụngtin hệ thống ghi nhận thụng tin

 Cập nhật người dựng: Quản trị yờu cầu danh sỏch người dựng hệthống hiển thị tất cả những người đó đăng kớ vào hệ thống Quản trịchon người, Hệ thống hiển thị thụng tin bao gồm: Họ, tờn, số điệnthoại, số thẻ, danh sỏch nhúm mà người đú là thành viờn.Quản trịcập nhật thụng tin Và hệ thống ghi nhận thụng tin

 Cập nhật thụng tin nhúm người: Hệ thống hiển thị tất cả nhúm theoyờu cầu quản trị chọn nhúm, hệ thống hiển thị thụng tin sau: Tờnnhúm, danh sỏch thành viờn nhúm, danh sỏch nhúm được truy nhập.quản trị cập nhật và hệ thống ghi nhận thụng tin

 Tỡm kiếm người dựa vào thẻ: Quản trị nhập số thẻ cần tỡm, hệ thốnghiển thị thụng tin về người đú bao gồm: họ, tờn, số điện thoại, sốthẻ, danh sỏch nhúm của người đú

 Tỡm kiếm cửa mà một người được phộp vào/ra: quản trị chọn người

mà hệ thống hiển thị, hệ thống hiển thị danh sỏch cửa mà người đúđược phộp, sau đú chọn một cửa, hệ thống hiển thị thụng tin cửa:Trạng thỏi cửa, khoảng thời gian mở cửa …

Trang 22

 Tìm kiếm nhóm người: Quản trị yêu cầu hệ thống đưa ra danh sáchngười sau đó chọn ra một người, hệ thống hiển thị danh sách nhóm

 Sửa đổi thông tin tuần điển hình: Quản trị yêu cầu danh sách cáctuần điển hình, chọn ra một tuần với các thông tin hiển thị: Têntuần, mô tả tuần, các ngày trong tuần được chia ra thành khoảngthời gian, tình trạng truy nhập Sửa đổi và ghi nhận

 Hiển thị quyền truy nhập cho từng người và từng cửa: Quản trị yêucầu danh sách tất cả các cửa và tất cả mọi người, hệ thống hiển thịtheo yêu cầu và quản trị chọn cửa và chọn người, hệ thốnghiển thịthông tin: Lịch mở cửa trong tuần, thời gian cho phép

3.2.2 Theo dõi và giám sát

Chức năng này bao gồm các bước chủ yếu của quá trình theo dõi vàkiểm tra và được thực hiện bởi những người bảo vệ của toà nhà

 Đăng nhập hệ thống: Bảo vệ đăng nhập vào hệ thống hệ thống xácminh và kết nối

 Báo cáo công việc: Bảo vệ chỉ rõ ngày bắt đầu và kết thúc để đềnghị sắp xếp Bảo vệ yêu cầu: hệ thống hiển thị sự kiện theo lịch biểu,bảo vệ lựa chọn một cách hiển thị

 Lọc bỏ sự kiện: Bảo vệ xác định thời gian bắt đầu và kết thúc đểlọc bỏ Hệ thống loại bỏ sự kiện được xác định

 Báo cáo báo động: Bảo vệ xác định thời gian trì trệ trong vòng 60phút, cho đến khi hệ thống hoạt động bình thường và có báo động mới

 Mở cửa: bảo vệ yêu cầu danh sách cửa, hệ thống hiển thị và bảo vệchọn cửa hệ thống hiển thị thông tin: Trạng thái cửa, số người trongphòng, sự việc xảy ra Bảo vệ phá cửa để mở, hệ thống ghi nhận sự việcđó

 Báo cháy: Khi hệ thống phát hiện ở nơi nào đó có sự cố hoả hoạnthì hệ thống tự động mở tất cả các cửa

3.2.3 Điều khiển truy nhập vào ra

Chức năng này được thực hiện bởi người sử dụng thẻ

Một người muốn vào cửa , họ dùng thẻ truy nhập vào hệ thống, hệ thống xác định có được phép hay không, nếu thành công thì mở cửa và người đó được phép qua

Bảng chức năng nghiệp vụ:

Trang 23

Chức năng Phân loạiR1: Configuration

R1.3 Cập nhật thông tin nhóm cửa

R1.4 Cập nhật thông tin người

R1.5 Cập nhật thông tin nhóm người

R1.6 Tìm kiếm người dựa vào thẻ

R1.7 Tìm kiếm cửa một người được phép qua

R1.8 Tìm kiếm nhóm người

R1.9 Tìm kiếm người thuộc về một nhóm

R1.10 Cập nhật thông tin nhóm người được phép vào

một nhóm cửa

R1.11 Cập nhật thông tin tuần điển hình

R1.12 Cho hiển thị quyền truy nhập vào hệ thống cho

Các tác nhân chính tham gia vào hệ thống bao gồm:

Trang 24

 Người sử dụng thẻ: Là người được cấp thẻ để có thể đi qua các cửa củatoà nhà.

 Bảo vệ: là người giám sát theo dõi hoạt động của những người qua cửa

 Quản trị hệ thống: Là người giám sát hoạt động của hệ thống, điều hành

hệ thống, có thể cập nhật mọi thông tin của hệ thống về người và cửavào ra

4.2 Xác định ca sử dụng

Hoạt động của hệ thống được mô tả bởi biểu đồ các ca sử dụng sau:

Configuration

Nguoi su dung the Truy nhap he thong

Theo doi va giam sat Nguoi quan tri

Bao ve

Dang nhap he thong

4.3 Mô tả chi tiết các ca sử dụng

4.3.1 Ca sử dụng “Cấu hình”

Ca sử dụng này được người quản trị sử dụng khi đăng nhập vào hệ thống đểnhận dạng người, cửa và cập nhật thông tin, tìm kiếm thông tin mà họ cần quatâm

Được mô tả như biểu đồ sau:

Trang 25

Nguoi quan tri

Dang nhap he thong Cap nhat thong tin cua Cap nhat nhom cua

Cap nhat thong tin nguoi

cap nhat nhom nguoi

Tim kiem nguoi can cu vao the Tim kiem nhom nguoi

Tim kiem cua mot nguoi duoc truy

nhap

Tim kiem nguoi thuoc nhom

Hien thi quyen truy nhap tung nguoi va tung cua

Cap nhat tuan dien hinh

Tác nhân: Người quản trị

Mục đích: Kiểm tra nhận dạng người đăng nhập vào hệ thống

Mô tả khái quát: Người quản trị đăng nhập vào hệ thống để hệ thống nhận

dạng và kết nối cho phép người quản trị thực hiện nhiệmvụ

Chức năng tham chiếu: R1.1.1 R1.1.2

Diễn biến sự kiện:

Hành động tác nhân Hệ thống phản hồi Dữ liệu liên quan

1 Người quản trị đăng

nhập vào hệ thống

1 Hệ thống nhậndạng và kết nối

Người quản trị

Ngoại lệ: Nếu đăng nhập không thành công thì hệ thống yêu cầu đăng nhậplại

4.3.1.2 Ca sử dụng “Cập nhật thông tin cửa vào ra”

Tên: Cập nhật thông tin cửa vào ra

Tác nhân: Người quản trị

Mục đích: Người quản trị có thể them, sửa, xoá thông tin về cửa vào ra

Mô tả khái quát: Người quản trị vào hệ thống và hệ thống nhận dạng, nếu

thành công thì hệ thống kết nối và cho phép người quản trịthực hiện quyến của mình

Chức năng tham chiếu: R1.2.1,R1.2.2

Diễn biến sự kiện:

Trang 26

Hành động tác nhân Hệ thống phản hồi Dữ liệu liênquan

1 Người quản trị yêu

cầu danh sách cửa 2 Hệ thống hiển thịdanh sách cửa Danh mục các cửa

3 Người quản trị chọn

một cửa 4 Hệ thống đưa rathông tin chi tiết

của cửa đó

Thông tin cửa

5 Người quản trị sửa

đổi thông tin 6 Hệ thống ghinhận thông tin đã

được sửa đổi

4.3.1.3 Ca sử dụng “Cập nhật thông tin Nhóm cửa”

Tác nhân: Người quản trị

Mục đích: Sửa đổi thông tin của nhóm cửa nào đó

Mô tả khái quát: Người quản trị kết nối vào hệ thống, yêu cầu hệ thống

hiển thị danh sách các nhóm cửa , sau đó chọn ra một nhómcửa và sửa đổi thông tin

Chức năng tham chiếu:R1.3

Diễn biến sự kiện:

Hành động tác nhân Hệ thống phản hồi Dữ liệu liên quan

1 Người quản trị yêu

cầu hệ thống hiển đưa

ra danh sách nhóm cửa

2 Hệ thống hiển thịdanh sách nhómcửa

Danh sách nhóm cửa

3 Người quản trị chọn

một nhóm 4 Hệ thống hiển thịthông tin nhóm Thông tin nhóm cửa

5 Người quản trị sửa

đổi thông tin 6 Ghi nhận thôngtin vừa sửa

4.3.1.4 Ca sử dụng “Cập nhật thông tin từng người”

Mục đích: Người quản trị có thể thay đổi thông tn của từng người

Mô tả khái quát: Người quản trị vào hệ thống, yêu cầu hệ thống đưa ra một

danh sách người vào ra hệ thống hiển thị danh sách, chọn

ra một người và sửa đổi thông tin

Chức năng tham chiếu:R1.4

Diễn biến sự kiện:

Hành động tác nhân Hệ thống phản hồi Dữ liệu liên quan

1 Người quản trị yêu

5 Người quản trị sửa

đổi thông tin người đó 6 Hệ thống ghi nhận

4.3.1.5 Ca sử dụng “Cập nhật thông tin nhóm người”

Trang 27

Tác nhân: Người quản trị

Mục đích: Người quản trị có thể thay đổi thông tin nhóm người

Mô tả khái quát: Người quản trị yêu cầu danh sách nhóm người, hệ thống

hiển thị thông tin chi tiết và người quản trị sửa đổi thôngtin

Chức năng tham chiếu: R1.5

Diễn biến sự kiện:

Hành động tác nhân Hệ thống phản hồi Dữ liệu liên quan

1 Người quản trị yêu

cầu hệ thống đưa ra

danh sách nhóm người

2 Hệ thống hiển thịdanh sách nhómngười

Danh sách nhómngười

3 Người quản trị chọn

một nhóm

4.Hệ thống hiển thịthông tin nhóm ngườiđó

Thông tin nhóm

5 Người quản trị sửa

đổi thông tin

6 Hệ thống ghi nhậnthông tin

4.3.1.6 Ca sử dụng “Tìm kiếm người dựa trên thẻ”

Mục đích: Người quản trị có thể biết thông tin của một người dựa vào

thẻ của họ

Mô tả khái quát: Người quản trị nhập số thẻ, hệ thống hiển thị thông tin của

người sở hữu thẻ đó

Chức năng tham chiếu: R1.6

Diễn biến sự kiện:

Hành động tác nhân Hệ thống phản hồi Dữ liệu liên quan

1 Người quản trị nhập

số thẻ vào hệ thống

2 Hệ thống hiển thị

ra màn hình thông tincủa người đó

Thông người sửdụng thẻ

4.3.1.7 Ca sử dụng “Tìm kiếm cửa mà một người được quyền truy nhập”

Mục đích: Người quản trị tìm xem những cửa nào mà mỗi người được

phép đi qua

Mô tả khái quát: Người quản trị yêu cầu hệ thống hiển thị danh sách người,

sau đó chọn ra một người, hệ thống sẽ hiển thị những cửa

mà họ được qua với đầy đủ thông tin chi tiết

Chức năng tham chiếu: R1.7

Diễn biến sự kiện:

Hành động tác nhân Hệ thống phản hồi Dữ liệu liên quan

1 Người quản trị yêu cầu

danh sách người

2 Hệ thống hiển thịdanh sách

Danh sách người

3 Người quản trị chọn

một người

4 Hệ thống hiển thịdanh sách cửa

Danh sách cửa

Ngày đăng: 24/04/2013, 16:20

HÌNH ẢNH LIÊN QUAN

Hình 1. Cách tiếp cận hướng đối tượng. - phân tích thiết kế hướng đối tượng sử dụng UML
Hình 1. Cách tiếp cận hướng đối tượng (Trang 2)
Hình : Sơ đồ gói ứng dụng - phân tích thiết kế hướng đối tượng sử dụng UML
nh Sơ đồ gói ứng dụng (Trang 54)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

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

w