Chào các bạn! Vì nhiều lý do từ nay Truyen2U chính thức đổi tên là Truyen247.Pro. Mong các bạn tiếp tục ủng hộ truy cập tên miền mới này nhé! Mãi yêu... ♥

knpm

Chương 1: TỔNG QUAN VỀ CÔNG NGHỆ PHẦN MỀM

1. Phần mềm

+              Phần mềm là một hệ thống các chương trình có thể thực hiện trên máy tính nhằm hỗ

trợ các nhà chuyên môn trong từng lĩnh vực chuyên ngành thực hiện tốt nhất các thao tác nghiệpvụ của mình.

+       Lớp phần mềm là hệ thống các phần mềm trên cùng lĩnh vực họat động nào đó.

2. Phân loại

+       Phần mềm hệ thống là những phần mềm đảm nhận công việc tích hợp và điều khiển

cácthiết bị phần cứng đồng thời tạo ra môi trường thuận lợi để các phần mềm khác và người sửdụng có thể thao tác trên đó như một khối thống nhất mà không cần phải quan tâm đến nhữngchi tiết kỹ thuật phức tạp bên dưới như cách thức trao đổi dữ liệu giữa bộ nhớ chính và đĩa,cách hiển thị văn bản lên màn hình, ...

+       Phần mềm ứng dụng là những phần mềm được dùng để thực hiện một công việc

xácđịnh nào đó. Phần mềm ứng dụng có thể chỉ gồm một chương trình đơn giản như chươngtrình xem ảnh, hoặc một nhóm các chương trình cùng tương tác với nhau để thực hiện mộtcông vịệc nào đó như chương trình xử lý bản tính, chương trình xử lý văn bản, ...

3. Kiến trúc phần mềm

Phầnmềm bao gồm 3 thành phần:

a) Thành phần giao tiếp (giao diện)

Thành phần giao tiếp là hệ thống các hàm chuyên về việc nhập/xuấtdữ liệu (hàm nhập/xuất) cùng với hình thức trình bày và tổ chức lưu trữ dữ liệu tương ứng,mục tiêu chính của các hàm này là đưa dữ liệu từ thế giới bên ngoài phần mềm vào bên tronghoặc ngược lại.Trong phạm vi giáo trình này chỉ giới hạn xét đến giao tiếp với người sử dụng phầnmềm và khi đó có tên gọi cụ thể hơn là thành phần giao diện.

b) Thành phần dữ liệu

Thành phần dữ liệu là hệ thống các hàm chuyên về đọc ghi dữ liệu(hàm đọc/ghi) cùng với mô hình tổ chức dữ liệu tương ứng. Mục tiêu chính của các hàm nàylà chuyển đổi dữ liệu giữa bộ nhớ chính và bộ nhớ phụ.

c) Thành phần xử lý 

Thành phần xử lý là hệ thống các hàm chuyên về xử lý tính toán, biến đổi dữ liệu. Các hàm này sẽ dùng dữ liệu nguồn từ các hàm trong thành phần giao diện(hàm nhập) hay thành phần dữ liệu (hàm đọc dữ liệu) kiểm tra tính hợp lệ (hàm kiểm tra) vàsau đó tiến hành xử lý (hàm xử lý) nếu cần thiết để cho ra kết quả mà sẽ được trình bày chongười dùng xem qua các hàm trong thành phần giao diện (hàm xuất) hoặc lưu trữ lại qua cáchàm trong thành phần dữ liệu (hàm ghi).

4. Kỹ nghệ phần mềm(Công nghệ phần mềm)

Kỹ nghệ phần mềmlà mộtnghành khoa học nghiên cứu về việc xây dựng các phần mềm có chất lượng trongkhoảng thời gian và chi phí hợp lý.

5. Các bước cơ bản trong xây dựng phần mềm

+       Xác định:

Đây là bước hình thành bài toán hoặc đề tài. Ở bước này thiết kế trưởng hoặc phân tíchviên hệ thống phải biết được vai trò của phần mềm cần phát triển trong hệ thống, đồng thời phải ước lượng công việc, lập lịch biểu và phân công công việc.Bên cạnh đó chúng ta phải biết người đặt hàng muốn gì. Các yêu cầu cần phải được thuthập đầy đủ và được phân tích theo chiều ngang (rộng) và chiều dọc (sâu). Công cụ sử dụngchủ yếu ở giai đoạn này là các lược đồ, sơ đồ phản ánh rõ các thành phần của hệ thống vàmối liên quan giữa chúng với nhau.

