Công nghệ phần mềm - Phạm Hùng Phú, Nguyễn Văn Thẩm Biên soạn - 6


CÂU HỎI VÀ BÀI TẬP CHƯƠNG 1


1. Nêu khái niệm công nghệ phần mềm và kiến trúc của công nghệ phần mềm.

2. Nêu lĩnh vực nghiên cứu của công nghệ phần mềm.

3. Nêu vai trò, công việc và các kỹ năng cơ bản của kỹ sư phần mềm.

4. Nêu sản phẩm phần mềm và các đặc tính của nó.

5. Nêu các loại sản phẩm phần mềm, mỗi loại cho một ví dụ.

6. Nêu các tiêu chuẩn để phân loại nghề nghiệp trong lĩnh vực công nghệ thông tin.

7. Vẽ sơ đồ biểu diễn mối liên hệ của con đường nghề nghiệp cho các mức kinh nghiệm. Giải thích các thành phần trong sơ đồ.

Có thể bạn quan tâm!

Xem toàn bộ 305 trang tài liệu này.

8. Nêu các loại hình công việc trong lĩnh vực công nghệ thông tin.

9. Nêu các phương pháp xử lý thông tin, mỗi phương pháp cho một ví dụ.

10. Nêu các mô hình (qui trình) xây dựng phần mềm.

11. Trình bày ý tưởng, ưu điểm, nhược điểm, cho ví dụ của các mô hình phát triển phần mềm

- Mô hình thác nước

- Mô hình chữ V

- Mô hình tiến triển

- Mô hình lặp

- Mô hình tăng dần

- Mô hình mẫu

- Mô hình đài phun nước

- Mô hình phát triển dựa trên thành phần

12. Giải thích tại sao các hệ thống được xây dựng dựa trên mô hình phát triển tiến triển thường khó bảo trì?

13. Tại sao một lập trình viên tốt chưa chắc đã là một người quản lý tốt?

14. Cho biết cách phối hợp mô hình thác nước, mô hình mẫu và mô hình xoắn ốc.

15. Nêu các phương pháp phát triển phần mềm.

16. Nêu các vai trò của người dùng trong quá trình phát triển phần mềm.

17. Xét phần mềm quản lý tuyển sinh của trường ĐHSPKT Nam Định, chỉ khi hết hạn nộp hồ sơ thì hội đồng tuyển sinh trường mới xử lý hồ sơ đăng kí dự thi. Vậy trường ĐHSPKT Nam Định đã sử dụng phương pháp xử lý thông tin nào ? Giải thích.

18. Xét phần mềm rút tiền tự động của máy rút tiền tự động ATM. Sau khi người dùng nhập mã pin thành công và lựa chọn chức năng, thì máy ATM thực hiện các tiến trình xử lý mà không có sự can thiệp của người dùng. Vậy nhà phát riển phần mềm đã áp dụng phương pháp xử lý thông tin nào? Giải thích.


19. Năm 2010, Công ty Misa đã ban giao thành công dự án quản lý nhân khẩu của quận Hoàng Mai – Hà Nội. Tháng 1 năm 2012, công ty nhận được đơn đặt hàng xây dựng hệ thống quản lý nhân khẩu cho huyện Vụ Bản - Nam Định, vậy công ty này nên sử dụng mô hình nào để phát triển ? Vì sao ?

20. Bệnh viện Bạch Mai cần xây dựng hệ thống thông tin quản lý bệnh nhân, quản lý thuốc cùng một thời gian thì nên sử dụng mô hình nào để phát triển ? Vì sao ?

21. Kỹ sư phần mềm hay Lập trình viên phải có những kỹ năng hay nhiệm vụ nào sau đây? Nếu là Kỹ sư phần mềm chọn True. Nếu là Lập trình viên chọn False.

1) Thành thạo về ngôn ngữ lập trình và viết được các chương trình ứng dụng True False

2) Biết cách cài đặt chương trình dựa trên những giải pháp hoặc thuật toán cho

sẵn


True False

3) Có kiến thức về các mô hình quy trình công nghệ phần mềm và có khả năng

lựa chọn một mô hình thích hợp vào dự án True False

4) Biết cách phân tích và định nghĩa hệ thống thông qua phỏng vấn khách hàng,

