Giáo trình Phân tích và thiết kế hệ thống thông tin: Phần 2 - Trần Đình Quế

105 27 0
Giáo trình Phân tích và thiết kế hệ thống thông tin: Phần 2 - Trần Đình Quế

Đ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

Giáo trình Phân tích và thiết kế hệ thống thông tin - Phần 1 trình bày các bước trong thiết kế hệ thống, chọn topo hệ thống mạng cho thiết kế, một số chủ đề về công nghệ, thiết kế đồng thời và an toàn hệ thống. Phần 2 giáo trình cũng trình bày ánh xạ mô hình lớp phân tích thành mô hình lớp thiết kế, xử lý lưu trữ với cơ sở dữ liệu quan hệ, một số vấn đề liên quan đến giao diện người sử dụng, thiết kế các dịch vụ nghiệp vụ, sử dụng pattern, framework và thư viện. Mời các bạn cùng tham khảo.

CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG 5.1 GIỚI THIỆU Mục đích pha phân tích hình dung nghiệp vụ cần gì, mục đích pha thiết kế định cách xây dựng hệ thống Hay nói cách khác, phân tích nhằm trả lời câu hỏi “cái gì”, cịn thiết kế để trả lời câu hỏi “như nào” Hoạt động pha thiết kế tiến hóa tập biểu diễn phân tích thành tập biểu diễn thiết kế Trong pha này, nhóm dự án xem xét cẩn thận hệ thống hoạt động tích hợp mơi trường hệ thống thời Nhóm cần phải xem xét nhiều chiến lược thiết kế định chiến lược sử dụng Ví dụ, xây dựng từ đầu, mua địa phương hóa hay để bên xây dựng phần IT Mặc dù ranh giới hai pha phân tích thiết kế khơng rõ ràng, rõ rang tiến trình hoạt động pha cần ý tưởng hoàn toàn khác Sự P T mờ nhạt ranh giới cố ý phương pháp luận phát triển lặp tăng dần RUP, ngẫu nhiên nhóm phát triển phần mềm chưa có kinh nghiệm Nhiều kinh nghiệm nghiên cứu việc tách biệt rõ ràng phân tích thiết kế ý tưởng tốt nhằm chắn vấn đề hiểu rõ ràng trước xem xét giải pháp Khơng có quy tắc cho việc chuyển từ mơ hình phân tích sang mơ hình thiết kế Vì q trình có tính sáng tạo liên quan đến kinh nghiệm nhóm phát triển, có cơng nghệ để sử dụng lại, sở thích cá nhân…Một hiểu rõ sản phẩm pha xác định yêu cầu phân tích, người thiết kế bắt đầu với tờ giấy trắng để tiến hành pha thiết kế Nghĩa không quan tâm việc có tương thích đối tượng phân tích đối tượng thiết kế, mà chú trọng vào vấn đề thiết kế có dẫn tới giải pháp hiệu không Trong pha thiết kế, chúng ta phải đề xuất công nghệ lựa chọn cho thiết kế xem xét mức độ tác động lựa chọn tới thư viện, mẫu (pattern) khn mẫu (framework) có sẵn chúng ta chí ghi chú UML chi tiết mà dùng Rõ ràng thiết kế tổng qt gắn bó với cơng nghệ cụ thể Điều giảm bớt yêu cầu nhà phát triển phải thành thạo nhiều công nghệ đảm bảo chúng ta tránh công nghệ lỗi thời Tuy nhiên, 123 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG mặt trái việc thiết kế tổng quát chúng ta khơng lợi dụng lợi ích từ cơng nghệ cụ thể mà đem lại Lịch sử chứng minh nhiều công nghệ xuất biến thường xuyên lý thuyết làm sở cho cơng nghệ Ví dụ, nhiều cơng nghệ đời dựa ngơn ngữ lập trình COBOL, Fortran, Pascal, Ada, Modula, PL/I, C, C++, Smalltalk, Eiffel, C# Java, công nghệ bị chi phối bới hai lý thuyết lập trình hướng cấu trúc lập trình hướng đối tượng Vì vậy, hợp lý cho “tổng qt an tồn cụ thể” IT Vì phát triển phần mềm hướng đối tượng tiến hành theo kiểu tăng dần, nên chúng ta khơng hy vọng có thiết kế đầy đủ hệ thống từ đầu Vì thế, lúc bắt đầu pha thiết kế, chúng ta cần lên kế hoạch cho phần hệ thống mà chúng ta thiết kế Những mức ưu tiên ca sử dụng giúp chúng ta đánh dấu ca sử dụng cần thiết Như trình bày Chương 3, ca sử dụng màu xanh phải thiết kế đầy đủ ngay; ca sử dụng màu vàng chưa cần thiết kế phải hỗ trợ; ca sử dụng màu đỏ thiết kế, chúng nên hỗ trợ (“được thiết kế” có nghĩa giải pháp đưa ra; “được hỗ trợ” có nghĩa có giải pháp hợp lý để dự phòng sau P T Trong thực tiễn, chúng ta tìm kiến trúc hệ thống mà hỗ trợ giải pháp hiệu quả, thực tế cho tất ca sử dụng Khi đó, chúng ta tiến hành thiết kế chi tiết cho hầu hết ca sử dụng quan trọng thiết kế phần cho ca sử dụng quan trọng Giữa tiến trình lặp lại, chúng điều chỉnh mức ưu tiên cho hợp lý Phần cịn lại Chương trình bày bước pha thiết kế sau tập trung xem xét cách tiến hành bước giai đoạn thiết kế hệ thống Giai đoạn thiết kế hệ thống trình bày chương 5.2 CÁC BƯỚC TRONG PHA THIẾT KẾ Pha thiết kế chia làm hai giai đoạn: Thiết kế hệ thống (hay Thiết kế kiến trúc hay Thiết kế tổng thể) thiết kế hệ thống (hay Thiết kế chi tiết) Thiết kế hệ thống bắt phải có nhìn tổng qt tác vụ trước sâu vào thiết kế chi tiết hệ thống (sẽ giới thiệu Chương 6) Thật ra, phương pháp hướng đối tượng, khơng có ranh giới thiết kế hệ thống thiết kế chi tiết việc phân biệt hai giai đoạn cần thiết Thiết kế bao gồm hoạt động sau đây: Thiết kế hệ thống Lựa chọn công nghệ mạng cho hệ thống Thiết kế tương tranh an toàn-bảo mật 124 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG Phân rã hệ thống thành hệ thống Xây dựng biểu đồ gói Thiết kế hệ thống Xây dựng biểu đồ lớp thiết kế Xây dựng biểu đồ Xây dựng lược đồ sở liệu 5.3 LỰA CHỌN CÔNG NGHỆ MẠNG CHO HỆ THỐNG Việc lựa chọn công nghệ mạng cách hệ thống phân rã thành thành phần logic vật lý riêng biệt Việc phân rã gọi hình trạng hệ thống (system topology) Để hiểu rõ hình trạng mạng, trước hết chúng ta khảo sát sơ lược lịch sử cấu trúc mạng sau đó, xem xét cấu trúc mạng khác kiểu máy khách, ứng dụng client- server với ứng dụng phân tán khác Cuối xem xét biểu diễn hình trạng hệ thống đồ triển khai UML IT 5.3.1 Kiến trúc mạng đơn tầng hai tầng Những năm 1940, máy tính thiết bị nguyên khối lớn, có khả chạy P T chương trình thời điểm Sau đó, cải tiến thành Mainframe – có khả chạy đồng thời nhiều chương trình, điển hình chương trình người dùng chương đợt (một đợt bao gồm tập liệu giống chạy qua chương trình theo tuần tự) Mainframe có khả xử lý nhiều chương trình lúc chia thời gian cho CPU chạy chương trình chương trình tới lượt thực thi Mơ hình mainframe xem mơ hình kiến trúc tầng (one-tier Architecture) Nghĩa là, chương trình đưa vào, có mức hoạt động tính tốn chạy máy Kiến trúc tầng khơng có mạng, có dây kim loại mảnh nối từ thiết bị tới mainframe, không tạo thành mạng theo nghĩa Ưu điểm mainframe cài đặt đơn giản, nhược điểm chúng tăng khả tính tốn cách mua thêm mainframe mới, nâng cấp cũ Ngày nay, kiến trúc mạng sử dụng cho hệ thống nghiệp vụ cỡ lớn Kiến trúc hai tầng (two tier architecture) hệ kiến trúc phổ biến vào năm 1970 Ý tưởng kiến trúc nhằm tăng cường khả xử lý máy khách máy tính trung tâm khơng phải thực tất tiến trình Như vậy, chúng ta thêm hay thay máy khách rẻ máy tính trung tâm Các máy khách thường máy tính mini hay workstation, truy nhập 125 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG vào máy tính midi hay file server Sự kết hợp máy tính mini máy tính midi tương tự kết hợp workstation file server Với kiến trúc hai tầng, chương trình liệu phải chuyển từ máy tính trung tâm sang máy khách Điều địi hỏi phải có kết nối nhanh hai bên điều dẫn đến ý tưởng đại mạng Mạng tập hợp máy chủ (host) kết nối với đường giao tiếp tốc độ cao Khi có mạng máy tính, chúng ta thêm máy trung tâm máy khách cách dễ dàng nhằm nâng cao lực tính tốn Các máy khách quản lý chương trình liệu cách linh hoạt, mà không cần nhờ vào người quản trị hệ thống Nếu chúng ta cho phép máy khách lưu trữ chương trình liệu, chúng ta cần giải số vấn đề liệu thay đổi chương trình nâng cấp, máy khách bị lỗi Vì vậy, nên hạn chế lưu trữ chương trình liệu máy khách IT Kiến trúc hai tầng mang lại khả đồ họa tinh vi hệ thống cửa sổ cho máy khách, thay cho mơ hình có văn máy điện báo đánh chữ Kiến trúc hai tầng sử dụng rộng rãi chủ yếu cho hệ điều hành Unix máy chủ quản lý tệp (file server) T Hoạt động mơ hình kiến trúc hai tầng P Máy khách (Client) máy chủ (Server) trao đổi thông tin với dạng thông điệp (Message) Thông điệp gởi từ máy khách sang máy chủ gọi thông điệp yêu cầu (Request Message) mô tả công việc mà phần máy khách muốn máy chủ thực Hình 5.2: Kiến trúc chương trình Client-Server Mỗi máy chủ nhận thơng điệp yêu cầu, máy chủ phân tích yêu cầu, thực thi công việc theo yêu cầu gởi kết máy khách (nếu có) thơng điệp trả lời (Reply Message) Khi vận hành, máy chủ phục vụ cho nhiều máy khách Mỗi ứng dụng mơ hình máy khách - máy chủ (client-server) phải có Giao thức (Protocol) riêng để trao đổi thông tin, phối hợp công việc máy khách máy chủ Giao thức qui định số vấn đề sau:  Khuôn dạng loại thông điệp 126 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG  Số lượng ý nghĩa loại thông điệp  Cách thức bắt tay, đồng hóa tiến trình truyền nhận máy chủ máy khách… Thông thường phần máy khách đảm nhận chức giao diện người dùng, tạo form nhập liệu, thông báo, biểu báo giao tiếp với người dùng; phần máy chủ đảm nhận chức xử lý lưu trữ liệu Mơ hình tạo điều kiện dễ dàng cho việc bảo trì, chia sẻ, tổng hợp liệu tồn cơng ty tổ chức Các chức hoạt động nghiệp vụ cài đặt phần máy khách phần máy chủ tạo hai loại kiến trúc máy khách-máy chủ máy khách nặng (Fat Client) máy khách nhẹ (Thin Client) Máy khách nặng (Fat Client) Máy khách nhẹ (Thin Client) IT Theo mơ hình này, hoạt động nghiệp vụ cài đặt bên phía máy khách phần máy chủ thực chức chủ yếu truy vấn lưu trữ thơng tin Mơ hình có ưu điểm tạo giao tiếp mạng liệu tạm thời q trình tính tốn lưu máy khách nên giảm tắc nghẽn Tuy nhiên, có số nhược điểm chi phí đầu tư phần cứng cho máy khách cao khó nâng cấp phải cài đặt lại tồn máy máy khách muốn nâng cấp hệ thống P T Ngày nay, doanh nghiệp thường sử dụng rộng rãi mô hình Máy khách – máy chủ (client-server) Trong mơ hình này, tất máy tính để bàn nhân viên (máy khách) kết nối vào máy tính trung tâm (máy chủ) Máy chủ đóng vai trò kho tài nguyên (dữ liệu, thiết bị phần cứng số dịch vụ mạng khác…) phục vụ cho tất máy khách nối với Bên cạnh khả xử lý máy chủ, máy khách có khả xử lý (thường yếu máy chủ) lưu trữ riêng để phục vụ cho tác vụ không liên quan đến mạng soạn thảo văn bản, bảng tính, vẽ hình…Tuy nhiên, doanh nghiệp, ứng dụng phi mạng máy khách thường giống cài đặt Microsoft Windows, Microsoft Word, Microsoft Excel, chương trình nghe nhạc, xem phim… Do đó, cơng nghệ máy khách nhẹ đưa nhằm đáp ứng nhu cầu “máy tính người dùng có cấu hình tối thiểu” Công nghệ máy khách nhẹ tương tự công nghệ client/server, điểm khác quan trọng tất lực xử lý lẫn lưu trữ tồn mạng máy tính tập trung vào máy chủ Mọi máy khách hình, bàn phím chuột Mọi chương trình hay phần mềm người dùng lưu trữ máy máy chủ thi hành CPU máy chủ Mỗi có người sử dụng đăng ký vào hệ thống Người “cấp” cho máy tính ảo để người dùng chọn phần mềm hệ điều hành (đã có 127 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG sẵn máy chủ) mà họ ưa thích Lợi điểm cơng nghệ vừa an tồn vừa kinh tế nên ngày khẳng định Tuy nhiên, mơ hình có số nhược điểm tạo nhiều thông điệp trao đổi máy khách chủ đó, yêu cầu máy chủ phải có cấu hình cao để tránh dẫn đến khả tắc nghẽn 5.3.2 Kiến trúc ba tầng Kiến trúc ba tầng (Hình 5.4) trở nên phổ biến vào năm 1990 cách chia hệ thống thành ba phần: giao diện người dùng, logic chương trình lưu trữ liệu Trong kiến trúc này, chương trình phân rã ba tầng khác nhau: Tầng giao diện người dùng (User Interface) hay tầng máy khách thể giao diện mà người sử dụng nhập yêu cầu, liệu xem kết Nghĩa xử lý việc giao tiếp với người sử dụng, nhập xuất, … mà khơng thực việc tính toán, kiểm tra, xử lý, hay thao tác liên quan đến sở liệu  Tầng ứng dụng (Application Server, Business Rule) biết tầng logic nghiệp vụ hay tầng dịch vụ để chạy chương trình đa luồng Tầng thực xử lý chức chính, kiểm tra ràng buộc…Việc thực độc lập với cách thiết kế cài đặt giao diện thông tin để xử lý lấy từ tầng giao diện  Tầng liệu (Database Server, Data Storage) nhằm lưu trữ liệu cung cấp chế an toàn cho việc truy nhập đồng thời với giúp đỡ hệ quản trị sở liệu Tầng thực công việc liên quan đến liệu mà phần mềm cần đến đọc, ghi… T IT  P Các ưu điểm kiến trúc tầng:  Tạo điều kiện dễ dàng phát triển: Bất kì hệ thống lớn bao gồm ba phần: logic chương trình, giao diện người dùng chế quản lý hiệu năng/bảo mật liệu Việc phân chia hệ thống thành phần tạo điều kiện cho người lập trình thực công việc cách đơn giản  Sử dụng máy tính hiệu hơn: Tùy theo tầng chúng ta sử dụng máy tính cho phù hợp Ví dụ, giao diện người dùng nhiệm vụ đơn giản khơng địi hỏi máy tính lớn; việc thực thi logic chương trình yêu cầu sử dụng CPU, nhớ, khơng địi hỏi dung lượng đĩa q lớn, sử dụng máy tính server; quản lý liệu yêu cầu nhiều khả tính tốn, dung lượng đĩa, sử dụng máy server hay mainframe  Cải tiến hiệu năng: nhân rộng máy lớp liệu lớp để lan truyền tính tốn (cân tải), tầng chun mơn hóa dễ dàng tối ưu hóa 128 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG Nâng cao tính bảo mật: Thường hệ thống ba tầng triển khai cho máy client chạy mạng Internet Vì vậy, chúng ta phải có chế bảo mật nghiêm ngặt để bảo vệ máy chủ, chương trình liệu Với kiến trúc ba tầng, chúng ta đặt chế bảo mật tầng nhằm tránh cơng vơ tình hay cố ý từ bên ngồi Tầng liệu sau tầng giữa, chúng ta không cần phải bảo mật cho phần cứng hay giao tiếp chúng Điều giúp tầng liệu chạy với tốc độ cao dễ thao tác  Hạn chế đầu tư: Đối với trường hợp chúng ta có mainframe lưu trữ xử lý liệu nhiều năm, có cố chúng ta không muốn phải vứt bỏ tất làm lại từ đầu Kiến trúc ba tầng mạng phương án thích hợp để giải vấn đề Ta sử dụng tầng làm trung gian client kết nối với mainframe, server kết nối tới client  Tính linh hoạt: Được thể rõ qua việc chúng ta thêm bớt máy tính hệ thống hệ thống thiết kế theo kiến trúc ba tầng Ví dụ, phần logic thiết kế đúng, chúng ta phát triển theo kiến trúc tầng, sau phát triển lên thành hai tầng, ba tầng tùy theo yêu cầu  Đa dạng kiểu dáng máy client: máy tính tầng client thực nhận đầu vào hiển thị kết hình, chúng ta sử dụng thiết bị với giao diện khác máy tính cá nhân, PDAs, mobile-phone… Khi đó, tầng tầng liệu làm việc nhau, khơng có thay đổi T IT  P Với tất ưu điểm trên, kiến trúc ba tầng nên sử dụng thiết kế hệ thống dù có kích cỡ nhỏ hay lớn 5.3.3 Kiến trúc Client – Server kiến trúc phân tán Bất chúng ta kết nối với nhiều máy nhiều hệ thống phần mềm, chúng ta phải chọn giữa hai loại client – server phân tán (distributed), trình bày Hình 5.5 Mặc dù xuất phát từ thời mainframe, “client – server” có nghĩa chúng ta có lượng lớn client, đơn giản gửi yêu cầu đến server lớn xử lý yêu cầu Ngược lại, kiến trúc phân tán (hay ngang hàng) đặc trưng tập máy tự chủ, truyền thông theo hướng có nhu cầu phát sinh 129 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG Hình 5.4: Kiến trúc Client – Server phân tán Ví dụ quen thuộc kiến trúc client – server mơ hình thương mại điện tử Trình duyệt web khách hàng phát yêu cầu để kết nối với máy chủ Web máy chủ web phát lệnh đến hệ thống đầu cuối Phần lớn hệ thống hai tầng ba tầng mơ hình client – server P T IT Kiến trúc phân tán thực cơng việc tính tồn lớn trải rộng nhiều máy tính mạng Nghĩa là, có lượng lớn liệu cần thực tính tốn, chia liệu tính tốn thành nhiều tốn tính tốn nhiều máy độc lập Ví dụ, SETI@home (setiathome.ssl.berkeley.edu) - tổ chức phi lợi nhuận tìm kiếm tín hiệu radio lạ ngồi trái đất Các liệu radio tự động thu thập phân tán đến máy mạng Internet Mỗi máy riêng lẻ tiến hành phân tích liệu gửi đến kết đáng chú ý gửi trở lại máy chủ trung tâm để phân tích kỹ Ý tưởng gộp số lượng lớn máy để giải tốn phức tạp sử dụng để tìm số nguyên tố, nghiên cứu bệnh ung thư Điều dẫn đến lĩnh vực nghiên cứu đời với tiêu đề tính tốn lưới (Grid Computing) Các thuật ngữ “client – server” “distributed” (hay “peer to peer”) sử dụng để mô tả kiến trúc phần mềm, không phụ thuộc vào việc phần mềm triển khai máy mạng Ví dụ dễ dàng thấy đối tượng chạy chương trình thường xem server sử dụng lại ngữ cảnh khác với đối tượng client khác Trong ứng dụng đặc biệt, chúng ta viết nhóm đối tượng cộng tác với theo kiểu phân tán Các liên kết truyền thơng mạng có khuynh hướng trao đổi hai chiều, nghĩa liên kết ban đầu mở client server gửi thơng tin đến client (client có nhận hay không phụ thuộc người thiết kế phần mềm client) Vì thế, khác client – server phân tán một kiểu nhân tạo, sử dụng người thiết kế để cấu trúc giải pháp họ theo cách hay cách Kiến trúc client –server dễ phát triển hơn, chúng khơng đem lại hiệu cao (ví dụ, client thường rỗi rải server xử lý yêu cầu nó) Ngược 130 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG lại, kiến trúc phân tán thường khó phát triển chúng đem lại hiệu tốt Thường việc lựa chọn kiến trúc bước tự nhiên từ hệ thống mà xây dựng Ví dụ, tạo phiên mua bán trình xử lý theo bước (khách hàng hỏi chi tiết sản phầm, người bán cung cấp chi tiết sản phẩm, khách hàng chọn mua sản phẩm, người bán đưa mẫu đơn để mua, khách hàng điền vào mẫu đơn gửi đi…) tương tác kiểu client –server Ngược lại, hệ mô chuyến bay nhiều người dùng u cầu máy tính phi cơng thực thi công việc theo thời gian thực biểu diễn qua buồng lái truyền thông cần thiết phát tin định kì vị trí thời máy bay Vì hệ thống mơ chuyến bay nhiều người dùng kiến trúc phân tán thích hợp 5.3.4 Biểu diễn hình trạng mạng với UML P T IT Các kiến trúc hệ thống mô tả biểu đồ triển khai UML (xem Hình 5.5) Biểu đồ triển khai đơn giản nêu nút, đường truyền thông vô số điểm khác Mỗi nút biểu đồ thể máy trạm (thể với từ khóa UML ) Một đường truyền thơng hai nút liên lạc với theo cách Các nút có dấu * thể có nhiều nút tồn thời gian chạy Trong biểu đồ, chúng ta có nút lặp lại (QLTinchiServer DBServer) nút nhân lên nhiều lần (ClientHTML ClientGUI) Các biểu đồ triển khai giống biểu đồ lớp biểu đồ đối tượng, chúng nêu kiến trúc (kiểu nút) kiến trúc thực (các thể nút) Khi thể nút, giống đối tượng biểu đồ đối tượng, nhãn nút có dạng tên:Kiểu nên gạch chân * * ClientHTML ClientGUI QLTinchiServer DBServer Hình 5.5: Biểu đồ triển khai cho Hệ quản lý học tín 131 CHƯƠNG THIẾT KẾ KIẾN TRÚC HỆ THỐNG Các biểu đồ triển khai thơng thường có lời mơ tả kèm theo Trong Hình 5.5, tầng liệu QLTinchi bao gồm hai server sở liệu (gọi DBServer) Có ba nút cung cấp lượng lớn liệu Tầng giữa, liên lạc với tầng liệu bao gồm hai máy server (QLTinchiServer) Mỗi QLTinchiServer truy nhập đồng thời điểm HTMLClient hay GUIClient 5.4 THIẾT KẾ TƯƠNG TRANH VÀ AN TOÀN-BẢO MẬT 5.4.1 Thiết kế tương tranh Trong hệ thống mạng, nhiều hoạt động thường xảy lúc thể thống tiến trình riêng lẻ thực thi phần hệ thống Các hệ thống gọi hệ thống tương tranh (concurrent system) hay đồng thời Mặc dù phát triển hệ thống dễ dàng xác lập hàng đợi thứ tự dựa vào tất người dùng tiến trình Tuy nhiên, thực tế phải biến hỗn độn thành thứ tự nỗ lực lập trình Tính tốn tương tranh xem xét số vấn đề: Làm đảm bảo thông tin cập nhật đầy đủ trước người thao tác cập nhật Ví dụ, dừng truy nhập vào đăng ký môn học tất chi tiết môn học thêm vào  Làm đảm bảo thông tin khơng cập nhật đọc Ví dụ, khơng cập nhật mơn học xem T IT  P Giải vấn đề xem xét hai mức độ khác Ở mức thấp, giao dịch sở liệu điều khiển luồng sử dụng để bảo vệ liệu bên tiến trình riêng lẻ Ở mức cao, cần sử dụng quy tắc hệ thống quy tắc nghiệp vụ để điều khiển hoạt động tương tranh Cách dễ dàng để xử lý tương tranh thêm ràng buộc hệ thống hay đưa thêm quy tắc nghiệp vụ Để hiểu rõ thêm ràng buộc hệ thống, xem ví dụ Hệ quản lý học theo tín Thay cố cập nhật mơn học sinh viên xem, chúng ta cập nhật sở liệu riêng chuyển lại sau Cách làm có nghĩa người sử dụng truy nhập Internet phép đọc điều giúp chúng ta dễ dàng viết code Các quy tắc nghiệp vụ giúp việc phát triển thuận lợi Ví dụ, xem xét hệ thống mua bán vé máy bay Khách hàng A tới văn phòng đặt vé Hà nội thời điểm với khách hàng B tới văn phòng đặt vé khác Hà nội Cả hai định mua vé cho chuyến bay Đà nẵng Thật khơng may, cịn lại vé Cả hai lúc hỏi “Có cịn vé không?” Cả hai nhân viên bán vé kiểm tra hệ thống trả lời “Còn vé” Khi có tranh chấp người khách hàng nói “Đồng ý, tơi mua nó” thắng Điều cịn phụ thuộc vào 132 Thêm Sinh viên P Quản lý sinh viên T IT PHỤ LỤC A: LỰA CHỌN CÔNG NGHỆ Sửa Sinh viên 213 P T Thêm Giảng viên IT Quản lý giáo viên Sửa giảng viên 214 Biểu đồ P Đăng nhập T IT PHỤ LỤC A: LỰA CHỌN CƠNG NGHỆ Giảng viên đăng ký mơn dạy 215 IT P T Giảng viên xem lịch dạy Sinh viên đăng ký môn học 216 P T Sinh viên xem thời khóa biểu IT PHỤ LỤC A: LỰA CHỌN CƠNG NGHỆ Sinh viên xem lịch thi học kỳ 217 P T IT Sinh viên xem điểm học tập Người dùng thay đổi thông tin cá nhân 218 PHỤ LỤC A: LỰA CHỌN CÔNG NGHỆ Nhân viên quản lý Sửa khoa P T IT Quản lý khoa Thêm Khoa 219 Quản lý chuyên ngành Thêm Chuyên ngành P T IT Sửa chuyên ngành Quản lý môn học Thêm Môn học 220 PHỤ LỤC A: LỰA CHỌN CÔNG NGHỆ P T IT Sửa Môn học Nhân viên quản lý đào tạo Quản lý xếp lớp học Thêm lớp học 221 P T IT Sửa lớp học Quản lý đăng ký dạy giảng viên 222 P T Quản lý đăng ký học sinh viên IT PHỤ LỤC A: LỰA CHỌN CÔNG NGHỆ Quản lý điểm sinh viên 223 P T Thêm sinh viên IT Quản lý sinh viên Sửa sinh viên 224 Quản lý giáo viên P T Thêm giảng viên IT PHỤ LỤC A: LỰA CHỌN CÔNG NGHỆ Sửa giảng viên 225 226 IT T P TÀI LIỆU THAM KHẢO TÀI LIỆU THAM KHẢO [1] Nguyễn Văn Ba, Phát triển hệ thống hướng đối tượng với UML 2.0 C++, NXB Đại học Quốc gia Hà nội, 2005 [2] A Dennis B H Wixom and David Tegarden, System Analysis and Design with UML version 2.0: An Object-Oriented Approach, Second Edition, John Wiley & Sons 2005 [3] Huỳnh Văn Đức, Đoàn Thiện Ngân, Giáo trình nhập mơn UML, NXB Lao động Xã hội, 2003 [4] Đặng Văn Đức, Phân tích thiết kế hướng đối tượng, NXB Giáo Dục, 2002 IT [5] Hans-Erit, Magnus Penker, Brian Lyons, David Faado, UML2 Toolkit, Wiley Publishing, Inc, 2004 [6] J A Hoffer, J George, Modern systems analysis and design, Prentice Hall, 2002 T [7] Mike O’Docherty, Object-Oriented Analysis and Design: Understanding System Development with UML 2.0, John Wiley & Sons, 2005 P [8] R Pressman, Software Engineering: A Practitioner’s Approach, McGraw-Hill, 2005 [9] Trần Đình Quế Nguyễn Mạnh Sơn, Phân tích Thiết kế hướng đối tượng, Bài giảng cho Sinh viên Đại học Từ xa, Học viện CNBCVT, 2005 [10] S Schach, Object-oriented and classical software engineering, Sixth Edition, McGrawHill, 2006 [11] Brett Spell, Pro Java Programming, Second Edition, Apress 2006 [12] Data Access Object Pattern http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html [13] Gregor Engels, Object-Oriented Modeling: A Roadmap, http://wwwcs.unipaderborn.de/cs/ag-engels/Papers/2000/EG00objectorientedModelling.pdf 227 ... kế hệ thống trình bày chương 5 .2 CÁC BƯỚC TRONG PHA THIẾT KẾ Pha thiết kế chia làm hai giai đoạn: Thiết kế hệ thống (hay Thiết kế kiến trúc hay Thiết kế tổng thể) thiết kế hệ thống (hay Thiết kế. .. thống thiết kế chi tiết việc phân biệt hai giai đoạn cần thiết Thiết kế bao gồm hoạt động sau đây: Thiết kế hệ thống Lựa chọn công nghệ mạng cho hệ thống Thiết kế tương tranh an toàn-bảo mật 124 ... 5.4 THIẾT KẾ TƯƠNG TRANH VÀ AN TOÀN-BẢO MẬT 5.4.1 Thiết kế tương tranh Trong hệ thống mạng, nhiều hoạt động thường xảy lúc thể thống tiến trình riêng lẻ thực thi phần hệ thống Các hệ thống gọi hệ

Ngày đăng: 26/12/2020, 07:23

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan