Đề thi Học kì 1 môn Công nghệ phần mềm - Đề 1 - Năm học 2019-2020
ĐỀ THI HỌC KỲ 1 NĂM HỌC 2019-2020
Thời gian: 90 phút Ngày thi: 13/01/2020
Mã học phần: IT3180 Tên học phần: Nhập môn công nghệ phần mềm
BỘ MÔN
CÔNG NGHỆ
PHẦN MỀM
Đề 1
Họ và tên sinh viên:……………………………………………………………………….
Mã số sinh viên:…………………… …………………… Mã lớp: ……………………
Điền đầy đủ thông tin vào chỗ trống trong đề thi. Không sử dụng máy tính, điện thoại di động, thiết bị điện tử.
Cán bộ coi thi không giải thích gì thêm. Nộp bài kèm theo đề.
Phần 1.(4 điểm) Trắc nghiệm: sinh viên làm bài vào đề thi. Tô đen (●) vào phương án bạn lựa chọn cho mỗi câu
hỏi trong bảng sau. (Chú ý: chỉ tính điểm các câu trả lời được đánh dấu trong bảng)
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15 16 17 18 19 20
A
B
C
D
⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪
⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪
⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪
⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪ ⚪
1.
Lựa chọn nào sau đây là giải thích phù
c.
Xây dựng một hệ thống thực thi được dựa
hợp nhất với mô hình thác nước “WaterFall
vào thiết kế.
Model”?
d.
Thẩm định lại tính đúng đắn của giải pháp
a.
Ứng dụng được chia ra thành các đơn vị
theo yêu cầu ban đầu đã đặt ra.
nhỏ. Sau đó từng đơn vị trong chúng được thiết kế
và lập trình tuần tự cái nọ tiếp cái kia.
4.
Agile?
Mô tả nào phù hợp nhất với mô hình
b.
Việc phát triển hệ thống sẽ được làm theo
a.
Công việc được thực hiện theo trình tự: lập
thứ tự các pha trong tiến trình phần mềm, không
quay trở lại công việc ở pha trước của tiến trình.
kế hoạch cơ bản, thiết kế ngoài, thiết kế trong, thiết
kế chương trình, lâp trình, kiểm thử.
c.
Một sản phẩm thực nghiệm được sinh ra,
b.
Tập trung vào xây dựng các tài liệu trong
và việc kiểm tra các đặc tả yêu cầu và ước lượng
tiến trình phát triển.
được thực hiện trong giai đoạn sớm.
c.
d.
5.
Nhấn mạnh đặc điểm toán học của yêu cầu.
Dễ dàng thích nghi với các thay đổi xảy ra.
Lý do khiến nhóm phát triển phần mềm
d.
Thời gian phát triển được rút ngắn bởi sự
tham gia của người dùng, bằng việc phát triển với ít
kĩ sư hơn và bằng việc dùng có hiệu quả các công
cụ phát triển.
nên tạo nguyên mẫu (prototype)?
a. Tạo nguyên mẫu làm sơ sở cho việc viết
đặc tả cho sản phẩm.
2.
Trong các giai đoạn phát triển phần
mềm, thứ tự kiểm thử nào sau đây phù hợp
nhất?
b.
Tạo nguyên mẫu dùng làm bản kiểm thử
cho phần mềm sau này.
a.
Kiểm thử hệ thống Kiểm thử tích hợp
c.
Tạo nguyên mẫu giúp hạ thấp chi phí sửa
Kiểm thử đơn vị
lỗi.
d.
b.
Kiểm thử hệ thống Kiểm thử đơn vị
Tất cả các phương án đều đúng.
Kiểm thử tích hợp
6.
Trong các tính chất sau, tính chất nào là
c.
Kiểm thử đơn vị Kiểm thử tích hợp
đặc trưng của thiết kế hướng đối tượng?
a. Các đối tượng liên lạc với nhau thông qua
các biến dùng chung.
Kiểm thử hệ thống
d.
Kiểm thử đơn vị Kiểm thử hệ thống
b.
Các đối tượng liên lạc với nhau thông qua
Kiểm thử tích hợp
3.
Trong quá trình phát triển phần mềm,
trao đổi thông báo.
giai đoạn thiết kế phần mềm có nghĩa là?
c.
Các đối tượng độc lập với nhau và không
a.
b.
Xây dựng giải pháp cho vấn đề.
Nhận biết vấn đề, bài toán thực tế, các yêu
liên lạc.
d.
Các đối tượng chia sẻ với nhau thông qua
cầu mà người dùng đặt ra.
trạng thái hệ thống tập trung.
(Đề 1) - Trang 1
7.
Các dự án phần mềm có đặc trưng nào
b. Quản lý rủi ro
cơ bản nhất?
c. Quản lý phiên bản bàn giao
a.
b.
Người quản lý không cần chuyên môn.
Các thành viên trong đội dự án phải có
d. Quản lý nhánh phát triển
14.
Việc kết hợp các mã nguồn chương trình,
thư viện và dữ liệu, biên dịch sau đó liên kết để
tạo ra một hệ thống thực thi được là:
a. Xây dựng hệ thống
cùng ý tưởng.
c.
ngân được.
Rất khó tiêu tiền nên thường không giải
d.
8.
Phức tạp và sản phẩm ít hữu hình.
Phát biểu nào là phù hợp nhất cho
b. Quản lý phiên bản bàn giao
c. Quản lý thay đổi
usecases?
d. Quản lý cấu hình
a.
b.
Mô tả sự biến đổi trạng thái của hệ thống.
Nguyên mẫu được phát triển để xác định
15. Điều gì trong các điều sau là phát biểu
không đúng về thiết kế cấu trúc?
a. Thiết kế cấu trúc tập trung vào việc phân rã
các thủ tục
yêu cầu tốt hơn.
c.
Tập hợp các kịch bản mô tả việc sử dụng
hệ thống dưới góc nhìn của tác nhân.
b. Ưu điểm là biểu diễn được luồng dữ liệu
c. Thiết kế cấu trúc tuân theo biểu đồ cấu trúc
d. Không có đáp án nào sai
d.
9.
Mô tả về môi trường kĩ thuật của hệ thống.
Phát biểu nào phù hợp với mô hình phát
triển phần mềm xoắn ốc?
16. Đâu là giải pháp cho thiết kế cấu trúc?
a. Mô hình đặc tả theo sơ đồ luồng dữ liệu
b. Các thủ tục được thể hiện dưới dạng các
bubbles
c. Mô hình đặc tả là biểu đồ cấu trúc hiển thị
phân cấp gọi và phân luồng dữ liệu đến và đi
của các thủ tục
a.
Kết thúc với việc xuất xưởng sản phẩm
phần mềm
b.
c.
Nhiều hỗn độn hơn với mô hình gia tăng
Bao gồm việc đánh giá những rủi ro phần
mềm trong mỗi vòng lặp
d.
Chỉ phù hợp cho thiết kế phần cứng máy
tính
10.
d. Nhấn mạnh vào phân rã các thủ tục
17. Đáp án nào sau đây không đại diện cho
thiết kế hướng đối tượng?
a. Các thủ tục trong thiết kế cấu trúc được phân
rã dưới dạng các lớp và đối tượng
b. Chương trình được xem như là một tập hợp
các đối tượng
c. Biểu diễn bằng các biểu đồ lớp cho biết một
chương trình tạo ra từ những lớp nào và quan
hệ giữa chúng
Thành phần của một kế hoạch quản lý
cấu hình cho phép thiết lập phạm vi và hướng
dẫn cho phiên bản hiện tại của phần mềm?
a. Phạm vi (Scope of Software)
b. Tài liệu tham chiếu (References)
c. Thành phần cấu hình (Configuration Item)
d. Cấu hình cơ bản (Baseline)
11.
Phát biểu nào dưới đây mô tả phù hợp
nhất cho nguyên lý mở-đóng (OCP) trong các
nguyên lý thiết kế cơ bản ?
d. Phương pháp hướng đối tượng kết hợp cả
phương pháp hướng cấu trúc
a.
Các lớp con nên được thiết kế để thay thế
được các lớp cha.
18. Thiết kế phần mềm là:
b.
Các lớp không được tái sử dụng cùng nhau
a. Một hoạt động phải chịu các ràng buộc
b. Chỉ định bản chất và thành phần của sản phẩm
phần mềm
thì không nên nhóm lại với nhau.
c.
Nhiều giao diện con cụ thể thì tốt hơn một
giao diện lớn tổng quát.
c. Đáp ứng nhu cầu và mong đợi của khách hàng
d.
Một mô-đun (thành phần) nên được thiết
d. Tất cả những đáp án trên
kế thuận tiện cho việc mở rộng nhưng nên đóng
cho việc hiệu chỉnh.
19. Đâu là các loại yêu cầu phần mềm?
a. Tính sẵn có
12.
Điều gì kết hợp các thủ tục và công cụ để
quản lý các phiên bản khác nhau của các đối
tượng cấu hình được tạo ra trong quy trình phát
triển phần mềm?
b. Độ tin cậy
c. Tính khả dụng
d. Tất cả các đáp án trên
20. Các yêu cầu phần mềm nhìn từ quan điểm
của người phát triển?
a. Quản lý thay đổi (Change Control)
b. Quản lý phiên bản (Version Control)
c. SCIs
a. Tính khả chuyển
b. Khả năng bảo trì
d. Không có đáp án nào đúng
c. Tính sẵn có
13.
Đáp án nào trong các đáp án sau không
phải là một nhiệm cụ của quản lý cấu hình phần
mềm?
d. Cả tính khả chuyển và khả năng bảo trì
a. Xác định các thành phần cấu hình
Phần 2. (6 điểm) Tự luận. Đọc mô tả Casestudy dưới đây và trả lời các câu hỏi kèm theo:
(Đề 1) - Trang 2
Cửa hàng BKStore cần xây dựng một hệ thống bán hàng trên nền tảng Web. Hệ thống cho phép
khách hàng có thể truy cập xem thông tin các sản phẩm được bày bán và đặt mua hàng trực tuyến vào mọi
thời điểm trong ngày 24/7.
Với mục tiêu tạo sự tiện lợi cho khách hàng, hệ thống cho phép mọi khách hàng đều có thể xem thông
tin sản phẩm. Chỉ khi thanh toán đơn hàng thì mới yêu cầu đăng nhập tài khoản hoặc đăng ký thành viên.
Giao diện Web cần được thiết kế để tương thích tốt với các kích thước màn hình hiển thị khác nhau bao
gồm cả màn hình điện thoại di động. Các sản phẩm bày bán được sắp xếp theo danh mục và được trình
bày bằng hình ảnh kèm theo mô tả chi tiết. Khách hàng đặt mua sản phẩm bằng cách chọn các sản phẩm
mong muốn vào giỏ hàng. Khách hàng có thể tìm kiếm sản phẩm theo nhiều tiêu chí khác nhau như: tên
sản phẩm, chủng loại, giá thành. Để phục vụ cho các khách hàng là người nước ngoài hệ thống cần cung
cấp chức năng chuyển đổi ngôn ngữ hiển thị với hai ngôn ngữ là tiếng Việt và tiếng Anh.
Sau khi chọn xong giỏ hàng, khách hàng sẽ thực hiện các bước thanh toán. Khách hàng được yêu cầu
cung cấp các thông tin các nhân như: họ tên, số điện thoại liên hệ, địa chỉ, email để dùng cho việc giao
hàng. Khách hàng có thể lựa chọn phương thức thanh toán: thanh toán khi giao hàng hoặc thanh toán trực
tuyến. Nếu chọn thanh toán trực tuyến, khách hàng cần cung cấp các thông tin: ngân hàng, số tài khoản/số
thẻ, họ tên chủ tài khoản. Hệ thống sẽ kết nối với hệ thống thanh toán của ngân hàng để kiểm tra thông tin
tài khoản và thực hiện thanh toán. Tất cả những thông tin do khách hàng cung cấp đều được hệ thống mã
hoá trước khi lưu trữ hoặc truyền tải nhằm đảm bảo tính bảo mật. Trong trường hợp khách hàng có cung
cấp địa chỉ email, hệ thống sẽ gửi thông tin đơn đặt hàng cùng với ngày dự kiến giao hàng cho khách
hàng. Hệ thống cũng cung cấp chức năng tích luỹ điểm thưởng cho khách hàng (dựa trên giá trị đơn hàng
đặt mua) phục vụ cho các chương trình khuyến mãi hoặc đổi quà.
Bộ phận giao hàng sẽ truy cập vào hệ thống để xác nhận các đơn đặt hàng của khách hàng. Mỗi đơn
hàng sau khi xác nhận sẽ được xem xét xử lý trong khoảng thời gian từ 1 đến 3 ngày. Hệ thống hỗ trợ kết
xuất danh sách đơn hàng theo nhiều tiêu chí khác nhau: ngày đặt hàng, khu vực giao hàng, loại mặt hàng,
trạng thái. Dựa vào danh sách kết xuất, bộ phận giao hàng sẽ phân chia lực lượng giao hàng sao cho hiệu
quả nhất. Những đơn đặt hàng đã được giao nhận xong sẽ được bộ phận giao hàng cập nhật lại tình trạng
là hoàn tất.
Vào cuối mỗi ngày, sau khi tiến hành kiểm kê các sản phẩm tồn kho, bộ phận bán hàng chịu trách
nhiệm cập nhật lại danh sách các sản phẩm được bày bán. Công việc bao gồm: cập nhật lại số lượng sản
phẩm tồn, thêm vào thông tin các sản phẩm mới nhập, ẩn đi các sản phẩm hết hàng. Ngoài ra bộ phận bán
hàng cũng tiến hành thống kê doanh thu của từng loại sản phẩm vào cuối mỗi tháng.
Các nhân viên sau khi xác thực tài khoản thành công mới được phép truy cập vào hệ thống để thực
hiện công việc nghiệp vụ của mình. Thông tin tài khoản và các cấu hình của website được quản lý bởi bộ
phận quản trị hệ thống.
a) (2 điểm) Yêu cầu của quản lý của hàng cần phải nhanh chóng quảng bá thông tin các sản phẩm
đang bày bán. Nhóm phát triển đưa ra đề xuất một phiên bản tạm của hệ thống được xây dựng và cài đặt
trên một máy chủ thử nghiệm. Việc phát triển tiếp theo của hệ thống sẽ thông qua các kinh nghiệm thu
được từ quá trình hoạt động của phiên bản tạm và phản hồi của khách hàng và các bộ phận. Em hãy phân
tích ưu nhược điểm của chiến lược phát triển nói trên trong việc xây dựng hệ thống phần mềm này?
b) (2 điểm) Các quy tắc cơ bản trong thiết kế giao diện người dùng? Hãy thiết kế chi tiết giao diện
màn hình hỗ trợ bộ phận giao hàng kết xuất danh sách đơn hàng theo các tiêu chí:
●
●
●
●
Trạng thái đơn hàng
Loại mặt hàng
Ngày đặt hàng: trong một khoảng nào đó
Khu vực giao hàng: các quận huyện trong thành phố
c) (2 điểm) Chức năng quy đổi điểm thưởng tích luỹ được xác định như sau:
- Nếu đơn hàng có ít hơn 3 loại sản phẩm thì được tích luỹ 1 điểm
- Nếu đơn hàng có từ 3 loại sản phẩm trở lên:
+ Nếu giá trị đơn hàng < 500.000đ thì được tính 2 điểm
+ Nếu giá trị đơn hàng >= 500.000đ đến dưới 1.600.000đ thì được tính 3 điểm
(Đề 1) - Trang 3
+ Nếu giá trị đơn hàng >= 1.600.000đ thì được tính 4 điểm
Hãy áp dụng phương pháp phân lớp tương đương trong kỹ thuật kiểm thử hộp đen đưa ra các trường
hợp kiểm thử tối thiểu cho mô đun tính điểm tích luỹ. Em thấy phương pháp phân lớp tương đương có
nhược điểm gì trong trường hợp này?
(Đề 1) - Trang 4
Bạn đang xem tài liệu "Đề thi Học kì 1 môn Công nghệ phần mềm - Đề 1 - Năm học 2019-2020", để 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:
de_thi_hoc_ki_1_mon_cong_nghe_phan_mem_de_1_nam_hoc_2019_202.pdf