thu thập tài liệu, ...

True False

5) Biết được sự khác nhau giữa các quy trình công nghệ phần mềm và thấy được ưu/nhược điểm của từng quy trình.

True False

6) Biết cách kiểm thử phần mềm và có thể kiểm thử hệ thống một cách hiệu

quả.

True False

22. Chọn một phương án tốt nhất cho các câu hỏi sau:

1) Chọn 5 hoạt động chính, tổng quát trong quá trình xây dựng phần mềm.

a. Phân tích, Thiết kế, Lập trình, Gỡ lỗi,, Bảo trì

b. Giao tiếp, Quản lý rủi ro, Ước lượng, Sản xuất, Kiểm tra lại

c. Giao tiếp, Lập kế hoạch, Mô hình hoá, Xây dựng, Triển khai

d. Phân tích, Lập kế hoạch, Thiết kế, Lập trình, Kiểm thử

2) Mô hình phát triển phần mềm dựa trên mẫu thử là

a. Một phương pháp thích hợp được sử dụng khi các yêu cầu đã được xác định rò ràng.


b. Phương pháp tốt nhất được sử dụng trong các dự án có nhiều thành viên

c. Một mô hình rất rủi ro, rất khó có thể đưa ra một sản phẩm tốt.

d. Một phương pháp hữu ích khi khách hàng không thể định nghĩa các yêu cầu một cách rò ràng.

3) Mô hình xoắn ốc trong quá trình phát triển phần mềm.

a. Kết thúc với một sản phẩm được chuyển giao

b. Phức tạp và lộn xộn hơn mô hình lặp lại, tăng thêm

c. Phải đánh giá rủi ro của dự án trong từng bước lặp xoắn ốc

d. Tất cả các khẳng định trên

4) Mô hình tăng vòng trong quá trình phát triển phần mềm

a. Là một phương pháp thích hợp khi các yêu cầu đã được xác định rò ràng

b. Là phương pháp tốt nhất được sử dụng khi dự án có quá nhiều thành viên tham dự.

c. Là một mô hình mang tính cách mạng, nhưng không được sử dụng với các sản phẩm thương mại.

d. Là một phương pháp tốt để tạo ra phần cốt lòi của sản phẩm một cách nhanh chóng.

5) Công nghệ phần mềm là việc áp dụng

a. Các công cụ b. Các kỹ thuật

c. Các phương pháp d. a và b

6) Công nghệ phần mềm là một mô hình được phân theo mấy tầng ? a. 1 b. 2 c. 3 d. 4

7) Kỹ sư phần mềm cần có kỹ năng cơ bản nào ?

a. Định danh, đánh giá, cài đặt, lựa chọn một phương pháp luận và các công cụ CASE

b. Biết cách sử dụng các mẫu phần mềm (prototyping)

c. Biết cách lựa chọn ngôn ngữ, phần cứng, phần mềm

d. Cả 3 phương án trên

8) Ai là người được gọi là những chuyên gia phụ trách các dự án ?

a. Kỹ sư phần mềm b. Chuyên gia kỹ thuật

c. Lãnh đạo d. Chuyên gia phần mềm

9) Sản phẩm phần mềm bao gồm ?

a. Các phần mềm

b. Tài liệu mô tả phương thức cài đặt

c. Tài liệu mô tả cách thức sử dụng



nhất ?


nhất ?

d. Cả a, b, c

10) Hệ thống quản lý điểm sử dụng phương pháp xử lý thông tin nào là hợp lý


a. Xử lý theo lô b. Xử lý trực tuyến

c. Xử lý thời gian thực d. Xử lý tương tác

11) Hệ thống quản lý lương sử dụng phương pháp xử lý thông tin nào là hợp lý


a. Xử lý theo lô b. Xử lý trực tuyến

c. Xử lý giao dịch d. Xử lý tương tác

12) Hệ thống rút tiền tự động ATM sử dụng phương pháp xử lý thông tin nào là

hợp lý nhất ?


a. Xử lý theo lô b. Xử lý trực tuyến

c. Xử lý tương tác d. Xử lý giao dịch

13) Hệ thống tính tiền tại quầy thu ngân tại một siêu thị sử dụng phương pháp xử lý thông tin nào là hợp lý nhất ?

