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


31. Nêu các loại màn hình đăng nhập. Cho ví dụ.

Nêu ý nghĩa sử dụng, nội dung, hình thức trình bày, thao tác người dùng khi thiết kế màn hình nhập dữ liệu lưu trữ.

32. Nêu các phương pháp nhập dữ liệu.

33. Nêu các dạng màn hình nhập dữ liệu lưu trữ.

34. Nêu các thành phần, mẫu thiết kế màn hình nhập dữ liệu lưu trữ dạng danh sách.

35. Nêu các thành phần, mẫu thiết kế màn hình nhập dữ liệu lưu trữ dạng hồ sơ.

36. Nêu các thành phần, mẫu thiết kế màn hình nhập dữ liệu lưu trữ dạng phiếu

37. Nêu ý nghĩa sử dụng, nội dung, hình thức trình bày, thao tác người dùng khi thiết kế màn hình xử lý tính toán.

38. Nêu các dạng màn hình kết quả. Cho ví dụ.

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

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

39. Nêu ý nghĩa sử dụng, nội dung, hình thức trình bày, mẫu khi thiết kế màn hình thông báo. Cho ví dụ.

40. Nêu ý nghĩa sử dụng, nội dung, hình thức trình bày, thao tác người dùng khi thiết kế màn hình tra cứu.

41. Nêu mẫu thiết kế màn hình tra cứu với biểu thức logic, hình thức cây, tích hợp.

42. Nêu các kí hiệu và ý nghĩa sử dụng của các thành phần trong sơ đồ phối hợp giữa các hàm xử lý. Cho ví dụ.

43. Hãy đề xuất một mô hình điều khiển thích hợp cho các hệ thống sau:

- Bộ điều khiển của tivi có thể nhận tín hiệu từ một đơn vị điều khiển từ xa

- Hệ thống thanh toán lương, xử lý theo lô. Lấy thông tin về thời gian làm việc, hệ số lương; in ra bảng lương và chuyển thông tin vào tài khoản ngân hàng.

44. Hãy đề xuất một mô hình cấu trúc thích hợp và thiết kế kiến trúc cho các hệ thống dưới đây

- Hệ thống bán vé tàu hoả tự động

- Hệ thống hội nghị trực tuyến, cho phép các dạng dữ liệu như âm thanh, hình ảnh, văn bản ... có thể được truyền tới người sử dụng một cách đồng thời.

45. Công ty FPT nhận được một đơn đặt hàng của Ngân hàng đầu tư và phát triển Việt Nam muốn xây dựng phần mềm rút tiền (VND) tự động. Ngân hàng có tất cả 64 chi nhánh đặt tại 64 tỉnh. Mỗi tỉnh sẽ có một Server để quản lý các tài khoản khách hàng mình quản lý. Ngân hàng muốn lắp đặt một hệ thống mạng để liên kết các chi nhánh tạo thành một mạng lưới trên toàn quốc. Vậy công ty FPT nên chọn các mô hình nào cho thiết kế ứng dụng này. Vì sao ?

46. Công ty FPT nhận được một đơn đặt hàng của trường Đại học Sư Phạm Kỹ thuật Nam Định muốn phát triển một phần mềm quản lý đào tạo gồm các chương trình: quản lý tuyển sinh, quản lý điểm, quản lý học sinh sinh viên; nhà trường yêu cầu


tất cả dữ liệu của các chương trình được lưu trữ tại một cơ sở dữ liệu trung tâm để có thể được truy cập bởi mọi chương trình. Vậy công ty FPT nên chọn các mô hình nào cho thiết kế ứng dụng này. Vì sao ?

47. Xét phần mềm quản lý giải bóng đá với yêu cầu tiếp nhận đăng ký tham gia. Biết rằng thông tin về mỗi đội bao gồm: Tên đội, danh sách các cầu thủ của đội; Thông tin về mỗi cầu thủ bao gồm: Tên cầu thủ, vị trí sở trường. Hãy thiết kế màn hình giao diện cho yêu cầu tiếp nhận đăng ký tham gia.

48. Xét phần mềm quản lý giải bóng đá với yêu cầu xếp lịch thi đấu. Biết rằng các đội thi đấu vòng tròn hai lượt. Thông tin về trận đấu được xếp lịch: Hai đội bóng tham dự, ngày giờ thi đấu, sân thi đấu (giải diễn ra trên hai sân: A, B). Hãy thiết kế màn hình nhập liệu lưu trữ, màn hình tra cứu theo thời gian thi đấu cho yêu cầu xếp lịch thi đấu.

49. Xét phần mềm quản lý giải bóng đá với yêu cầu ghi nhận kết quả thi đấu. Các thông tin cần ghi nhận: Tỉ số, tổng số thẻ vàng, tổng số thẻ đỏ. Hãy thiết kế màn hình nhập liệu lưu trữ, màn hình xử lý tính toán cho yêu cầu ghi nhận kết quả thi đấu.

50. Xét phần mềm quản lý giải bóng đá với yêu cầu lập bảng xếp hạng. Biết rằng hạng được dựa trên các tiêu chí sau: Điểm số, hiệu số, số bàn thắng; Điểm cho mỗi trân thua là 0, hòa là 1, thắng là 3. Hãy thiết kế màn hình nhập liệu lưu trữ, màn hình xử lý tính toán cho yêu cầu ghi nhận kết quả thi đấu.

51. Xét phần mềm quản lý tiết kiệm với chức năng mở sổ tiết kiệm.


Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 1


Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 2

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ, màn hình tra cứu theo chứng minh thư nhân dân, màn hình kết quả. Sau đó mô tả các biến cố, lập danh sách các hàm xử lý, lập các sơ đồ phối hợp cho các màn hình đã thiết kế.

52. Xét phần mềm Quản lý học sinh với chức năng tiếp nhận học sinh mới

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 3


Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 4

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ, màn hình tra cứu theo chứng minh thư nhân dân, màn hình kết quả. Sau đó mô tả các biến cố, lập danh sách các hàm xử lý, lập các sơ đồ phối hợp cho các màn hình đã thiết kế.

53. Xét phần mềm quản lý bán hàng với nghiệp vụ lập phiếu thu tiền của khách hàng

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 5

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ, màn hình tra cứu theo chứng minh thư nhân dân, màn hình kết quả. Sau đó mô tả các biến cố, lập danh sách các hàm xử lý, lập các sơ đồ phối hợp cho các màn hình đã thiết kế.

54. Xét phần mềm quản lý nhân sự với nghiệp vụ tiếp nhận nhân viên

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 6

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ, màn hình tra cứu theo chứng minh thư nhân dân, màn hình kết quả. Sau đó mô tả các biến cố, lập danh sách các hàm xử lý, lập các sơ đồ phối hợp cho các màn hình đã thiết kế.

55. Xét phần mềm quản lý học sinh với nghiệp vụ tiếp nhận hồ sơ học sinh có biểu mẫu và quy định như sau:

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 7

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ, màn hình tra cứu theo địa chỉ, màn hình kết quả. Sau đó mô tả các biến cố, lập danh sách các hàm xử lý, lập các sơ đồ phối hợp cho các màn hình đã thiết kế.


56. Xét phần mềm quản lý các đại lý với nghiệp vụ tiếp nhận hồ sơ đại lý có biểu mẫu và quy định như sau:

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 8

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ, màn hình tra cứu theo loại đại lý, màn hình kết quả. Sau đó mô tả các biến cố, lập danh sách các hàm xử lý, lập các sơ đồ phối hợp cho các màn hình đã thiết kế.

57. Xét phần mềm quản lý giải vô địch bóng đá quốc gia có biểu mẫu và quy định như sau:

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ màn hình tra cứu theo 9

Hãy thiết kế dữ liệu và màn hình nhập liệu lưu trữ, màn hình tra cứu theo tên đội, màn hình kết quả. Sau đó mô tả các biến cố, lập danh sách các hàm xử lý, lập các sơ đồ phối hợp cho các màn hình đã thiết kế.

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

1) Quá trình thiết kế phần mềm thể hiện qua các khía cạnh ?

a. Quản lý b. Phương pháp c. Kỹ thuật d. Cả a và c

2) Các bước thiết kế phần mềm nào sau đây thuộc khía cạnh kỹ thuật ?

a. Thiết kế sơ bộ b. Thiết kế chi tiết c. Thiết kế dữ liệu d. a và b

3) Chiến lược thiết kế nào sau đây có vùng dữ liệu dùng chung ?

a. Hướng chức năng b. Hướng đối tượng. c. Giao diện d. Cả b và c

4) Chiến lược thiết kế nào sau đây mà các đối tượng độc lập với nhau ?

a. Hướng chức năng b. Hướng đối tượng. c. Giao diện d. Cả a và c

