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

Công nghệ phần mềm chương 2

16 61 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

Thông tin cơ bản

Định dạng
Số trang 16
Dung lượng 54,06 KB

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

Nội dung

Nhiều quá trình phần mềm khác nhau nhưng tất cả đều liên quan đến: Tồn tại các đại dương khác nhau: tuy nhiên có 1 số hđ chính Đặc điểm kỹ thuật - xác định những gì hệ thống nên làm; T

Trang 1

Bài giảng 2 - Các quy trình phần mềm

Phần 1 Chương 2 Các quy trình phần mềm Chủ đề được bảo vệ

Mô hình quy trình phần mềm

Tiến hành các hoạt động

Đối phó với thay đổi

Quá trình hợp nhất Rational

Một ví dụ về một quá trình phần mềm hiện đại

Quá trình phần mềm

Một bộ các hoạt động có cấu trúc cần thiết để phát triển một

Hệ thống phần mềm

Nhiều quá trình phần mềm khác nhau nhưng tất cả đều liên quan đến:

(Tồn tại các đại dương khác nhau: tuy nhiên có 1 số hđ chính)

Đặc điểm kỹ thuật - xác định những gì hệ thống nên làm;

Thiết kế và thực hiện - Xác định các tổ chức của hệ thống và triển khai hệ thống;

Validation - kiểm tra xem nó làm những gì khách hàng muốn;

Sự phát triển - thay đổi hệ thống để đáp ứng với nhu cầu thay đổi của khách hàng

Một mô hình quá trình phần mềm là một đại diện trừu tượng của một quá trình Nó trình bày một mô tả của một quá trình từ một số quan điểm cụ thể

Mô tả quy trình phần mềm

Khi chúng tôi mô tả và thảo luận về quy trình, chúng ta thường nói về các hoạt động trong các quá trình như cách xác định một mô hình dữ liệu, thiết

kế một giao diện người dùng, vv và thứ tự của các hoạt động này

Mô tả quy trình cũng có thể bao gồm:

Sản phẩm là kết quả của một hoạt động sản xuất;

Trang 2

Vai trò, trong đó phản ánh trách nhiệm của những người liên quan trong quá trình này;

Các điều kiện trước và sau, là các tuyên bố đúng trước và sau khi một hoạt

động quy trình đã được ban hành hoặc một sản phẩm được sản xuất

Quy trình theo định hướng và nhanh - quy trình phân loại

Các quá trình hoạch định theo định hướng là các quá trình mà tất cả các hoạt động của quá trình được lập kế hoạch trước và tiến độ được đo lường so với

kế hoạch này

Trong quá trình linh hoạt quy hoạch là gia tăng và nó là dễ dàng hơn để thay đổi quá trình này để phản ánh thay đổi các yêu cầu của khách hàng

Trong thực tế, hầu hết các quy trình thực tiễn bao gồm các yếu tố của cả phương pháp tiếp cận định hướng và linh hoạt

Không có quá trình phần mềm đúng hay sai

Mô hình quy trình phần mềm

Mô hình thác nước (m ô h ì nh thứ á c n uo c)

Mô hình theo kế hoạch Các giai đoạn riêng biệt và khác biệt về đặc điểm

kỹ thuật và sự phát triển

Phát triển gia tăng (MH tang d n a)

Đặc điểm kỹ thuật, phát triển và xác nhận được xen kẽ Có thể được lập kế hoạch hoặc nhanh nhẹn

Tái sử dụng theo định hướng công nghệ phần mềm

Hệ thống được lắp ráp từ các thành phần hiện có Có thể được lập kế hoạch hoặc nhanh nhẹn

Trên thực tế, các hệ thống lớn nhất được phát triển sử dụng một quá trình kết hợp các yếu tố từ tất cả các mô hình này

Mô hình thác nước

Hợp nhất: tích hợp

Thực hiện và kiểm tra đơn vị: kiểm tra đơn vị, thành phần

Các công đoạn trong mô hình thác nước

- Có giai đoạn được xác định riêng biệt trong mô hình thác nước:

+ Yêu cầu phân tích và định nghĩa