a. Xử lý theo lô b. Xử lý trực tuyến

c. Xử lý phân tán d. Xử lý giao dịch

12) Hệ thống điều khiển dây truyền sản xuất nước ngọt sử dụng phương pháp xử lý thông tin nào là hợp lý nhất ?

a. Xử lý phân tán b. Xử lý thời gian thực

c. Xử lý tương tác d. Xử lý giao dịch

13) Hệ thống quản lý các tài khoản ngân hàng sử dụng phương pháp xử lý thông tin nào là hợp lý nhất ?

a. Xử lý phân tán b. Xử lý thời gian thực

c. Xử lý tương tác d. Xử lý theo lô

14) Các đặc tính của một sản phẩm phần mềm ?

a. Dữ liệu, xử lý, ràng buộc, giao diện

b. Dữ liệu, xử lý, ràng buộc, phương pháp

c. Dữ liệu, kỹ thuật, ràng buộc, phương pháp

d. Dữ liệu, xử lý, đặc tả, giao diện

15) Có mấy mô hình phát triển phần mềm ?

a. 3 b. 4 c. 5 d. 6

16) Mô hình phát triển phần mềm nào mà một giai đoạn tiếp theo được phát triển chỉ khi giai đoạn trước đó đã được hoàn tất ?

a. Mô hình tuyến tính b. Mô hình mẫu

c. Mô hình xoắn ốc d. Mô hình đài phun nước


17) Mô hình phát triển phần mềm nào mà một sản phẩm phần mềm được xây dựng dựa trên những thành phần đã có sẵn ?

a. Mô hình tuyến tính b. Mô hình mẫu

c. Mô hình xoắn ốc d. Mô hình phát triển dựa trên thành phần

18) Mô hình phát triển phần mềm nào mà toàn bộ qui trình được chia thành hai nhóm giai đoạn tương ứng nhau: phát triển và kiểm thử.

a. Mô hình tiến triển b. Mô hình mẫu

c. Mô hình chữ V d. Mô hình phát triển dựa trên thành phần

19) Mô hình phát triển phần mềm nào mà bao gồm bốn hoạt động chính: Kế hoạch, phân tích rủi ro, xây dựng phần mềm, đánh giá của khách hành.

a. Mô hình tuyến tính b. Mô hình tiến triển

c. Mô hình xoắn ốc d. Mô hình chữ V

20) Mô hình phát triển phần mềm nào mà sử dụng cách tiếp cận hướng đối

tượng.


a. Mô hình tuyến tính b. Mô hình đài phun nước

c. Mô hình xoắn ốc d. Mô hình chữ V

21) Mô hình phát triển phần mềm nào mà sau mỗi phiên bản các chức năng của

sản phẩm được thêm vào.

a. Mô hình tuyến tính b. Mô hình đài phun nước

c. Mô hình chữ V d. Mô hình tăng dần

22) Mô hình phát triển phần mềm nào mà sau mỗi phiên bản sản phẩm có thể bị thay đổi.

a. Mô hình tiến triển b. Mô hình mẫu

c. Mô hình lặp d. Mô hình phát triển dựa trên thành phần

23) Ứng dụng nào mà trong đó các yêu cầu, các dữ liệu và quá trình xử lý được biết rò và có cấu trúc tốt.

a. Ứng dụng hướng giao dịch b. Ứng dụng cơ sơ dữ liệu

c. Ứng dụng hỗ trợ quyết định d. Hệ chuyên gia

24) Ứng dụng nào mà có bốn thành phần chính: hệ thống thu thập tri thức, cơ sở tri thức, mô tơ suy diễn và hệ thống diễn giải.

a. Ứng dụng hướng giao dịch b. Ứng dụng cơ sơ dữ liệu

c. Ứng dụng hỗ trợ quyết định d. Hệ chuyên gia

25) Ứng dụng nào mà hỗ trợ phân tích, xác định các xu hướng, thực hiện các phân tích dữ liệu về mặt thống kê hay toán học từ đó giải các bài toán không cấu trúc.

a. Ứng dụng hướng giao dịch b. Ứng dụng cơ sơ dữ liệu