5) Mô hình nào sau đây mà mọi dữ liệu được lưu trữ tại một cơ sở dữ liệu trung tâm có thể được truy cập bởi mọi phân hệ ?

a. Kho dữ liệu b. Khách-phục vụ c. Máy trừu tượng d. Điều khiển

6) Mô hình nào sau đây mà dữ liệu được phân tán tại nhiều nơi ?

a. Khách-phục vụ b. Máy trừu tượng c. Đối tượng d. Luồng dữ liệu


Chương 6

CÀI ĐẶT PHẦN MỀM


6.1. Giai đoạn cài đặt phần mềm

Cài đặt là một công đoạn trong việc phát triển phần mềm và nó được xem là một hệ quả tất yếu của thiết kế, nhằm chuyển các đặc tả mịn của giai đoạn thiết kế sang một ngôn ngữ lập trình cụ thể. Tuy vậy, kỹ năng lập trình, các phương pháp lập trình và các đặc trưng của ngôn ngữ lập trình có ảnh hưởng lớn đến chất lượng của phần mềm. Một chương trình được cài đặt tốt đem lại cho ta thuận lợi trong việc bảo trì sau này.

6.2. Kỹ năng lập trình

Sau khi sinh ra chương trình đích, chức năng của mỗi module phải rò ràng, không cần tham khảo tới đặc tả thiết kế - nói cách khác, chương trình phải dễ hiểu. Viết một chương trình máy tính là viết một dãy các câu lệnh trong ngôn ngữ hiện có. Cách thức mỗi mệnh đề này diễn tả trong chừng mực nào đó sẽ xác định ra tính dễ hiểu của toàn bộ chương trình...

Các kỹ năng lập trình bao gồm:

- Hiểu rò ngôn ngữ (language-specific)

- Sử dụng tên biến thích hợp và có nghĩa

- Tên biến phải rò ràng, tránh nhầm lẫn

- Nên có các chú thích bên trong mô-đun

- Mã lệnh chuẩn

- Thống nhất về cách đặt tên Mô-đun, tên hàm, tên biến,…

- Khả năng tái sử dụng

Các yếu tố của kỹ năng lập trình bao gồm tài liệu bên trong, phương pháp khai báo dữ liệu, cách tiếp cận đến việc xây dựng câu lệnh, các kỹ thuật vào/ra...

6.2.1. Tài liệu chương trình

Tài liệu chương trình được hiểu là tài liệu bên trong của chương trình gốc. Nó bắt đầu với việc chọn lựa các tên gọi định danh, tiếp đến là vị trí và thành phần của việc chú thích, và kết luận với cách tổ chức trực quan của chương trình.

Việc lựa chọn các tên gọi định danh có nghĩa chính là điều chủ chốt cho việc hiểu chương trình. Những ngôn ngữ giới hạn tên biến hay nhãn chỉ có trong vài ký tự nên tự nó đã mang nghĩa mơ hồ. Nhưng ý nghĩa thông thường phải được áp dụng khi tên gọi đã được chọn, các tên gọi dài không cần thiết đôi lúc có thể đưa ra tiềm năng lỗi. Các nghiên cứu đã chỉ ra rằng cho dù một chương trình nhỏ thì một tên gọi có nghĩa cũng làm tăng tính dễ hiểu. Theo ngôn từ của mô hình cú pháp/ngữ nghĩa, tên có ý


nghĩa làm "đơn giản hoá việc chuyển đổi từ cú pháp chương trình sang cấu trúc ngữ nghĩa bên trong".

Các chú thích mô tả được nhúng vào bên trong thân của chương trình gốc và được dùng để mô tả cho các hàm xử lý. Lời chú thích nên đưa ra một điều gì đó phụ trợ, không chỉ là lời diễn giải chương trình. Định dạng cho lời chú thích gồm:

- Một phát biểu về mục đích chỉ rò chức năng module.

- Mô tả giao diện bao gồm:

+ Mẫu lời gọi,

+ Mô tả về mọi đối số,

+ Danh sách tất cả các module thuộc cấp.

- Thảo luận về dữ liệu thích hợp như các biến quan trọng và những hạn chế và giới hạn về cách dùng chúng, và các thông tin quan trọng khác.

- Lịch sử phát triển bao gồm:

+ Tên người thiết kế module (tác giả),

+ Tên người xét duyệt (kiểm toán) và ngày tháng,

+ Ngày tháng sửa đổi và mô tả sửa đổi,

6.2.2. Khai báo dữ liệu