+ Thiết kế hệ thống và thiết kế phần mềm

+ Thực hiện và kiểm tra đơn vị

Trang 3

+ Tích hợp và thử nghiệm hệ thống

+ Vận hành và bảo trì

đổi sau khi quá trình này đang được tiến hành Về nguyên tắc, một giai đoạn phải được hoàn thành trước khi chuyển sang giai đoạn tiếp theo

qtrinh phát triển mô hình này thường sử dụng trong phát triển các hệ thống lớn mô hình này mang tính chất kế hoạch cao

Thác nước mô hình vấn đề

Sự phân chia không đồng đều của dự án thành các giai đoạn riêng biệt làm cho việc đáp ứng yêu cầu của khách hàng thay đổi

Do đó, mô hình này chỉ thích hợp khi các yêu cầu được hiểu rõ và những thay đổi sẽ khá hạn chế trong quá trình thiết kế

Rất ít hệ thống kinh doanh có yêu cầu ổn định

Các mô hình thác nước chủ yếu được sử dụng cho các dự án kỹ thuật hệ thống lớn, nơi một hệ thống được phát triển tại một số trang web

Trong những trường hợp đó, bản chất định hướng theo kế hoạch của mô hình thác nước giúp phối hợp công việc

Sự phát triển gia tăng - MH phát triển tăng dần

Lợi ích phát triển tăng dần:

- Chi phí cho việc đáp ứng các yêu cầu thay đổi của khách hàng sẽ giảm xuống

- Dễ dàng nhận được phản hồi của khách hàng về công việc phát triển đã được thực hiện

- Lượng phân tích và tài liệu mà đã được làm lại là ít hơn nhiều so với yêu cầu với mô hình thác nước

- Khách hàng có thể bình luận về các cuộc trình diễn của phần mềm và xem có bao nhiêu đã được thực hiện

Nhiều giao hàng nhanh chóng và triển khai các phần mềm hữu ích cho khách hàng là có thể

Khách hàng có thể sử dụng và có được giá trị từ phần mềm sớm nhất có thể với quy trình thác nước

Trang 4

Các vấn đề phát triển tăng dần

Quá trình này không hiển thị

Người quản lý cần những sản phẩm thường xuyên để đo lường sự tiến bộ Nếu hệ thống được phát triển nhanh chóng thì không phải là chi phí để tạo ra các tài liệu phản ánh mọi phiên bản của hệ thống

Cấu trúc hệ thống có xu hướng suy giảm như gia tăng mới được thêm vào Trừ phi thời gian và tiền bạc được chi cho tái cấu trúc để cải thiện phần

hợp các thay đổi phần mềm hơn nữa trở nên ngày càng khó khăn và tốn kém

12

Tái sử dụng kỹ thuật phần mềm theo định hướng

Dựa trên tái sử dụng có hệ thống, nơi hệ thống được tích hợp từ các thành phần hiện có hoặc COTS (Thương mại-off-the-shelf) hệ thống

Giai đoạn quy trình

Phân tích thành phần;

Sửa đổi yêu cầu;

Thiết kế hệ thống với việc tái sử dụng;

Phát triển và hội nhập

Tái sử dụng bây giờ là cách tiếp cận tiêu chuẩn để xây dựng nhiều loại hệ thống kinh doanh

Tái sử dụng được đề cập chi tiết hơn trong Chương 16

Tái sử dụng kỹ thuật phần mềm theo định hướng

Các loại thành phần phần mềm

Các dịch vụ Web được phát triển theo các tiêu chuẩn dịch vụ và

có sẵn để gọi từ xa

Trang 5

Bộ sưu tập của các đối tượng được phát triển như là một gói để được tích hợp với một khuôn khổ thành phần như NET hay J2EE

Hệ thống phần mềm độc lập (COTS) được cấu hình để sử dụng trong một môi trường cụ thể

Tiến hành các hoạt động

Các quy trình phần mềm thực là các trình tự liên quan đến các hoạt động kỹ thuật, hợp tác và quản lý với mục tiêu tổng thể là xác định, thiết kế, triển khai và thử nghiệm một hệ thống phần mềm

Bốn quá trình hoạt động cơ bản của đặc tả, phát triển, xác nhận

và tiến hóa được tổ chức khác nhau trong các quy trình phát triển khác nhau Trong mô hình thác nước, chúng được tổ chức theo trình tự, trong khi đó trong sự phát triển gia tăng chúng được chia thành nhiều phần

Đặc tả phần mềm

Quá trình xây dựng những dịch vụ được yêu cầu và những hạn chế về hoạt động và phát triển của hệ thống

Quy trình kỹ thuật yêu cầu

Nghiên cứu khả thi

Có khả thi về mặt kỹ thuật và tài chính để xây dựng hệ thống?

Yêu cầu và phân tích yêu cầu

Các bên liên quan hệ thống yêu cầu hoặc mong đợi gì từ hệ thống?

Yêu cầu kỹ thuật

Xác định các yêu cầu cụ thể

Yêu cầu xác nhận

Kiểm tra tính hợp lệ của các yêu cầu

Trang 6

Quy trình kỹ thuật yêu cầu

Thiết kế và thực hiện phần mềm

Quá trình chuyển đổi đặc tả hệ thống thành một hệ thống thực thi

Thiết kế phần mềm

Thiết kế một cấu trúc phần mềm nhận ra đặc điểm kỹ thuật;

Thực hiện

Dịch cấu trúc này thành một chương trình thực thi;

Các hoạt động thiết kế và thực hiện có mối quan hệ gần gũi và có thể liên quan đến nhau

Một mô hình chung của quá trình thiết kế Hoạt động thiết kế

Thiết kế kiến trúc, nơi bạn xác định cấu trúc tổng thể của hệ thống, các thành phần chính (đôi khi được gọi là tiểu hệ thống hoặc mô-đun), mối quan hệ của họ và cách thức chúng được phân phối

Thiết kế giao diện, nơi bạn xác định các giao diện giữa các thành phần hệ thống

Thiết kế thành phần, nơi bạn lấy mỗi thành phần hệ thống và thiết kế thế nào nó sẽ hoạt động

Cơ sở dữ liệu thiết kế, nơi bạn thiết kế các cấu trúc dữ liệu hệ thống và làm thế nào đây là để được đại diện trong một cơ sở dữ liệu

Xác nhận phần mềm

Xác minh và xác nhận hợp lệ (V & V) nhằm chứng minh rằng một hệ thống phù hợp với đặc tả của nó và đáp ứng các yêu cầu của khách hàng hệ thống

Trang 7

Tham gia kiểm tra và xem lại quy trình và thử nghiệm hệ thống

Kiểm tra hệ thống liên quan đến việc thực hiện hệ thống với các trường hợp thử nghiệm được bắt nguồn từ các đặc điểm kỹ thuật của dữ liệu thực sẽ được xử lý bởi hệ thống

Thử nghiệm là hoạt động V & V được sử dụng phổ biến nhất

Các giai đoạn thử nghiệm

Giai đoạn thử nghiệm

Phát triển hoặc thử nghiệm thành phần

Các thành phần riêng lẻ được kiểm tra độc lập;

Các thành phần có thể là các chức năng hoặc các đối tượng hoặc các nhóm chặt chẽ của các thực thể này Kiểm tra hệ thống

Kiểm tra hệ thống như một toàn thể Thử nghiệm các đặc tính khẩn cấp đặc biệt quan trọng

Kiểm tra chấp nhận

Thử nghiệm với dữ liệu khách hàng để kiểm tra xem hệ thống đáp ứng nhu cầu của khách hàng

Thử nghiệm các giai đoạn trong một quy trình phần mềm theo định hướng

Phát triển phần mềm

Phần mềm vốn có tính linh hoạt và có thể thay đổi

Khi yêu cầu thay đổi thông qua thay đổi tình huống kinh doanh, phần mềm

hỗ trợ doanh nghiệp cũng phải tiến triển và thay đổi

Mặc dù có sự phân chia giữa phát triển và tiến hóa (bảo trì) điều này ngày càng trở nên không liên quan vì ít hơn và ít hệ thống hơn hoàn toàn mới

