Bài 3 Tiến trình phần mềm

59 328 0
Bài 3 Tiến trình phần mềm

Đ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

Bé m«n C«ng nghÖ phÇn mÒm- Khoa CNTT- §HCN Email: vynv@coltech.vnu.vn K ngh phn mm Software Engeneering B môn Công ngh phn mm – HCN 2 NguynVnV Ni dung ̈ TiÕn tr×nh vμ m« h×nh tiÕn tr×nh ̈ C¸c giai ®o¹n cña tiÕn tr×nh ̈ TiÕn tr×nh vμ vÊn ®Ò liªn quan Bài 3: Tin trình phn mm B môn Công ngh phn mm – HCN 3 NguynVnV TÀI LiU THAM KHO 1. Nguyn Vn V, Nguyn Vit Hà. Giáo trình k ngh phn mm. Nhà xut bn i hc Quc gia Hà ni, 2008 2. Grady Booch, James Rumbaugh, Ivar Jacobson. The Unified Modeling language User Guid. Addison-Wesley, 1998. 3. M. Ould. Managing Software Quality and Business Risk, John Wiley and Sons, 1999. 4. Roger S.Pressman, Software Engineering, a Practitioner’s Approach. Fifth Edition, McGraw Hill, 2001. 5. Ian Sommerville, Software Engineering. Sixth Edition, Addison- Wasley, 2001. 6. Nguyn Vn V. Phân tích thit k h thng thông tin hin đi. Hng cu trúc và hng đi tng, NXB Thng kê, 2002, Hà Ni. B môn Công ngh phn mm – HCN 4 NguynVnV C¸c lo¹i m« h×nh tiÕn tr×nh ̇ M« h×nh th¸c n−íc ̇ C¸c m« h×nh ph¸t triÓn tiÕn hãa ̇ C¸c m« h×nh ph¸t triÓn h×nh thøc ̇ Ph¸t triÓn dùa trªn sö dông l¹i ̇ Kh¸c 5 lo¹i m« h×nh tiÕn tr×nh phÇn mÒm tiªu biÓu: Mçi lo¹i bao gåm mét sè c¸c m« h×nh tiÕn tr×nh. B mụn Cụng ngh phn mm HCN 5 NguynVnV Mô hình vòng đời truyền thống Mô hình thác nớc waterfall model phân tích yêu cầu& đặc tả thiết kế HT & phẩn mềm Mã hoá &kiểm thử đơn vị kiểm thử tích hợp & HT Vận hnh & bảo trì Ngiên cứu lập KHDA B mụn Cụng ngh phn mm HCN 6 NguynVnV Mô hình thác nớc: đặc điểm Tách biệt giữa các pha, tiến hnh tuần tự Khó tuân thủ tuần t: dự án lớn thờng phải quay lại Khó đáp ứng yêu cầu thờng thay đổi của khách Chậm có phiên bản thực hiện đợc đòi hỏi khách hng phải kiên nhẫn sai sót phát hiện muộn có thể l thảm họa Đặc tả kỹ, phân công chuyên trách, hớng ti liệu Ti liệu quá nhiều, tốn sức ngời, thời gian di ơ Có sớm v đợc sử dụng rộng rãi (tốt > tự nhiên) ơ Thích hợp khi yêu cầu hiểu tốt, hệ lớn & phức tạp ơ Bảo trì thuận lợi B mụn Cụng ngh phn mm HCN 7 NguynVnV Phiên bản cuối cùng Đặc tả Phiên bản khởi đầu tl e sri o Đặc tả khái quát Phiên bản trung gian Phát triển Thẩm định Mô hình phát triển tiến hóa b1. Lợc đồ chung nhất B mụn Cụng ngh phn mm HCN 8 NguynVnV Lợc đồ chung nhất Phát triển ban đầu Lm việc với khách, đặc tả khái quát hệ thống (bắt đầu với hiểu biết có thể cha đầy đủ) Thực hiện phát triển bằng cách lm mẫu Mục tiêu l để hiểu hệ thống. Bản mẫu ban đầu có thể còn sơ si. Thẩm định phiên bản có đợc, lặp lại các bớc cho đến khi có phiên bản cuối cùng B mụn Cụng ngh phn mm HCN 9 NguynVnV Lợc đồ chung Hạn chế Không trực quan Hệ thống thờng có cấu trúc nghèo nn Đòi hỏi có kỹ năng đặc tả (ngôn ngữ lm mẫu) Khả năng ứng dụng Cho các hệ tơng tác vừa, nhỏ Cho những phần của hệ lớn Hệ có vòng đời ngắn B mụn Cụng ngh phn mm HCN 10 NguynVnV sản phẩm cuối cùng lm mịn bản mẫu xây dựng bản mẫu thiết kế nhanh đánh giá của khách xác yêu cầu- thu thập tt. sơ bộ Mô hình làm bản mẫu - Prototyping model Bắt đầu Kết thúc Mô hình lm bản mẫu [...]... 28 Tiến trình h ớng sử dụng lại Nguy nV nV Th viện Th viện th nh phần th nh phần đặc tả yêu cầu phân tích thành phần Tham chiếu Sử dụng cải biên yêu cầu Th viện Th viện mẫu mẫu Khung l m việc thíết kế HT dùng lại phát triển và tích hợp thẩm định hệ thống Tiến trình phát triển B mụn Cụng ngh ph n m m HCN 29 Kỹ nghệ h ớng th nh phần Component-based software engineering Nguy nV nV Nội dung Th nh phần. .. ốc B mụn Cụng ngh ph n m m HCN 35 Các giai đoạn của tiến trình Đặc tả yêu cầu phần mềm Nguy nV nV L quá trình thiết lập các chức năng, dịch vụ m hệ thống cần có v các r ng buộc lên sự phát triển v vận h nh hệ thống Tiến trình kỹ nghệ yêu cầu bao gồm: Nghiên cứu khả thi Phân tích v xác định yêu cầu Đặc tả yêu cầu Thẩm định yêu cầu B mụn Cụng ngh ph n m m HCN 36 ... trừu t ợng) B mụn Cụng ngh ph n m m HCN 23 Biến đổi hình thức Nguy nV nV Các phép biến đổi hìmh thức T1 Đặc tả hình thức T2 R2 R1 P1 T3 P2 T4 Ch ơng trình thực hiện đ ợc R3 P3 P4 Các chứng minh tính đúng đắn của phép biến đổi B mụn Cụng ngh ph n m m HCN 24 Hạn chế phát triển hình thức hóa Nguy nV nV Hạn chế Cần có kỹ năng đặc tả v sử dụng kỹ thuật tiên tiến Khó đặc tả đ ợc mọi khía cạnh của hệ... nV nV Chuyển giao dần từng phần của hệ thống Sản phẩm chia th nh từng phần tăng theo yêu cầu chức năng Yêu cầu ng ời dùng u tiên theo thứ tự phần tăng Cho sản phẩm dùng trong thời gian ngắn đáp ứng nhanh yêu cầu của khách chiếm lĩnh thị tr ờng khác với bản mẫu Công ty phát triển phải có tiềm lực cao (công nghệ, t i sản phần mềm) B mụn Cụng ngh ph n m m HCN 19 Lập trình cực đoan (Extreme Programming-XP)... dùng Tíết kiệm công sức cho phát triển phần mềm nhỏ Không hiệu quả với phần mềm lớn: mã hóa chỉ chiếm một tỷ lệ nhỏ so với phân tích thiết kế B mụn Cụng ngh ph n m m HCN 22 Phát triển hệ thống hình thức hóa formal systems development Bán t Xác định yêu cầu ng Đặc tả hình thức t Nguy nV nV ng Biến đổi hình thức Kiểm thử tích hợp & hệ thống Các b ớc của tiến trình phát triển (đặc tả yêu cầu 1 cách... Lắp ráp các th nh phần đúng với yêu cầu Dùng lại th nh phần độc lập với ngôn ngữ Thay thế th nh phần l động (không cần dịch), không cần đ ờng dẫn, chỉ cần định danh file.com file.exe file.com file.exe file.exe Ưu, nh ợc file.com ơ Nhanh, ổn định, hiệu quả ơ Cần có các th nh phần đ ợc mô tả, hiểu về nó, có cách tìm kiếm tốt B mụn Cụng ngh ph n m m HCN file.exe file.exe file.com 30 Phân tích thiết... frameworrk B mụn Cụng ngh ph n m m HCN 33 Phát triển phần mềm mã nguồn mở Nguy nV nV Công khai thiết kế, công khai mã nguồn, dùng chung chất l ợng tăng, chuẩn hóa cao? Phát triển phân tán, nhiều ng ời tham gia Xuất phát từ các mối quan tâm chung Nhiều vấn đề đ ợc giải quyết Lý do, lợi ích, động lực ch a rõ Ví dụ: GNU, Linux B mụn Cụng ngh ph n m m HCN 34 Lựa chọn mô hình Nguy nV nV Phụ thuộc... HCN 27 Các h ớng sử dụng lại Nguy nV nV Các h ớng sử dụng lại: Định h ớng th nh phần (component - mã nguồn) Định h ớng mẫu (pattern - phân tích, thiết kế) Phát triển khung l m việc (framworks: lớp ứng dụng) Các giai đoạn của tiến trình Phân tích hệ thống th nh các phần yêu cầu nhỏ Cải biên các yêu cầu h ớng (th nh phần, mẫu, khung) Thiết kế hệ thống h ớng tới t i sản sử dụng lại Phát triển v... thuật xác định đặc tr ng phần mềm ở mức cao: h ớng mục đích (chức năng) tự động sinh mã ch ơng trình theo đặc tả Các công cụ/ứng dụng điển hình truy vấn CSDL (SQL) tạo báo cáo, bảng tính sinh giao diện (giao diện Web) B mụn Cụng ngh ph n m m HCN 21 4GT: đặc điểm Nguy nV nV Phân tích/thiết kế vẫn l b ớc quan trọng 4GT chỉ trợ giúp (tự động hóa) việc sinh mã ch ơng trình đối với từng chức năng... mụn Cụng ngh ph n m m HCN 12 Mô hình xoắn ốc (spiral model) Nguy nV nV Cải tiến của mô hình tuần tự v l m mẫu Thêm phân tích rủi ro L quá trình lặp h ớng mở rộng, ho n thiện dần Lập kế hoạch: xác lập vấn đề, t i nguyên, thời hạn Phân tích rủi ro: xem xét mạo hiểm, tìm giải pháp Kỹ nghệ: phát triển một phiên bản của phần mềm (chọn mô hình thích hợp: l m mẫu, thác n ớc, ) Đánh giá của khách: khách

Ngày đăng: 12/05/2014, 11:11

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan