1. Trang chủ
  2. » Công Nghệ Thông Tin

CÔNG NGHỆ PHẦN MỀM - CHƯƠNG 1 MỞ ĐẦU pdf

11 597 1
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Nhập Môn Công Nghệ Phần Mềm
Tác giả PGS.TS. Phan Huy Khánh
Người hướng dẫn PGS.TS. Phan Huy Khánh
Trường học Đại Học Đà Nẵng
Chuyên ngành Công Nghệ Phần Mềm
Thể loại Giáo Trình
Năm xuất bản 2012-2013
Thành phố Đà Nẵng
Định dạng
Số trang 11
Dung lượng 0,91 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Phan Huy Khánh , phkhanh@dut.udu.vn Mo daul ìph29@qmail.com Ss worth more than ten thousand words” Chinese Proverb od Mục dich mon hoc Công Nghệ Phần Mềm ‡§ Cung cấp ki

Trang 1

SF

Nhập môn Công nghệ Phân mềm

Introduction to Software Engineering)

PGS.TS Phan Huy Khánh

, phkhanh@dut.udu.vn

Mo daul

ìph29@qmail.com

Ss worth more than ten thousand words”

Chinese Proverb

od Mục dich mon hoc Công Nghệ Phần Mềm

‡§ Cung cấp kiến thức liên quan đến :

e Các khái niệm cơ bản về lĩnh vực công nghệ phần mêm (CNPM)

e Phương pháp, kỹ thuật, công cụ và nguyên tắc trong quá trình xây dựng/phát triển một sản phẩm phần mềm, hay tiến trình phần mêm (Software Process), một quy trình công nghiệp

e Các kỹ năng cơ bản trong quá trình triển khai tiến trình phần mềm

e Khả năng tham gia xây dựng/phát triển một phần mềm cụ thể trong khuôn khổ một dự án phần mềm (Software Project)

3‡§ Nội dung môn học trình bày :

œ Các giai đoạn trong một tiến trình phần mêm nói chung

œ Tập trung vào các chủ đề cơ bản : Phân tích yêu cầu, thiết kể hệ thống, thứ nghiệm

và kỹ thuật đặc tả

3/66

Danh gia ket qua hoc tap

3§ Yêu cầu :

e Hiểu nội dung trình bày trên lớp

œ Thực hiện các bài tập vê nhà

e Kha nang thực hành

3§ Tỉnh thân thái độ và nắng lực học tập

e Nghe giảng, ghỉ chép

e Tra lời câu hỏi và đặt câu hỏi

œ Tham khảo tài liệu, truy cập internet

œ Tham gia học nhóm, tập thảo luận và thuyết trình

e Khả năng tìm hiểu những vấn đề thực tiễn và ứng dụng CNTT

‡§¿ Kiểm tra giữa kỳ, cuối kỳ :

e Thi viết (60 phút)

5/66

Nhập môn CNPM - Ch1 Mở đầu

Thời khóa biểu - Hệ Cao đẳng

‡§ Học Ky 1, 2012-2013

‡§ Môn học : Công nghệ phân mêm

œ CBGD : PGS.TS Phan Huy Khánh

œ Lớp ghép 112CNPM201+ 112CNPM1A

s Ngày bắt đầu 20/08/2012

s Phòng A202, tiết 1-4

Nang lực và kiến thức yêu cau

‡§$ Môn học yêu cầu một số kiến thức tiên quyết :

e Tin học đại cương

œ Cơ sở Lập trình

e Toán rời rạc — Đảm bảo cơ sở Toán học cho Tin học

‡§ Ngoài ra cần đọc thêm, học thêm vê ;

e CNTT, internet noi chung

e Khai niém du an, quan ly du an noi chung, CNTT noi riéng

œ Những vấn đề kinh tế, quản lý xí nghiệp

œ Những vấn đề con người, xã hội, môi trường

e Các văn bản chính sách, pháp luật của Nhà nuớc

3§ Một số kỹ nắng mêm :

e Tiếp cận (tự đọc, tự học), trình bày, diễn dat van dé

e Khả năng điêu hành các cuộc họp, thảo luận, làm việc nhóm

e Kha nang doi phó sự cổ, rủi ro

4/66

Tài liều tham khảo 3$ Bai giang PPT :

[1] Nhap mon Công nghé Phan mem,

PGS.TS Phan Huy Khánh, Khoa CNTT, Tr ĐHBK, ĐHĐN

