Tim Hieu Cnpm

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Tim Hieu Cnpm as PDF for free.

More details

  • Words: 2,252
  • Pages: 29
Tìm hiểu môn Công nghệ phần mềm Mr Hoàng & Mr Thành Group 06T1 CVA University

• Câu hỏi 1: Hãy giải thích làm thế nào để cả hai mô hình: mô hình tuyến tính (waterfall) và mô hình mẫu (prototyping) có thể kết hợp trong mô hình xoắn ốc. • Câu hỏi 2: Hãy chọn một mô hình phát triển phần mềm thích hợp nhất cho việc phát triển hệ thống sau, nêu ra những tiến trình cơ bản của mô hình này: một hệ thống quản lý tài sản của một doanh nghiệp.

Công nghệ phần mềm là gì ? • Công nghệ phần mềm là tập hợp các phương pháp, mô hình kỹ thuật, công cụ và thủ tục liên quan đến các giai đoạn xây dựng một sản phẩm phần mềm. • Công nghệ phần mềm là việc áp dụng các công cụ, các kỹ thuật một cách hệ thống trong việc phát triển các ứng dụng dựa trên máy tính

Các giai đoạn trong quy trình phát triển một phần mềm • Giai đoạn định nghĩa: Phân tích hệ thống (system Để sản xuất cùng sản(software phẩm phầnproject engineering), hoạch định một đề tài mềm người có thểyêu dùng các(requirement mô hình management), phântatích cầu analysis).khác nhau. • Giai đoạn phát triển: Thiết kế phần mềm (software Tuy nhiên không phải tất cả các mô hình design), sinh mã (code generation), kiểm tra phần đều thích hợp cho mọi ứng dụng. mềm (software testing). • Giai đoạn bảo trì: Sửa lỗi (correction), thay đổi môi trường thực thi (adaptation), tăng cường (enhancement).

Tìm hiểu về 3 mô hình • • • •

Mô hình tuyến tính (Waterfall Model) Mô hình mẫu (Prototype Model) Mô hình xoắn ốc (Spiral Model) Sự kết hợp giữa hai mô hình: mô hình tuyến tính và mô hình mẫu trong mô hình xoắn ốc.

