UML là một ngôn ngữ mô hình hoá thống nhất có phần chính bao gồmnhững ký hiệu hình học, được các phương pháp hướng đối tượng sử dụng đểthể hiện và miêu tả các thiết kế của một hệ thống..
Trang 1TỔNG QUAN VÊ UML 1.1 Khái quát về ngôn ngữ mô hình hóa thống nhất UML.
Mục tiêu của giai đoạn phân tích thiết kế hệ thống là sản xuất ra một
mô hình tổng thể của hệ thống cần xây dựng Mô hình thường được mô tảtrong ngôn ngữ trực quan, điều đó có nghĩa là đa phần các thông tin được thểhiện bằng các ký hiệu đồ hoạ và các kết nối giữa chúng, chỉ khi cần thiết một
số thông tin mới được biểu diễn ở dạng văn bản Tạo mô hình cho các hệthống phần mềm trước khi thực sự xây dựng nên chúng đã trở thành mộtchuẩn mực trong việc phát triển phần mềm và được chấp nhận trong cộngđồng phần mềm giống như trong bất kỳ một ngành khoa học kỹ thuật nàokhác
- Ghi lại các quyết định của nhà phát triển để sử dụng sau này
UML là một ngôn ngữ mô hình hoá thống nhất có phần chính bao gồmnhững ký hiệu hình học, được các phương pháp hướng đối tượng sử dụng đểthể hiện và miêu tả các thiết kế của một hệ thống Nó là một ngôn ngữ đểđặc tả, trực quan hoá, xây dựng và làm tài liệu cho nhiều khía cạnh khácnhau của một hệ thống có độ phức tạp cao UML có thể được sử dụng làmcông cụ giao tiếp giữa người dùng, nhà phân tích, nhà thiết kế và nhà pháttriển phần mềm
1.2.1 UML là gì?
Ngôn ngữ mô hình hợp nhất UML (Unified Modeling Language) là mộtngôn ngữ mô hình hóa chuẩn để thiết kế phần mềm hướng đối tượng Nóđược hợp nhất từ nhiều thành tựu và kinh nghiệm trong việc nghiên cứu vàtriển khai thuộc công nghệ thông tin của các nhà khoa học, những chuyên gianghiên cứu và triển khai, trong đó nổi bật nhất là Grady Booch và IvarJacobson ( Object Oriented Software Engineering - OOSE), James Rumbaugh(với Object Management Technique - OMT)
Để sử dụng UML có hiệu quả, đòi hỏi phải hiểu được ba vấn đề chính:
- Các phần tử cơ bản của mô hình trong UML
- Các quy định liên kết các phần tử mô hình
- Một số cơ chế chung áp dụng cho ngôn ngữ này
Trang 2UML là ngôn ngữ và nó chỉ là một phần của tiến trình phát triển phầnmềm, độc lập với tiến trình Tuy nhiên UML rất phù hợp với các tiến trìnhhướng ca sử dụng, lấy kiến trúc làm trung tâm, tương tác và tăng dần.
1.2.2 Các đặc trưng và khả năng của UML
- UML là một ngôn ngữ mô hình đồ họa
Một ngôn ngữ nói chung phải cung cấp một bảng từ vựng và các nguyêntắc để tổ hợp các từ vựng với mục đích tạo nên những khối từ vựng có ngữnghĩa để giao tiếp Một ngôn ngữ mô hình hóa là một ngôn ngữ mà các từvựng và các nguyên tắc của nó tập trung vào biểu diễn bằng mô hình cáckhái niệm và các thể hiện vật lý của hệ thống UML là một ngôn ngữ mô hìnhhóa chuẩn để tạo ra các thiết kế phần mềm
Các biểu diễn mô hình trong UML là các biểu diễn bằng đồ họa Sau mỗibiểu tượng của UML là ngữ nghĩa hoàn toàn xác định Nhờ vậy, một nhà pháttriển có thể thiết kế một mô hình trong UML, một nhà phát triển khác haymột công cụ khác có thể dịch nó sang một dạng biểu diễn khác mà khôngnhầm lẫn Tất cả những gì được biểu diễn tốt nhất bằng đồ thị thì cũng đượcthực hiện tương tự trong UML, và những gì được thể hiện tốt bằng văn bảntrong các ngôn ngữ lập trình thì cũng được thể hiện tốt bằng văn bản ở đây
Vì vậy UML có những mặt mạnh của cả ngôn ngữ đồ họa và ngôn ngữ vănbản
- UML là một ngôn ngữ làm trực quan.
Bằng các ký hiệu đồ họa và các biểu diễn bằng sơ đồ, với các giải thíchvăn bản đi kèm, UML cho ta nhìn thấy được tất cả những điều suy nghĩ vàhình dung về một hệ thống cần xây dựng từ các khía cạnh khác nhau
- UML là ngôn ngữ đặc tả, có cấu trúc.
Đặc tả có nghĩa là xây dựng trên các mô hình một cách chính xác,không mù mờ và đầy đủ Trên thực tế, UML hướng đến đặc tả những phântích, thiết kế và các quyết định triển khai quan trọng mà cần phải làm khiphát triển một hệ thống phần mềm chuyên sâu
UML không phải là một ngôn ngữ lập trình trực quan, nhưng các môhình của nó có thể ánh xạ vào một ngôn ngữ lập trình như : C++, VisualBasic, Java hoặc các bảng cho một cơ sở dữ liệu quan hệ hoặc kho chứa củamột cơ sở dữ liệu hướng đối tượng
- UML là ngôn ngữ làm tài liệu.
Một tổ chức phần mềm mạnh thường tạo ra tất cả các loại chế phẩmkhác nhau để thêm vào chương trình thực hiện Các chế phẩm thường baogồm: Các yêu cầu, các kiến trúc, các thiết kế, các chương trình nguồn, kếhoạch dự án và kiểm thử, các bản mẫu, các hướng dẫn sử dụng, UML hướng
Trang 3Khung nhìn thiết kế Khung nhìn triển
Với tất cả các đặc trưng trên, UML có những khả năng to lớn sau:
+ Trước hết UML là công cụ dành cho việc thiết kế các hệ thống phầnmềm chuyên sâu Nó cũng được sử dụng hiệu quả cho việc thiết kế các lĩnhvực khác như: Các hệ thống thông tin xí nghiệp, các dịch vụ tài chính và ngânhàng, viễn thông, quốc phòng, điện tử, khoa học, các dịch vụ phân tán trênWeb
+ UML không hạn chế trong việc mô hình hóa phần mềm Thực tế nóbiểu diễn khá tốt mô hình hóa các hệ thống không phải phần mềm như luồngcông việc trong hệ thống pháp luật, cấu trúc và hành vi của hệ thống sứckhỏe bệnh nhân, các thiết kế phần cứng,
Riêng với các phần mềm hướng đối tượng, UML đặc biệt có khả năng:+ Cho phép mô tả toàn bộ các sản phẩm phân tích và thiết kế
+ Trợ giúp việc tự động hóa quá trình thiết kế trên máy tính
+ Trợ giúp việc dịch xuôi và dịch ngược các thiết kế sang mã nguồn củangôn ngữ lập trình và cơ sở dữ liệu
1.2.3 Kiến trúc trong UML.
Kiến trúc phần mềm cho ta một cái nhìn khái quát nhất về hệ thốngphần mềm ở các góc độ khác nhau Như minh họa ở hình 1.2 kiến trúc của hệthống phần mềm chuyên sâu được mô tả tốt nhất bằng năm loại khung nhìntương tác với nhau Mỗi khung nhìn phản ánh về một khía cạnh của tổ chức
và cấu trúc của hệ thống mà tập trung vào từng mặt cụ thể giúp cho ta hiểu
và sử dụng hệ thống tốt nhất
Hình 1.2: Mô hình hóa kiến trúc hệ thống.
- Khung nhìn ca sử dụng: cho ta cách sử dụng chức năng để mô tả hành
vi của hệ thống khi nhìn nhận hệ thống dưới góc độ của người dùng cuốicùng, của nhà phân tích và kiểm thử
Trang 4Sự vật chú thích
Gói
Mô hình
Hệ thống conKhung làm việc
Ghi chú
Phụ thuộcLiên kếtTổng quát hóa
Sự thực hiện
Ca sử dụng lớp
Đối tượng tuần tựCộng tácTrạng tháiHoạt độngThành phần
Bố trí
- Khung nhìn thiết kế: bao gồm các lớp, các giao diện, các cộng tác tạonên từ vựng để đặc tả các vấn đề và các giải pháp cho nó Khung nhìn này hỗtrợ cho việc xác định các yêu cầu chức năng của hệ thống nghĩa là các dịch
vụ mà hệ thống sẽ cung cấp cho người dùng cuối cùng
- Khung nhìn tiến trình của hệ thống: chứa đựng các luồng và tiến trìnhcông việc tạo nên cơ chế hoạt động tương tranh và đồng bộ của hệ thống.Khung nhìn này diễn đạt hiệu năng, quy mô và năng lực thông qua của hệthống
- Khung nhìn triển khai của hệ thống bao gồm các thành phần và cácfile được kết hợp lại và đưa ra các hệ thống vật lý Khung nhìn này trước hếthướng đến việc quản lý cấu hình hệ thống
- Khung nhìn cài đặt bao gồm các nút của hệ thống tạo nên kết cấuphần cứng mà trên đó hệ thống vận hành Khung nhìn này chủ yếu hướngđến sự phân tán và cài đặt cụ thể của hệ thống
Ngôn ngữ mô hình hoá UML có tính ứng dụng cao Nó có thể được dùngcho việc mô hình hoá nghiệp vụ, mô hình hoá phần mềm và mô hình hoátổng kết cho bất kỳ kết cấu nào bao gồm cấu trúc tĩnh và hành vi động Đểđạt tới những khả năng này, UML được định nghĩa một cách mở rộng và tổngquát bao gồm các thành phần sau: Hướng nhìn (view), biểu đồ (diagram),phần tử mô hình các cơ chế chung
1.2.4- Mô hình khái niệm của UML.
Ba khối chính tạo nên UML là: Các khối xây dựng cơ bản của UML (hình1.3), các quy tắc ngữ nghĩa và một cơ chế chung được áp dụng cho việc môhình hóa
4
Trang 5Tác vụ (phương thức)
Thuộc tính Tên lớp
Hình 1.3: Cấu trúc các thành phần của UML
1.2.4.1 Các khối xây dựng.
Các sự vật (things) là các trừu tượng hóa và là những phần tử lớp đầutiên (những viên gạch) để xây dựng lên các mô hình trong UML Các quan hệ(relationship) gắn kết các sự vật lại với nhau; các biểu đồ(diagrams) nhómcác sự vật được quan tâm lại tạo nên ngữ nghĩa của nó (cho một mô hình)
1.2.4.1.1 Các sự vật cấu trúc
- Lớp (class) Một lớp mô tả một tập hợp các đối tượng có chung các
thuộc tính, các tác vụ, các mối quan hệ và ngữ nghĩa Một lớp có trách nhiệmthực hiện một hay nhiều giao diện Môt lớp được biểu diễn bằng một hình chữnhật bên trong có tên, các thuộc tính, các tác vụ hình 1.4
Windowsoringin sizeopen()close()move()display()
Trang 6EventManager
Supend() Fluhs()
làm việc để cung cấp một hành vi hợp tác lớn hơn tổng hành vi của tất cả cácphần tử Một sự cộng tác được ký hiệu bằng một hình elip với đường nét đứt
và thường chỉ gồm có tên (hình 1.6)
Hình 1.6: Sự cộng tác.
- Ca sử dụng (use case): Một ca sử dụng mô tả một tập hợp các dãyhành động mà hệ thống thực hiện để cho kết quả có thể quan sát được có giátrị đối với một tác nhân Một ca sử dụng được ký hiệu bằng một hình elip nétliền, thường chỉ bao gồm có tên
Hình 1.7: Ca sử dụng
- Thành phần (component): Thành phần là một bộ phận vật lý có thểthay thế được của một hệ thống được làm phù hợp với những điều kiện cụ thể
và cung cấp phương tiện (tác vụ) thực hiện một tập các giao diện Một thànhphần biểu diễn một gói vật lý các phần tử logic khác nhau như các lớp, cácgiao diện và sự cộng tác Một thành phần được ký hiệu bằng một hình chữnhật với các bảng và thường bao gồm có tên của nó
- Nút (node): Một nút là một phần tử vật lý tồn tại trong thời gian thực
và biểu diễn một nguồn lực tính toán, thường có ít nhất bộ nhớ và khả năng
Xem điểm Dãy các trách nhiệm
Trang 7Các quy tắc nghiệp vụ
xử lý Một nút được ký hiệu bằng một hộp hình hộp thường bao gồm tên củanó
Hình 1.10 : Nút
1.2.4.1.2 Các sự vật hành vi (behavioral things)
Các sự vật hành vi là những bộ phận động của mô hình UML mô tả hành
vi của hệ thống theo thời gian và không gian Có hai loại hành vi sơ cấp của
sự vật:
- Sự tương tác (Interaction): Sự tương tác là một hành vi bao gồm mộttập các thông báo được trao đổi giữa một tập các đối tượng trong một khungcảnh cụ thể nhằm thực hiện một mục tiêu xác định Một thông báo được kýhiệu bằng một đường thẳng có hướng, gồm tên của tác vụ
Hình 1.11 : Thông báo
- Máy trạng thái (State machine): Một máy các trạng thái gồm một sốcác phần tử biểu diễn các trạng thái, các chuyển dịch (từ một trạng thái sangmột trạng thái khác), các sự kiện (các sự vật kích hoạt một chuyển dịch) Mộttrạng thái được ký hiệu bằng một hình chữ nhật góc tròn trong đó có têntrạng thái và các trạng thái con của nó(nếu có)
Hình 1.12: Trạng thái
1.2.4.1.3 Các sự vật nhóm gộp (grouping things)
Có một loại sự vật nhóm gộp duy nhất là gói (package) Nó là công cụ
để tổ chức các thành phần của một mô hình thành các nhóm: Một mô hình cóthể được phân chia vào trong các gói Một gói đơn thuần là một khái niệm.Một gói được ký hiệu như một bảng thường chỉ gồm có tên, và đôi khi có nộidung
Hình 1.13: Gói
Bo xu ly
Hiển thị
Chờ
Trang 81.2.4.1.4 Sự vật giải thích (Annontional thing)
Sự vật giải thích là phần giải thích của mô hình UML Nó có thể sử dụng
để mô tả, giải thích và đánh dấu một phần tử bất kì trong một mô hình Sựgiải thích thể hiện ra như một ghi chú (note) và được kí hiệu bằng một hìnhchữ nhật có góc gấp cùng với một lời bình luận bằng văn bản hay đồ thị ở bêntrong
Hình 1.14: Chú thích
1.2.4.1.5 Các quan hệ (relationships).
- Sự phụ thuộc (dependency): Sự phụ thuộc là một mối quan hệ ngữnghĩa giữa hai sự vật, trong đó thay đổi của một sự vật(sự vật độc lập) có thểtác động đến ngữ nghĩa của sự vật khác (sự vật phụ thuộc) Sự phụ thuộcđược kí hiệu bằng một đường nét đứt, có thể có hướng và tùy trường hợp cóthể có nhãn
Hình 1.15: Sự phụ thuộc
- Sự kết hợp(association): Sự kết hợp là một mối quan hệ cấu trúc mô tả
một tập các mối liên kết giữa một số các đối tượng Sự kết hợp được kết hợpbằng đường liền nét, có thể có hướng bao gồm một nhãn và thường chứa cácbài trí khác nhau giải thích vai trò của đối tượng tham gia vào liên kết và cácbản số (số các đối tượng tham gia liên kết) của chúng
Hình 1.16: Liên kết
- Tổng quát hóa (generalization): Tổng quát hóa là một mối quan hệtổng quát hóa hay cá biệt hóa mà trong đó các đối tượng của phần tử cá biệthóa (con) có thể thay thế được cho các đối tượng của phần tử được tổng quáthóa (cha) Mối quan hệ tổng quát hóa được kí hiệu bằng đường nét liền vớimũi tên rỗng chỉ về phía cha
Hình 1.17: Tổng quát hóa
- Sự thực hiện (realization): Sự thực hiện là một mối quan hệ ngữ nghĩagiữa các phân lớp, trong đó xác định một hợp đồng sao cho những phân lớpkhác nhau đảm nhiệm thực hiện những trách nhiệm khác nhau Mối quan hệthực hiện được đưa vào hai vị trí: Giữa các giao diện và các lớp hoặc các
Trả lại bản sao
0 1 *
Trang 9Gửi tiền
Rút tiền
thành phần thực hiện nó Một mối quan hệ thực hiện được xem như một mốiquan hệ nằm giữa mối quan hệ tổng quát và mối quan hệ phụ thuộc, và vìthế được kí hiệu bằng một đường nét đứt có mũi tên trống
Hình 1.18: Sự thực hiện
Bốn mối quan hệ này là các sự vật quan hệ cơ bản trong UML Có thể cónhững biến thể khác của chúng, chẳng hạn như làm mịn (refinement), lần vết(trace), bao hàm (include) và mở rộng (extend)
1.2.4.1.6 Các biểu đồ trong UML
Một biểu đồ là một biểu diễn đồ thị của một tập các phần tử (các từvựng) thường được thể hiện như là một đồ thị liên thông với các đỉnh (là các
sự vật) và các cung (là các mối quan hệ)
- Biểu đồ lớp (class diagram): Biểu đồ lớp chỉ một tập các lớp, các giaodiện và các sự cộng tác và các mối quan hệ của chúng Ta sử dụng biểu đồlớp để mô hình hóa khung nhìn thiết kế tĩnh của hệ thống Ta thường sử dụngbiểu đồ lớp để :
+ Mô hình hóa bảng từ vựng của hệ thống
+ Mô hình hóa các sự cộng tác đơn giản
+ Mô hình hóa cơ sở logic
- Biểu đồ đối tượng (object diagram): Biểu đồ đối tượng mô hình hóa cácthể hiện của các sự vật trong một biểu đồ lớp Một biểu đồ đối tượng đưa ramột tập các đối tượng và các mối quan hệ giữa chúng tại một thời điểm Ta
sử dụng biểu đồ đối tượng để mô hình hóa các khía cạnh thiết kế tĩnh hoặckhía cạnh tiến trình tĩnh của hệ thống Nó được sử dụng để mô hình hóa cấutrúc của đối tượng
- Biểu đồ ca sử dụng (use case diagram): Biểu đồ ca sử dụng để mô hìnhhóa các khía cạnh động của hệ thống, một hệ thống con, một lớp Mỗi biểu đồchỉ ra một tập các ca sử dụng, các tác nhân và các mối quan hệ giữa chúng.Biểu đồ ca sử dụng mô tả cách nhìn từ bên ngoài để thấy được bối cảnh màtrong đó hệ thống đang tồn tại và những mối quan hệ giữa nó và môi trường
mô tả hoạt động của hệ thống từ bên ngoài không lệ thuộc vào việc nó thựchiện những hoạt động đó như thế nào Vì vậy, mô hình ca sử dụng là phươngtiện để mô tả các yêu cầu của hệ thống Ta sử dụng biểu đồ ca sử dụng để :
+ Mô hình hóa ngữ cảnh của hệ thống
+ Mô hình hóa các yêu cầu của hệ thống
9
Trang 10Chuyển tiền
Hình 1.19: Mô hình ca sử dụng hệ thống giao dịch tín dụng
- Biểu đồ tương tác (interaction diagram): Biểu đồ tuần tự (sequencediagram) và biểu đồ cộng tác (collaboration diagram) là hai dạng của biểu đồtương tác Chúng dùng để mô hình hóa các khía cạnh động của hệ thống Nóbao gồm một tập các đối tượng và mối quan hệ truyền thông báo giữa chúng.Biểu đồ tuần tự nhấn mạnh tới trình tự thời gian của các thông báo; còn biểu
đồ cộng tác nhấn mạnh tới tổ chức cấu trúc của các đối tượng gửi và nhậnthông báo Ta có thể sử dụng hai biểu đồ tương tác thay thế cho nhau vàdùng để :
+ Mô hình hóa các luồng điều khiển (sự kiện ) theo trình tự thời gian.+ Mô hình hóa luồng điều khiển của tổ chức
- Biểu đồ sơ đồ trạng thái (statecchart diagram): Biểu đồ trạng thái biểudiễn một máy trạng thái Nó biểu diễn dòng điều khiển từ trạng thái này tớitrạng thái khác Nó nhấn mạnh dòng điều khiển từ hoạt động này đến hoạtđộng khác đang xảy ra bên trong một máy trạng thái
- Biểu đồ hoạt động (activity diagram): Biểu đồ hoạt động là trường hợpđặc biệt của biểu đồ trạng thái Nó chỉ dòng điểu khiển chính từ hoạt độngnày tới hoạt động khác, nó cũng bao gồm việc mô hình hóa các bước tuần tự(có thể là đồng thời) trong một tiến trình xử lý Biểu đồ trạng thái và biểu đồhoạt động biểu diễn khía cạnh động của hệ thống Chúng có thể dùng choviệc mô hình hóa vòng đời của một đối tượng Ta sẽ dùng biểu đồ hoạt độngđể:
+ Mô hình hóa công việc (có thể rẽ nhánh, phân nhánh, sát nhập)
+ Mô hình hóa một tác vụ (một thủ tục tính toán)
- Biểu đồ thành phần (componenent diagram): Các biểu đồ thành phần
sử dụng để mô hình hóa mặt vật lý của các hệ thống hướng đối tượng Nó cho
ta cách nhìn việc bố trí và thực thi tĩnh của một hệ thống Ta sử dụng biểu đồthành phần để:
+ Mô hình hóa mã nguồn
+ Mô hình hóa xuất phẩm có thể thực hiện được
+ Mô hình hóa các cơ sở dữ liệu vật lý
+ Mô hình hóa các hệ thống có thể làm thích ứng được
Trang 11- Biểu đồ bố trí (deployment diagram): Biểu đồ bố trí mô hình hóa cáckhía cạnh vật lý của một hệ thống hướng đối tượng Nó biểu diễn cấu hìnhcác nút xử lý đang vận hành và các thành phần hoạt động ở trên chúng Nó
có thể còn bao gồm các nút và các ràng buộc Nó cũng hướng vào việc môhình hóa sự phân tán, gửi đi và cài đặt các phần tạo nên hệ thống vật lý Ta
sẽ xử dụng các biểu đồ bố trí để:
+ Mô hình hóa các hệ thống nhúng
+ Mô hình hóa các hệ thống máy khách/ máy dịch vụ
+ Mô hình hóa các hệ thống phân tán đầy đủ
Mặc dù chín biểu đồ trên đã vượt xa nhu cầu chung nhất mà ta thườnggặp trong thực tế phát triển phần mềm hướng đối tượng Tuy nhiên, UML còncung cấp các loại biểu đồ khác cho phép mô hình hóa những trường hợp tinh
tế hơn
1.2.4.2 Các quy tắc của UML (rules of UML)
Mô hình hóa một hệ thống không đơn giản là lắp ghép các khối xâydựng của UML một cách ngẫu nhiên Giống như mọi ngôn ngữ, UML có một sốquy tắc chỉ ra rằng, một mô hình được xây dựng tốt là mô hình có một ngữnghĩa chắc chắn và đồng bộ với tất cả mô hình có quan hệ với nó
UML đưa ra các quy tắc ngữ nghĩa sau đây:
- Tên gọi: Là cái mà ta gọi các sự vật, các mối quan hệ và các biểu đồ
- Phạm vi: Là khung khổ cho ý nghĩa cụ thể đối với một tên gọi
- Tính trực quan: Các tên này có thể nhìn thấy những phần tử sử dụng
- Tính tích hợp: Các sự vật có thể liên kết một cách đặc biệt và chắcchắn với các sự vật khác như thế nào
- Tính thực hiện được: Nó có ý nghĩa gì để vận hành và mô phỏng một
mô hình động
Những nguyên tắc khác cần biết để xây dựng tốt các mô hình là :
- Sự lược đi: Một số phần tử được dấu đi làm đơn giản việc nhìn nhận môhình
- Sự không đầy đủ: Một số phần tử có thể tạm bỏ qua
- Sự không chắc chắn: Sự tích hợp của mô hình có thể là chưa đảm bảo
1.2.4.3 Các cơ chế chung trong UML
UML cung cấp bốn cơ chế chung để áp dụng trong khi mô hình hóa: Cácđặc tả, các bài trí, sự phân hoạch chung, các cơ chế mở rộng
- Đặc tả (specification): UML mạnh hơn một ngôn ngữ đồ họa: Vì rằng,
bên cạnh các kí hiệu đồ họa nó còn cung cấp một cách diễn tả vượt trội bằngvăn bản theo cú pháp và ngữ nghĩa của khối đồ họa sử dụng Ví dụ như một
Trang 12+ execute() + rollback()
# priority()
- timestamp()
Khách hàng
Tên Địa chỉ
Số điện thoại
Jan: Khách hàng
: Khách hàng
Elvse
tập đầy đủ các thuộc tính, các tác vụ và các hành vi mà lớp đó chứa Nhờ vậy
ta dùng các kí hiệu đồ họa để làm trực quan hóa hệ thống, dùng các đặc tảcủa UML để chỉ ra các chi tiết của hệ thống
- Các bài trí (adornments): Hầu hết các phần tử trong UML đều có kí
hiệu đồ họa duy nhất, trực tiếp để cung cấp một sự thể hiện trực quan về cáckhía cạnh quan trọng nhất của phần tử đó
Ví dụ : Kí hiệu về lớp cũng đưa ra các khía cạnh quan trọng nhất củamột lớp, như tên, thuộc tính, các tác vụ của nó Như hình 1.20 chỉ ra một lớpđược bài trí cho biết lớp trừu tượng này có hai tác vụ chung (public), một tác
vụ được bảo vệ (protected) và một tác vụ riêng (private)
Hình 1.20 : Bài trí
- Các phân hoạch chung (common divisions): Các khái niệm mô hình
hóa trong UML thường được phân thành cặp theo hai cách:
Cách 1: Đó là sự phân hoạch của lớp và đối tượng Một lớp là một trừutượng, một đối tượng là một biểu hiện cụ thể của lớp đó Hầu hết mọi khốixây dựng trong UML cùng một loại đều thuộc lớp hay đối tượng UML thườngphân biệt lớp và đối tượng của lớp đó bằng cách gạch chân tên của đối tượng
Hình 1.21: Lớp và đối tượng
Cách 2: Đó là sự phân chia giữa giữa giao diện và triển khai một giaodiện khai báo hợp đồng và sự thực thi hợp đồng để thể hiện việc thi hành cụthể hợp đồng Trong UML, ta có thể mô hình hóa cả giao diện và sự triển khainhư ở hình 22 Trong hình, có một thành phần gọi là Spellingwizard.dll thựchiện giao diện IUnknow và ISpelling
Chung
Được bảo vệ
Riêng
Trang 13Spellingwizard.dll
Giá trị thẻ
EventQueue (version = 3.2 author = egb )
Add() Remove() Flush()
“exception”
overflow
Được sắp
Hình 1.22: Giao diện và sự triển khai
- Các cơ chế mở rộng (extensibility mechanisms): UML cung cấp ngôn
ngữ chuẩn để viết các bản thiết kế phần mềm, nhưng nó không đủ để diễnđạt mọi sắc thái có thể của các mô hình trong mọi lĩnh vực và trong mọi thờiđiểm Vì thế, UML được thiết kế mở cho phép nó có khả năng mở rộng theocách có thể quản lý được Các cơ chế dùng để mở rộng là :
Các khuôn mẫu (stereotypes)
Các giá trị thẻ (tagged values)
Các ràng buộc (constraints)
Sự mở rộng từ vựng của ngôn ngữ UML cho phép tạo ra các khối xâydựng mới từ các khối có sẵn nhưng để cụ thể cho vấn đề của ta bằng cáchthêm vào kí hiệu khuôn mẫu, giá trị thẻ hay ràng buộc Chẳng hạn, nếu tađang làm việc với một ngôn ngữ lập trình C++, ta thường muốn mô hình hóa
sự loại trừ Trong ngôn ngữ này, các sự loại trừ (exception) là các lớp nhưngchúng được đối xử theo cách đặc biệt Ta có thể tạo sự loại trừ là một phần tửcủa mô hình, nghĩa là chúng được xem như là các khối cơ bản khi đánh dấuchúng bằng một dấu thích hợp (“exception”) như đối với lớp Overflow ở hình1.23
Một ràng buộc mở rộng ngữ nghĩa của khối xây dựng trong UML chophép thêm các quy tắc mới hay sửa các quy tắc đã có
Hình 1.23: Cơ chế mở rộng từ lớp
IUnknow
ISpelling
Trang 14PHÂN TÍCH THIẾT KẾ HỆ THỐNG PHẦN MỀM THI TRẮC NGHIỆM 2.1 Mô tả hoạt động nghiệp vụ.
2.1.1 Cấu trúc một phần mềm thi trắc nghiệm
2.1.1.1 Thông tin chung
- Luận cứ khoa học: Là những chứng cứ, những cơ sở có tính khoa học
khẳng định sự ra đời của phần mềm thi trắc nghiệm trên máy tính Nhữngluận cứ đó có thể là yêu cầu đòi hỏi của sự nghiệp đổi mới phương pháp dạy
và học, đặc biệt là sự phát triển nhanh của công nghệ thông tin về sự khả thicủa phần mềm thi trắc nghiệm trên máy vi tính (cơ sở hạ tầng để tổ chức thi,đội ngũ giáo viên, môn học, ngân hàng câu hỏi, ngân hàng đề thi và đápán….)
- Phần mếm thi trắc nghiệm: Giúp giáo viên tổ chức cho sinh viên thitrắc nghiệm trên máy tính các môn học trong chương trình đào tạo
- Mục tiêu chương trình thi trắc nghiệm trên máy vi tính :
+ Nâng cao hơn nữa chất lượng, hiệu quả dạy- học
+ Giúp cho việc đánh giá tri thức của sinh viên trong một thời gianngắn
+ Đánh giá kết quả học tập của sinh viên một cách công bằng, kháchquan, dân chủ
+ Chọn đề thi tự động, nhanh và khách quan mỗi sinh viên có thể làmmột đề thi khác nhau, nhưng vẫn đảm bảo độ khó là tương đương
+ Tránh sinh viên có thể chọn bừa câu trả lời, kết quả nhanh và chínhxác, sinh viên có thể xem đáp án sau khi làm bài xong
+ Có thể bổ sung câu hỏi mới và loại bỏ các câu hỏi không còn phù hợp.+ Sử dụng phương pháp trắc nghiệm trên máy có ý nghĩa quan trọngvới sự đổi mới nền giáo dục nước ta nhất là giáo dục bậc đại học
2.1.1.2 Chức năng của phần mềm thi trắc nghiệm
Phần mềm thi trắc nghiệm cho phép thực hiện các chức năng:
- Cho phép giáo viên thực hiện soạn thảo các câu hỏi và đáp án trênmáy tính, xây dựng ngân hàng câu hỏi, tạo đề thi và đáp án cho các mônhọc
- Thiết kế giao diện tổ chức thi trắc nghiệm trên máy tính cho sinh viên
- Quản lý danh sách sinh viên và kết quả thi của sinh viên
2.1.1.3 Nội dung chi tiết các môn thi.
Trang 15No Sinh viên chọn phương án trả lời từng câu hỏi, câu chọn câu sau để làm tiếp, chọn câu trước đê xem lại hoặc làm lại câu hỏi đó.
ggGiáo viên vào phòng thi
Giáo viên gọi sinh viên vào phòng chờ
Sinh viên nhập họ tên và số báo danh
Thời gian
Yes , hết thời gian làm bài Yes
chọn kết thúc kiểm tra Thông báo
Sinh viên chuẩn bị thi
Sinh viên làm bài thi
Sinh viên kết thúc thi Gọi cho hết sinh viên
Hết câu hỏi
No Làm bài thi tiếp
Các môn thi sử dụng trong phần mềm thi trắc nghiệm cần được chi tiếthóa nội dung thi thành các câu hỏi dạng trắc nghiệm để làm cơ sở cho quátrình triển khai thi trắc nghiệm theo phần mềm này
2.1.2 Mô tả hoạt động nghiệp vụ
2.1.2.1 Nội dung hoạt động nghiệp vụ “Tổ chức thi”
Thời điểm: Trước thời gian thi 30 phút.
Mô tả nghiệp vụ: Giáo viên tổ chức buổi thi: Khởi động phần mềm thi
trắc nghiệm trên máy vi tính, chọn môn thi, thời gian làm bài, số câu một đề,lần lượt gọi sinh viên vào phòng thi Sinh viên chờ giáo viên gọi đến lượt mìnhvào thi kiểm tra, thực hiện làm bài thi trên máy
Sơ đồ cho hoạt động nghiệp vụ được mô tả như sau:
Thời điểm
Trước thờigian thi
20 phút
Chuẩn bịthi
Thi
Kết thúcthi
(Bắt đầu)
`
Hình 2.1: Sơ đồ hoạt động nghiệp vụ tiến hành thi
2.1.2.2 Nội dung hoạt động nghiệp vụ “Xem kết quả thi ”
2.1.2.2.1 Xem điểm
Giáo viên vào hệ thống chọn môn, thời gian làm bài, số câu một đề, tên lớp dự thi, gọi từng sinh viên vào thi
Trang 16Thời điểm : Sau khi kết thúc thi trắc nghiệm của một lớp
Mô tả hoạt động nghiệp vụ: Giáo viên có thể chọn lớp đã thi để
xem bảng điểm kết quả
2.1.2.2.2 In ra giấy
Thời điểm : Sau khi xem điểm thi của lớp
Mô tả hoạt động nghiệp vụ : In kết quả thi của từng lớp ra giấy (In
3 bản, một bản gửi cho lớp, một bản gửi phòng đào tạo và một bản làm bảnlưu)
2.1.2.2.3 Xóa kết quả thi
Thời điểm: Theo quy định của phòng đào tạo về quản lý điểm thi Mô tả hoạt động nghiệp vụ: Khi không còn nhu cầu lưu trữ kết quả
thi của một lớp (Theo quy định của phòng đào tạo về quản lý điểm thi) thìgiáo viên có thể xóa kết quả thi
2.1.2.3 Nội dung hoạt động nghiệp vụ “Tạo đề thi câu hỏi và đáp án ”
2.1.2.3.1 Chọn số câu trong một đề thi
Thời điểm : Sau khi xây dựng xong ngân hàng câu hỏi
Mô tả hoạt động nghiệp vụ: Giáo viên chọn số câu trong một đề
thi tùy theo mục đích thi (kiểm tra trình, thi kết thúc môn, thi thử)
2.1.2.3.2 Chọn thời gian làm bài thi
Thời điểm: Sau khi chọn số câu trong một đề
Mô tả hoạt động nghiệp vụ: Giáo viên chọn thời gian tối đa để làm
một bài thi tùy theo mục đích thi (kiểm tra trình, thi kết thúc môn, thi thử)
2.1.2.3.3 Cập nhật câu hỏi
Thời điểm: Cập nhật thường xuyên
Mô tả hoạt động nghiệp vụ: Cho phép giáo viên bổ sung các câu
hỏi mới, sửa chữa các câu hỏi chưa hợp lý, xóa các câu hỏi không còn phùhợp trong từng môn học
2.1.2.3.4 Tạo ngân hàng câu hỏi
Thời điểm: Sau khi cập nhật câu hỏi cho môn thi
Mô tả hoạt động nghiệp vụ: Cho phép giáo viên tạo ngân hàng câu
hỏi cho từng môn thi từ thư viện câu hỏi đã nhập vào phục vụ cho công tác tổchức thi trắc nghiệm trên máy vi tính hoặc tạo ra các đề thi trên giấy chotừng môn
2.1.2.3.5 Cập nhật đáp án
Thời điểm: Sau khi cập nhật câu hỏi
Trang 17Mô tả hoạt động nghiệp vụ: Cho phép giáo viên nhập đáp án, bổ
sung đáp án tương ứng với các câu hỏi mới, sửa chữa đáp án bị nhầm, xóacác đáp án tương ứng với các câu hỏi bị xóa trong một môn học
2.1.2.3.6 Cập nhật đáp án trừ điểm
Thời điểm: Sau khi cập nhật câu hỏi
Mô tả hoạt động nghiệp vụ: Cho phép giáo viên nhập đáp án trừ
điểm, bổ sung đáp án trừ điểm tương ứng với các câu hỏi mới, sửa chữa đáp
án trừ điểm bị nhầm, xóa các đáp án trừ điểm tương ứng với các câu hỏi bịxóa trong một môn học
2.1.2.3.7 Tạo đề thi và đáp án
Thời điểm: Khi muốn tổ chức thi trắc nghiệm trên giấy
Mô tả hoạt động nghiệp vụ: Cho phép giáo viên có thể tạo đề thi,
đáp án cho từng môn thi phục vụ cho tổ chức thi trắc nghiệm trên giấy tùytheo yêu cầu của chương trình đào tạo
2.1.3 Tổng hợp các chức năng của hệ thống.
Tham
Phân loại
1 Chức năng đăng nhập hệ thống
2 Chức năng tổ chức thi
3 Các chức năng xem kết quả thi
4 Tạo câu hỏi và đáp án
A.3 Tạo đề thi, câu hỏi và đáp án
Trang 18Bảng 2 : Các chức năng hệ thống 2.1.4.Từ điển dữ liệu và mô hình nghiệp vụ.
Việt
Giải thích nội dung
1 Giáo viên Soạn câu hỏi, số câu trong một đề, thời gian thi
2 Sinh viên Làm bài thi trắc nghiệm trên máy vi tính
3 Lớp Lớp tham gia thi trắc nghiệm
4 Điểm Kết quả bài thi trắc nghiệm của sinh viên
5 Môn thi Môn thi giáo viên cho sinh viên thi trắc nghiệm
6 Câu hỏi Câu hỏi sinh viên làm bài trong môn thi trắc
9 Thời gian Thời gian tối đa làm bài thi
10 Số câu Số câu hỏi có trong một đề thi
2.1.4.2 Mô hình miền của hệ thống
Hình 2.2: Mô hình miền của hệ thống phần mềm thi trắc nghiệm
2.1.5 Mô hình ca sử dụng.
2.1.5.1 Xác định các tác nhân
Giáo viên - Đăng nhập hệ thống Tổ chức thành công
Trang 19- Quản lý kết quả thi.
môn thi, tạo ngân hàngcâu hỏi trong máy chotừng môn, lưu trữ kếtquả thi trên máy, tạo đềthi trắc nghiệm trêngiấy
Sinh viên Thực hiện thi trắc nghiệm
trên máy
Nhận được kết quả thi,các câu trả lời đúng, sai,các câu bị trừ điểm
Lãnh đạo
khoa
Xem và nhận kết quả thi các môn học của các lớp đã dự thi
Theo dõi và quản lýđiểm thi của sinh viên
Phòng
đào tạo
Xem và nhận kết quả thi các môn học của các lớp đã dự thi
Quản lý điểm thi củasinh viên
2.1.5.2 Mô tả tổng quát mỗi ca sử dụng
2.1.5.2.1 Gói ca sử dụng “Quản lý đăng nhập hệ thống”
2.1.5.2.1.1 Ca sử dụng đăng nhập hệ thống
Tác nhân: Giáo viên
Mục đích: Đảm bảo tính bảo mật, an toàn, thống nhất cho toàn hệ
thống
Mô tả: Giáo viên phải nhập tên đăng nhập (Username) và mật
khẩu(Password) khi đăng nhập Hệ thống sẽ kiểm tra xem người dùng đó cóquyền đăng nhập hệ thống hay không? Nếu đúng thì cho phép người dùng
đăng nhập vào hệ thống với quyền đã qui định.
Chức năng tham chiếu: A.0.1
Kho hệ thống
Trang 20khẩu (Password) cho truy cập hay
thông báo lỗi
Bảng 5 : Mô tả ca sử dụng đăng nhập hệ thống
2.1.5.2.1.2 Ca sử dụng thay đổi mật khẩu
Tác nhân: Giáo viên
Mục đích: Cấp, thu hồi quyền sử dụng các chức năng của hệ thống
nhằm đảm bảo tính an toàn, bảo mật và thống nhất của hệ thống
Mô tả: Giáo viên nhập nhập tên đăng nhập và mật khẩu cũ tiếp theo
nhập mật khẩu mới, nhắc lại mật khẩu mới và chọn cập nhật hệ thống sẽ cấp một mật khẩu mới
Chức năng tham chiếu : A.0.2
Bảng 6: Mô tả ca sử dụng thay đổi mật khẩu
2.1.5.2.2 Ca sử dụng tiến hành thi.
Tác nhân : Giáo viên, sinh viên
Mục đích : Giúp cho sinh viên làm bài thi trắc nghiệm
Mô tả : Giáo viên chọn môn học thi trắc nghiệm, chọn tên lớp, gọi
sinh viên vào thi Sinh viên vào làm bài, lựa chọn các đáp án cho từng câuhỏi, khi làm xong số câu thì chọn kết thúc kiểm tra hoặc chờ hết thời gian
Chức năng tham chiếu : A.1.1
Trang 21Gói ca sử dụng “Xem kết quả thi”
Xem điểm
In ra giấy
Xóa file điểm
Gi¸o viªn
môn thi, lớp thi tên và chọn OK
3 Sinh viên nhập họ
tên
4 Hiện giao diện thi: câu
hỏi, các phương án lựachọn, đồng hồ tính giờ
Ngân hàng câu hỏi, Đáp án
5 Sinh viên làm bài
thi: lựa chọn phương
án trả lời, làm câu
tiếp hoặc làm lại câu
trước
6 Hiện giao diện thi: câu
hỏi, các phương án lựachọn, đồng hồ tính giờ
Ngân hàng câuhỏi, Đáp án
7 Sinh viên chọn kết
thúc kiểm tra sau khi
làm xong hoặc hết
thời gian làm bài
8 Hiện lại giao diện thi,
kết quả thi, các câu trảlời đúng, các câu bị trừđiểm (sinh viên khôngthể làm lại bài thi)
Danh sách lớp
9 Giáo viên tiếp tục
gọi sinh viên khác
vào thi hoặc kết thúc
buổi thi
10 Quay trở lại bước 2
hoặc quay về giao diệnban đầu
Bảng 7: Mô tả ca sử dụng tiến hành thi
2.1.5.2.3 Gói ca sử dụng xem kết quả thi
Hình 2.3: Biểu đồ gói cho ca sử dụng “Xem kết quả thi”
2.1.5.2.3.1 Ca sử dụng xem điểm
Tác nhân : Giáo viên.
Mục đích : Xem kết quả học tập của từng sinh viên cho môn học đó.
Trang 22Mô tả : Giáo viên mở kết quả thi các môn thi trắc nghiệm trên máy vi
tính của từng lớp để xem bảng điểm kết quả
Chức năng tham chiếu : A.2.1
3 Chọn xem điểm 4 Hiển thị danh sách sinh
viên: STT, Họ tên, điểmthi
Danh sách lớp
Bảng 8: Mô tả ca sử dụng xem điểm
2.1.5.2.3.2 Ca sử dụng in điểm ra giấy
Tác nhân: Giáo viên
Mục đích: In ra giấy kết quả thi trắc nghiệm của lớp tham gia thi Mô tả: Giáo viên mở kết quả thi các môn thi trắc nghiệm trên máy vi
tính của lớp tham gia thi, In kết quả thi ra giấy
Chức năng tham chiếu : A.2.2
5 In bảng điểm 6 Hiển thị giao diện
xem kết quả Danh sách lớp
Bảng 9: Mô tả ca sử dụng In kết quả thi ra giấy
2.1.5.2.3.3 Ca sử dụng xóa kết quả thi
Tác nhân: Giáo viên
Mục đích: Xóa kết quả thi trắc nghiệm của lớp tham gia thi.
Mô tả: Giáo viên mở kết quả thi các môn thi trắc nghiệm trên máy vi
tính của lớp tham gia thi, xoá kết quả thi
Chức năng tham chiếu: A.2.3
Trang 23
Cập nhật câu hỏi
Cập nhật đáp án trừ điểmGiáo viên
Cập nhật đáp án
Tạo ngân hàng câu hỏi
Tạo đề thi và đáp ánChọn số câu trong một đề
Chọn thời gian làm bài thi
5 Giáo viên chọn Yes
hoặc No 6 Xóa kết quả của lớpđó hoặc trở lại giao
diện xem kết quả
Bảng 10: Mô tả ca sử dụng xóa kết quả thi
2.1.5.2.4 Gói ca sử dụng tạo đề thi, câu hỏi và đáp án.
Hình 2.4 : Biểu đồ gói ca sử dụng “Tạo đề thi, câu hỏi và đáp án”
2.1.5.2.4.1 Ca sử dụng chọn số câu trong một đề thi trắc nghiệm
Tác nhân : Giáo viên.
Mục đích : Tạo số lượng câu hỏi trong một đề thi.
Mô tả : Giáo viên chọn số câu trong một đề thi, sau khi chọn xong nếu
Trang 24Chức năng tham chiếu : A.3.1
câu trong một đề thi
2 Hiển thị thông báo Kho hệ thống
3 Chọn số câu 4 Trở về giao diện hệ
thống
Bảng 11: Mô tả ca sử dụng chọn số câu trong một đề thi
2.1.5.2.4.2 Ca sử dụng chọn thời gian thi
Tác nhân : Giáo viên.
Mục đích : Chọn thời gian để sinh viên làm bài thi trắc nghiệm.
Mô tả : Giáo viên chọn thời gian lµm một đề thi, sau khi chọn xong
nếu đồng ý với thời gian đã chọn thì chọn chấp nhận, nếu không chọn hủy
1 Giáo viên chọn thời
gian thi trong một đề
thi
2 Hiển thị thông báo Kho hệ thống
3 Chọn thời gian thi 4 Trở về giao diện hệ
thống
Bảng 12: Mô tả ca sử dụng chọn thời gian thi
2.1.5.2.4.3 Ca sử dụng cập nhật câu hỏi
Tác nhân : Giáo viên
Mục đích : Soạn thảo hệ thống câu hỏi của các môn học phục vụ cho
công việc tạo ngân hàng câu hỏi thi trắc nghiệm
Mô tả : Giáo viên chọn môn thi, soạn th¶o câu hỏi theo cấu trúc câu
hỏi trắc nghiệm Khi soạn thảo câu hỏi giáo viên sắp xếp các câu hỏi theo độkhó tăng dần hoặc giảm dần để phục vụ cho việc tạo ra các đề thi trắcnghiệm đảm bảo độ khó các đề là tương đương
Chức năng tham chiếu: A.3.3
Luồng sự kiện:
Trang 25Hành động của tác nhân Phản ứng của hệ thống Dữ liệu liên
quan
1 Giáo viên chọn chức
năng cập nhật câu hỏi
2 Hiển thị thông báo
3 Chọn môn thi cần cập
nhật câu hỏi
4 Hiển thị thông báo Môn thi
5 Soạn thảo câu hỏi 6 Hiển thị giao diện
soạn thảo câu hỏi
Tác nhân: Giáo viên
Mục đích: Xây dựng hệ thống đáp án cho các môn thi tương ứng với
các câu hỏi trong thư viện câu hỏi phục vụ cho thi trắc nghiệm
Mô tả: Chọn môn thi, soạn thảo phương án trả lời tương ứng câu hỏi Chức năng tham chiếu : A.3.4
Luồng sự kiện:
Hành động của tác nhân Phản ứng của hệ
thống
Dữ liệu có liênquan
4 Hiển thị thông báo Môn thi
5 Soạn thảo đáp án 6 Hiển thị giao diện
Tác nhân: Giáo viên
Mục đích: Xây dựng hệ thống đáp án tương ứng với các câu hỏi.
Mô tả : Chọn môn thi, soạn thảo đáp án trừ điểm tương ứng với câu
Trang 26Chức năng tham chiếu: A.3.5
Luồng sự kiện:
Hành động của tác nhân Phản ứng của hệ
thống
Dữ liệu có liên quan
2.1.5.2.4.6 Ca sử dụng tạo ngân hàng câu hỏi
Tác nhân: Giáo viên
Mục đích: Xây dựng ngân hàng câu hỏi cho các môn học phục vụ cho
thi trắc nghiệm
Mô tả: Chọn môn thi, mở các câu hỏi đã soạn thảo, đếm tổng số câu
hỏi, sau đó tách riêng từng câu hỏi để tạo ngân hàng câu hỏi cho môn thi
Chức năng tham chiếu: A.3.6
Luồng sự kiện:
Hành động của tác nhân Phản ứng của hệ
thống
Dữ liệu có liênquan
1 Giáo viên chọn chức
năng tạo ngân hàng câu
hỏi
2 Hiển thị thông báo
3 Chọn môn thi cần tạo
ngân hàng câu hỏi
4 Hiển thị thông báo Môn thi
5 Tạo ngân hàng câu
hỏi
6 HiÖn giao diện hệthống
Ng©n hµng Câuhỏi
Bảng 16: Mô tả ca sử dụng tạo ngân hàng câu hỏi 2.1.5.2.4.7 Tạo đề thi và đáp án.
Trang 27Tác nhân: Giáo viên
Mục đích: Xây dựng đề thi và đáp án trắc nghiệm một cách ngẫn
nhiên để In ra giấy
Mô tả: Chọn môn thi, mở ngân hàng câu hỏi, đếm tổng số câu hỏi chia
thành các đoạn tương ứng với số câu hỏi trong đề thi trắc nghiệm lấy ngẫunhiên trong mỗi đoạn một câu hỏi tạo đề thi và đáp án cho môn học đó
Chức năng tham chiếu : A.3.7
Ngân hàng câu hỏi
Bảng 17: Mô tả ca sử dụng tạo đề thi và đáp án 2.2 Phân tích hệ thống.
2.2.1 Phân tích từng ca sử dụng.
2.2.1.1 Ca sử dụng đăng nhập hệ thống
* Mô hình khái niệm:
Tác nhân: Giáo viên
Lớp thực thể: Lớp thực thể Tendangnhap chứa các thông tin về người
sử dụng hệ thống, lớp thực thể Matkhau chứa các thông tin về mật khẩu của
Trang 28Yêu cầu
Matkhaumoi Lấy thông tinDoimk
Tendangnhapmoi
Lấy thông tinLưu hệ thống
Hình 2.5: Biểu đồ lớp thực thi ca sử dụng đăng nhập hệ thống
Hình 2.6: Biểu đồ cộng tác cho ca sử dụng đăng nhập hệ thống
2.2.1.2 Ca sử dụng thay đổi mật khẩu.
* Mô hình khái niệm :
Tác nhân: Giáo viên
Lớp thực thể: Lớp thực thể Matkhaumoi chứa thông tin về mật khẩu
mới của hệ thống, lớp thực thể Matkhaumoi2 chứa thông tin về mật khẩu mớiđược nhập lại, lớp thực thể Tendangnhapmoi chứa thông tin về tên đăng nhậpmới của người sử dụng
Lớp giao diện: Form frmDoimk cho phép tác nhân đăng nhập hệ
thống
Lớp điều khiển: Lớp điều khiển Doimk có trách nhiệm điều khiển việc
cập nhật những thay đổi vào hệ thống