Xem mẫu
- 8. Các hoạt động chung đối với kiểm thử
• kế hoạch kiểm thử riêng biệt được
8-1 Chuẩn bị kế hoạch Kiến thức về Năng lực
• đảm bảo chất lượng phần mềm • lập kế hoạch thiết lập chất lượng
kiểm thử chuẩn bị riêng cho giai đoạn thiết kế
• tính tin cậy của phần mềm
riêng và thực hiện và kế hoạch được trong qui trình phát triển hệ thống
• chuẩn bị lịch trình kiểm thử hợp lý
những người có trách nhiệm xem xét • lịch kiểm thử
• kế hoạch kiểm thử mô tả việc mở • đánh giá các tài nguyên và nhân lực
• kỹ thuật kiểm thử
rộng, mục tiêu, tổ chức, lịch trình, cần để làm kiểm thử
• thiết kế dữ liệu kiểm thử và
người chịu trách nhiệm, phương pháp • suy nghĩ tự động hoá việc kiểm thử
chuẩn bị chúng
thực hiện, phương pháp thiết kế dữ • xác định điều kiện bắt đầu và kết thúc
• phương pháp đánh giá kết quả
liệu thử, môi trường kiểm thử, tiêu kiểm thử
kiểm thử
chí đánh giá kết quả kiểm thử, tài liệu • tài liệu kết quả kiểm thử
kết quả kiểm thử, và các biện pháp • chuẩn bị môi trường kiểm thử
phòng ngừa vấn đề phát sinh trong • công cụ và phương tiện kiểm
quá trình kiểm thử
thử
• đặc tả kiểm thử được viết lại theo • Kiến thức về về phương pháp • Năng lực quan sát thủ tục kiểm thử
8-2 Chuẩn bị quy trình
kiểm thử dạng tương ứng với yêu cầu kiểm thử kiểm thử
• điều kiện kiểm thử được xác định
• chọn được đúng người có trách
8-3 Thực hiện kiểm thử Kiến thức về Năng lực
• qui trình kiểm thử • đánh giá kết quả kiểm thử
nhiệm làm kiểm thử
• Kiểm thử cần được thực hiện tương • phương pháp kiểm thử • xác định, giải quyết và hiệu chỉnh
• qui trình kiểm thử lặp
thích với thủ tục kiểm thử và lịch các sai sót và trục trặc
• thăm dò và phân tích trạng thái và đề
trình • phân tích lỗi và chỉnh sửa
• Mọi kết quả kiểm thử được viết lại xuất giải pháp
• việc báo cáo kết quả kiểm thử
• đánh giá hiệu năng
đầy đủ và được báo cáo tới người có
trách nhiệm • đánh giá tính sử dụng được
• các vấn đề xảy ra trong quá trình
kiểm thử được nắm bắt, ghi lại đầy
đủ và được báo cáo lại
• nếu có sai sót, phải ghi lại đầy đủ và • Kiến thức về viết tài liệu kết
8-4 Ghi nhận kết quả kiểm Năng lực
• đánh giá xem việc kiểm thử đã đủ hay
thử và phê duyệt chính xác, và có giải pháp được đề quả kiểm thử
x u ất chưa
• kết quả kiểm thử được báo cáo cho • nghĩ tới kế hoạch cải tiến thủ tục
người liên quan và được họ phê duyệt kiểm thử
20
- 7. Chuẩn hoá (mức I)
4. Khung kiến thức
8. Tin học hoá và quản lý (mức I)
Trong khung kiến thức đối với các kỹ sư CNTT cơ bản, các
Trong 2) “Kiến thức thực hành và cốt lõi cần có cho các KS cơ
kiến thức cần thiết để thực hiện các hoạt động chủ chốt
bản về CNTT”, kiến thức trong phần “khung kiến thức thực
được mô tả ở chương trước một cách có hiệu quả và để giải
hành” và cần thiết cho từng tiến trình riêng biệt phân loại thành
quyết các vấn đề khác nhau được chia thành các nhóm dựa
“A. Thiết kế bên trong”, “B. Thiết kế chương trình”, “C. Xây
theo các khái niệm kỹ thuật và cách giải quyết vấn đề và
dựng chương trình”, và được mô tả ở các chương, mục dưới
được phân loại theo cấu trúc phân cấp. Ở đây có các vấn đề
đây, bao gồm các qui trình và hoạt động. Mặc dù A là qui trình
khác nhau, bao gồm cả việc giảm chất lượng sản phẩm, tăng
thuộc phạm vi trách nhiệm của kỹ sư CNTT ở mức cao hơn,
chi phí và tăng thời gian phát triển phần mềm..
nhưng nó cũng được đưa vào hệ thống kiến thức cơ bản để các
Khung kiến thức đối với các kỹ sư CNTT cơ bản cần phải kỹ sư CNTT cơ bản hiểu đúng nội dung của các tài liệu thiết kế
bao gồm hai loại dưới đây: bên trong. Điều quan trọng đối với họ là có sự hiểu biết đầy đủ
về các yêu cầu thiết kế bên trong, các kết quả cần có và các
1. Khối kiến thức chung về CNTT
hoạt động cần tiến hành. Những kỹ sư CNTT cơ bản cần thể
2. Kiến thức thực hành và cốt lõi cần có về các vấn đề cơ
hiện hiểu biết của mình chủ yếu trong các phần B và C.
bản của CNTT
Còn Kiến thức cốt lõi được mô tả tập trung trong phần “D. Các
Khối kiến thức chung về CNTT trong mục 1 không chỉ giới
ngôn ngữ lập trình”, chính là các công cụ cần thiết đối với các
hạn đối với các kỹ sư CNTT cơ bản, mà còn là kiến thức
kỹ sư CNTT cơ bản.
cần thiết đối với những người tham dự kiểm tra ở tất cả các
Chú ý: Phạm vi kiến thức ở “Kiến thức thực hành và cốt lõi
loại hình khác. Do đó phân loại riêng là cần thiết. Xem thêm
cho kỹ sư CNTT cơ bản” đã được thiết lập trên nền tảng tương
chi tiết tại tài liệu:”Chuẩn kỹ năng của kỹ sư CNTT: khối
ứng với tài liệu “Hệ thống sát hạch kỹ sư CNTT: Phạm vi sát
kiến thức chung về CNTT”.
hạch”. Tuy nhiên, phần “các ngôn ngữ lập trình” chứa đựng
Tham khảo phần “Hệ thống sát hạch kỹ sư CNTT: Phạm vi
nhiều hơn ba ngôn ngữ dùng trong kỳ kiểm tra là C, Cobol và
sát hạch”, chúng ta có thể nhận thấy rằng các kỹ sư CNTT
Assembler. Lý do của vấn đề này là sự mong muốn những kỹ
cơ bản được kiểm tra kiến thức ở các mức kỹ thuật dưới đây
sư CNTT sẽ sử dụng các ngôn ngữ lập trình hướng đối tượng
trong 8 lĩnh vực kiến thức chung về CNTT:
(như C++ hay JAVA) và các ngôn ngữ phổ biến để phát triển
1. Các kiến thức cơ bản về khoa học máy tính (mức II) ứng dụng Khách hàng/Phục vụ (ví dụ Visual Basic và Perl),
2. Hệ thống máy tính (mức I) nhằm tăng năng suất trong các giai đoạn phát triển chương
3. Phát triển và vận hành của hệ thống (mức I) trình”
4. Công nghệ mạng (mức I)
Visual Basic là một thương hiệu đã được đăng ký của hãng
5. Công nghệ cơ sở dữ liệu (mức I)
Microsoft Corporation
6. Bảo mật (mức I)
21
- “Kiến thức thực hành và cốt lõi đối với kỹ sư CNTT cơ bản”
Lĩnh vực kiến thức Phân loại chính Phân loại trung gian Phân loại chi tiết
A. Thiết kế bên trong
1 Quy trình thiết kế bên trong
1.1 Các hoạt động thiết kế bên trong
1.1.1 Hiểu biết thiết kế bên ngoài
1.1.2 Phân chia chức năng và cấu trúc
1.1.3 Thiết kế dữ liệu vật lý
1.1.4 Thiết kế chi tiết vào – ra
1.1.5 Tài liệu thiết kế bên trong
1.1.6 Rà soát lại thiết kế
2. Phân chia chức năng và cấu trúc
2.1 Phân chia chức năng và cấu trúc
1.1.1 Nhận biết các chức năng cần thực hiện
1.1.2 Làm rõ luồng dữ liệu
1.1.3 Phân nhóm các chức năng
1.1.4 Cấu trúc thứ bậc (phân cấp)
1.1.5 Xác định các chức năng của chương trình
1.1.6 Đánh giá sự phân chia
1.1.7 Đặc tả chức năng
2.2 Các kỹ thuật thiết kế có cấu trúc
2.2.1 Các sơ đồ khối
2.2.2 Các sơ đồ luồng dữ liệu
2.2.3 Các sơ đồ có cấu trúc
2.2.4 Các sơ đồ HIPO
2.2.5 Các sơ đồ chuyển trạng thái
2.3 Phân chia chức năng bằng thiết kế có cấu trúc
2.3.1 Xem xét (làm mịn từng bước, tính độc lập của các
thành phần riêng lẻ, hạn chế chiều sâu của phân cấp)
3. Thiết kế dữ liệu vật lý
3.1 Thiết kế dữ liệu vật lý
3.1.1 Phân tích các đặc điểm của dữ liệu
3.1.2 Xác định các phương pháp tổ chức dữ liệu logic
3.1.3 Xác định môi trường lưu trữ dữ liệu
3.1.4 Thiết kế cấu trúc bản ghi dữ liệu
3.2 Bố trí và tổ chức dữ liệu vật lý
22
- 3.2.1 Mục đích và kiểu loại của phương pháp tổ chức
3.2.2 Các chế độ xử lý
3.2.3 Tốc độ xử lý
3.2.4 Đặc điểm của phương tiện lưu trữ
3.2.5 Các chức năng phục vụ quản lý file
4. Thiết kế đầu ra - đầu vào chi tiết
4.1 Thiết kế màn hình
4.1.1 Các nhiệm vụ thiết kế
4.1.2 Cân nhắc, xem xét
4.2 Thiết kế dữ liệu vào chi tiết
4.2.1 Các nhiệm vụ thiết kế
4.2.2 Cân nhắc, xem xét
4.3 Chi tiết thiết kế dữ liệu đầu ra
4.3.1 Các nhiệm vụ thiết kế
4.3.2 Cân nhắc, xem xét
5. Tạo và sử dụng lại các phần
5.1 Tạo và sử dụng lại các phần
5.1.1 Các khái niệm tạo các phần và dùng lại
5.2 Sử dụng các gói phần mền
5.2.1 Thư viện chương trình
5.2.2 Thư viện các lớp (cùng với các ngôn ngữ lập trình
hướng đối tượng)
6. Chuẩn bị tài liệu thiết kế bên trong
6.1 Tổ chức tài liệu thiết kế bên trong
6.1.1 Chính sách thiết kế bên trong
6.1.2 Giao diện giữa các chương trình
6.1.3 Các chức năng của chương trình
6.1.4 Bố trí màn hình
6.1.5 Bố trí vào-ra
6.1.6 Các kế hoạch kiểm tra
6.2 Rà soát lại thiết kế
6.2.1 Phương pháp rà soát
6.2.2 Tổ chức rà soát
23
- Lĩnh vực kiến Phân loại chính Phân loại trung gian Phân loại chi tiết
thức
B. Thiết kế các chương 1 Quy trình thiết kế chương trình
trình 1.1 Các hoạt động thiết kế chương trình
1.1.1 Xem xét tài liệu thiết kế bên trong
1.1.2 Phân chia mô-đun
1.1.3 Chuẩn bị đặc tả mô-đun
1.1.4 Tài liệu thiết kế chương trình
1.1.5 Chuẩn bị đặc tả kiểm tra
1.1.6 Kiểm tra lại thiết kế
2. Thiết kế chương trình một cách có cấu trúc
2.1 Các hoạt động thiết kế có cấu trúc
2.1.1 Xác định các mô-đun mức cao nhất
2.1.2 Phân tích các chức năng của mô-đun
2.1.3 Chọn lựa các kỹ thuật phân chia
2.1.4 Phân chia mô-đun
2.1.5 Xác định giao diện giữa các mô-đun
2.1.6 Nghiên cứu việc phân chia lại mô-đun
2.2 Các kỹ thuật phân chia
2.2.1 Các kỹ thuật phân chia dựa trên luồng dữ liệu
(data floworiented)
2.2.2 Các kỹ thuật phân chia dựa trên cấu trúc dữ liệu
(data structure-oriented)
2.2.3 Sử dụng lẫn các kỹ thuật phân chia
2.3 Các chuẩn cho việc phân chia module
2.3.1 Loại bỏ các phụ thuộc
2.3.2 Chuẩn về kích cỡ phân chia
2.3.3 Tạo và dùng lại các phần
2.4 Phân chia chương trình
2.4.1 Cân nhắc về số module và độ sâu của phân cấp
3. Đặc tả mô-đun và đặc tả kiểm thử
3.1 Chuẩn bị đặc tả mô-đun
3.1.1 Nhiệm vụ
3.1.2 Phương pháp
3.1.3 Các điểm mấu chốt
3.2 Chuẩn bị đặc tả kiểm thử
3.2.1 Loại và mục tiêu kiểm thử
3.2.2 Cân nhắc về thiết kế các trường hợp kiểm thử
3.2.3 Các phương pháp kiểm thử
24
- 4 Các tài liệu thiết kế chương trình
4.1 Tổ chức tài liệu thiết kế chương trình
4.1.1 Chính sách thiết kế chương trình
4.1.2 Phác thảo về chương trình
4.1.3 Sơ đồ cấu trúc chương trình
4.1.4 Chi tiết quy trình xử lý
4.1.5 Đặc tả kiểm thử
4.1.6 Mô tả phần tử dữ liệu
4.2 Xem xét về việc chuẩn bị tài liệu thiết kế chương trình
4.3 Rà soát
4.3.1 Phương pháp rà soát
4.3.1 Tổ chức
4.3.3 Sự tham gia của người dùng
25
- Lĩnh vực kiến Phân loại chính Phân loại trung gian Phân loại chi tiết
thức
C. Triển khai (xây dựng) chương trình
1. Lập trình
1.1 Lập trình
1.1.1 Các phương pháp lập trình và các chuẩn
1.1.2 Sử dụng các bộ xử lý ngôn ngữ
1.2 Rà soát kỹ
2. Kiểm thử
2.1 Quy trình kiểm thử
2.1.1 Kiểm thử đơn vị
2.1.2 Kiểm thử thành phần (kiểm thử kết nối)
2.1.3 Kiểm thử hệ thống
2.2 Các hoạt động và kỹ thuật kiểm thử
2.2.1 Các kế hoạch kiểm thử
2.2.2 Thiết kế kiểm thử và chuẩn bị dữ liệu kiểm thử
2.2.3 Sử dụng các môi trường kiểm thử
D. Các ngôn ngữ lập trình
1. Ngôn ngữ lập trình (C)
1.1 Phương tiện ngôn ngữ
1.1.1 Ngữ pháp
1.1.2 Cấu trúc chương trình
1.1.3 Khai báo dữ liệu
1.1.4 Các lệnh thực hiện
1.1.5 Gọi chương trình
1.2 Các vấn đề khác
1.2.1 Các hàm thư viện (chuẩn)
1.2.2 Biến con trỏ
2. Ngôn ngữ lập trình (COBOL)
2.1 Các vấn đề chung
2.1.1 Ngữ pháp
2.1.2 Cấu trúc chương trình
2.1.3 Khai báo dữ liệu
2.1.4 Các lệnh thực hiện
2.1.5 Gọi chương trình
2.2 Các vấn đề cụ thể
26
- 2.2.1 Xử lý file
2.2.2 PICTURE
2.2.3 Các mức của các mục dữ liệu
3. Ngôn ngữ lập trình (Ngôn ngữ Assembler CASL II)
3.1 Chức năng của hệ thống COMET II
3.1.1 Đặc điểm kỹ thuật phần cứng
3.1.2 Bộ lệnh
3.1.3 Bộ ký tự
3.2 Các vấn đề cụ thể của ngôn ngữ Assembler CASLII
3.2.1 Các đặc điểm kỹ thuật của ngôn ngữ
3.2.2 Lệnh macro
3.2.3 Lệnh ngôn ngữ máy
3.2.4 Hệ điều hành cho COMET II và CASL II
3.3 Các phép toán và hoạt động
3.3.1 Phép toán số học
3.3.2 Phép toán lô-gíc
3.3.3 Phép dịch chuyển
3.4 Các phương tiện đặc biệt
3.4. 1 Xử lý ra-vào
3.4.2 Xử lý ngăn xếp
3.4.3 Gọi chương trình con
4. Ngôn ngữ lập trình (C++)
4.1 C++ và ngôn ngữ hướng đối tượng
4.1.1 Các lớp
4.1.2 Các đối tượng
4.1.3 Các phương thức
4.1.4 Đóng gói, bao bọc
4.1.5 Kế thừa
4.2 Các vấn đề của ngôn ngữ
4.2.1 Ngữ pháp
4.2.2 Cấu trúc chương trình
4.3 Các vấn đề cụ thể
4.3.1 Định nghĩa lớp
4.3.2 Định nghĩa thành viên
4.3.3 Constructor
4.3.4 Destructor
4.3.5 Các mẫu (Templates)
4.3.6 Kế thừa
5 Ngôn ngữ lập trình Java
5.1 Java và ngôn ngữ hướng đối tượng
27
- 5.1.1 Các lớp
5.1.2 Các đối tượng
5.1.3 Các phương thức
5.1.4 Đóng gói, bao bọc
5.1.5 Kế thừa
5.2 Các vấn đề của ngôn ngữ
5.2.1 Ngữ pháp
5.2.2 Cấu trúc chương trình
5.2.3 Định nghĩa lớp
5.2.4 Định nghĩa thành viên
5.2.5 Constructor
5.2.6 Kế thừa
5.3 Các chương trình Java
5.3.1 Java Applets (Tác tử)
5.3.2 Java Applications – (ứng dụng)
5.4 Các vấn đề cụ thể
5.4.1 AWT
5.4.2 Luồng (Threads)
5.4.3 JDBC
6 Ngôn ngữ lập trình Visual Basic
6.1 Các vấn đề về ngôn ngữ
6.1.1 Ngữ pháp
6.1.2 Cấu trúc chương trình
6.2 Các vấn đề cụ thể
6.2.1 Các thủ tục tạo lập
6.2.2 Thao tác tên file và folder
6.2.3 Phân bổ ứng dụng
6.2.4 Các đối tượng
6.2.5 Ứng dụng MDI
6.3 Các phương tiện tạo giao diện người dùng
6.3.1 Các nút (button)
6.3.2 Các hộp kiểm tra (check box)
6.3.3 Combo box
6.3.4 Form
7 Ngôn ngữ lập trình Perl
7.1 Các vấn đề về ngôn ngữ
8.1.1 Ngữ pháp
8.1.2 Cấu trúc chương trình
8.1.3 Môi trường thực hiện
7.2 Các vấn đề cụ thể
28
- 7.2.1 Pattern matching & regular expression
7.2.2 Các mảng liên quan (associative array)
7.2.3 Thao tác với file và thư mục
7.2.4 Cấu trúc điều khiển
7.2.5 Liên kết với các hàm bên ngoài
7.3 CGI và Perl
7.3.1 Ứng dụng đối với các trang web
Các chuẩn kỹ năng về CNTT Chuẩn kỹ năng cơ bản của Kĩ sư Công nghệ thông tin Rà soát 2003
Trung tâm sát hạch CNTT và hỗ trợ đào tạo (VITEC)
Ban quản lý Khu Công nghệ cao Hoà Lạc - Bộ Khoa học và Công nghệ
Tầng 4, 97 Trần Quốc Toản, Hà Nội, Việt Nam
Điện thoại. 84-4-9425416
Fax. 84-4-9425417
URL http://www.vitec.org.vn
Trung tâm sát hạch Công nghệ thông tin và hỗ trợ đào tao 12-2003
29
nguon tai.lieu . vn