Mô hình tuyến tính (Waterfall) Người sửTrong dụng giai hệ thống đoạn và nàynhà cácphát đơntriển vị Đánh giá mô hình: Phân tích và mô hình hóa các chức năng Kiểm thử mãhay (code) đã được hiện thực hệ thống bàn bạc, trao đổi với nhau để chương trình tập hợp các chương lặpmềm sau mỗi bước Requiments and màCó phần cần hợp thựccho hiện. Làm thế nào Kiểm thử tích nhóm các thành phần xác định hệ thống sẽ làm gì, đưa ra các trình được kiểm thử lần lượt sao cho Cài đặt, cấu hình và huấn luyện Số lượng lặp có giới hạn Specifications để hệ Kiểm thốngthử phần đáp (system ứng những toànmềm hệ thống test).đòi yêu chức năng và phi chức năng cần phải thoả mãn các đặc tả và các yêu khách hàng. hoạt nhưng khóra quản lýbảncầu kiểm thử đưa cuối cùng: Nghiệm thu tả hỏi Linh màKhâu khách hàng trong đặc đượcThực đáp ứng. Kết quả là bản đặc tả hệ tương ứng. hiện theo trúc SửaThực chữa những lỗicấu của phần tếLà cho những đoạn sau (acceptance test), với sựđặc tham gia của khách chi tiết? cầuthấy nối đến giữa tảgiai và code. thống vàchỉ yêu cầu chigiai được ra trong đoạn mềm (nếu có). hàng trong vai trò chính để hệ những System Analysis mới có khả năng nhận ratiết. saixác sótđịnh trong Requiments and Specifications Phát triển những thay mềm đápquay ứng yêu cầu của chữa. họ and Design giaithống đoạnphần trước vàcó phải lạiđổi để mới sửa hay không. được khách hàng yêu cầu (như sửa đổi, thêm hay bớt chức năng, đặc điểm của hệ thống. Coding and Unit Test

Test

Deployment and Maintainance

Mô hình tuyến tính (Waterfall) Nhược điểm: Requiments and Specifications System Analysis and Design

Ưu điểm:Tất cả yêu cầu phải được xác định rõ ngay Đơn dễ hiểu từ đầugiản, dự án. Các cầu giaiphần đoạnmềm đượcthường đĩnh nghĩa vớinhững đầu Yêu ẩn chứa vào và đầu ra rõchắn, ràng.thiết kế có lỗi, xu điểm không chắc Việc kiểm gắncode liền được với từng đoạn hướng là mãđịnh source sửa đổi trực Sản phẩm hình thành thông qua chuỗi tiếp mà không tuân theo các bước bổ sung các hoạt xây dựng theo trình tự rõ theo đúngđộng mô hình. >>> Nhiều rủi ro… ràng. hợp cho những dự án nhỏ. Thích

Coding and Unit Test

Test

Deployment and Maintainance

Mô hình mẫu (Prototyping) Xây dựng Prototype Thảo luận với khách hàng Đánh giá Của khách hàng

Yêu cầu sơ lược (Outline requirements)

Làm mẫu (Prototype)

Waterfall

Definition Objects

Plan Prototype

Definition Functions

Specification

Development Prototype

Prototype

Evaluation Prototype

Rapport Evaluation

Mô hình mẫu (Prototyping) • Prototype như là một cơ chế để nhận diện chính xác yêu cầu của khách hàng. Thu thập yêu cầu với sự có mặt của đại diện của cả phía phát triển lẫn khách hàng nhằm định ra mục tiêu tổng thể của hệ thống phần mềm. • Ý tưởng: xây dựng các prototype để hiểu rõ hơn những điểm phức tạp

Mô hình mẫu (Prototyping) • Thực hiện thiết kế nhanh, tập trung chuyển tải những khía cạnh thông qua prototype để khách hàng có thể hình dung, đánh giá giúp hoàn chỉnh yêu cầu cho toàn hệ thống phần mềm, không đặt ra mục tiêu tái sử dụng cho giai đoạn phát triển thực sự sau đó • Tiếp theo sau giai đoạn làm prototype này có thể là một chu trình theo mô hình waterfall hay cũng có thể là mô hình khác.

Mô hình mẫu (Prototyping) • Ưu điểm.  Người sử dụng sớm hình dung ra chức năng

và đặc điểm của hệ thống.  Cho phép đánh giá rủi ro và kiểm tra giải pháp.  Có ích trong tất cả các pha của vòng đời PM.

Mô hình mẫu (Prototyping) • Nhược điểm.  Khách hàng hối thúc nhà phát triển hoàn thành sản phẩm một khi thấy được các prototype đầu tiên.  Prototype thường được làm nhanh, thậm chí vội vàng, theo kiểu “hiện thực - sửa” và có thể thiếu sự phân tích đánh giá một cách cẩn thận tất cả khía cạnh liên quan đến hệ thống cuối cùng.  Không được xây dựng trên cùng môi trường và công cụ phát triển của giai đoạn xây dựng phần mềm thực sự sau này.  Không đặt ra mục tiêu tái sử dụng cho giai đoạn phát triển thực sự sau đó.

Mô hình xoắn ốc

Mô hình xoắn ốc (tiếp) • Mô hình này được xây dựng bởi Barry Boehm • Đặt trọng tâm phân tích rủi ro và xem xét kế hoạch để giải quyết chúng, thông qua nhiều chu kỳ con nối tiếp được lặp liên tiếp dựa trên bản chất của mô hình lặp.

Mô hình xoắn ốc (tiếp) • Được thực hiện theo một chuỗi lặp kiểu xoắn ốc, mỗi lần lặp là một lần cải thiện sản phẩm cho thích nghi với bản chất của đề án, thực chất là một meta - model • Có phướng pháp đánh giá rủi ro. • Có thể áp dụng Prototype.

Mô hình xoắn ốc (tiếp) • Ưu điểm:  Phân tích đánh giá rủi ro được đẩy lên như một phần thiết yếu trong mỗi vòng xoắn để tăng mức độ tin cậy của dự án.  Kết hợp những tính chất tốt nhất của mô hình waterfall và mô hình tiến hóa.  Cho phép thay đổi tùy theo điều kiện thực tế dự án tại mỗi vòng xoắn.  Đây chính là mô hình tổng quát nhất, tất cả các mô hình khác đều có thể xem là một hiện thực của mô hình tổng quát này, hay cũng có thể xem nó là mô hình tổng hợp các mô hình khác. Đặc biệt, nó được ứng dụng không chỉ trong phát triển phần mềm mà còn trong phát triển phần cứng.

Mô hình xoắn ốc (tiếp) • Một số nhược điểm:  Khó đánh giá chính xác nhất là khi gặp rủi ro, khó kiểm soát. Phức tạp và không phù hợp cho dự án nhỏ với ít rủi ro.  Mô hình này còn mới chưa được kiểm nghiệm nhiều trong thực tiễn.  Cần có kỹ năng tốt về phân tích rủi ro.

Sự kết hợp mô hình tuyến tính và mô hình mẫu vào mô hình xoắn ốc • Như ta đã biết mô hình xoắn ốc phát triển trên tính ưu việt của vòng đời và bản mẫu tức là phát triển dựa trên hai mô hình “mô hình tuyến tính và mô hình mẫu” bổ sung những yếu tố còn thiếu và thêm vào các yếu tố mới, phân tích rủi ro. Vì vậy để có thể kết hợp hai mô hình này trong mô hình xoắn ốc thì phải

Sự kết hợp mô hình tuyến tính và mô hình mẫu vào mô hình xoắn ốc • Phải khắc phục được những nhược điểm của hai mô hình này để chúng có thể kết hợp được với nhau. • Phải được xây dựng trên cùng một môi trường phát triển của giai đoạn xây dựng phần mềm sau này. • Đặt ra mục tiêu tái sử dụng cho giai đoạn phát triển thực sự sau nó. • Trên thực tế các giai đoạn phát triển phần mềm không phải tách rời nhau mà là gối lên nhau và thông tin được cung cấp lẫn nhau vì vậy phải đảm bảo tính kế thừa của từng giai đoạn.

Sự kết hợp mô hình tuyến tính và mô hình mẫu vào mô hình xoắn ốc • Phải phát triển một cách tuần tự giữa hai mô hình. • Tránh việc phát triển một cách nhanh chóng thậm trí là vội vàng. • Đáp ứng được các chức năng trong mô hình xoắn ốc có thể thích hợp cho mỗi vòng.

Xây dựng hệ thống phần mềm Quản lý tài sản của một doanh nghiệp •

Mô hình phát triển được lựa chọn: Mô hình xoắn ốc



Phân tích nhanh yêu cầu: •

Xây dựng một phần mềm quản lý tài sản trong một doanh nghiệp. Tài sản bao gồm: thiết bị - máy móc phục sản xuất trực tiếp, thiết bị văn phòng, phương tiện đi lại…



Phần mềm cho phép hiển thị, cập nhật, tìm kiếm, báo cáo, tổng hợp thông tin về tài sản hiện có, đã thanh lý(tên, số lượng, chức năng, ngày nhập, ngày thanh lý…



Phần mềm phải được sử dụng những công nghệ mới nhất.



Những người sử dụng trong tương lai không biết hết những công nghệ mới.

Vấn đề đặt ra: •

Đó là một sản phẩm mới •

Không thể dựa trên sản phẩm đã có.



Nguồn và kiểu dữ liệu mới.



Sử dụng các công nghệ mới, chưa được huấn luyện thành thục.



Yêu cầu của khách hàng cần phải đơn giản hóa.

Tiếp cận: •

Tiếp cận theo phương pháp lặp với 5 vòng •

Vòng 1: Nghiên cứu tính khả thi



Vòng 2: Làm mẫu (Prototype)



Vòng 3: Chức năng hiển thị (Interface)



Vòng 4: Chức năng cập nhật (Add, Edit, Delete)



Vòng 5: Chức năng Tìm kiếm, Báo cáo, Tổng hợp.

Vòng 1: •

Mục tiêu: •

Nghiên cứu tính khả thi.



Tập trung vào công nghệ → Không làm mẫu.



Tìm các công nghệ thay thế khi có sự cố.



Xác định rủi ro •



Sự hiểu biết về công nghệ còn yếu → Cần đào tạo ngay.

Kế hoạch và thực hiện •

Thời gian: 1 tuần làm việc + 1 tuần đào tạo.



Nhân lực: 2 người.

Vòng 2: •

Mục tiêu: •

Xây dựng mẫu.



Đưa ra giao diện phần mềm.



Xác định rủi ro •



Sự hiểu biết về quy trình làm việc trong công ty chưa đầy đủ → Cần tổ chức các buổi trao đổi.

Kế hoạch và thực hiện •

Thời gian: 1 tháng làm việc.



Nhân lực: 5 người.

Vòng 3: •

Mục tiêu: •

Đưa ra một kiến trúc ổn định.



Thực hiện chức năng Hiển thị.



Xác định rủi ro •



Truy cập vào cơ sở dữ liệu của các tài liệu  Nhân đôi một phần dữ liệu (Backup).

Kế hoạch và thực hiện •

Thời gian: 1 tháng làm việc.



Nhân lực: 5 người.

GUI (Software InterfaceBrowser)

Primary Database Server

Secondary Database Server (Backup Server)

Vòng 4: •

Mục tiêu: •

Sử dụng lại và cập nhật kiến trúc đã tồn tại.



Thực hiện chức năng Cập nhật.



Xác định rủi ro •



Vấn đề an ninh  Liện hệ với các chuyên gia nhằm xác định biện pháp và tinh lược các yêu cầu.

Kế hoạch và thực hiện •

Thời gian: 1 tháng làm việc.



Nhân lực: 5 người.

GUI (Software InterfaceBrowser)

Primary Database Server Secondary Database Server (Backup Server)

Vòng 5: •

Mục tiêu: •

Sử dụng lại và thay đổi kiến trúc đã tồn tại



Thực hiện chức năng Tìm kiếm, Báo cáo, Tổng hợp.



Xác định rủi ro •

Chậm tiến độ ?  Thoả thuận với khách hàng.



Hiệu suất ?  Sự tương thích giữa các cấu trúc, môi trường cài đặt…



Kế hoạch và thực hiện •

Thời gian: 1 tháng làm việc.



Nhân lực: 5 người.

Related Documents

Tim Hieu Cnpm
June 2020 9
Thi Tim Hieu
June 2020 7
Tim Hieu Ftp
November 2019 15
Tim Hieu Ve Firewall
October 2019 20
Tim Hieu Asp 16t
October 2019 11
1.tim Hieu Firefox
May 2020 1