c. Ứng dụng hỗ trợ quyết định d. Hệ chuyên gia


Chương 2

TIÊU CHUẨN CỦA SẢN PHẨM PHẦN MỀM


2.1. Mục tiêu của công nghệ phần mềm

Mục tiêu của công nghệ phần mềm là sản xuất ra những phần mềm tốt, có chất lượng cao. Các nhân tố ảnh hưởng đến chất lượng phần mềm có thể được phân thành hai nhóm chính: các nhân tố có thể đo trực tiếp và các nhân tố chỉ có thể đo gián tiếp.

Tuỳ theo công dụng của sản phẩm và nhu cầu thực tế của người sử dụng, các chuẩn của quốc gia, quốc tế, nền văn minh của cộng đồng, thời điểm,... mà các tiêu chuẩn để lượng hoá phần mềm có thể thay đổi.

Người sử dụng tiêu chuẩn này bao gồm :

- Người mua sản phẩm (cá nhân hay tổ chức mua hệ thống, sản phẩm phần mềm hoặc dịch vụ phần mềm từ nhà cung cấp);

- Người đánh giá (cá nhân hay tổ chức thiết lập đánh giá. Người đánh giá có thể, ví dụ như, là phòng kiểm định, trung tâm chất lượng của tổ chức phát triển phần mềm, tổ chức chính phủ hoặc người dùng) ;

- Người phát triển (cá nhân hay tổ chức thực hiện các hoạt động phát triển, bao gồm phân tích yêu cầu, thiết kế, và kiểm tra thông qua việc chấp thuận trong quá trình vòng đời sản phẩm phần mềm) ;

- Người duy trì (cá nhân hay tổ chức thực hiện các hoạt động duy trì);

- Nhà cung cấp (cá nhân hay tổ chức tham gia ký hợp đồng với người mua sản phẩm để cung cấp hệ thống, sản phẩm phần mềm hoặc dịch vụ phần mềm trên các điều khoản của hợp đồng) khi kiểm tra chất lượng phần mềm trong cuộc kiểm tra xác định chất lượng;

- Người sử dụng (cá nhân hay tổ chức sử dụng sản phẩm phần mềm để thực hiện chức năng xác định) khi đánh giá chất lượng sản phẩm phần mềm trong cuộc kiểm tra chấp thuận;

- Người quản lí chất lượng (cá nhân hay tổ chức thực hiện kiểm tra có hệ thống các sản phẩm phần mềm hoặc dịch vụ phần mềm) khi đánh giá chất lượng sản phẩm phần mềm như một phần của bảo đảm chất lượng và kiểm soát chất lượng;

Chất lượng sản phẩm phần mềm được đánh giá qua một mô hình chất lượng cụ thể. Sản phẩm phần mềm được phân tách theo cấp bậc vào một mô hình phần mềm với những tiêu chí và những tiêu chí con, sao cho có thể sử dụng chúng như một danh sách để kiểm tra những vấn đề phát sinh liên quan đến chất lượng.

Tiêu chí đối với chất lượng sử dụng được chia thành 4 tiêu chí: tính hiệu quả, năng suất, tính an toàn và tính thoả mãn.


Chất lượng sử dụng là đánh giá của người sử dụng về chất lượng. Chất lượng sử dụng phụ thuộc vào chất lượng ngoài, mặt khác chất lượng ngoài lại phụ thuộc vào chất lượng trong. Thường phải tiến hành đánh giá trên cả 3 yêu cầu chất lượng (yêu cầu chất lượng đối với chất lượng trong, chất lượng ngoài, chất lượng sử dụng) vì việc đáp ứng các tiêu chuẩn chất lượng trong không có nghĩa sẽ đáp ứng tiêu chuẩn chất lượng ngoài, đáp ứng tiêu chuấn chất lượng ngoài không có nghĩa sẽ đáp ứng tiêu chuẩn của chất lượng sử dụng.

Chất lượng sử dụng là khả năng của phần mềm cho phép những người sử dụng cụ thể đạt được những mục đích cụ thể với tính hiệu quả, tính năng suất, tính an toàn và tính thoả mãn, trong một hoàn cảnh làm việc cụ thể.