3 Sách tiếng Anh :

[1] Roger S Pressman Software Engineering Apractitioner’s Approach McGraw-Hill, Six Edition, 2005 (Ebook) [2] Ian Sommerville Software Engineering McGraw-Hill, 7th Edition,

2007(Bản dịch của Ngồ Trung Việt)

3 Sách tiếng Việt :

[3] Lê Duc Trung Cong Nghé Phan Mem

Nhà XB Khoa Học Kỹ thuật, Hà Nội 2002 [4] Lương Mạnh Ba C7 Sở Công Nghệ Phân Mềm Nhà XB Khoa Học Kỹ thuật, Hà Nội 2010

3 Internet : http://tailieu.vn/

Lủ khủ với từ khóa tìm kiếm lqđ công nghệ phần mêm

6/66

Trang 2

Nồi dung môn hoc

Chương 1 Mở đầu

Chương 2 Phân tích hệ thống

Chương 3 Thiết kế hệ thống

Chương 4 Kiểm thử phần mềm

Chương 5 Đặc tả phần mềm

“sp „o

7/66

Chương li Mo dau

3§ Một số khái niệm và thuật ngữ

3$ Các phương diện của công nghệ phần mêm

3 Những nội dung cơ bản của CNPM

3 Tiến trình phần mém 3$ Kỹ thuật thể hệ 4

Computer = Hardware + Software

t(+

\

NX :

ooo Hardware/Software a lerfacE pho

SORRY, IMPOSSIBLE!

THIS [S NOT DUBAI

aad

°

é, =

co

Hardware Lt

er $ /”

9/66

SP Phan mém (Software)

# Phan mem, con duoc goi la (dgl) nhu liệu, là :

œ Tập hợp các chương trình, bao gôm, hay tập hợp các cầu lệnh

e Được viết bằng một, hoặc nhiều ngôn ngữ lập trình

e Thực hiện (chạy) theo một trật tự xác định (thuật toán),

sử dụng các đối tượng dữ liệu có tổ chức

e Tự động thực hiện một số chức năng hoặc giải quyết một bài toán/vấn đề nào đó

‡§ Đặc điểm của phân mem la tinh trừu tượng và vô hình

Từ những năm 1980,

phần mềm được bày bán như là sản phẩm

11/66

8/66

FF Computer Arcnitecture

$8 TO chufc hé théng theo lớp, nhiều mức trừu tượng

Operating System Software

Firmware

Processor Memory

Data & Control Bus

Hardware Circuits digitaux

Layout Description

TT?

bed Vi du phan mem 3§ Chức nắng của một phần mềm :

œ Làm công cụ trợ giúp người sử dụng (NSD) thực hiện công việc của mình trong một lĩnh vực chuyên mồn/nghê nghiệp trên máy tính

œ Có chất lượng: hiệu quả, tốt hơn (một cách tự động)

so với công việc thủ công

3 Phần mêm Quản lý giáo vụ trong Giáo dục & Đào tạo :

e NSD lam cong tác giáo vụ :

+ Xếp lớp, xếp ngành, lập thời khoá biều + Theo dõi, quản lý kết quả học tập

e NSD la giang viên :

+ Đăng ký giảng dạy + Xem thời khoá biéu

œ NSD là Sinh viên :

+ Đăng ký học phân + Xem điềm, kết quả học tập

12/66

Trang 3

Công nghệ phần mềm (CNPM) la gi ?

$8 Từ điển Computer Dictionary của Microsoft Press®, 1994 :

e Software Engineering : The Design and Development

of Sofware (Computer Program), from Concept through Execution and Documentation

$8 Tur dién Larousse 1996 dinh nghĩa chỉ tiết hơn :

œ Là tập hợp các phương pháp, mô hình, kỹ thuật, công cụ

và thủ tục xây dựng một Sản Phẩm Phần Mềm (SPPM)

œ Các giai đoạn xây dựng SPPM : đốc ta (Specifiction), thiét ké (Design), /ap trinh (programming), thu’ nghiém (Testing),

sua sai (Debugging), cai dat (Setup) dé dem vao ung dung

(Application), bao tr (Maintenance) va /ap hd so’

(Documentation) dong goi SP

13/66

3 CNPM :

œ Một ngành không thể thiếu được

trong linh vuc CNTT&TT (ICT)

œ Càng ngày càng có nhiêu hệ thống khác nhau, trong mọi lĩnh vực, được kiểm soát bởi phần mêm

3‡§ Xu thể ngày nay :

œ Con người có thể sản xuất các hệ thống PM lớn và hữu ích

là nhờ phần lớn vào sự phát triển của CNPM Mọi quốc gia phát triển đều phụ thuộc chủ yếu

vào các hệ thống PM có chất lượng

œ Xây dựng, bảo trì một hệ thống PM hiệu quả là yêu cầu cần thiết đối với nên kinh tế toàn cầu và của từng quốc gia

15/66

3§ Mục đích của CNPM là sản xuất phần mềm có chất lượng

3§ Chất lượng phần mềm :

œ Không là một khái niệm đơn giản

e Bao gôm nhiêu yếu tổ phức hợp

‡§ Người ta thường đánh giá theo hai kiểu chất lượng :

e Những yếu tố chất lượng bên ngoài (mục đích cuối cùng,

chẳng hạn chạy nhanh, dễ hiểu, dễ sử dụng )

œ Những yếu tổ chất lượng bên trong (chỉ những người làm Tin

học chuyên nghiệp mới biết được, chẳng hạn có tính cấu trúc, dê đọc, dê bảo trì phát triển )

‡§ Yếu tố chất lượng bên trong là mấu chốt để đạt được

những yếu tổ chất lượng bên ngoài

17/66

Nhập môn CNPM - Ch1 Mở đầu

Bach khoa toàn thu mo Wikipedia

3§ Công nghệ (kỹ nghệ) phần mêm :

Vận dụng thực tế những kiến thức khoa học trong thiết kế, xây dựng phần mêm cũng như tài liệu liên quan

trong quá trình phát triển, hoạt động và bảo dưỡng

3 Theo Edsger Dijkstra :

Khi máy tính điện tử chưa xuất hiện, Việc lập trình chua có khó khăn gi cả Khi đã xuất hiện một vải chiếc máy tính với chức năng kém thi lập trình đã gặp một vải khó khăn nhỏ

Giờ đây khi chúng ta đã có những chiếc máy tính không 16

thị những khó khăn đây đế trở nên rất lớn Như vậy, ngành công nghiệp điện tử đã không giải quyết khó khăn nao ma họ chỉ tạo ra những khó khăn mới

Họ đã tạo ra khó khăn chính la sử dụng sản phẩm của họ

14/66

SF Đặc điểm của CNPM

3§ Sự khác biệt giữa CNPM và Khoa học Máy tính (KHMT)

œ KHMT nghiên cứu lý thuyết và những vấn đề cơ bản ve CNTT

œ Khi CNPM phát triển mạnh mẽ, các lý thuyết của KHMT van không đủ để đóng vai trò là nền tảng hoàn thiện cho CNPM

‡§ Sự khác biệt giữa CNPM và Công nghệ Hệ thống (CNHT)

œ CNHT (hay kỹ nghệ hệ thống) liên quan tới mọi khía cạnh

của quá trình phát triển hệ thống dựa máy tính bao gồm :

phần cứng, phần mềm, và công nghệ xử ly

e Kỹ sư hệ thống phải thực hiện việc đặc tả hệ thống, thiết kế

kiến trúc hệ thống, tích hợp và triển khai hệ thống

16/66

3£ Những yếu tổ chất lượng bên ngoài của SPPM chủ yếu phục vụ cho người sử dụng (NSD)

‡§ Chất lượng bên ngoài gồm :

œ Tốc độ nhanh

Chạy ổn định

Có tính dễ hiểu, dễ sử dụng (tiếng Anh, tiếng Việt)

Có tính dễ thích nghỉ với những thay đổi (tính mở rộng)

Có tính công thái học (Ergonomy, Human Factor)

V.V

18/66

Trang 4

SP Chất lượng bên trong của SPPM

3§ Những yếu tố chất lượng bên trong của một SPPM

(cho những người làm Tin học chuyên nghiệp) là :

e Tính đúng đẳn

‹+ Khả năng thực hiện chính xác công việc đặt ra

e Tính bên vững + Có thể hoạt động trong những điều kiện bất thường

e Tính có thể mở rộng

+ Khả năng dễ sửa đổi để thích nghi với những thay đổi mới

e Tinh su dung lai + Khả năng sử dụng lại toàn bộ hay một phần của hệ thống cho những ứng dụng mới

Tỉnh tương thích

+ Có thể dễ dàng kết hợp với các sản phẩm phần mềm khác

19/66

Các yếu tổ chat lượng khác

3‡§ Hiệu quả đổi với nguồn tài nguyên của MTĐT như :

e BO xu ly

e BỘ nhớ các loại

e Các thiết bị CNNT&TT

3§ Tính thích nghị :

e Dễ sử dụng

e Dễ chuyển đổi (không phụ thuộc vào cấu hình phần cứng)

e Dễ kiểm chứng

e An toàn (được bảo vệ quyên truy nhập)

@ V.V

20/66

3e Phân mềm (PM) máy tính là thuật ngữ chung

chỉ các chương trình chạy trên máy tính

3§ Có nhiêu cách phân loại PM, nhưng thường được phân loại

theo phương thức hoạt động, gồm 4 loại :

e Phan mêm hệ thống (System SoftWare)

e Phan mêm ứng dung (Application SoftWare)

e Phan mêm tiện ich (Utility SoftWare)

e Phan mém nhung (Embedded Software)

21/66

SP Phân mềm hề thống

‡§ Chức năng dùng để vận hành máy tính :

œ Giúp điều khiển phần cứng máy tính, các thiết bị chuyên dụng

œ Là nên tảng cho các ứng dụng khác nhau hoạt động

3§ Ví dụ :

e Cac hé diéu hanh may tinh Windows XP, Linux, Unix

œ Các thư viện li€n két ddng DLL (Dynamic Linked Library)

œ Các trình điều khiển (Driver)

e Phan sun/déo (FirmWare) va BIOS

A Mac Ode /66

SP Phan mem ung dung

3; Chức năng dùng để thực hiện một hay nhiều tác vụ nào đó

trên máy tính một cách hiệu quả, nhanh chóng và dễ dàng

3§ Ví dụ :

e Phan mém văn phòng (Microsoft Offices, Lotus 1-2-3, FoxPro)

e Phan mém da phuong tién (Multimedia Software)

e Phần mềm doanh nghiép BI, ERP, CRM

e Phần mềm giáo dục, tro giup giang day (e-Learning)

œ Phân mềm Cơ sở dữ liệu (CSDL) và quản trị CSDL

e Phan mém đồ họa (Graphics Software), thiết kế (CAD, Designers )

œ Các hệ chuyên gia, trí tuệ nhân tạo, người máy, v.v

e Phan mém trò chơi (Games)

23/66

Nhập môn CNPM - Ch1 Mở đầu

a Phan mem tien ich

3; Chức năng dùng để quản lý và tối ưu hóa mọi máy tính một cách hiệu quả, nhanh chóng và dễ dàng

3§ Ví dụ :

e Các ngôn ngữ lập trinh (Programming Languages)

e Các phần mềm chuyển dịch mã (Translator) : biên dich (Compiler), thong dich (Interpretor)

œ Quản lý đĩa cứng (Disk Defragmenters)

œ Quản lý hiện trạng (System Profilers)

e Phong chong virus, harker (Virus Scanners)

œ Nén giai nen DL (Compression)

e TOi UU hé thong (Registry Cleaners)

24/66

Trang 5

Hay he thong nhung (Embedded System) :

#€ Phục vụ giải quyết các bài toán chuyên dụng

trong nhiêu lĩnh vực khác nhau :

œ Công nghiệp

Tự động hoá

Điều khiển Quan trắc

Truyền tin

‡§ Mục dịch :

œ Giúp các sản phẩm điện tử có chức năng hoàn hảo, phục vụ

hiệu quả các nhu cầu của NSD với độ an toàn, bảo mật cao

®

®

®

®

25/66

È 4 Vi du phan mem nhung

3§ Là những thiết bị câm tay nhỏ gọn :

e Dong ho ki thuật số

e May choi nhac MP3

$8 Hoac la nhifng san pham I6n nhu :

e Den giao thong

e Bộ kiểm soát hoạt động trong nhà máy

e Các hệ thống kiểm soát máy năng lượng hạt nhân

e Dự báo, cảnh báo thời tiết, mưa bão, động đất, sóng thần

Phan mềm điều khiên mạch LED Robot của NASA 26/66

SP Đặc điểm phần mềm nhúng

$8 Dac điểm của các hệ thống nhúng là :

œ Được tích hợp vào trong các IC của thiết bị điện tử

œ Có khả năng tự trị, chạy trong các thiết bị

mà không cần hệ điêu hành

e Hoạt động ổn định

œ Có tính năng tự động hoá cao

$8 Uu điểm :

œ Nhỏ gọn

e Dễ cài đặt, đóng gói

e Có thể sản xuất hàng loạt

(3 $7 Wholesale Orie:

Network Embeded Module

27/66

Gd Thuộc tính của SPPM

$8 Thudc tính của một SPPM biến đổi tùy theo phần mềm :

œ Xuất hiện từ khi được cài đặt và được đưa ra dùng

œ Không bao gồm các dịch vụ được cung cấp kèm theo

3§ Một số thuộc tính quan trọng gồm:

e Khả năng bảo trì để thỏa mãn yêu cầu của khách hàng

œ Khả năng tin cậy, an toàn và bảo mật của phần mềm không tạo ra thiệt hại vật chất hay kinh tế trong trường hợp hư hỏng

e Độ hữu hiệu không thể phí phạm các nguồn tài nguyên như bộ nhớ và các chu ki vi xu lý

e Khả năng sử dụng, có một giao diện tương đối dễ cho người dùng

và có đầy đủ hồ sơ vê phần mêm

28/66

SP Tính chất của CNPM/SPPM

3§ CNPM :

e Tạo ra SPPM "vật chất” thấy được, sao chép được nhưng không `sờ thấy” được

e_ Hạ tầng cơ sở chủ yếu là điện và viễn thông

Người ta có thể làm việc từ xa, làm việc `tại gia”, mọi lúc mọi nơi

e Lĩnh vực luôn đòi hỏi tính năng động, tính sảng tạo và khôn ngoan 3§ SPPM :

e Không có “hang gia, chi bị sao chép “lau”, “an cap”

e Không bị *mòn cũ”, nhưng luôn được "mới hơn” qua phiên bản

e Được phân phối và tiêu thụ theo nhiêu phương thức,

có thể "vượt biên” không qua khâu kiểm tra Hải quan

e Không phụ thuộc và không bị ảnh hưởng (hoặc chỉ bị rất ít) các yếu tố địa lý, khí hậu, mồi trường

œ Mở ra các thị trường rất lớn đầy tiêm nắng, canh tranh quyết liệt

29/66

Nhập môn CNPM - Ch1 Mở đầu

bod Tinh canh tranh cua PM

#€ Canh tranh cua PM (Software Competitiveness)

e Mỹ, Tây Âu và Đông Âu ngày nay có công nghiệp PM ổn định

œ Châu Á có các quốc gia có nền CNPM phát triển :

Nhật Bản, Hàn quốc, Singapore, Ấn Độ, Trung Quốc

‡§ Bản chất trí tuệ của cạnh tranh :

Innovative, Vital and Successful Software Product = Human Thought Need S and HQP (High Qualified Personal) Human Resource Need for the VN IT Industry

30/66

Trang 6

2| Tóm tắt quả trình tiến hóa của SPPM

31/66

‡§ Phát triển phần mềm trong khuôn khổ một dự an Tin học :

œ Nhiều người lập trình tham gia, được chia thành nhóm

® Mỗi nhóm phụ trách giải quyết một phần của dự án

e Người phụ trách dự án phân bổ công việc cho từng nhóm

e Các nhóm phải đảm bảo mối liên lạc và chia sẻ thông tin

e Kiểm tra tiến trình phát triển của dự án

e Kiểm tra chất lượng của SPPM khi hoàn tất

$8 Ban chat phát triển phần mềm :

œ Không chỉ là việc lập trình thuần tuý

e Là triển khai các giai đoạn theo các quan điểm khác nhau

œ Hiện nay thường sử dụng quan điểm theo lớp

33/66

Mô hình hoá phương pháp CNPM

Khả nắng thay đổi dê dàng

Phục vụ cho

Khái quát hoá và được áp dụng

CZ

S/ Methods and Technic

Principles \

Được xây dựng

dựa trên

35/66

Lịch sử công nghệ phần mêm

Phân tích yêu cau

Ngôn ngữ hình thức Hướng đối tượng

Đặc tả Vào/Ra, Tiên trình, vòng đời PM

Dòng dữ liệu CASE

Ngôn ngữ

Đạc ta thông thường ˆ _

cai đạt

1955 1975 1985 2005

32/66

ba Nguyên ly, phương pháp, ky thuật và công cụ

$8 Để xây dựng một HTPM, người ta cần nguyên lý, phương

pháp, kỹ thuật và công cụ (tương tự nấu một món ăn)

e Nguyên lý : tuân theo các quy tắc, mục đích

Ví dụ : các quy tắc vế vệ sinh, an toàn thực phẩm

e Kỹ thuật : cách thức hay thủ thuật thực hiện công việc

Ví dụ : Kỹ thuật nấu nướng, chế biến hay bày món ăn

œ Phương pháp hay công nghệ : tập hợp các kỹ thuật

Ví dụ : Phương pháp nau mon “ca loc hap mudi”

œ Công cụ : các phương tiện và nguồn tư vấn

Ví dụ : xoong, nồi, bát đĩa hay thực phẩm

$8 Khai niệm tiến trình được hiểu là các giai đoạn triển khai

3 Tính thực dụng của HTPM : khả nắng ứng dụng thực tiễn

34/66

Nhập môn CNPM - Ch1 Mở đầu

SP Mục tiêu cuả các dự án CNPM

Chất lượng/Công việc

Điểm tối ưu\ ——>3>

„-Điêm cân băng:-

Chi phí Thời gian

36/66

Trang 7

Các giai đoạn tiến trình phân mềm

3§ Gôm 3 giai đoạn chính :

e Giai đoạn xác định

e Giai đoạn phát triển

e Giai đoạn bảo trì

3$ Các giai đoạn trong tiến trình phân mềm thường sử dụng

các công cụ đặc tả (Specification) :

e Đặc tả phi hình thức (Tnformal Specification)

œ Đặc tả hình thức (Formal Specification)

Reuse?

Design Models Implementations Requirements ==è| Design |p | coding _| = Testing mp Deployment |

37/66

S Giai đoạn xác đỉnh

3§ Trả lời cầu hỏi liên quan đến :

e Dữ liệu (thông tin) cần xử lý

e Mục đích chức năng va môi trường phát triển

e Hai loai cau hoi :

«La cai gi ? La gi ? (What?)

«Khi nao ? (When?)

3§ Giai đoạn xác định gồm 3 bước :

e Phân tích hệ thống/ Phân tích hiện trạng

e Lập kế hoạch dự an phần mềm

e Phân tích yêu cầu thực tiễn

38/66

$8 Giai doan phát triển trả lời câu hỏi :

e Lam như thế nào ? (How?)

3§ Gôm 3 bước :

œ Thiết kế phần mềm : + Sử dụng các công cụ đặc tả

và lập trình cấu trúc

œ Chọn công cụ hoặc các ngôn ngữ lập trình

để tiến hành viết chương trình

e Kiểm thử (phát hiện sai sót, nhầm lẫn )

39/66

bed Giai doan bao tri

$8 Giai đoạn bảo trì tập trung vào các thay ddi (Modify)

‡§ Có 3 kiểu thay đổi :

e Sửa đổi :

+ Dù phần mềm có chất lượng tốt, vẫn tồn tại những khiếm

khuyết từ việc sử dụng của khách hàng (NSD) + Bảo trì sửa đổi làm thay đổi phần mềm, khắc phục khiếm khuyết

e Thich nghị :

+ Nhằm làm phần mềm thích nghỉ với môi trường phần cứng

Ví dụ CPU, OS, các thiết bị ngoại vi

e Nang cao:

‹+ Khách hàng tìm ra những chức năng phụ của phần mêm + Bảo trì hoàn thiện để mở rộng phần mềm

ra ngoài những chức năng vốn có

40/66

Ga Chu ky sOng cua phan mem

‡§ Chu ky sống, hay vòng doi (Life Cycle), cua phan mem la

cách thức triển khai, vận dụng thực tiên một tiến trình

phần mềm để có được SPPM

‡§ Có nhiều mô hình khác nhau để thể hiện chu kỳ sống,

thường có 4 loại :

s Mô hình thác nước kiểu cổ điển

œ Mô hinh chữ V, hay chữ W

œ Mô hình xoắn trôn ốc

e Mô hình kiểu bản mẫu

41/66

Nhập môn CNPM - Ch1 Mở đầu

BEd Chu kỳ sống kiểu cổ điển

$8 Chu kỳ sống kiểu cổ điển theo mô hình thác nước

("Waterfall” Model) gồm các giai đoạn như sau :

® Tim hiểu va phan tích các yêu cầu

(RAD - Requirements analysis and definition)

e Thiết kế hệ thống va phan mem (SSD - System and software design)

e Cài đặt và kiểm thử từng phần

(TUT - Inplementtation and Unit testing)

œ Tích hợp và kiểm thử hệ thống

(IST - Integrgion and system testing)

e Khai thac va bao tri (DEM - Development and Maintenance)

42/66

Trang 8

ba Mô hình kiểu thác nước

Tìm hiểu và phân

tích các yêu cầu

Walterfall

Thiết kế hệ thống model

25%

Lap trinh

Tích hợp và kiểm thử hệ thống

|

Khai thác và

bảo trì

Mô hinh cải tiến có quay lui

43/66

3?! Mô hình thác nước cải tiến chữ V

45/66

$8 Điểm mạnh của mô hình :

œ Phản ảnh thực tế công nghệ nói chung

e Vẫn là mô hình cơ sở cho đa số các hệ thống

phát triển phần mềm và phần cứng

$8 Diém yếu của mô hình :

e Không linh hoạt

œ Các giai đoạn của dự án

bị chia ra thành những phần thực hiện riêng biệt

œ Hệ thống phân phối đôi khi không dùng được

vì không thỏa mãn được yêu cầu của khách hàng

3 Mô hình cải tiến : tại mỗi giai đoạn có thể quay lui

44/66

Mot mo hinh cht? V khac

Uppo rt

O ng al

Review/Test

Analysis Testing

Requirements | »| Operational

NX VÁ

High Level Integration Design Testing

NéX VÁ

Detailed Unit

» » -®. -> »

Specifications Testing

NF

Coding

46/66

phat triển PM kiểu xoắn ốc

Xác định tục tiêu, các ant | FOO

: gla thay dol

thay doi va rang buge~ Phất hiện va glial quyết

Requirements Praliminay rủi:

Analyse @sIm

Spiral

Mc del

Lap ké hoạch chẻ

pha kê tiêp

Model Test

Phat trién, tham dinh san

phâm ở mức kê tiêp

17/66

Nhập môn CNPM - Ch1 Mở đâu

a Đánh giá mồ hình xoắn ốc

‡§ Trong mô hình xoẳn ốc, quy trình phát triển phần mềm được biểu diễn như một vòng xoắn ốc

$8 Cac pha trong quy trình phát triển xoắn ốc bao gồm :

œ Xác định mục tiêu cho tung pha của dự án

e Đánh giá các khả nẵng rủi ro

và thực hiện các hành động để giảm thiểu rủi ro

e Lựa chọn mô hình để phát triển xây dựng hệ thống

œ Lập kế hoạch thực hiện pha tiếp theo

48/66

Trang 9

bra Một mô hình vòng đời khác

pisses START —————

HERE!

Mô hình kiểu bản mẫu

lideware Ongoing user N Vaporware

A Prototyping revolt turns Technology presented tressed CIO

= ~~ ` ° ` ode consultant into media manage- management “

Kết thúc y€u CaUVäa „ pressed ClO ment kácigtoloE

HERE! Long meetings,

“ *

no decisions

* làmmịn

San pham a ““` Thiết kế

nhanh

and advertises for fresh tenders

External Consultant

Prototype hacked together by drunken code monkey who immediately quits

The

Software

lifecycle

External Consultant

hosts Christmas party

on yacht, only for upper management

Prototype deployed

to small ‘trial

External Consultant produces Gannt charts for upper management

usergroup’ hand picked for their Yes- man attitude

ban mau + * ban mau

Ö Đánh giá *,

„° của khách hàng *,

về bản mẫu »%

‘trial usergroup’

approve prototype and

quit immediately

Prototype omplaints deployed

reach as-is to full

upper tressed user base:

manage- CIO Users ment ignores Revolt omplaint

Replaced with external consultant

49/66 (c) Leon Bambrick 50/66

Ví dụ mô hình phát triển PM nhúng FP Các phương pháp CNPM

3§ Phương pháp CNPM bao gồm :

e Các mô hình hệ thống

e Các ký pháp, quy tắc, hướng dẫn thiết kế e_ Quy trình để xây dựng phần mềm một cách dễ dàng,

đảm bảo chất lượng cao và chỉ phí hiệu quả

‡§ Một số phương pháp CNPM đã được đề xuất :

œ Phân tích hướng cấu trúc : Tập trung xác định các chức nẵng cơ bản của hệ thống

e Phương pháp hướng đổi tượng Tập trung định nghĩa các đối tượng, các lớp đổi tượng và sự cộng tác giữa chúng

3§ Kỹ thuật thế hệ 4 : phương pháp CASE

Technology Quality

51/66 52/66

È 4 Ky thuat the he 4 : CASE Cd Cac thanh phan cua CASE

$8 Ky thuat the hé 4 (4th Generation Technology) 3§ CASE thường có các thành phần :

e Sử dụng các công cụ phần mềm CASE ° Ngôn ngữ phi thủ tục (Non Procedural Language)

(Computer Aded for Sofware Engineering) đề truy cập cơ sơ dư lieu, chang han SQL

phục vụ tiễn trình phần mềm e BO san sinh bao cao (Report Generator)

e CASE tự động sản sinh mã chương trình gốc 5 DỘ thao tác dữ liệu SỐ theo nhu cầu của người phát triển e Bo tung tac va thiet ke man hình

9# Có hai loai CASE : e BO sinh chuong trinh (Code Generator)

e Upper-CASE : tro giup dac ta yeu cau, thiet < e Các công cụ đồ họa

e Lower-CASE : trợ giúp lập trình, gỡ lôi và kiểm thử

53/66 54/66

Nhập môn CNPM - Ch1 Mở đầu

Trang 10

Sử dụng mô hình kỹ thuật thế hệ 4

Tập hợp yêu cầu j \

Ầ Chiến lược

thiết kế J Y

|

dung4GL_] Cai dat su N

Kiểm thử

55/66

BEd Tích hợp các kỹ thuật

3; Nhằm tăng cường tính tối ưu trong phát triển phần mềm, người ta có

xu hướng tích hợp các kỹ thuật cổ điển, xoáy tròn ốc và 4GT đã nêu

| Tập hợp, hiểu các yêu cầu ban đầu ou]

eee á

Phan tich yéu cau Lam ban mau 4G 1 ma hình xoáy tròn ốc|

| Bản mẫu vòng thứ n

= hinh vong thu n|

Kiểm thử |

Hệ thống hoạt ing)