Trang 8

Tiến triển hệ thống

Những điểm chính

Các quy trình phần mềm là các hoạt động liên quan đến sản xuất một hệ thống phần mềm Các mô hình quy trình phần mềm là những biểu diễn trừu tượng của các quy trình này

Mô hình quy trình chung mô tả việc tổ chức các quy trình phần mềm Ví dụ

về các mô hình chung bao gồm các mô hình 'thác nước', phát triển gia tăng,

và phát triển theo định hướng tái sử dụng

Những điểm chính

Yêu cầu kỹ thuật là quá trình phát triển một đặc điểm kỹ thuật phần mềm

Các quy trình thiết kế và triển khai liên quan đến việc chuyển đổi một đặc tả yêu cầu thành một hệ thống phần mềm thực thi

Xác nhận phần mềm là quá trình kiểm tra xem hệ thống có phù hợp với đặc điểm kỹ thuật của nó và nó đáp ứng được các nhu cầu thực sự của người sử dụng hệ thống

Sự phát triển phần mềm diễn ra khi bạn thay đổi các hệ thống phần mềm hiện tại để đáp ứng các yêu cầu mới Phần mềm phải phát triển

để vẫn hữu ích

29

Phần 2 Chương 2 Các quy trình phần mềm

Đối phó với thay đổi

Thay đổi là không thể tránh khỏi trong tất cả các dự án phần mềm lớn

Thay đổi về kinh doanh dẫn đến các yêu cầu hệ thống mới và

đã thay đổi Các công nghệ mới mở ra những khả năng mới cho việc cải tiến triển khai

Trang 9

Thay đổi nền tảng yêu cầu thay đổi ứng dụng Thay đổi dẫn đến làm lại nên chi phí của sự thay đổi bao gồm cả làm lại (ví dụ tái yêu cầu phân tích) cũng như các chi phí thực hiện các chức năng mới

Giảm chi phí của việc làm lại

Thay đổi tránh, nơi mà các quá trình phần mềm bao gồm các hoạt động có thể dự đoán những thay đổi có thể trước khi làm lại đáng kể là cần thiết

Ví dụ, một hệ thống nguyên mẫu có thể được phát triển để hiển thị một số tính năng chính của hệ thống cho khách hàng

Thay đổi khoan dung, nơi quy trình được thiết kế để thay đổi có thể được cung cấp ở chi phí tương đối thấp

Điều này thường liên quan đến một số hình thức phát triển gia tăng Thay đổi được đề xuất có thể được thực hiện theo từng bước chưa được phát triển Nếu điều này là không thể, thì chỉ có thể tăng một phần duy nhất (một phần nhỏ của hệ thống) để đưa sự thay đổi

Tạo mẫu phần mềm

Nguyên mẫu là một phiên bản ban đầu của một hệ thống được sử dụng để chứng minh các khái niệm và thử các tùy chọn thiết kế

Một nguyên mẫu có thể được sử dụng trong:

Yêu cầu kỹ thuật quy trình để giúp đỡ với yêu cầu gợi ý và xác nhận;

Trong quá trình thiết kế để khám phá các tùy chọn và phát triển một thiết kế giao diện người dùng;

Trong quá trình thử nghiệm để chạy các kiểm tra back-to-back

Lợi ích của việc tạo mẫu

Cải thiện khả năng sử dụng hệ thống

Một trận đấu gần gũi hơn với nhu cầu thực sự của người dùng

Trang 10

Chất lượng thiết kế được cải thiện

Nâng cao khả năng bảo trì

Giảm nỗ lực phát triển

Quá trình phát triển nguyên mẫu Phát triển mẫu

Có thể dựa trên các ngôn ngữ lập trình nhanh hoặc các công cụ

Có thể liên quan đến bỏ chức năng

Nguyên mẫu nên tập trung vào các lĩnh vực của sản phẩm không được hiểu rõ;

Lỗi kiểm tra và phục hồi có thể không được bao gồm trong nguyên mẫu;

Tập trung vào các chức năng chứ không phải các yêu cầu không chức năng như độ tin cậy và an ninh

Vứt bỏ nguyên mẫu

Nguyên mẫu nên được loại bỏ sau khi phát triển vì chúng không phải

là cơ sở tốt cho một hệ thống sản xuất:

Không thể điều chỉnh hệ thống để đáp ứng các yêu cầu phi chức năng;

Nguyên mẫu thường không có giấy tờ;

Cấu trúc nguyên mẫu thường bị suy thoái do thay đổi nhanh; Nguyên mẫu có thể sẽ không đáp ứng các tiêu chuẩn chất lượng tổ chức bình thường

Phân phối gia tăng

Thay vì phân phối hệ thống như một phân phối đơn lẻ, sự phát triển và phân phối được chia thành từng phần với từng phần cung cấp một phần của chức năng được yêu cầu

Các yêu cầu của người dùng được ưu tiên và các yêu cầu ưu tiên cao nhất được bao gồm trong các bước tăng dần

Trang 11

Một khi sự phát triển của một sự gia tăng được bắt đầu, các yêu cầu được đông lạnh mặc dù các yêu cầu cho gia số sau đó có thể tiếp tục tiến triển

Phát triển và phân phối gia tăng

Phát triển gia tăng

Phát triển hệ thống theo từng bước và đánh giá từng bước tăng trước khi tiến hành phát triển bước tiếp theo;

Phương pháp tiếp cận thông thường được sử dụng trong các phương pháp nhanh nhẹn;

Đánh giá được thực hiện bởi proxy người dùng / khách hàng

Phân phối gia tăng

Triển khai một mức gia tăng cho người dùng cuối sử dụng;

Đánh giá thực tế hơn về việc sử dụng phần mềm thực tế;

Khó thực hiện cho các hệ thống thay thế như tăng có ít chức năng hơn so với hệ thống đang được thay thế

Phân phối gia tăng Lợi thế giao hàng gia tăng

Giá trị của khách hàng có thể được phân phối với từng mức gia tăng để chức năng hệ thống có sẵn trước đó

Gia số ban đầu hoạt động như một nguyên mẫu để giúp gợi ý các yêu cầu cho các gia số sau đó

Giảm nguy cơ thất bại toàn bộ dự án

Dịch vụ hệ thống ưu tiên cao nhất có xu hướng nhận được nhiều thử nghiệm nhất

Vấn đề giao hàng gia tăng

Hầu hết các hệ thống đòi hỏi một bộ cơ sở vật chất cơ bản được sử dụng bởi các bộ phận khác nhau của hệ thống

Trang 12

Vì các yêu cầu không được xác định chi tiết cho đến khi một bước tăng được thực hiện, có thể khó để xác định các cơ sở thông thường cần thiết cho tất cả các khoản gia tăng

Bản chất của quá trình lặp đi lặp lại là đặc tả được phát triển kết hợp với phần mềm

Tuy nhiên, điều này mâu thuẫn với mô hình mua sắm của nhiều tổ chức, trong đó đặc tả hệ thống hoàn chỉnh là một phần của hợp đồng phát triển hệ thống

Mô hình xoắn ốc của Boehm

Quá trình được đại diện như là một xoắn ốc chứ không phải là một chuỗi các hoạt động với sự quay trở lại

Mỗi vòng lặp trong xoắn ốc đại diện cho một pha trong tiến trình

Không có các giai đoạn cố định như đặc tả hoặc các vòng thiết kế

trong xoắn ốc được chọn tùy thuộc vào yêu cầu

Rủi ro được đánh giá và giải quyết một cách rõ ràng trong suốt quá trình

Mô hình xoắn ốc của về quy trình phần mềm

Các mô hình xoắn ốc

Thiết lập mục tiêu

Các mục tiêu cụ thể cho giai đoạn này được xác định

Đánh giá và giảm rủi ro

Rủi ro được đánh giá và các hoạt động được đưa ra để giảm các rủi ro chính Phát triển và xác nhận

Một mô hình phát triển cho hệ thống được chọn có thể là bất kỳ mô hình chung

Ngày đăng: 21/02/2020, 22:33

TỪ KHÓA LIÊN QUAN

w