Mô hình chất lượng là một tập hợp tiêu chí và mối quan hệ giữa chúng để cung cấp cơ sở cho việc xác định yêu cầu chất lượng và đánh giá chất lượng.

Chất lượng trong là tổng hợp của tất cả các đặc điểm của sản phẩm phần mềm từ góc độ của người phát triển phần mềm. Chất lượng trong được đo lường và đánh giá theo các yêu cầu chất lượng trong (sử dụng các phép đánh giá trong). Chất lượng trong của sản phẩm phần mềm được cải tiến trong suốt suốt thời gian lập trình, kiểm thử và không bao gồm giai đoạn thiết kế phần mềm.

Chất lượng ngoài là toàn bộ các đặc điểm của sản phẩm phần mềm từ góc độ của người đánh giá phần mềm độc lập. Chất lượng này thể hiện khi phần mềm hoạt động, nó được đánh giá trong môi trường với dữ liệu giả lập (sử dụng công cụ đánh giá độc lập).

Chất lượng sử dụng là cách nhìn của người dùng về chất lượng sản phẩm phần mềm khi nó được cài đặt trong một môi trường và ngữ cảnh cụ thể. Chất lượng này xác định phạm vi mà người dùng có thể đạt được mục đích của mình trong một môi trường cụ thể hơn là chỉ ra các tính năng của phần mềm.

Mô hình cho chất lượng trong và ngoài: phân loại chất lượng sản phẩm phần mềm theo sáu tiêu chí: tính năng, độ tin cậy, sự tiện lợi, tính hiệu quả, khả năng bảo hành bảo trì và tính khả chuyển.

2.2. Tiêu chuẩn của sản phẩm phần mềm

Để đánh giá được sản phẩm của một nền công nghệ là tốt hay xấu, chúng ta phải nghiên cứu để đưa ra được những tiêu chuẩn đánh giá chúng. Chất lượng của sản phẩm phần mềm bao gồm nhiều yếu tố dựa trên các tiêu chuẩn đã được tổng kết.

2.2.1. Tính đúng

Một sản phẩm thực hiện được gọi là đúng nếu nó thực hiện chính xác những chức năng đã đặc tả và thỏa mãn các mục đích công việc của khách hàng.

Như vậy, một sản phẩm phải được so sánh chuẩn đặt ra để kiểm tra tính đúng và điều này dẫn đến có nhiều bậc thang về tính đúng.


Hình 2 1 Bậc thang về tính đúng Liệt kê theo thang giảm dần tính đúng của 13

Hình 2.1. Bậc thang về tính đúng

Liệt kê theo thang giảm dần, tính đúng của phần mềm có thể:

+ Tuyệt đối đúng,

+ Đúng ,

+ Có lỗi,

+ Có nhiều lỗi,...

Ví dụ: Một hệ thống xử lý dữ liệu không chạy được khi file cơ sở dữ liệu rỗng hoặc có quá 104 bản ghi,...là những hệ thống vi phạm tính đúng.

Tính đúng đắn của sản phẩm được xác minh qua những căn cứ sau đây:

- Tính đúng đắn của thuật toán

- Tính tương đương của chương trình với thuật toán: Chương trình mã hoá phải đúng với thuật toán không sẽ dẫn đến kết quả sai.

- Được chứng minh trực tiếp trong văn bản chương trình

- Thể hiện qua kiểm thử (testing), qua việc sử dụng(using).

- Các tác giả của sản phẩm cần cung cấp đầy đủ những luận chứng và kết quả xác nhận tính đúng đắn của sản phẩm. Những tư liệu đó bao gồm:

+ Chương trình (testing) có kèm các luận đề để phục vụ cho việc chứng minh.

+ Các phương pháp và kỹ thuật kiểm thử chương trình

+ Các kết quả chạy thử

+ Các giấy chứng nhận, nhận xét của cá nhân và cơ sở đã khảo sát và áp dụng chương trình

Ví dụ tính đúng của chương trình giải phương trình bậc hai trong hình 2.2 xác minh qua sử dụng.

Hình 2 2 Ví dụ về tính đúng 14

Hình 2.2. Ví dụ về tính đúng

Xem tất cả 305 trang.

Ngày đăng: 28/06/2022
Trang chủ Tài liệu miễn phí