Enterprise Architect Giới thiệu và ứng dụng trong bài toán quản lý khóa luận tốt nghiệp của sinh viên

Enterprise Architect là một môi trường giúp thiết kế và xây dựng phần mềm, mô hình hóa quy trình kinh doanh, phát triển hệ thống nhúng và thời gian thực. Với khả năng tích hợp quản lý các yêu cầu, Enterprise Architect giúp người dùng có thể truy vết ở mức độ cao những mô hình đặc tả phân tích, thiết kế, thực thi, kiểm thử, bảo trì sử dụng UML, SysML, BPMN và các mô hình chuẩn khác. Enterprise architect là một công cụ thiết kế đồ họa đa người dùng hỗ trợ mạnh mẽ một nhóm phát triển và bảo trì hệ thống. ENTERPRISE ARCHITECT là một công cụ mạnh giúp phát triển nhiều hệ thống khác nhau, tuy nhiên, trong khuân khổ tài liệu, sẽ chỉ đề cập tới những hộ trợ trong việc phát triển phần mềm.

doc14 trang | Chia sẻ: lvbuiluyen | Lượt xem: 6084 | Lượt tải: 3download
Bạn đang xem nội dung tài liệu Enterprise Architect Giới thiệu và ứng dụng trong bài toán quản lý khóa luận tốt nghiệp của sinh viên, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
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 Hà Nội, Tháng 12 năm 2009 GVHD: Trương Anh Hoàng Nhóm thực hiện: Hoàng Thế Tùng Nguyễn Trung Kiên Bùi Văn Quý Nguyễn Ngọc Tân ĐẠI HỌC CÔNG NGHỆ ĐẠI HỌC QUỐC GIA HÀ NỘI Giới thiệu chung Giới thiệu Enterprise Architect Enterprise Architect là một môi trường giúp thiết kế và xây dựng phần mềm, mô hình hóa quy trình kinh doanh, phát triển hệ thống nhúng và thời gian thực. Với khả năng tích hợp quản lý các yêu cầu, Enterprise Architect giúp người dùng có thể truy vết ở mức độ cao những mô hình đặc tả phân tích, thiết kế, thực thi, kiểm thử, bảo trì sử dụng UML, SysML, BPMN và các mô hình chuẩn khác. Enterprise architect là một công cụ thiết kế đồ họa đa người dùng hỗ trợ mạnh mẽ một nhóm phát triển và bảo trì hệ thống. ENTERPRISE ARCHITECT là một công cụ mạnh giúp phát triển nhiều hệ thống khác nhau, tuy nhiên, trong khuân khổ tài liệu, sẽ chỉ đề cập tới những hộ trợ trong việc phát triển phần mềm. Những khác biệt so với các công cụ UML khác Với hơn 150,000 bản được bán ra cho những rất nhiều công ty, tổ chức lớn nhỏ, từ những công ty đa quốc gia đến những công ty độc lâo tại trên 130 quốc gia, Enterprise Architect được đánh giá cao về : Mô hình hóa toàn diện UML 2.1 Tích hợp quản lý yêu cầu Mở rộng hỗ trợ quản lý dự án, bao gồm những tài nguyên, kiểm thử. Hỗ trợ kiểm thử: kiểm thử trường hợp (test case), hỗ trợ JUnit và NUnit. Tùy chọn tài liệu linh động: viết cáo báo định dạng HTML hoặc RTF Hỗ trợ kỹ thuật mã hóa (code engineering) bởi nhiều ngôn ngữ. Ngoài ra, ENTERPRISE ARCHITECT còn được đánh giá cao về tính khả dụng, tốc độ, sự ổn định và giá cá Từ những ưu điểm nổi bật trên, Enterprise mang lại những lợi ích: Mô hình hóa và quản những thông tin phức tạp: Mô hình, quản lý và truy vết các yêu cầu: Hợp nhất đội và chia sẻ tầm nhìn Thiết kế và xây dựng những hệ thống đa dạng sử dụng UML Hiện thị, kiểm soát và hiểu được những phần mềm phức tạp Sử dụng đầy đủ mô hình hóa chu trình vòng đời và quản lý dự án Chia sẻ và sử dụng lại những thông tin giữa các công cụ khác nhau Tạo những mô hình độc lập với môi trường nền tảng bằng kiến trúc mô hình hóa điều khiển Một vài tính năng cụ thể của Enterprise Architect Hỗ trợ UML 2.1: Enterprise Architect hỗ trợ tất cả mô hình và biểu đồ của UML 2.1. Người dùng có thể mô hình hóa tiến trình kinh doanh, web sites, giao diện người dùng, mạng, cấu hình phần cứng, thông điệp và rất nhiều những khía cạnh khác của việc phát triển. ENTERPRISE ARCHITECT còn cung cấp những biểu đồ mở rộng của nhân biểu đồ UML cho tiến trình kinh doanh, bản đồ tư duy, đặc tả yêu cầu, biều đồ luồng dữ liệu… Làm tài liệu và báo cáo ngay trên Enterprise Architect: Trình soạn thảo khuân mẫu định dạng RTF cho phép người dùng tạo, chỉnh sửa tùy chọn khuân mẫu để xác định bất cứ tài liệu đầu ra RTF nào. Ngoài ra, người sử dụng có thể viết báo cáo trực tiếp dưới khuân dạng của HTML. Quản lý yêu cầu: Thông thường thì bước đầu tiên của việc phát triển là thu thập yêu cầu, nó giúp hệ thống xác định cần phải làm gì. Tính năng quản lý yêu cầu của ENTERPRISE ARCHITECT giúp người dùng có thể xác định, tổ chức, và phân cấp mô hình yêu cầu; liên kết và truy vết sự thực thi của yêu cầu hệ thống tới những thành phần mô hình; tìm kiếm và báo cáo về các yêu cầu và hiệu suất của phân tích tác động đối với thay đổi yêu cầu. Mô hình hóa quy trình kinh doanh: sử dụng UML để đưa ra một số các khuân mẫu biểu đồ như biểu đồ hoạt động, biểu đồ đối tượng… Truy vết: Tính năng kiểm tra quản lý cho phép lưu lại những thay đổi của mô hình, cụ thể, người quản trị viên có thể biết được những thông tin như là: ai đã thay đổi một thành phần, có bao nhiêu thành phần đã thay đổi, khi nào thì họ thay đổi dữ liệu, giá trị trước đó là gì và kiểu của thành phần đã thay đổi. Kỹ thuật sinh mã nguồn: ENTERPRISE ARCHITECT hỗ trợ sinh mã nguồn từ những mô hình UML dưới nhiều những ngông ngữ lập trình khách nhau: C/C++, C#, Delphi, Java, visual Basic, Giả lập việc biên dịch, bắt lỗi, và thực thi mã nguồn: một số phiên bản của ENTERPRISE ARCHITECT cho phép người dùng xây dựng, kiểm thử, bắt lỗi và thực thi những đoạn mã trực tiếp trên môi trường của nó. Hỗ trợ kiểm thử JUnit và NUnit: ENTERPRISE ARCHITECT giúp người dùng tạo những lớp và phương thức kiểm thử cho đoạn mã nguồn với phép biến đổi Junit và NUnit. Ngoài ra, ENTERPRISE ARCHITECT còn hỗ trợ một số tính năng rất hữu ích như hỗ trợ mô hình cơ sở dữ liệu với nhiều cơ sở dữ liệu khác nhau như DB2, Oracle, MySQL, SQL server, MS acess, infomix… Sử dụng Enterprise Architect trong bài toán cụ thể Việc áp dụng Enterprise Architect được thực hiện ở mức vẽ các biểu đồ UML trong quá trình phân tích thiết kế hệ thống. Các chức năng khác(sinh mã code, quản lý yêu cầu, quản lý dự án… chưa được đưa vào trong ví dụ này) Giới thiệu bài toán quản lý đề tài khóa luận sinh viên Đặt vấn đề bài toán Mỗi năm, các trường đại học đều có một khóa sinh viên tốt nghiệp ra trường. Đối với những trường về khoa học kỹ thuật như trường đại học Công Nghệ - Đại học Quốc Gia Hà Nội thì việc tổ chức cho sinh viên bảo vệ đồ án tốt nghiệp là rất phổ biến. Mỗi năm, trường ĐH Công nghệ có hàng trăm sinh viên bảo vệ luận án trước để tốt nghiệp. Vấn đề được đặt ra là việc quản lý các đề tài của sinh viên như thế nào để có hiểu quả tốt nhất. Hàng năm, mỗi sinh viên năm cuối đủ điều kiện bảo vệ đồ án tốt nghiệp đều phải liên hệ với các giáo viên trong khoa để được hướng dẫn đề tài và thực hiện đề tài đó. Việc nhận giáo viên hướng dẫn qua cách liên lạc trực tiếp làm mất khá nhiều thời gian cho cả sinh viên và giáo viên. Sinh viên sẽ mất thời gian tìm thông tin cá nhân của giảng viên để có thể liên hệ được với giảng viên đó, chưa kể việc giảng viên đó đã đủ số người hướng dẫn, khiến sinh viên phải tìm giảng viên khác. Về bên phía giảng viên, có thể sẽ gặp nhiều phiền toái khi số sinh viên liên hệ là quá đông(mất thời gian nghe điện thoại, trả lời thư điện tử…) Từ hiện trạng đó, nhóm thực tập, dưới sự hướng dẫn của thầy Trương Anh Hoàng, đã đưa ra bài toán quản lý đề tài khóa luận cho cả giáo viên và sinh viên, nhằm giúp tiết kiệm thời gian, công sức cho cả sinh viên và giảng viên. Phát biểu bài toán Bài toán quản lý đề tài khóa luận tốt nghiệp của sinh viên được xây dựng trên như một web service nhằm đáp ứng được việc giao tiếp thông tin giữa sinh viên và giảng viên được nhanh và thuận tiện nhất. Mỗi sinh viên và giảng viên đều được cấp một tài khoản đăng nhập để thuận tiện cho việc quản lý đề tài của mình. Mỗi sinh viên có thể có một hoặc nhiều giảng viên đồng hướng dẫn thực hiện đề tài của mình. Sinh viên có thể đề xuất đề tài của mình để giảng viên xét duyệt. Khi giảng viên xem và duyệt một đề tài của sinh viên đưa ra có thể nhận hướng dẫn sinh viên đó. Sinh viên có thể đề nghị được hướng dẫn bởi một giảng viên nếu giảng viên đó vẫn còn số người hướng dẫn. Đối với giảng viên, có thể đưa ra đề tài để sinh viên tham khảo và nhận hướng dẫn. Nếu giảng viên đã nhận đủ người để hướng dẫn thì không thể nhận thêm được nữa. Tùy vào học vị của giảng viên mà số lượng sinh viên có thể hướng dẫn sẽ khác nhau. Do không phải sinh viên nào cũng đủ điều kiện làm khóa luận và không phải giảng viên nào cũng hướng dẫn khóa luận, do đó, hệ thống cần có một người quản trị, cấp phát cho sinh viên và giảng viên tài khoản đăng nhập vào hệ thống. Phân tích thiết kế hệ thống Phân tích chức năng hệ thống Các chức năng của hệ thống được mô tả qua các biểu đồ usecase sau: Use case có 3 tác nhân là sinh viên, giáo viên và admin Mỗi tác nhân khi đăng nhập vào hệ thống sẽ có những chức năng khác nhau Admin có chức năng là người có quyền cao nhất có thể tạo, xóa và chỉnh sửa các thông tin của các account Sinh viên khi đăng nhập vào hệ thống thì chỉ có thể thay đổi password và không thể thay đổi bất kì thông tin nào của bản thân. Sinh viên có thể xem thông tin về bản thân ,giáo viên và các đề án.Sinh viên có thể đăng kí nhận giáo viên làm người hướng dẫn và chọn đề án làm tốt nghiệp.Tuy nhiên sinh viên cũng có thể đề nghị đề án. Giáo viên khi đăng nhập có thể xem tất cả các thông tin về giáo viên và sinh viên.Ngoài ra giáo viên có thể thay đổi 1 số thông tin không quan trọng của bản thân như số điện thoại, email … Ngoài ra web còn có chức năng tìm kiếm thông tin để có thể giúp giáo viên và sinh viên dễ dàng hơn trong việc sử dụng. Mô tả chức năng chi tiết: Chức năng chung : đăng nhập Khi user đánh accout và password nếu đúng thì sẽ hiển thị ra màn hình tương ứng tùy vào type của accout Nếu accout và password sai sẽ quay trở lại màn hình đăng nhập. Nếu nhập sai 3 lần thì web sẽ không cho đăng nhập trong 10 phút. Chức năng của giáo viên khi đăng nhập xong : Thoát Xem thông tin về giáo viên. Thay đổi 1 số thông tin bản thân : số điện thoại, mail Quản lý sinh viên : xem thông tin về sinh viên, nhận sinh viên,tử chối sinh viên, giao đề án Quản lý đề án năm nay : thêm đề án, nhận đề án của sinh viên Quản lý các đề án đã làm năm trước , tìm kiếm, upload nội dung đề án đó Chức năng của sinh viên sau khi đăng nhập: Thoát Xem thông tin bản thân. Quản lý giáo viên : xem thông tin giáo viên, nhận giáo viên làm người hướng dẫn, danh sách các đề án của giáo viên Các đề án năm nay : đề xuất đề án, tìm kiếm, xem đề án năm nay của giáo viên, nhận đề án. Các đề án đã làm : xem đề án, tìm kiếm Chức năng của admin sau khi đăng nhập : Tạo thêm accout Xóa accout Thay đổi thông tin của accout của admin Biểu đồ lớp của hệ thống Giáo viên có các thuộc tính là : Detail , DiaChi, Hoten, Mail, MaSoGV,SoDT,Status. Trong đó MaSoGV là khóa chính. Biến Status là để lưu trạng thái của giáo viên : đã nhận hướng dẫn bao nhiêu sinh viên. Status < 6. DeTail : là những miêu tả về giáo viên. Cái này không quan trọng lắm trong hệ thống chỉ có tác dụng hiển thị các thông tin của giáo viên như chức vụ, bằng cấp… Sinh viên có các thuộc tính là : DiemTK ,HoTen, Lop, Mail, MaSoSV,SoTrinhNo. Khóa chính là MaSoSV. SoTrinhNo và DiemTK là để giáo viên có thể biết được thông tin của sinh viên theo tiêu chuẩn làm đề án của nhà trường Đề án có các thuộc tính là MaDeAn, MieuTaDA,Status Trong đó MaDeAn là khóa chính. Nó có dạng là K51c_abcdef Vì thế qua 4 kí tự đầu của mã đề án ta có thể biết được là nó là ở khóa nào. Thuộc tính Status để biết là đề án này có trạng thái như thế nào : là do sinh viên đề xuất hay của giáo viên. Nếu là của sinh viên đề xuất mà được giáo viên nhận thì nó sẽ có trạng thái mới là đề án của giáo viên. Account có các thuộc tính là Acc,Pass,NgayDK,Type. Trong đó Acc là khóa chính luôn vì không thể có 2 account trùng nhau. Type là để biết loại accout này là gì của giáo viên hay sinh viên hay admin. Mối quan hệ : Mỗi sinh viên và giáo viên chỉ có thể sở hữu 1 account. Mỗi giáo viên có thể hưỡng dẫn từ 0 đến 5 sinh viên. Mỗi sinh viên chỉ có thể làm 1 đề án. Vì thế mỗi đề án có tối đa 2 giáo viên phụ trách. Mỗi giáo viên có ít nhất 5 đề án. Biểu đồ tuần tự của hệ thống Quá trình sinh viên đăng kí giáo viên và sau đó chọn đề án : Sinh viên phải vào web, đăng nhập với account và password. Account và password sẽ được gửi về sever và kiểm tra trong database xem thông tin có đúng không. Sau khi nhận được xác nhận là đăng nhập đúng của sever thì màn hình web sẽ hiển thị menu cho sinh viên Sinh viên sau sẽ đăng kí giáo viên Web sẽ gửi việc chọn giáo viên vào database và đề nghị liệt kê danh sách các đề án. Sever sẽ lưu việc chọn giáo viên và trả về danh sach đề án Web sẽ hiển thị danh sách đề án của giáo viên. Sinh viên đăng kí đề án. Web gửi thông tin đăng kí đề án về sever Sever lưu thông tin và xác nhận là đã lưu Web thông báo đăng kí đã thành công Sinh viên thoát khỏi web. Quá trình giáo viên nhận đề án của sinh viên : Giáo viên đăng nhập vào web. Quá trình đăng nhập sẽ như trên. Khi đăng nhập thành công, web sẽ hiện ra menu sử dụng Giáo viên chọn 1 đề án và yêu cầu nhận đề án. Web sẽ gửi thông tin về sever thông báo việc giáo viên nhận đề án Sever sẽ thêm đề án vào danh sách các đề án năm nay của giáo viên và thay đổi trạng thái của đề án. Sever gửi thông báo việc nhận đề án đã thành công Web hiển thị thông báo đã nhận đề án thành công Biều đồ hoạt động của hệ thống Khi sinh viên muốn đăng kí để án và giáo viên có 3 cách. Sinh viên có thể chọn lựa đề án mình thích thì chương trình sẽ hiển thị link đến giáo viên tương ứng để sinh viên có thể tiếp tục đăng kí giáo viên Sinh viên có thể chọn giáo viên.Sau đó chương trình sẽ hiện ra danh sách các đề án của giáo viên để sinh viên lựa chọn đề án để đăng kí Sinh viên có thể đề xuất đề án. Nếu đề án ấy được 1 giáo viên nhận thì đề án đó coi như là của giáo viên đó.Khi giáo viên nhận 1 đề án thì sẽ có thông báo của hệ thống đến sinh viên là đề án đã được giáo viên nhận.Sinh viên đóchỉ việc đăng kí như 2 cách đầu. Nếu đề án không được chấp nhận thì sinh viên có thể đề xuất đề án khác hoặc là đăng kí như 2 cách đầu. Việc giáo viên có nhận sinh viên hay không thì giáo viên có thể tham khảo điểm số và số trình nợ của sinh viên. Tuy nhiên nếu sinh viên không đủ tiêu chuẩn mà giáo viên nhận thì sinh viên vẫn có thể làm đề án.Quá trình trao đổi đó của 2 người được thực hiện qua mail hoặc trực tiếp ở ngoài không thuộc vào hệ thống.