5 6/66

Cac chi phi trong CNPM

3§ Chỉ phí xây dựng SPPM, sử dụng PM chiếm một phần GDP

đáng kể ở tất cả các nước phát triển :

e Chiếm chi phí lớn hơn của cả hệ thống máy tính nói chung

e Trên máy PC thường lớn hơn chi phí phần cứng

e Chi phí bảo trì lớn hơn chỉ phí xây dựng PM :

e Đối với chỉ phí xây dựng PM :

« Xap xi 60% chỉ phí là chỉ phí xây dựng

+ 40% là chi phí kiểm thử

3$ Đối với những PM làm theo yêu cầu của khách hàng,

chỉ phí mở rộng thường vượt quá chỉ phí xây dựng

57/66

SP Bản chất của chỉ phí CNPM

$8 Chi phi biến đổi tuỳ thuộc vào :

œ Từng loại hệ thống được xây dựng

œ Các yêu cầu về đặc điểm của hệ thống :

+ Hiệu năng của hệ thống

« DO tin cay cua hé thong

‡§ Việc phân bổ chỉ phí phụ thuộc vào

mô hình phát triển hệ thống được sử dụng

58/óó

SP Thách thức đối với CNPM

3§ CNPM trong thể ky 21 phải đối mặt với rất nhiêu thách thức

3 Người ta phải có giải pháp cụ thể với mỗi thách thức

3‡§ Nguyên tac :

œ Không đồng nhất :

Phát triển các kỹ thuật xây dựng PM để giải quyết sự không

đồng nhất về môi trường thực hiện và nên tảng hạ tâng

e Chuyển giao :

Phát triển các kỹ thuật nhằm dẫn tới việc chuyển giao PM

tới NSD nhanh hơn

e DO tin cay:

Phát triển các kỹ thuật để chứng minh rằng PM được NSD

tin tưởng

59/óó

Nhập môn CNPM - Ch1 Mở đầu

$ Quy trinh xay dung PM :

e dudc thuc hién trong mot mdi trudng chuyén nghiép

œ đòi hỏi tuân thủ các nguyên tắc một cách chính xác 3‡§ Kỹ sư (hay chuyên gia, cán bộ) PM :

œ Phải có trách nhiệm trong công việc, không đơn thuần chỉ là ứng dụng kỹ thuật

œ Có thái độ ứng xử trung thực

œ Có cách làm việc chuyên nghiệp và đúng quy tắc

60/66

10

Ngày đăng: 07/03/2014, 07:20

TỪ KHÓA LIÊN QUAN