Xem mẫu

  1. 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
  2. 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
  3. 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
  4. 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
  5. 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
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 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…
  13. 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
  14. 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,
  15. 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.  Đặc tả Giai đoạn này thực hiện việc mô tả chi tiết kỹ thuật các thành phần bên trong hệ thống,bao gồm: - Kiến trúc dữ liệu (data architecture) và xử lý kiểu dữ liệu tương ứng, các chỉ dẫn về tên (identifiers) dữ liệu, các sơ đồ, biểu đồ hay đồ thị. - Giao diện giữa Hệ thống thông tin (HTTT) và Người sử dụng (NSD) : xác định HTTT cung cấp những gì cho NSD và ngược lại, NSD có thể khai thác được những gì từ HTTT? - Các công việc và các cài đặt cần thực hiện. - Diễn biến tiến trình từ mức ý niệm đến lúc thể hiện: triển khai kế hoạch, phân công nhóm làm việc, v.v.. Kết quả của đặc tả là tập hợp các văn bản hồ sơ hay tư liệu về quá trình phân tích và thiết kế HTTT  Thiết kế Mục tiêu của giai đoạn này là xác định:
  16. - Kiến trúc chi tiết của HTTT,liên quan đến các giao diện với người sử dụng và các quy tắc quản lý, cấu trúc dữ liệu. - Thiết kế các chương trình, chuẩn bị lập trình. - Quy cách thử nghiệm chương trình, sử dụng các thư viện. - Quy cách khai thác, ứng dụng bảo trì, hướng dẫn sử dụng… - Các phương tiện và thiết bị liên quan.  Lập trình Giai đoạn này là thể hiện vật lý của HTTT bằng việc chọn công cụ phần mềm để xây dựng các tệp dữ liệu (database files), viết các chương trình, chạy thử, kiểm tra, ráp nối, lập hồ sơ hướng dẫn, chú thích chương trình.  Thử nghiệm Giai đoạn này bao gồm việc định nghĩa các thử nghiệm các chương trình, thử nghiệm hệ thống, hoàn thiện quá trình đào tạo người sẽ sử dụng hệ thống, sửa chữa các chương trình nguồn, hoàn thiện các văn bản báo cáo và hướng dẫn sử dụng. Việc thử nghiệm cho phép kết quả nhận được là phù hợp với các đặc tả ban đầu. Các phương pháp thử nghiệm được nghiên cứu chi tiết trong lĩnh vực công nghệ phần mềm (Software Engineering). Các yếu tố liên quan đến thử nghiệm bao gồm: - Kế hoạch thử nghiệm. - Danh mục (thư viện) thử nghiệm. - Dữ liệu thử nghiệm. - Các công cụ thử nghiệm.  Khai thác Đây là giai đoạn quyết định đến kết quả tương lai của HTTT.Tùy theo kết quả khai thác, người sử dụng sẽ quyết định có sử dụng HTTT vừa xây dựng để thay thế HTTT thủ công hay không?  Bảo trì Giai đoạn này gồm các công việc: Bảo trì,cải thiện và thích nghi hóa HTTT với những thay đổi nội tại cũng như với môi trường xung quanh. Nếu có kết quả phân tích ý niệm chính xác, xây dựng mô hình phù hợp và thể hiện vật lý hoàn hảo thì
  17. việc bảo trì HTTT sẽ dễ dàng. Ngược lại sẽ dẫn đến chi phí bảo trì tốn kém, khó làm thỏa mãn yêu cầu của người sử dụng. 2.1.4 Các phương pháp PTTK HTTT Có 3 phương pháp phân tích thiết kế HTTT chủ yếu là: phương pháp thiết kế hệ thống cổ điển (thiết kế phi cấu trúc), phương pháp phân tích thiết kế hệ thống bán cấu trúc, phương pháp phân tích thiết kế hệ thống có cấu trúc Phương pháp thiết kế hệ thống cổ điển ( thiết kế phi cấu trúc)  Đặc điểm: - Gồm các pha: Khảo sát, thiết kế, viết lệnh, kiểm thử đơn lẻ, kiểm thử trong hệ con, kiểm thử trong toàn hệ thống. - Việc hoàn thiện hệ thống được thực hiện theo hướng “bottom-up” (từ dưới lên) và theo nguyên tắc tiến hành tuần tự từ pha này tới pha khác.  Nhược điểm - Gỡ rối, sửa chữa rất khó khăn và phức tạp. Ví dụ trong giai đoạn kiểm thử (test) nếu có lỗi nào đó xuất hiện ở giai đoạn cuối pha kiểm thử. Lúc đó, tuỳ theo mức độ nghiêm trọng của lỗi, có thể buộc phải sửa đổi hàng loạt các mođun. Khi một lỗi được phát hiện, khó chẩn đoán mođun nào (trong số hàng trăm, hàng ngàn mô đun) chứa lỗi. - Vì thực hiện theo nguyên tắc tuần tự các pha nên sau khi đã kết thúc một pha, người ta có thể không cần phải bận tâm đến nó nữa. Nếu ở pha trước còn lỗi thì các pha sau sẽ phải tiếp tục chịu ảnh hưởng của lỗi đó. Mặt khác hầu hết các dự án thường phải tuân thủ theo một kế hoạch chung đã ấn định từ trước vì vậy kết quả sẽ khó mà được như ý với một thời gian quy định. Phương pháp phân tích thiết kế hệ thống bán cấu trúc  Đặc điểm: Một loạt các bước “bottom-up” như viết lệnh và kiểm thử được thay thế bằng giai đoạn hoàn thiện “top-down”. Nghĩa là các modun mức cao được viết lệnh và kiểm thử trước rồi đến các modun chi tiết ở mức thấp hơn. Pha thiết kế cổ điển được thay bằng thiết kế có cấu trúc.  Nhược điểm:
  18. Người thiết kế liên lạc rất ít với phân tích viên hệ thống và cả hai không có liên hệ nào với người sử dụng. Do vậy, quá trình phân tích và thiết kế gần như là tách ra thành hai pha độc lập Phương pháp phân tích thiết kế hệ thống có cấu trúc  Đặc điểm: Các hoạt động có thể thực hiện song song, mỗi hoạt động có thể cung cấp những sửa đổi phù hợp cho một hoặc nhiều hoạt động trước đó. Các phương pháp hướng chức năng Phương pháp SADT (Structured Analysis and Design Technie) của Mỹ dựa theo phương pháp phân rã một hệ thống lớn thành các hệ thống con đơn giản hơn. Kỹ thuật chủ yếu của SADT là dựa trên sơ đồ luồng dữ liệu, từ điển dữ liệu, ngôn ngữ mô tả có cấu trúc, ma trận chức năng. Nhưng SADT chưa quan tâm một cách thích đáng đối với mô hình chức năng của hệ thống. Phương pháp MERISE (Method pour Rassembler les Idees Sans Effort) của Pháp dựa trên các mức bất biến (mức trừu tượng hóa) của hệ thống thông tin như mức quan niệm, mức tổ chức, mức vật lý và có sự kết hợp với mô hình. Phương pháp CASE (Computer-Aided System Engineering) – phương pháp phân tích và thiết kế tự động nhờ sự trợ giúp của máy tính. Phương pháp phân tích thiết kế hướng đối tượng Phương pháp HOOD (Hierarchical Object Oriented Design) là phương pháp được lựa chọn để thiết kế các hệ thống thời gian thực. Phương pháp này yêu cầu phần mềm phải được mã hóa bằng ngôn ngữ lập trình ADA. Do vậy phương pháp này chỉ hỗ trợ cho việc thiết kế các đối tượng mà không hỗ trợ cho các tính năng kế thừa và phân lớp. Phương pháp RDD (Responsibility Driven Design) dựa trên việc mô hình hóa hệ thống thành các lớp. Các công việc mà hệ thống phải thực hiện được phân tích và chia ra cho các lớp của hệ thống.Các đối tượng trong các lớp của hệ thống trao đổi các thông báo với nhau nhằm thực hiện công việc đặt ra. Phương pháp RDD hỗ trợ cho các khái niệm về lớp, đối tượng và kế thừa trong cách tiếp cận hướng đối tượng.
  19. Phương pháp OMT (Object Modelling Technique) là một phương pháp được xem là mới nhất trong cách tiếp cận hướng đối tượng. Phương pháp này đã khắc phục được một số nhược điểm của các phương pháp tiếp cận hướng đối tượng trước mắc phải. 2.2 Phương pháp PTTK hướng đối tượng Hiện nay tồn tại rất nhiều phương pháp mô hình hóa (phân tích và thiết kế) các hệ thống thông tin. Và mỗi một phương pháp mô hình hóa là sự kết hợp của ba thành phần gồm: một ký pháp, một tiến trình (hoặc chu trình) và một (hay một số) công cụ hỗ trợ(là phần mềm hỗ trợ cho quá trình mô hình hóa)). Trong đó, ký pháp bao gồm một số khái niệm và mô hình dùng để biểu diễn các khái niệm cùng với các kỹ thuật triển khai hay biến đổi các mô hình đó; Tiến trình bao gồm các bước đi lần lượt, các hoạt động cần làm, các sản phẩm qua từng giai đoạn, các điều hành tiến trình đó và các đánh giá chất lượng của các kết quả thu được; Công cụ hỗ trợ là các phần mềm hỗ trợ cho quá trình mô hình hóa. 2.2.1 Các khái niệm cơ bản về mô hình UML là ngôn ngữ mô hình hóa. Nó được sử dụng để hiển thị, đặc tả, xây dựng và làm tài liệu các vật phẩm của phân tích hình thức và thiết kế trong quá trình xây dựng hệ thống phần mềm theo phương pháp hướng đối tượng. UML là ngôn ngữ chuẩn để viết kế hoạch chi tiết phần mềm, được dùng để mô hình hóa các hệ thống, cho phép biểu diễn nhiều hướng nhìn khác nhau của hệ thống trong quá trình phát triển hệ thống. Nó phù hợp cho việc mô hình hóa các hệ thống như hệ thống thông tin doanh nghiệp, các ứng dụng phân tán trên nền Web, hệ thống nhúng thời gian thực,… Như mọi ngôn ngữ mô hình khác, UML có các ký pháp (các biểu tượng sử dụng trong mô hình hay các phần tử cơ bản để xây dựng mô hình) và tập các luật sử dụng nó (bao gồm các quy tắc liên kết các phần tử mô hình và một số cơ chế chung sử dụng cho ngôn ngữ). Các phần tử cơ bản của mô hình trong UML. Các khối để hình thành mô hình UML bao gồm ba loại: phần tử, quan hệ và biểu đồ. Trong đó: - Phần tử là khái niệm trừu tượng trong mô hình. Chúng bao gồm bốn loại: phần tử cấu trúc – là các danh từ trong mô hình. Chúng là bộ phận tĩnh của mô hình
  20. để biểu diễn các thành phần khái niệm hay vật lý. Ví dụ như lớp, giao diện, trường hợp sử dụng, nút (node); phần tử hành vi - là các động từ trong mô hình. Chúng là bộ phận động của mô hinh để biểu diễn hành vi theo thời gian và không gian, ví dụ như tương tác, trạng thái; 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 loại này đó là gói (package); phần tử chú thích – là bộ phận chú giải của mô hình UML. - Quan hệ có chức năng gắn kết các phần tử lại với nhau. Có bốn loại quan hệ trong UML, bao gồm: quan hệ phụ thuộc (dependency)- 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) – là quan hệ cấu trúc để mô tả tập liên kết, khi đối tượng của lớp này gửi/ nhận thông điệp đến/ từ đối tượng của lớp kia thì chúng được gọ là có quan hệ kết hợp; quan hệ khái quát hóa (generalization) – là quan hệ đặc biệt hóa/ khái quát hóa mà trong đó đối tượng cụ thể sẽ kế thừa các thuộc tính và phương thức của đối tượng tổng quát ; quan hệ hiện thực hóa –là quan hệ ngữ nghĩa giữa giao diện và lớp/thành phần hiện thực, giữa UC và hợp tác hiện thực UC. - Biểu đồ là biểu diễn đồ họa tập các phần tử mô hình. Có thể hiểu biểu đồ là ánh xạ của hệ thống, chúng được dùng để biểu diễn hệ thống đang xây dựng dưới các góc độ quan sát khác nhau. Các loại biểu đồ cơ bản trong UML gồm có: Biểu đồ Use case – chỉ ra tương tác giữa các UC và tác nhân, chúng dùng để biểu diễn các chức năng của hệ thống; biểu đồ lớp – chỉ ra tương tác giữa các lớp trong hệ thống, chúng được xem như kế hoạch chi tiết của các đối tượng; biểu đồ tuần tự -chỉ ra luồng chức năng xuyên qua các UC, chúng được dùng để 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; biểu đồ cộng tác – chỉ ra các thông tin như biểu đồ tuần tự nhưng nó tập trung vào cấu trúc tổ chức của các đối tượng gửi và nhận thông điệp; biểu đồ trạng thái – mô tả vòng đời của đối tượng từ khi nó được sinh ra đến khi bị phá hủy, chúng cung cấp cách thức mô hình hóa các trạng thái khác nhau của đối tượng; biểu đồ thành phần – mô tả các thành phần phần mềm trong hệ thống và quan hệ giữa chúng; biểu đồ triển khai –chỉ ra bố trí vật lý của mạng và các thành phần của hệ thống sẽ đặt ở đâu. 2.2.2 Tiến trình phát triển phần mềm
nguon tai.lieu . vn