1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Kỹ thuật phần mềm

259 256 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Lời nói đầu Ngày phần mềm ứng dụng hầu hết lĩnh vực sống đại Trong sống hàng ngày tiếp xúc cách trực tiếp gián tiếp đến hệ thống phần mềm với quy mô từ nhỏ đến lớn Từ thiết bị dân dụng gia đình TV, máy giặt, lò vi sóng,… ứng dụng phần mềm nhúng để điều khiển hoạt động đến hệ thống lớn ngân hàng, công ty, trường học,… Tất ứng dụng phần mềm phần hay toàn công việc Cùng với xu áp dụng phần mềm hoạt động đời sống xã hội việc sinh viên sau trường trang bị phần kiến thức liên quan đến lĩnh vực xây dựng phần mềm quy trình sản xuất phần mềm để đảm bảo xây dựng phần mềm có chất lượng tốt phục vụ công việc xây dựng phần mềm thương mại đảm bảo chất lượng tốt Từ nhu cầu thực tiễn đó, môn Điện tử Tin học, khoa Điện tử Viễn thông Trường Đại học Bách khoa Hà Nội giao nhiệm vụ đảm nhiệm môn học Kỹ thuật phần mềm môn học bắt buộc sinh viên Điện tử viễn thông Cuốn giáo trình kỹ thuật phần mềm viết nhằm hỗ trợ sinh viên Điện tử viễn thông sử dụng làm giáo trình học tập sử dụng làm tài liệu tham khảo cá nhân muốn tìm hiểu làm công việc liên quan đến phần mềm Cấu trúc sách chia thành chương: Chương 1: Giới thiệu Trong chương giới thiệu số khái niệm liên quan đến phần mềm, hệ phần mềm, đề cập đến khái niệm kỹ thuật phần mềm Chương 2: Dịch ngôn ngữ bậc cao http://www.ebook.edu.vn Chương giới thiệu nguyên lý chương trình dịch bước chương trình dịch thực việc chuyển đổi chương trình nguồn thành chương trình dạng mã trung gian mã máy Chương 3: Cơ sở liệu Cơ sở liệu thành phần quan trọng thiếu hầu hết hệ thống phần mềm đại, đặc biệt phần mềm thông tin quản lý Chương nhằm giới thiệu khái niệm CSDL cách thiết kế sở liệu cách hiệu tiến hành xây dựng phần mềm Chương 4: Ngôn ngữ SQL Chương nhằm giới thiệu chế khai thác CSDL hệ thống phần mềm cách sử dụng loại ngôn ngữ phi thủ tục Chương 5: Các pha phát triển phần mềm Chương nhằm giới thiệu bước cần phải trải qua trình xây dựng phần mềm nhằm tạo phần mềm có chất lượng Do thời gian có hạn kinh nghiệm chưa nhiều nên hẳn giáo trình có nhiều thiếu sót Rất mong nhận ý kiến đóng góp độc giả để giáo trình bổ sung, hoàn thiện tốt Mọi ý kiến đóng góp xin gửi về: Bộ môn Điện tử tin học – Khoa Điện tử viễn thông Đại học Bách Khoa Hà Nội P401 – C9 Điện thoại: Fax: Email: nvhuong5650@yahoo.com; Xin trân trọng cảm ơn http://www.ebook.edu.vn Hà nội, ngày tháng năm Bộ môn Điện tử Tin học http://www.ebook.edu.vn MỤC LỤC Lời nói đầu Chương Giới thiệu 1.1 Các thành tựu vấn đề tồn kỹ thuật phần mềm 1.2 Các ứng dụng phần mềm 1.3 Định nghĩa kỹ thuật phần mềm 12 1.4 Quá trình, phương pháp, công cụ 15 1.5 Khái niệm đạo đức kỹ thuật phần mềm 16 Chương Dịch ngôn ngữ bậc cao 18 2.1 Các vấn đề dịch ngôn ngữ 18 2.1.1 Cú pháp ngôn ngữ lập trình 19 2.1.2 Tiêu chuẩn cú pháp 20 2.1.3 Các phần tử cú pháp ngôn ngữ 23 2.1.4 Cấu trúc chương trình tổng thể - chương trình 26 2.2 Giới thiệu chương trình dịch 27 2.2.1 Giới thiệu chung: 27 2.2.2 Trình biên dịch(compiler) 29 2.3 Các pha trình biên dịch 30 2.3.1 Giai đoạn phân tích từ vựng: 31 2.3.2 Phân tích cú pháp 32 2.3.3 Phân tích : 35 2.3.4 Giai đoạn tạo mã trung gian 35 2.3.5 Giai đoạn tạo mã đích 36 2.4 Quản lý bảng ký hiệu 37 2.5 Xử lý macro thao tác thời gian biên dịch 38 2.6 Kiểm tra lỗi thông báo lỗi 39 Chương Cơ sở liệu 40 3.1 Khái niệm sở liệu 40 3.1.1 Giới thiệu CSDL 40 a) Khái niệm CSDL 41 b) Đặc điểm CSDL 43 c) Ưu điểm CSDL 44 d) Kiến trúc hệ CSDL 48 e) Ứng dụng CSDL 50 3.1.2 Các loại mô hình CSDL 51 a) Mô hình quan hệ (Relational Data Model) 51 b) Mô hình phân cấp (Hierarchical Data Model) 55 c) Mô hình mạng (Network Data Model) 59 d) Kết luận 62 3.1.3 Tính độc lập liệu 63 a) Độc lập liệu mức logic: 63 b) Độc lập liệu mức vật lý: 63 3.2 Mô hình sở liệu quan hệ 64 3.2.1 Các khái niệm 65 -1- http://www.ebook.edu.vn a) Miền 65 b) Tích đề miền 66 c) Lược đồ khái niệm 66 d) Quan hệ 66 e) Miền thuộc tính 67 f) Chuẩn hoá 69 3.2.2 Khoá 71 a) Khoá (Primary key) 71 b) Khoá ứng cử (Candidate key) 72 c) Khoá ngoại lai (Foreign key) 73 d) Khoá phụ (Secondary key): 74 3.2.3 Kết luận 74 3.2.4 Các phép toán CSDL quan hệ 77 a) Phép chèn (INSERT) 77 b) Phép loại bỏ (DEL) 78 c) Phép thay đổi (CHANGE UPDATE) 79 3.3 Chuẩn hoá 80 3.3.1 Giới thiệu 80 3.3.2 Phụ thuộc hàm 81 3.3.3 Các dạng chuẩn thứ nhất, thứ hai thứ ba 84 3.3.4 Các quan hệ với khoá ứng cử 94 3.3.5 Các bước để chuyển mô hình liệu quan hệ thành quan hệ dạng chuẩn hóa 4NF: 101 a) Bước 1: 101 b) Bước 109 c) Bước 3: 110 3.3.6 Kết luận: 111 3.4 Thiết kế sở liệu 112 3.4.1 Tám bước thiết kế Cơ sở liệu 112 a) Bước 1: Phân tích toàn yêu cầu 112 b) Bước 2: Nhận diện thực thể 112 c) Bước 3: Nhận diện mối tương quan thực thể 112 d) Bước 4: Xác định khoá (Primary Key - PK) 112 e) Bước 5: Nhận diện khoá ngoại lai (Foreign Key - FK) 113 f) Bước 6: Thêm thuộc tính khoá vào bảng liệu 113 g) Bước 7: Tiếp theo bước quan trọng, thực chuẩn hoá bảng liệu 113 h) Bước 8: Khai báo phạm vi thuộc tính 114 3.4.2 Các quy tắc toàn vẹn liệu mô hình quan hệ 114 a) Qui tắc Toàn vẹn thực thể (Entity Integrity Rule - EI): 114 b) Qui tắc Toàn vẹn quy chiếu (Referential Integrity Rule - RI): 114 3.4.3 Ví dụ chuẩn hoá bảng liệu 116 Chương Ngôn ngữ SQL 119 4.1 Giới thiệu ngôn ngữ SQL 119 4.2 Phân loại SQL 120 -2- http://www.ebook.edu.vn 4.2.1 DDL (Data Definition Language) 120 4.2.2 DML (Data Manipulation Language) 120 4.2.3 DCL (Data Control Language) 120 4.3 Các lệnh SQL điển hình 120 4.3.1 Các phép tính tìm kiếm 120 a) Mệnh đề SELECT 121 b) Select list 121 c) Mệnh đề FROM 121 d) Mệnh đề WHERE 123 e) Mệnh đề GROUP BY 123 f) Mệnh đề HAVING 124 g) Mệnh đề ORDER BY 124 4.3.2 Lệnh thêm ghi vào bảng 125 4.3.3 Các phép tính cập nhật 125 4.3.4 Các phép xoá liệu 126 4.3.5 Các toán tử 126 a) Arithmetic Operators 127 b) Assignment Operator 127 c) Comparison Operators 127 d) Logical Operators 128 4.3.6 Các hàm thư viện 128 a) Các hàm tổng hợp (Aggregate Functions) 128 b) Các hàm xử lý liệu 129 4.3.7 Các lệnh định nghĩa sở liệu 129 a) Các lệnh tạo bảng 129 b) Lệnh thêm cột cho bảng 130 c) Lệnh bớt cột bảng 131 d) Lệnh loại bỏ bảng khỏi CSDL 131 4.3.8 Các phép tính đảm bảo an toàn liệu 131 a) Phân quyền thực lệnh CSDL: 131 b) Phân quyền truy cập xử lý đối tượng CSDL 132 c) Tước quyền xử lý CSDL người dùng 132 4.4 Một số ví dụ áp dụng SQL 133 a) Các phép tính tìm kiếm 134 b) Các phép tính cập nhập 137 c) Các hàm thư viện 138 d) Các phép tính định nghĩa CSDL 139 e) Các phép tính bảo đảm an toàn liệu 140 Chương Các pha phát triển phần mềm 141 5.1 Đặt vấn đề 141 5.1.1 Đặc điểm phần mềm 141 5.1.2 Các vấn đề phát triển phần mềm 142 5.1.3 Các mô hình phát triển phần mềm 144 a) Mô hình tuyến tính (Cascade model) 144 b) Mô hình mẫu (Prototype model) 144 -3- c) Mô hình phát ứng dụng nhanh (RAD) 144 d) Mô hình xoắn ốc (Siral model) 144 e) Các mô hình khác 144 5.1.4 Các kỹ thuật hệ thứ 144 5.2 Các pha phát triển phần mềm 144 5.2.1 Nghiên cứu yêu cầu (Requirements and Specifications) 144 a) Yêu cầu hệ thống 144 b) Nghiên cứu hệ thống 148 c) 2.4 Các phương pháp nghiên cứu 150 d) Nghiên cứu tình 157 5.2.2 Phân tích thiết kế (System Analysis and Design) 161 a) Phân tích hệ thống 166 5.2.3 Triển khai (Coding and UnitTest) 236 5.2.4 Thử nghiệm (Test) 236 5.2.5 Cài đặt bảo trì (Deployment and Maintenance) 241 a) Triển khai hệ thống 242 b) Bảo trì hệ thống hỗ trợ khách hàng 251 Chương - Bảo vệ phần mềm 256 http://www.ebook.edu.vn Tài liệu tham khảo -4- Chương Giới thiệu 1.1 Các thành tựu vấn đề tồn kỹ thuật phần mềm Máy tính khác với máy móc thông thường điểm thực nhiệm vụ khác cách sử dụng phần mềm khác Tức phần mềm tạo khác biệt máy tính định lực máy tính Cho đến năm 1990, xu hướng ngành công nghiệp máy tính phát triển phần cứng nhằm giảm giá thành hệ thống tăng lực xử lý lưu trữ liệu Do nhu cầu phần mềm tăng lên nhanh chóng, thách thức hay mục tiêu ngành công nghiệp máy tính cải thiện chất lượng giảm giá thành phần mềm Có thể nói khả phần cứng biểu thị cho tiềm hệ thống phần mềm chế giúp khai thác tiềm Sự tiến hóa phần mềm gắn liền với tiến hóa phần cứng chia làm giai đoạn: http://www.ebook.edu.vn a Những năm đầu (từ 1950 đến 1960): - Giai đoạn phần cứng thay đổi liên tục, số lượng máy tính phần lớn máy đặt hàng chuyên dụng cho ứng dụng đặc biệt - Phương thức xử lý theo lô (batch), tức “gói” chương trình có sử dụng kết lại thành khối dể tăng tốc độ thực - Thời kỳ lập trình máy tính coi nghệ thuật “theo năng”, chưa có phương pháp hệ thống Việc phát triển phần mềm chưa quản lý - Môi trường lập trình có tính chất cá nhân; thiết kế, tiến trình phần mềm không tường minh, thường tài liệu Sản xuất có tính đơn chiếc, theo đơn đặt hàng Người lập trình thường người sử dụng kiêm việc bảo trì sửa lỗi b Thời kỳ từ năm 1960 đến năm 1970: - Các hệ thống đa nhiệm, đa người sử dụng (ví dụ: Multics, Unix, ) xuất dẫn đến khái niệm tương tác người máy Kỹ thuật mở giới cho ứng dụng đòi hỏi mức độ tinh vi cho phần mềm phần cứng - Nhiều hệ thống thời gian thực với đặc trưng thu thập, phân tích biến đổi liệu từ nhiều nguồn khác phản ứng (xử lý, tạo output) khoảng thời gian định xuất -5- - Tiến lưu trữ trực tuyến làm xuất hệ hệ quản trị CSDL - Số lượng hệ thống dựa máy tính phát triển, nhu cầu phân phối mở rộng, thư viện phần mềm phát triển, quy mô phần mềm ngày lớn làm nẩy sinh nhu cầu sửa chữa gặp lỗi, cần sửa đổi người dùng có yêu cầu hay phải thích nghi với thay đổi môi trường phần mềm (phần cứng, hệ điều hành, chương trình dịch mới) Công việc bảo trì phần mềm tiêu tốn nhiều công sức tài nguyên đến mức báo động c Thời kỳ từ năm 1970 đến đầu năm 1990: - Hệ thống phân tán (bao gồm nhiều máy tính, máy thực chức liên lạc với máy khác) xuất làm tăng quy mô độ phức tạp phần mềm ứng dụng chúng - Mạng toàn cục cục bộ, liên lạc số giải thông cao phát triển mạnh làm tăng nhu cầu thâm nhập liệu trực tuyến, nảy sinh yêu cầu lớn phát triển phần mềm quản lý liệu - Công nghệ chế tạo vi xử lý tiến nhanh khiến cho máy tính cá nhân, máy trạm để bàn, thiết bị nhúng (dùng cho điều khiển robot, ô tô, thiết bị y tế, đồ điện gia dụng, ) phát triển mạnh khiến cho nhu cầu phần mềm tăng nhanh - Thị trường phần cứng vào ổn định, chi phí cho phần mềm tăng nhanh có khuynh hướng vượt chi phí mua phần cứng d Thời kỳ sau 1990: - Kỹ nghệ hướng đối tượng cách tiếp cận nhanh chóng thay nhiều cách tiếp cận phát triển phần mềm truyền thống lĩnh vực ứng dụng - Sự phát triển Internet làm cho người dùng máy tính tăng lên nhanh chóng, nhu cầu phần mềm ngày lớn, quy mô độ phức tạp hệ thống phần mềm tăng đáng kể - Phần mềm trí tuệ nhân tạo ứng dụng thuật toán phi số hệ chuyên gia, mạng nơ ron nhân tạo chuyển từ phòng thí nghiệm ứng dụng thực tế mở khả xử lý thông tin nhận dạng kiểu người http://www.ebook.edu.vn Khác với sản phẩm công nghiệp khác, phần mềm có đặc trưng riêng biệt làm cho việc sản xuất phần mềm trở nên khó khăn Đó tính Phức tạp, tính Thích hợp, Khả thay đổi tính Vô hình Thêm nữa, tham gia người vào hoạt động định nghĩa, thiết kế, triển khai thử nghiệm tạo nên yếu cho tính phức tạp, tính thích hợp, tính ổn định, tính vô hình Đồng thời làm khó khăn thêm cho việc kiểm soát, cộng tác nhóm thành viên -6- Nghiên cứu Kỹ thuật phần mềm để đưa quy tắc cho hoạt động cách cung cấp mô hình, ngôn ngữ, phương pháp luận, công cụ, … Nghiên cứu Kỹ thuật phần mềm năm 1968 hội thảo NATO tổ chức Đức, bắt nguồn từ thất bại số dự án phần mềm lớn, trải qua giai đoạn sau: ¾ 1968-1980: Hình thành khái niệm vòng đời phần mềm với công nghệ đưa cho pha từ lên Sự phát triển phương pháp lập trình phương pháp thiết kế cho phép cấu trúc chương trình dễ dàng kiểm tra hiệu chỉnh o Lập trình có cấu trúc E.W.Dikjstra o Parnas module D.L.Parnas o JSP (Jackson Structured Programming) M.Jackson o Thiết kế hỗn hợp G.J.Myers o Thiết kế có cấu trúc E.Yordon L.L.Constantine Các ngôn ngữ lập trình ảnh hưởng kết Pascal, C, ngôn ngữ lập trình hướng đối tượng Sự phát triển công nghệ mô tả yêu cầu người dùng, kỹ thuật yêu cầu: o ISDOS (Information System Design and Optimization) D.Teichrow o SADT (Structured Analysis and Design Technique) D.T.Ross o SREM M.W.Alford o Sự phát triển công nghệ quản trị dự án kỹ thuật năm 70: o Định giá http://www.ebook.edu.vn • COCOMO B.Boehm o Phát yếu tố rủi ro (xác định độ phức tạp phần mềm) • Phương pháp V R.MaCabe • Phương pháp E H.Halstead • -7- o Dự tính giới hạn hoạt động test • Mô hình gia tăng độ tin cậy phần mềm o Sự phát triển công nghệ CSDL kỹ thuật phần mềm với hỗ trợ việc quản trị dự án quản trị cấu hình ¾ 1980-1990: Chuẩn hoá tự động hoá phần từ xuống Sự xuất công nghệ mẫu: Mô hình thác nước bị loại bỏ tỏ dùng để định nghĩa yêu cầu người sử dụng cách hoàn hảo Mô hình thay đổi công nghệ phần mềm chuyển từ mô hình thác nước sang mô hình mẫu Sự phát triển công cụ phát triển phần mềm có hỗ trợ máy tính - CASE (Computer Aided Software Engineering) o CASE tools for SA/SD (ví dụ: Stp) ¾ 1985-1995: Mô hình gia công phần mềm môi trường tích hợp; phân tích hỗ trợ nhân tố người Gia công phần mềm: o Gia công chương trình Lee Osterweil o CMM SEI o Các hoạt động thúc đẩy gia công phần mềm - SPI (Software Process Improvement) Môi trường tích hợp: o Công cụ tích hợp PCTE Phân tích hỗ trợ nhân tố người o Phân tích giao thức nhân tố người o Hỗ trợ truyền thông để trao đổi thông tin ¾ 1985-1999: Công nghệ hướng đối tượng; Tính toán phân tán; Văn hoá microsoft Công nghệ hướng đối tượng: http://www.ebook.edu.vn o Mô hình đối tượng OOD Grady Booch, OMT, OOSE, UML (U M Language) o Mẫu thiết kế GoF o Khung làm việc ứng dụng o Các thành phần phần mềm Tính toán phân tán: -8- • Sau giai đoạn đầu, phần lớn nhà cung cấp đòi thêm tiền công cho dịch vụ Nếu đội ngũ nhân viên chuyên gia dự báo lỗi giải sai sót máy tính cần hỗ trợ điện thoại đủ Nếu không, sai sót xảy ra, ta cần đến hỗ trợ chỗ nhà cung cấp Các doanh nghiệp vừa nhỏ đặc biệt nên cần hỗ trợ chỗ thông thường họ đội ngũ kỹ thuật riêng Để đề phòng sai sót hệ thống, cần thiết việc backup tệp khôi phục hệ thống • Cần backup tệp cuối ngày • Các tệp backup cần lưu giữ địa điểm khác với nơi lưu giữ tệp vận hành • Nếu xảy sai sót với hệ thống, cần + có thủ tục để chạy lại thao tác từ thời điểm kiểm tra + nhập lại tất tài liệu xem xét khoảng từ thời điểm kiểm tra đến thời điểm hệ thống bị lỗi Thông thường việc backup khôi phục thường bị bỏ qua 13.2 Đào tạo Đào tạo khía cạnh quan trọng chu trình sống việc phát triển phần mềm • Quá trình đào tạo cho phép người phát triển phần mềm huấn luyện người sử dụng hệ thống • Đào tạo tiến hành việc nâng cấp hệ thống để áp đặt lại lợi ích cần cung cấp cho người sử dụng triển khai cài đặt http://www.ebook.edu.vn hệ thống Các nhiệm vụ cần tiến hành đào tạo: • Xác định giai đoạn phát triển cần có đào tạo • Thông thường việc đào tạo tiến hành trước trình cài đặt hệ thống trước bàn giao cho người sử dụng không - 243 - có thay đổi đáng kể hệ thống người sử dụng nên sử dụng hệ thống vừa kết thúc khoá học • Cần có thảo luận với khách hàng đội ngũ phát triển để nhận diện lĩnh vực cần • Các thính giả yêu cầu việc đào tạo tập trung vào phương diện khác hệ thống Ví dụ lĩnh vực hợp lệ: • Đối với người sử dụng cuối cùng: + Các đặc trưng + Các thủ tục vận hành + Các lỗi thông thường + Các phím tắt • Đối với người quản trị hệ thống: + Phần mềm cài đặt lại hệ thống + Cấu hình tài khoản + Sửa lỗi thông thường người sử dụng + Sửa sai hỏng quen biết virut máy tính + Hiểu tài liệu hợp lệ • Đối với nhóm làm công việc bảo trì: + Làm quen với hệ thống bao gồm: − đặc trưng − sai hỏng quen biết máy tính − virut máy tính Khi lập kế hoạch đào tạo, cần xem xét đến vấn đề cường độ loại đào tạo theo yêu cầu http://www.ebook.edu.vn • Việc trình bày + Là phiên làm việc đào tạo theo định + Dùng tài liệu chuẩn bị đặc biệt + Phân phối tài liệu tham khảo nhanh - 244 - • Các nhân tố cần xem xét là: + Nơi gặp gỡ: − Địa điểm dạy quan trọng kế hoạch đào tạo theo phiên − Các vấn đề cần xem xét bao gồm: ∗ tầm cỡ gặp ∗ không gian cần thiết ∗ công cụ hỗ trợ ∗ khả có địa điểm ∗ chi phí ∗ vị trí + Người trình bày: Các vấn đề quan trọng việc tuyển chọn người trình bày là: − Hiểu biết họ hệ thống − Khả truyền thông − Khả người giảng viên + Thời gian: − Thu xếp thời gian phù hợp với khách hàng người trình bày − Thời gian khoá học phụ thuộc vào ∗ khả nơi tiến hành khoá học ∗ vấn đề cần giải ∗ lịch làm việc khách hàng • Duyệt lại khoá học nội phát triển khoá học để có phản hồi hiệu trước trình bày với khách hàng • Xem xét sử dụng kiểm tra cuối khoá để nhấn mạnh http://www.ebook.edu.vn khái niệm trình bày khoá học • Cuối cùng, tất người sử dụng phải đào tạo tới mức độ hoàn thiện theo yêu cầu - 245 - 13.3 Thử nghiệm chấp nhận Thử nghiệm chấp nhận giai đoạn cuối trình thử nghiệm trước hệ thống chuyển tới vận hành sử dụng Thử nghiệm chấp nhận bao gồm: • Thử nghiệm hệ thống với liệu người làm hệ thống cung cấp liệu mô • Thử nghiệm chấp nhận thường phát lỗi phần bị bỏ qua yêu cầu hệ thống + Các yêu cầu không phản ánh tiện nghi thực hiệu suất người sử dụng yêu cầu thử nghiệm chấp nhận minh hoạ hệ thống không thực hiệu suất chức dự báo từ trước Trước thử nghiệm chấp nhận cần thực việc sau: • Đảm bảo pha thử nghiệm khác hoàn thiện • Kết thúc việc tập hợp liệu cần dùng cho thử nghiệm chấp nhận • Hoàn thành việc sưu liệu Kế hoạch thử nghiệm chấp nhận liệu phải sử dụng pha • Phải hoàn thành việc định nghĩa thử nghiệm chất lượng Các bước thử nghiệm chấp nhận: • Duyệt lại kế hoạch thử nghiệm chấp nhận với khách hàng vấn đề có liên quan, là: + Các thử nghiệm cần thực + Các tập hợp thử nghiệm cần sử dụng + Định vị thời gian http://www.ebook.edu.vn • Thực việc thử nghiệm chất lượng hệ thống hoàn chỉnh để đảm bảo phù hợp với thử nghiệm chấp nhận + Chưa nên thực thử nghiệm chấp nhận thử nghiệm chất lượng tiến hành thành công - 246 - + Tiến hành thử nghiệm chất lượng nhà điều kiện mô điều kiện thực tế cách sử dụng liệu khách hàng cung cấp − Cần đảm bảo hệ thống vận hành đơn vị riêng rẽ • Sửa lỗi phát pha “Viết mã chương trình thử nghiệm đơn vị” • Chỉ dẫn cho thành viên nhóm thực Thử nghiệm chấp nhận chất tồn đặc điểm liệu nhập vào hệ thống bên cần sử dụng Thử nghiệm chấp nhận • Biên soạn liệu thử nghiệm và/hoặc thiết lập liên kết hệ thống khách hàng cung cấp để đánh giá hiệu suất toàn thể hệ thống + Tại cần đến giúp đỡ thành viên nhóm khác Thực thử nghiệm chấp nhận: • Dựa vào tính mơ hồ bỏ qua yêu cầu hệ thống, xác định: + Các tính chất không tương thích hệ thống + Các tính chất không phù hợp mặt hiệu suất + Các thiếu sót khác • Các lỗi phải sửa dựa vào phương pháp nhận diện pha Thử nghiệm • Cần phải cho chạy hai tập thử nghiệm: + Một tập nhóm Đảm bảo chất lượng phát triển + Một tập khách hàng phát triển http://www.ebook.edu.vn • Tiến hành trình sản phẩm thể mức độ theo yêu cầu mặt chức định nghĩa Phân tích hệ thống Chỉ định yêu cầu khách hàng chấp nhận để cài đặt vào hệ thống tồn họ - 247 - • Tất thay đổi cần thiết Các yêu cầu hệ thống, Thiết kế, Thử nghiệm Tài liệu cho người sử dụng cần chấp nhận phận quản lý người có thẩm quyền ghi nhận • Cuối cùng, chức hệ thống dạng định yêu cầu thẩm định • Khi pha phát triển hệ thống kết thúc, dự án sẵn sàng cho việc tích hợp vào môi trường tồn Một số vấn đề thường xuất triển khai • Thử nghiệm hệ thống thực để đảm bảo hệ thống dự định làm việc đúng: + Đầu tiên, làm việc thực thể riêng biệt + Sau đó, làm việc hệ thống khác, máy tính khác mạng • Người phân tích thiết kế hệ thống nên cẩn thận duyệt lại cách lý tưởng tham gia vào việc định nghĩa thử nghiệm cho đảm bảo tất yêu cầu thoả mãn 13.4 Chuyển đổi tệp Chuyển đổi tệp kho ghi chuyển đổi nên tiến hành triển khai nêú ta bắt đầu hệ thống mưói với tài liệu tích cực từ hệ thống cũ • Đối với số tổ chức, công việc vất vả họ cần chuyển đổi tất tài liệu cũ dù chúng giấy hay thiết bị nhớ • Đối với số tổ chức khác, đơn giản cần bắt đầu hệ thống http://www.ebook.edu.vn với tài liệu nhận từ thời điểm bắt đầu đó, hệ thống cũ hoạt động tất ghi kết thúc - 248 - • Một số hệ thống khác chọn giải pháp trung gian, đưa số tài liệu cũ vào hệ thống mưói trì hệ thống cũ tài liệu khác Nếu cần chuyển đổi tài liệu cũ nên chuyển đổi tài liệu đầu tiên? • Phần lớn tổ chức bắt đầu với tài liệu sử dụng nhiều cho chúng truy nhập thường xuyên cho số người dùng Các vấn đề phần tử chiến thuật chuyển đổi, số đặc điểm khác phụ thuộc vào ứng dụng tổ chức Tất tổ chức chung vấn đề chuyển đổi muốn thành công: • Đây vấn đề quan trọng • Cần lập kế hoạch • Cần thực cách • Được tiến hành với đội ngũ nhân viên thích hợp + Một số tổ chức tách nhân viên khỏi công việc thường xuyên để họ tập trung vào việc chuyển đổi + Một số tổ chức sử dụng nhân viên hợp đồng họ không tách nhân viên khỏi công việc thường xuyên để tập trung vào việc chuyển đổi Đối với tổ chức cần trì sử dụng ghi nhiều năm phương tiện thông thường chuyển đổi tất tài liệu thành hình ảnh sử dụng kết hợp microfilm hình ảnh • Đối với tổ chức khác cần lưu tài liệu thời gian ngắn quan giao thông, không cần chuyển đổi tài liệu trình chuyển đổi hệ thống http://www.ebook.edu.vn • Tuỳ trường hợp mà chọn cách chuyển đổi thích hợp Một bước triển khai thay đổi thủ tục bị hệ thống tác động tới • Nếu thay đổi nhiều, phải tiến hành hầu hết thời gian triển khai - 249 - • Mặc dù thay đổi thực thực cuối dự án, ta cần đánh giá lại trình làm việc kể từ bắt đầu việc phân tích Hãy hợp lý hoá thao tác nhiều tốt Việc triển khai kết thúc với • thử nghiệm chấp nhận • chuyển đổi từ hệ thống cũ thành hệ thống • kết thúc việc quản lý Thử nghiệm chấp nhận bao gồm • Chấp nhận hệ thống • Chấp nhận tài liệu hệ thống • Chấp nhận tất phân phối khác người bán 13.5 Chuyển đổi hệ thống Trong chuyển đổi hệ thống, ta cần chia thành pha hay thời điểm cho, ngừng hệ thống cũ bắt đầu pha hay vẫn thời điểm đó, bắt đầu sử dụng hệ thống Một số chiến thuật thông thường để chuyển đổi từ hệ thống hành thành hệ thống thông tin mới: Chuyển đột ngột • Vào ngày định, hệ thống cũ dừng lại hệ thống vận hành thay Chuyển song song • Cả hai hệ thống cũ song song vận hành giai đoạn để đảm bảo tất sai sót hệ thống giải trước hệ thống cũ hoàn toàn biến Chuyển vùng http://www.ebook.edu.vn • Khi hệ thống sử dụng số địa điểm địa lý thông thường việc chuyển đổi thực địa điểm, sau chấp nhận mở rộng tới địa điểm khác Chuyển theo giai đoạn - 250 - • Mỗi phiên hệ thống chuyển đổi phát triển • Mỗi phiên chuyển đổi cách dùng chiến thuật chuyển đột ngột, song song hay vùng Việc chuyển đổi trở nên phức tạp doanh nghiệp có vài hệ thống hành hoạt động hệ thống • Trong trường hợp này, việc chuyển đổi xuất pha tách biệt • Hệ thống ngừng làm việc phận quản lý khẳng định điều nhà cung cấp hứa đưa vào kế hoạch phân tích yêu cầu hoàn thành chấp nhận b) Bảo trì hệ thống hỗ trợ khách hàng 14.1 Tổng quan bảo trì hệ thống Bảo trì liên quan đến thay đổi yêu cầu dự án thời gian sống dự án để phản ánh thay đổi cần thiết Môi trường hệ thống thay đổi sửa lỗi chưa phát trình thẩm định hệ thống cấp thiết ⇒ Bảo trì hệ thống quan trọng • Các yêu cầu cần nhận định thẩm định http://www.ebook.edu.vn • Các phần tử hệ thống cần thiết kế lại triển khai • Một phần hệ thống hay toàn hệ thống cần thử nghiệm Trước bảo trì hệ thống cần đảm bảo • hệ thống qua thử nghiệm chấp nhận - 251 - • cài đặt thành công • đồng thời việc sưu liệu cho phiên phần mềm hoàn thiện chấp nhận 14.2 Các nhiệm vụ bảo trì hệ thống Duyệt lại kế hoạch làm việc dự án Yêu cầu sưu liệu phản hồi người sử dụng để xác định thiếu sót mặt chức hẹe thống • Điều thực cách sử dụng danh sách nghiên cứu danh sách kiểm tra tập trung vào: + Các báo cáo rắc rối hay sai lầm hệ thống + Các đề xuất cải tiến hệ thống Nhận diện phần tử cần thiết phải bảo trì từ phản hồi người sử dụng gán quyền ưu tiên cho phần tử có xem xét đến: • Tầm quan trọng phần tử vận hành hệ thống • Tầm quan trọng phần tử tính dễ sử dụng hệ thống • Các nguồn tài nguyên dùng cho việc bảo trì có Nhận diện loại hình bảo trì yêu cầu phân công đội ngũ bảo trì tương ứng • Ba loại hình bảo trì bản: + Bảo trì hoàn thiện: − Bao gồm nâng cấp cho hệ thống mà không ảnh hưởng đến chức hệ thống + Bảo trì sửa lỗi: − Bao gồm sửa chữa lỗi hệ thống mà trước chưa http://www.ebook.edu.vn phát − Do làm quen, công việc nên có tham gia vài thành viên đội ngũ làm dự án ban đầu + Bảo trì thích ứng: - 252 - − Đây bảo trì theo yêu cầu có thay đổi môi trường vận hành hệ thống − Khi bảo trì ảnh hưởng đến chức hệ thống, nên có tham gia thành viên đội ngũ làm dự án ban đầu Lập kế hoạch cho việc bảo trì có chi tiết đến thời gian yêu cầu để hoàn thành việc bảo trì thành phần có tính đến mức ưu tiên nhận diện tính đến: • Kích thước độ phức tạp thành phần • Kích thước thành thạo đội ngũ bảo trì • Các kế hoạch làm việc việc bảo trì trước mà có liên quan Thành lập Ngân quỹ bảo trì có chi tiết hoá chi phí dự đoán cho tổng bảo trì có xem xét đến vấn đề sau: • Các yêu cầu nhân viên Bảo trì sửa lỗi theo yêu cầu Nên nhớ: • Chi phí cho việc sửa lỗi mã chương trình thường không đắt • Lỗi thiết kế dẫn đến phải viết lại số thành phần chương trình • Lỗi yêu cầu đòi hỏi phải thiết kế lại số thành phần hệ thống • Các chi phí ước lượng việc cải tiến • Chi phí ước lượng công lao động tài nguyên dựa chi phí việc bảo trì trước Thực việc bảo trì, kết hợp với pha Viết mã chương trình, Thử nghiệm đơn vị Thử nghiệm có thể, sau nhận chấp nhận http://www.ebook.edu.vn phận quản lý khách hàng kế hoạch làm việc ngân quỹ đề xuất Sưu liệu trình bảo trì tuân theo chuẩn: • Các mục tiêu toán ban đầu - 253 - • Đường lối giải đưa • Các thay đổi thực với hệ thống • Các thử nghiệm thực tất kết 10 Duyệt lại tất tài liệu có liên quan tới thành phần cần bảo trì 11 Định nghĩa chiến thuật hỗ trợ khách hàng: a Thông báo cho khách hàng vấn đề vận hành nâng cấp b Quyết định mức độ hỗ trợ khách hàng theo yêu cầu, có xem xét đến: • Độ phức tạp chức hệ thống • Độ phức tạp giao diện người sử dụng • Mức độ tương tác với người sử dụng theo yêu cầu • Mọi hiểu biết chuyên môn cần thiết để sử dụng hệ thống • Khả nhìn thấy thay đổi thực từ phiên cuối phiên trước bảo trì phần mềm c Quyết định cung cấp hỗ trợ khách hàng theo điện thoại hay chỗ d Thành lập cập nhật Tài liệu tham khảo ghi chép hỗ trợ khách hàng Quản lý rủi do: • Để ngăn cản sai hỏng trầm trọng, cần tiến hành bước để đảm bảo hệ thống vận hành phần tử hỏng gây liệu có lỗi: + Bảo vệ liệu − Trong trường hợp thủ tục backup liệu tạo nên cung cấp phương tiện backup tự động theo chu kỳ đặn, copy liệu lên đĩa cứng khác, http://www.ebook.edu.vn băng từ hay máy xa + Cài đặt ghi liệu dư thừa − Nếu không cần xử lý liệu thời gian thực, hệ thống thích hợp đơn ghi lại liệu vận hành như: - 254 - ∗ Viết chương trình nhỏ đứng độc lập với hệ thống Chương trình có trách nhiệm ghi liệu ∗ Cài đặt thêm máy dành riêng cho việc ghi liệu hệ thống + Cài đặt hệ thống dư thừa: − Nếu cần xử lý liệu thời gian thực, cần thiết cài đặt phiên làm việc cũ chương trình hệ thống lên máy khác sau cho chạy song song với hệ thống vừa cài đặt, tắt toàn hệ thống chuyển điều khiển cho phiên cũ hệ thống sửa xong lỗi cuối pha bảo trì, người thực việc bảo trì có khả thừa nhận hỗ trợ đầy đủ cho hệ thống • Nhân viên hỗ trợ khách hàng tiện nghi sẵn sàng cho người http://www.ebook.edu.vn sử dụng - 255 - http://www.ebook.edu.vn Chương - Bảo vệ phần mềm - 256 - http://www.ebook.edu.vn Tài liệu tham khảo [1] “Software Engineering”,HUT-Genetic Singapore,2005 [2] Ramez Elmasri,Shamkant B.Navathe,“Fundamentals of Database Systems,Third Edition” [3] Nguyễn Việt Hà,“Bài giảng kỹ nghệ phần mềm”,Trường Đại học Công nghệ [4] JP.Tremblay,P.G.Sorenson,"An Introduction to Data Structures With Applications",1995 [5] SQL Server Book Online, Microsoft [6] http://msdn.microsoft.com - 257 -

Ngày đăng: 03/01/2016, 20:13

Xem thêm: Kỹ thuật phần mềm

TỪ KHÓA LIÊN QUAN

w