Độ phức tạp và việc tổ chức cấu trúc dữ liệu được xác định trong bước thiết kế nhưng phong cách khai báo dữ liệu thì được thiết lập khi chương trình được sinh ra. Thứ tự khai báo dữ liệu nên được chuẩn hoá cho dù ngôn ngữ lập trình không có yêu cầu bắt buộc. Điều này tạo điều kiện thuận lợi cho việc kiểm thử, gỡ rối và bảo trì. Thậm chí, khi có nhiều định danh được khai báo trong câu lệnh thì việc sắp xếp theo trật tự chữ cái cho các tên gọi đó cũng có giá trị.

6.2.3. Xây dựng câu lệnh

Việc xây dựng các câu lệnh của chương trình nên tuân theo phong cách lập trình cấu trúc. Các câu lệnh nên đơn giản và trực tiếp, không bị xoắn vào nhau để đảm bảo hiệu quả.

Các chỉ dẫn:

- Tránh dùng các phép kiểm tra điều kiện phức tạp,

- Khử bỏ các phép kiểm tra điều kiện phủ định,

- Tránh lồng nhau giữa các điều kiện hay chu trình,

- Dùng các dấu ngoặc để làm sáng tỏ các biểu thức,

- Dùng các dấu cách và các ký hiệu dễ đọc để làm sáng tỏ nội dung câu lệnh,...

6.2.4. Kỹ thuật vào ra

Khi cài đặt vào/ra, cần thoả mãn các tiêu chí cơ bản sau:

- Làm hợp lệ mọi cái vào,

- Kiểm tra sự tin cậy của các tổ hợp dữ liệu vào quan trọng,


- Giữ cho định dạng dữ liệu vào đơn giản,

- Dùng các chỉ báo cuối dữ liệu thay vì yêu cầu người sử dụng xác định số các khoản mục vào,

- Đặt nhãn cho các dữ liệu vào,

- Giữ các định dạng dữ liệu vào thống nhất,...

6.3. Các phương pháp lập trình

Vào những ngày đầu phát triển của máy tính, khi các phần mềm còn rất đơn giản chỉ cỡ vài chục dòng lệnh, chương trình được viết tuần tự với các câu lệnh thực hiện từ đầu đến cuối. Cách viết chương trình như thế này gọi là phương pháp lập trình tuyến tính. Khoa học máy tính ngày càng phát triển, các phần mềm đòi hỏi ngày càng phức tạp và lớn hơn rất nhiều. Đến lúc này phương pháp lập trình tuyến tính tỏ ra kém hiệu quả và có những trường hợp người lập trình không thể kiểm soát được chương trình. Thế là phương pháp lập trình cấu trúc (LTCT) ra đời.

Theo cách tiếp cận này, chương trình được tổ chức thành các chương trình con. Mỗi chương trình con đảm nhận xử lý một công việc nhỏ trong toàn bộ hệ thống. Mỗi chương trình con này lại có thể chia nhỏ thành các chương trình con nhỏ hơn. Quá trình phân chia như vậy tiếp tục diễn ra cho đến các chương trình con nhỏ nhận được đủ đơn giản. Người ta gọi đó là quá trình làm mịn dần. Các chương trình con tương đối độc lập với nhau, do đó có thể phân công cho từng nhóm đảm nhận viết các chương trình con khác nhau. Ngôn ngữ lập trình thể hiện rò nét nhất phương pháp lập trình cấu trúc chính là Pascal. Tuy nhiên, khi sử dụng phương pháp lập trình này vẫn còn gặp một khó khăn lớn là tổ chức dữ liệu của hệ thống như thế nào trong máy tính. Bởi vì theo quan điểm của LTCT thì Chương trình = Cấu trúc dữ liệu + Giải thuật. Để làm được việc này đòi hỏi người lập trình phải có kiến thức rất vững về cấu trúc dữ liệu. Một khó khăn nữa gặp phải là giải thuật của chương trình phụ thuộc rất chặt chẽ vào cấu trúc dữ liệu. Do vậy chỉ cần một sự thay đổi nhỏ ở cấu trúc dữ liệu cũng có thể làm thay đổi giải thuật và như vậy phải viết lại chương trình. Điều này rò ràng không thể thích hợp khi phải xây dựng một dự án phần mềm rất lớn. Một phương pháp lập trình mới ra đời để khắc phục nhược điểm này và đó chính là phương pháp lập trình hướng đối tượng (LTHĐT).