+       Phát triển

Dựa vào các nội dung đã xác định được, nhóm phát triển phần mềm dùng ngôn ngữ đặctả hình thức (dựa trên các kiến trúc toán học) hoặc phi hình thức (tựa ngôn ngữ tự nhiên) hoặc kếthợp cả hai để mô tả những yếu tố sau đây của chương trình:

·        Giá trị nhập, giá trị xuất.

·        Các phép biến đổi

·        Các yêu cầu cần đạt được ở mỗi điểm của chương trình.

Phần đặc tả chỉ quan tâm chủ yếu đến giá trị vào, ra chứ không quan tâm đến cấu trúcvà nội dung các thao tác cần thực hiện

Công việc kiểm thử nhằm vào các mục tiêu sau:

§  Kiểm tra để phát hiện lỗi của chương trình. Lưu ý rằng kiểm thử không đảm bảotuyệt

đối tính đúng đắn của chương trình do bản chất quy nạp không hoàn toàncủa cách làm.

§  Kiểm tra tính ổn định, hiệu quả cũng như khả năng tối đa của chương trình.

+       Bảo trì (Vận hành)

Công việc quản lý việc triển khai và sử dụng phần mềm cũng là một vấn đề cần đượcquan tâm trong qui trình phát triển phần mềm. Trong quá trình xây dựng phần mềm, toàn bộcác kết quả phần tích, thiết kế, cài đặt và hồ sơ liên quan cần phải được lưu trữ và quản lý cẩnthận nhằm đảm bảo cho công việc được tiến hành một cách hiệu quả nhất và phục vụ chocông việc bảo trì phần mềm về sau. Như vậy công việc quản lý không chỉ dừng lại trong quá trình xây dựng phần mềm mà tráilại còn phải được tiến hành liên tục trong suốt quá trình sống của nó.

Chương 6: CÀI ĐẶT

Khái niệ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ế.

Tuy vậy, phong cách 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. 

các mục tiêu cài đặt là:

+       Lên kế hoạch tích hợp hệ thống (system integration) trong mỗi bước lặp một các

tăngcường. Điều này có nghĩa là một hệ thống được cài đặt bởi một dãy các bước nhỏ liêntiếp và có thể quản lý được.

+       Phân phối hệ thống bằng cách ánh xạ các thành phần thi hành được vào các nút

trongmô hình triển khai. Công việc này chủ yếu dựa vào các lớp động được tìm thấy trongquá trình thiết kế.

+       Cài đặt các lớp thiết kế và các hệ thống con đã tìm được trong quá trình thiết kết

Đặc biệt, các lớp thiết kế được cài đặt thành các thành phần file chứa mã nguồn.

+       Kiểm thử đơn vị các thành phần, rồi sau đó tích hợp chúng bằng các biên dịch chúngvà

liên kết chúng lại với nhau thành một hoặc nhiều thành phần thi hành được trước khikiểm thử tích hợp và kiểm thử hệ thống

cài đặt nên đảm bảo theo các mục sau(luật cài đặt):

+       Cấu trúc, cấu trúc dữ liệu và những định nghĩa được chọn lựa và thiết lập trong suốt

thủtục thiết kế cần được tổ chức dễ dàng nhận biết trong quá trình cài đặt.

+              Mức trừu tượng của thiết kế (các lớp (class), mô đun (module), thuật toán

(algorithm),cấu trúc dữ liệu (data structure), và kiểu dữ liệu (data type)) cũng phải linh động trongthực hiện.

+       Giao diện giữa các thành phần (components) của hệ thống phần mềm được mô tả rõràng trong thực hiện.

+       Quá trình thực hiện cũng có thể được kiểm tra độ tin cậy của đối tượng và thao tác

vớitrình biên dịch (trước khi qua giai đọan kiểm tra chương trình thực sự).Đảm bảo những đặc trưng ở trên phụ thuộc vào việc chọn lựa ngôn ngữ thực hiện vàkiểu lập trình.

Chương 7: KIỂM THỬ PHẦN MỀM

1. Tổng quan

Kiểm thử phần mềm là tiến hành thí nghiệm để so sánh kết quả thực tế với lý thuyếtnhằm mục đích phát hiện lỗi.

