Bài giảng Nhập môn công nghệ phần mềm - Bài tập tuần 6 - Trường Đại học Bách khoa Hà Nội

Nhập môn Công nghệ phần mềm  
Introduction to Software Engineering  
(IT3180)  
Bài tập tuần 06  
Kỹ nghệ yêu cầu phần mềm (Requirement  
Engineering)  
Giang vien  
Mục tiêu  
• Thực hiện các bài tập (câu hỏi) về Yêu cầu phần  
mềm  
• Thực hiện các bài tập về công cụ đặc tả yêu cầu  
phần mềm  
• Đặc tả các yêu cầu cho bài toán (casestudy) của  
môn học: sử dụng usecase của UML  
– Xác định các thành phần: tác nhân (actor), ca sử  
dụng (usecase) và các quan hệ → xây dựng biểu đồ  
usecase  
– Đặc tả kịch bản chi tiết cho các usecase  
– Xác định và mô tả các yêu cầu phi chức năng  
Department of Software Engineering -  
10/21/2020  
2
SOICT/HUST  
Đánh giá  
• Hoàn thành các bài tập về Yêu cầu phần mềm  
• Nắm được đặc điểm của các công cụ đặc tả yêu  
cầu phần mềm: Biểu đồ luồng dữ liệu – DFD  
(data flow diagram) + Máy trạng thái – FSM  
(Finite state machine) + Sơ đồ thực thể liên kết  
– ERD (entity relation diagram) + Usecase  
(UML)  
• Hoàn thành đặc tả các yêu cầu cho bài toán  
(casestudy) của môn học: sử dụng usecase của  
UML  
Department of Software Engineering -  
10/21/2020  
3
SOICT/HUST  
Bài 1.1  
a) Lựa chọn nào sau đây mô tả một yêu cầu phi chức  
năng?  
1. Hệ thống phải phát sinh ra một báo cáo về tất cả các chiến dịch  
quảng cáo cho một khách hàng cụ thể  
2. Hệ thống phải cho phép những người sử dụng nhập vào chi tiết  
các khách hàng  
3. Hệ thống phải có khả năng lưu trữ ban đầu là 500MB dữ liệu,  
mỗi năm tăng lên 100MB  
4. Tất cả các phương án trên đều đúng  
Department of Software Engineering -  
10/21/2020  
4
SOICT/HUST  
Bài 1.1  
b) Lựa chọn nào sau đây mô tả một yêu cầu chức năng?  
1. Hệ thống phải có khả năng trả lời tất cả các truy vấn trong 5 giây  
2. Hệ thống cho phép người sử dụng thêm một sản phẩm muốn  
mua vào giỏ hàng  
3. Người sử dụng sẽ gây ra ít lỗi hơn 50% so với hệ thống hiện tại  
4. Giao diện hệ thống thân thiện với người dùng  
Department of Software Engineering -  
10/21/2020  
5
SOICT/HUST  
Bài 1.1  
c) Sơ đồ luồng dữ liệu cung cấp thông tin gì?  
1. Đưa ra hình ảnh quan hệ giữa các đối tượng dữ liệu  
2. Đưa ra hình ảnh những chức năng biến đổi luồng dữ liệu  
3. Chỉ ra những quyết định logic chính khi chúng xuất hiện  
4. Chỉ ra sự tương tác của hệ thống với sự kiện bên ngoài  
Department of Software Engineering -  
10/21/2020  
SOICT/HUST  
6
Bài 1.1  
d) Đặc tả hệ thống mô tả _____?  
1. Chức năng, hiệu năng và các ràng buộc của hệ thống  
2. Bản cài đặt của hệ thống  
3. Các phần tử kiến trúc phần mềm  
4. Thời gian cần thiết cho mô phỏng hệ thống  
Department of Software Engineering -  
10/21/2020  
7
SOICT/HUST  
Bài 1.1  
e) Hoạt động nào sau đây không phải là mục tiêu của xây  
dựng mô hình yêu cầu?  
1. Xác định một tập các yêu cầu phần mềm có thể được thẩm định  
2. Mô tả các yêu cầu khách hàng  
3. Tạo lập một cơ sở cho thiết kế phần mềm  
4. Đưa ra giải pháp sơ bộ cho vấn đề đặt ra  
Department of Software Engineering -  
10/21/2020  
8
SOICT/HUST  
Bài 1.1  
f) Điều gì xảy ra khi sử dụng ngôn ngữ tự nhiên để mô tả  
các yêu cầu? (chọn nhiều)  
1. Một vài yêu cầu được diễn đạt chung, đi cùng nhau ở dạng một  
yêu cầu  
2. Các yêu cầu, mục tiêu hệ thống và thông tin thiết kế có thể  
không được phân biệt rõ ràng  
3. Dễ dẫn đến hiểu nhầm giữa người đọc và người viết  
4. Cung cấp thông tin đầy đủ nhất cho người phát triển  
Department of Software Engineering -  
10/21/2020  
9
SOICT/HUST  
Bài 1.2  
a) Bạn thử đưa ra một cấu trúc chung nhất cho tài liệu đặc  
tả yêu cầu. Trình bày ngắn gọn các lợi ích chính của tài liệu  
đặc tả yêu cầu?  
Tài liệu yêu cầu  
10/21/2020  
Ví dụ  
10/21/2020  
11  
10/21/2020  
12  
Bài 1.2  
b) Bạn hãy tìm hiểu và mô tả các vấn đề gây ra các khó  
khăn trong thu thập yêu cầu?  
Department of Software Engineering -  
10/21/2020  
13  
SOICT/HUST  
Bài 1.2  
Hướng dẫn:  
• Những vấn đề từ phía người dùng:  
– Người dùng không hiểu họ muốn gì  
– Người dùng liên tục thay đổi yêu cầu  
– Người dùng không hiểu về kỹ thuật  
– Người dùng không hiểu về quy trình phát triển  
• Những vấn đề từ phía nhà phát triển:  
– Ngôn từ của người dùng và nhà phát triển không khớp nhau  
– Nhà phát triển cố lái cho yêu cầu của người dùng khớp với một hệ thống hay mô hình  
sẵn có thay vì phát triển một hệ thống theo nhu cầu của khách hàng  
– Việc phân tích có thể do các lập trình viên thực hiện thay vì các nhân viên có kỹ năng  
phân tích để có thể hiểu được nhu cầu của khách hàng một cách đúng đắn  
• Những vấn đề khác:  
– Các yêu cầu thường mang tính đặc thù của tổ chức đặt hàng nó, do đó nó thường  
khó hiểu, khó định nghĩa và không theo một tiêu chuẩn nào cả  
– Các hệ thống thông tin lớn có rất nhiều người sử dụng, do đó các yêu cầu thường rất  
đa dạng và có các mức ưu tiên khác nhau, thậm chí mâu thuẫn lẫn nhau  
– Người đặt hàng nhiều khi là các nhà quản lý, không phải là người dùng thực sự do đó  
Department of Software Engineering -  
việc đưa ra các yêu cầu thường không chính xác  
10/21/2020  
14  
SOICT/HUST  
Bài 1.3  
Trong ngữ cảnh của  
software engineering và  
kỹ nghệ yêu cầu phần  
mềm, hãy thảo luận  
nhóm và viết một đoạn  
ngắn bình luận về bức  
tranh vui dưới đây?  
Department
10/21/2020  
Bài 1.4  
Hãy gọi tên các biểu đồ sau đây. Mỗi biểu đồ hướng về vấn  
đề gì trong đặc tả và phân tích yêu cầu phần mềm? Từng  
biểu đồ cho chúng ta biết những thông tin gì?  
Department of Software Engineering -  
10/21/2020  
16  
SOICT/HUST  
Bài 1.4  
Biểu đồ 1: Hệ thống bán hàng  
Chi tiết đơn  
đặt hàng và  
mẫu HĐ  
1
Khách hàng  
Điền đơn hàng  
trống  
Đơn hàng đã  
được điền  
2
Kiểm tra đơn hàng  
Đơn hàng đã  
được duyệt  
3
Ghi đơn hàng  
1
Đơn hàng  
4
Điều chỉnh kho  
Đơn hàng đã  
được duyệt  
5
2
Kho hàng  
Gửi nhà cung cấp  
Department of Software Engineering -  
SOICT/HUST  
10/21/2020  
17  
Bài 1.4  
Biểu đồ 2: Hệ thống đăng ký học trực tuyến  
Department of Software Engineering -  
10/21/2020  
18  
SOICT/HUST  
Bài 1.4  
Biểu đồ 3: Hệ thống bán hàng  
Department of Software Engineering -  
SOICT/HUST  
10/21/2020  
19  
Bài 1.4  
Biểu đồ 4: Hệ thống đăng ký học trực tuyến  
Department of Software Engineering -  
10/21/2020  
SOICT/HUST  
20  
Tải về để xem bản đầy đủ
pdf 38 trang Thùy Anh 20820 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Nhập môn công nghệ phần mềm - Bài tập tuần 6 - Trường Đại học Bách khoa Hà Nội", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_nhap_mon_cong_nghe_phan_mem_bai_tap_tuan_6_truong.pdf