Điểm căn bản của phương pháp này là thiết kế chương trình xoay quanh dữ liệu của hệ thống. Nghĩa là lúc này các thao tác xử lý của hệ thống được gắn liền với dữ liệu và như vậy một sự thay đổi nhỏ của dữ liệu chỉ ảnh hưởng đến các một số nhỏ các hàm xử lý liên quan. Sự gắn kết giữa dữ liệu và các hàm xử lý trên chúng tạo ra đối tượng. Một ưu điểm nữa có ở phương pháp LTHĐT là cách tiếp cận bài toán trở nên gần gũi với thực tế hơn


6.4. Ngôn ngữ lập trình

6.4.1. Nền tảng của ngôn ngữ lập trình

1) Kiểu dữ liệu, định nghĩa kiểu dữ liệu và kiểm tra kiểu dữ liệu

Kiểu dữ liệu là loại dữ liệu được định nghĩa từ trước của ngôn ngữ và mỗi ngôn ngữ hỗ trợ một số kiểu dữ liệu. Tất cả các ngôn ngữ đều hỗ trợ biến, hằng số dùng trong dữ liệu số và dữ liệu ký tự. Kiểu dữ liệu được hỗ trợ chung là: số nguyên, số thực, xâu ký tự. Một số ít ngôn ngữ hỗ trợ các kiểu dữ liệu khác như: Logical, Boolean, Pointer, Object, Bit, Date,... hoặc kiểu dữ liệu tự định nghĩa.

Các cấu trúc dữ liệu như mảng, bảng, danh sách tuyến tính,... là loại thứ ba của cấu trúc dữ liệu của ngôn ngữ. Các ngôn ngữ có thể hỗ trợ hoặc không hỗ trợ kiểu này. Tuy nhiên, các kiểu dữ liệu đơn giản như mảng, danh sách tuyến tính,... thường được hầu hết các ngôn ngữ hỗ trợ.

Kiểu dữ liệu tự định nghĩa là kiểu dữ liệu do lập trình viên định nghĩa và chỉ có giá trị trong một chương trình hoặc ứng dụng nhất định. Kiểu dữ liệu tự định nghĩa có thể dùng để định nghĩa các kiểu dữ liệu khi ngôn ngữ không hỗ trợ kiểu dữ liệu đó.

Kiểm tra kiểu dữ liệu là việc ngôn ngữ kiểm tra sự phù hợp của kiểu dữ liệu được định nghĩa trong các phép toán học và các toán tử logic. Có bốn mức kiểm tra kiểu, từ không kiểm tra kiểu đến kiểm tra chặt, mức độ chặt chẽ của kiểm tra phụ thuộc vào dạng ứng dụng.

2) Chương trình con

Sự tinh tế của ngôn ngữ thể hiện ở mức độ hỗ trợ module hoá và quản lý bộ nhớ. Module hoá là cách thức tạo ra chương trình con và hàm. Các ngôn ngữ khác nhau ở cách hỗ trợ chương trình con và dữ liệu của nó. Trước hết, khả năng định nghĩa chương trình con, hàm là quan trọng để có được các đặc trưng chương trình mong muốn. Thứ hai, dữ liệu trong các module được quản lý như thế nào? Dữ liệu có thể là cục bộ hoặc tổng thể. Khả năng có được dữ liệu cục bộ là quan trọng trong việc che giấu thông tin và giảm thiểu việc liên kết. Phạm vi dữ liệu tổng thể cần được giới hạn để đảm bảo chất lượng của chương trình trong việc giấu thông tin và sự liên kết.

Trong các ngôn ngữ, chương trình con được gọi thông qua tên của nó. Tuỳ chọn cho xử lý việc gọi bao gồm cả việc truyền dữ liệu bằng biến, bằng tên, bằng địa chỉ, hoặc bằng giá trị. Truyền giá trị đòi hỏi sự định nghĩa dữ liệu cục bộ trong khi truyền dữ liệu bằng tên hoặc bằng địa chỉ được sử dụng với hoặc dữ liệu cục bộ hoặc dữ liệu tổng thể.

3) Cấu trúc điều khiển

Cấu trúc điều khiển của ngôn ngữ là yếu tố quyết định thao tác gì và thao tác như thế nào trên dữ liệu đã mô tả. Chúng cung cấp các khả năng xử lý: tuần tự, lặp và cách thức lựa chọn các cấu trúc dữ liệu.

Xem tất cả 305 trang.

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