Bộ thử nghiệm (test cases) là dữ liệu dùng để kiểm tra hoạt động của chương trình. Một bộ kiểm thử tốt là bộ có khả năng phát hiện ra lỗi của chương trình. Khi tiến hành kiểm thử,chúng ta chỉ có thể chứng minh được sự tồn tại của lỗi nhưng không chứng minh được rằngtrong chương trình không có lỗi. 

Nội dung của bộ thử nghiệm:

•Tên môđun/chức năng muốn kiểm thử

•Dữ liệu vào

-Dữ liệu của chương trình: số, xâu ký tự, tập tin,

-Môi trường thử nghiệm: phần cứng, hệ điều hành,

-Thứ tự thao tác (kiểm thử giao diện)

•Kết quả mong muốn

-Thông thường: số, xâu ký tự, tập tin, …

-Màn hình, thời gian phản hồi

•Kết quả thực tế

Không gian thử nghiệm là tập các bộ số thử nghiệm. Không gian này nói chung là rấtlớn. Nếu có thể vét cạn được không gian thử nghiệm thì chắc chắn qua phép kiểm tra đơn vịsẽ không còn lỗi. Tuy nhiên điều này không khả thi trong thực tế. Do đó khi đề cập đến tínhđúng đắn của phần mềm chúng ta dùng khái niệm độ tin cậy.

Phương pháp kiểm thử là cách chọn bộ số thử nghiệm để tăng cường độ tin cậy của đơnvị cần kiểm tra. Hay nói cách khác phương pháp kiểm thử là cách phân hoạch không gian thửnghiệm thành nhiều miền rồi chọn bộ số liệu thử nghiệm đại diện cho miền đó. Như vậy cầntránh trường hợp mọi bộ thử nghiệm đều rơi vào một miền kiểm tra.

2. Các kỹ thuật kiểm thử 

ØPhương pháp hộp đen (Kiểm thử chức năng)

Phương pháp kiểm thử này chỉ dựa trên bản đặc tả các chức năng. Do đó, chúng ta chỉchú tâm đến phát hiện các sai sót về chức năng mà không quan tâm đến cách cài đặt cụ thể.Với phương pháp này chúng ta có khả năng phát hiện các sai sót, thiếu sót về mặt chức năng;sai sót về giao diện của môđun, kiểm tra tính hiệu quả; phát hiện lỗi khởi tạo, lỗi kết thúc.

Do không thể kiểm thử mọi trường hợp trên thực tế, chúng ta sẽ chia không gian thửnghiệm dựa vào giá trị nhập xuất của đơn vị cần kiểm tra. Ứng với mỗi vùng dữ liệu chúng tasẽ thiết kế những bộ thử nghiệm tương ứng và đặc biệt là các bộ thử nghiệm tại các gía trị biên của vùng dữ liệu.

Để kiểm chứng chương trình giải phương trình bậc 2 theo phương pháp hộp đen, chúngta sẽ phân chia không gian thử nghiệm thành 3 vùng như sau:

Sau khi đã thử kiểm tra với các bộ thử nghiệm đã thiết kế, chúng ta cần mở rộng bộ thửnghiệm cho các trường hợp đặc biệt như: biên của số trong máy tính (32767,-32768), sốkhông, số âm, số thập phân, dữ liệu sai kiểu, dữ liệu ngẫu nhiên.

ØPhương pháp hộp trắng (Kiểm thử cấu trúc)

Theo phương pháp này, chúng ta sẽ chia không gian thử nghiệm dựa vào cấu trúc củađơn vị cần kiểm tra.

Kiểm tra giao tiếp của đơn vị là để đảm bảo dòng thông tin vào ra đơn vị luôn đúng(đúng giá trị, khớp kiểu...)Kiểm tra dữ liệu cục bộ để đảm bảo dữ liệu được lưu trữ trong đơn vị toàn vẹn trongsuốt quá trình thuật giải được thực hiện.Ví dụ: nhập dữ liệu sai, tên biến không đúng, kiểu dữ liệu không nhất quán, các ràng buộc hoặc ngoại lệ.Kiểm tra các điều kiện biên của các câu lệnh if, vòng lặp để đảm bảo đơn vị luôn chạyđúng tại các biên này.Kiểm tra để đảm bảo mọi con đường thực hiện phải được đi qua ít nhất một lần. Conđường thực hiện của một đơn vị chương trình là một dãy có thứ tự các câu lệnh bên trong đơnvị đó sẽ được thực hiện khi kích hoạt đơn vị.

Bạn đang đọc truyện trên: Truyen247.Pro

Tags: #chang