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

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

Đ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ài giảng - Các quy trình phần mềm Phần Chương Các quy trình phần mềm Chủ đề bảo vệ Mơ hình quy trình phần mềm Tiến hành hoạt động Đối phó với thay đổi Quá trình hợp Rational Một ví dụ q trình phần mềm đại Quá trình phần mềm Một hoạt động có cấu trúc cần thiết để phát triển Hệ thống phần mềm Nhiều trình phần mềm khác tất liên quan đến: (Tồn đại dương khác nhau: nhiên có số hđ chính) Đặc điểm kỹ thuật - xác định hệ thống nên làm; Thiết kế thực - Xác định tổ chức hệ thống triển khai hệ thống; Validation - kiểm tra xem làm 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 khách hàng Một mô hình trình phần mềm đại diện trừu tượng q trình Nó trình bày mơ tả trình từ số quan điểm cụ thể Mơ tả quy trình phần mềm Khi chúng tơi mơ tả thảo luận quy trình, thường nói hoạt động trình cách xác định mơ hình liệu, thiết kế giao diện người dùng, vv thứ tự hoạt động Mơ tả quy trình bao gồm: Sản phẩm kết hoạt động sản xuất; Vai trò, phản ánh trách nhiệm người liên quan trình này; Các điều kiện trước sau, tuyên bố trước sau hoạt động quy trình ban hành sản phẩm sản xuất Quy trình theo định hướng nhanh - quy trình phân loại Các trình hoạch định theo định hướng trình mà tất hoạt động trình lập kế hoạch trước tiến độ đo lường so với kế hoạch Trong trình linh hoạt quy hoạch gia tăng dễ dàng để thay đổi trình để phản ánh thay đổi yêu cầu khách hàng Trong thực tế, hầu hết quy trình thực tiễn bao gồm yếu tố phương pháp tiếp cận định hướng linh hoạt Khơng có q trình phần mềm 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 khác biệt đặc điểm kỹ thuật 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 xác nhận xen kẽ Có thể lập kế hoạch nhanh nhẹn Tái sử dụng theo định hướng công nghệ phần mềm Hệ thống lắp ráp từ thành phần có Có thể lập kế hoạch nhanh nhẹn Trên thực tế, hệ thống lớn phát triển sử dụng trình kết hợp yếu tố từ tất mô hình  Mơ hình thác nước Hợp nhất: tích hợp Thực kiểm tra đơn vị: kiểm tra đơn vị, thành phần Các cơng đoạn mơ hình thác nước - Có giai đoạn xác định riêng biệt mơ hình thác nước: + u cầu phân tích định nghĩa + Thiết kế hệ thống thiết kế phần mềm + Thực kiểm tra đơn vị + Tích hợp thử nghiệm hệ thống + Vận hành bảo trì - Hạn chế mơ hình thác nước khó khăn việc hỗ trợ thay đổi sau trình tiến hành Về nguyên tắc, giai đoạn phải hoàn thành trước chuyển sang giai đoạn - Phù hợp trường hợp yêu cầu rõ ràng, thay đổi nhỏ qtrinh phát triển mơ hình thường sử dụng phát triển hệ thống lớn mơ hình 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 dự án thành giai đoạn riêng biệt làm cho việc đáp ứng yêu cầu khách hàng thay đổi Do đó, mơ hình thích hợp yêu cầu hiểu rõ thay đổi hạn chế trình thiết kế Rất hệ thống kinh doanh có u cầu ổn định Các mơ hình thác nước chủ yếu sử dụng cho dự án kỹ thuật hệ thống lớn, nơi hệ thống phát triển số trang web Trong trường hợp đó, chất định hướng theo kế hoạch 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 yêu cầu thay đổi khách hàng giảm xuống - Dễ dàng nhận phản hồi khách hàng công việc phát triển thực - Lượng phân tích tài liệu mà làm lại nhiều so với yêu cầu với mơ hình thác nước - Khách hàng bình luận trình diễn phần mềm xem có thực Nhiều giao hàng nhanh chóng triển khai phần mềm hữu ích cho khách hàng Khách hàng sử dụng có giá trị từ phần mềm sớm với quy trình thác nước Các vấn đề phát triển tăng dần Quá trình khơng hiển thị Người quản lý cần sản phẩm thường xuyên để đo lường tiến Nếu hệ thống phát triển nhanh chóng khơng phí để tạo tài liệu phản ánh phiên hệ thống Cấu trúc hệ thống có xu hướng suy giảm gia tăng thêm vào Trừ phi thời gian tiền bạc chi cho tái cấu trúc để cải thiện phần mềm, thay đổi thường xuyên có xu hướng làm hỏng cấu trúc Kết hợp thay đổi phần mềm trở nên ngày khó khăn tốn 12 Tái sử dụng kỹ thuật phần mềm theo định hướng Dựa tái sử dụng có hệ thống, nơi hệ thống tích hợp từ thành phần 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 hội nhập Tái sử dụng 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ập chi tiết 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 phát triển theo tiêu chuẩn dịch vụ có sẵn để gọi từ xa Bộ sưu tập đối tượng phát triển gói để tích hợp với khn khổ thành phần NET hay J2EE Hệ thống phần mềm độc lập (COTS) cấu hình để sử dụng mơi trường cụ thể Tiến hành hoạt động Các quy trình phần mềm thực trình tự liên quan đến hoạt động kỹ thuật, hợp tác quản lý với mục tiêu tổng thể xác định, thiết kế, triển khai thử nghiệm hệ thống phần mềm Bốn trình hoạt động đặc tả, phát triển, xác nhận tiến hóa tổ chức khác quy trình phát triển khác Trong mơ hình thác nước, chúng tổ chức theo trình tự, trong phát triển gia tăng chúng chia thành nhiều phần Đặc tả phần mềm Quá trình xây dựng dịch vụ yêu cầu hạn chế hoạt động phát triển hệ thống Quy trình kỹ thuật yêu cầu Nghiên cứu khả thi Có khả thi mặt kỹ thuật tài để xây dựng hệ thống? Yêu cầu phân tích yêu cầu Các bên liên quan hệ thống yêu cầu mong đợi từ hệ thống? Yêu cầu kỹ thuật Xác định yêu cầu cụ thể Yêu cầu xác nhận Kiểm tra tính hợp lệ yêu cầu Quy trình kỹ thuật yêu cầu Thiết kế thực phần mềm Quá trình chuyển đổi đặc tả hệ thống thành hệ thống thực thi Thiết kế phần mềm Thiết kế cấu trúc phần mềm nhận đặc điểm kỹ thuật; Thực Dịch cấu trúc thành chương trình thực thi; Các hoạt động thiết kế thực có mối quan hệ gần gũi liên quan đến Một mơ hình chung q 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ể hệ thống, thành phần (đơi gọi tiểu hệ thống mô-đun), mối quan hệ họ cách thức chúng phân phối Thiết kế giao diện, nơi bạn xác định giao diện thành phần hệ thống Thiết kế thành phần, nơi bạn lấy thành phần hệ thống thiết kế hoạt động Cơ sở liệu thiết kế, nơi bạn thiết kế cấu trúc liệu hệ thống làm để đại diện sở liệu Xác nhận phần mềm Xác minh xác nhận hợp lệ (V & V) nhằm chứng minh hệ thống phù hợp với đặc tả đáp ứng yêu cầu khách hàng hệ thống Tham gia kiểm tra xem lại quy trình thử nghiệm hệ thống Kiểm tra hệ thống liên quan đến việc thực hệ thống với trường hợp thử nghiệm bắt nguồn từ đặc điểm kỹ thuật liệu thực xử lý hệ thống Thử nghiệm hoạt động V & V sử dụng phổ biến Các giai đoạn thử nghiệm Giai đoạn thử nghiệm Phát triển thử nghiệm thành phần Các thành phần riêng lẻ kiểm tra độc lập; Các thành phần chức đối tượng nhóm chặt chẽ thực thể Kiểm tra hệ thống Kiểm tra hệ thống tồn thể Thử nghiệm đặ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 liệu khách hàng để kiểm tra xem hệ thống đáp ứng nhu cầu khách hàng Thử nghiệm giai đoạn 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 thay đổi Khi yêu cầu thay đổi thơng qua thay đổi tình kinh doanh, phần mềm hỗ trợ doanh nghiệp phải tiến triển thay đổi Mặc dù có phân chia phát triển tiến hóa (bảo trì) điều ngày trở nên khơng liên quan hệ thống hoàn toàn Tiến triển hệ thống Những điểm Các quy trình phần mềm hoạt động liên quan đến sản xuất hệ thống phần mềm Các mơ hình quy trình phần mềm biểu diễn trừu tượng quy trình Mơ hình quy trình chung mơ tả việc tổ chức quy trình phần mềm Ví dụ mơ hình chung bao gồm mơ hình 'thác nước', phát triển gia tăng, phát triển theo định hướng tái sử dụng Những điểm Yêu cầu kỹ thuật trình phát triển đặc điểm kỹ thuật phần mềm Các quy trình thiết kế triển khai liên quan đến việc chuyển đổi đặc tả yêu cầu thành hệ thống phần mềm thực thi Xác nhận phần mềm trình kiểm tra xem hệ thống có phù hợp với đặc điểm kỹ thuật đáp ứng nhu cầu thực người sử dụng hệ thống Sự phát triển phần mềm diễn bạn thay đổi hệ thống phần mềm để đáp ứng yêu cầu Phần mềm phải phát triển để hữu ích 29 Phần Chương Các quy trình phần mềm Đối phó với thay đổi Thay đổi khơng thể tránh khỏi tất dự án phần mềm lớn Thay đổi kinh doanh dẫn đến yêu cầu hệ thống thay đổi Các công nghệ mở khả cho việc cải tiến triển khai Thay đổi tảng yêu cầu thay đổi ứng dụng Thay đổi dẫn đến làm lại phí thay đổi bao gồm làm lại (ví dụ tái yêu cầu phân tích) chi phí thực chức Giảm chi phí việc làm lại Thay đổi tránh, nơi mà trình phần mềm bao gồm hoạt động dự đốn thay đổi trước làm lại đáng kể cần thiết Ví dụ, hệ thống ngun mẫu phát triển để hiển thị số tính hệ thống cho khách hàng Thay đổi khoan dung, nơi quy trình thiết kế để thay đổi cung cấp chi phí tương đối thấp Điều thường liên quan đến số hình thức phát triển gia tăng Thay đổi đề xuất thực theo bước chưa phát triển Nếu điều khơng thể, tăng phần (một phần nhỏ hệ thống) để đưa thay đổi Tạo mẫu phần mềm Nguyên mẫu phiên ban đầu hệ thống sử dụng để chứng minh khái niệm thử tùy chọn thiết kế Một nguyên mẫu sử dụng trong: Yêu cầu kỹ thuật quy trình để giúp đỡ với yêu cầu gợi ý xác nhận; Trong trình thiết kế để khám phá tùy chọn phát triển thiết kế giao diện người dùng; Trong trình thử nghiệm để chạy kiểm tra back-to-back Lợi ích việc tạo mẫu Cải thiện khả sử dụng hệ thống Một trận đấu gần gũi với nhu cầu thực người dùng Chất lượng thiết kế cải thiện Nâng cao khả 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 ngơn ngữ lập trình nhanh cơng cụ Có thể liên quan đến bỏ chức Nguyên mẫu nên tập trung vào lĩnh vực sản phẩm không hiểu rõ; Lỗi kiểm tra phục hồi khơng bao gồm nguyên mẫu; Tập trung vào chức yêu cầu không chức độ tin cậy an ninh Vứt bỏ nguyên mẫu Nguyên mẫu nên loại bỏ sau phát triển chúng khơng phải sở tốt cho hệ thống sản xuất: Không thể điều chỉnh hệ thống để đáp ứng yêu cầu phi chức năng; Ngun mẫu thường khơng có giấy tờ; Cấu trúc nguyên mẫu thường bị suy thoái thay đổi nhanh; Ngun mẫu khơng đáp ứng tiêu chuẩn chất lượng tổ chức bình thường Phân phối gia tăng Thay phân phối hệ thống phân phối đơn lẻ, phát triển phân phối chia thành phần với phần cung cấp phần chức yêu cầu Các yêu cầu người dùng ưu tiên yêu cầu ưu tiên cao bao gồm bước tăng dần Một phát triển gia tăng bắt đầu, yêu cầu đông lạnh yêu cầu cho gia số sau tiếp tục tiến triển Phát triển phân phối gia tăng Phát triển gia tăng Phát triển hệ thống theo bước đánh giá bước tăng trước 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 sử dụng phương pháp nhanh nhẹn; Đánh giá thực proxy người dùng / khách hàng Phân phối gia tăng Triển khai mức gia tăng cho người dùng cuối sử dụng; Đánh giá thực tế việc sử dụng phần mềm thực tế; Khó thực cho hệ thống thay tăng có chức so với hệ thống thay Phân phối gia tăng Lợi giao hàng gia tăng Giá trị khách hàng phân phối với mức gia tăng để chức hệ thống có sẵn trước Gia số ban đầu hoạt động nguyên mẫu để giúp gợi ý yêu cầu cho gia số sau Giảm nguy thất bại toàn dự án Dịch vụ hệ thống ưu tiên cao có xu hướng nhận nhiều thử nghiệm Vấn đề giao hàng gia tăng Hầu hết hệ thống đòi hỏi sở vật chất sử dụng phận khác hệ thống Vì yêu cầu không xác định chi tiết bước tăng thực hiện, khó để xác định sở thông thường cần thiết cho tất khoản gia tăng Bản chất trình lặp lặp lại đặc tả phát triển kết hợp với phần mềm Tuy nhiên, điều mâu thuẫn với mơ hình mua sắm nhiều tổ chức, đặc tả hệ thống hồn chỉnh phần hợp đồng phát triển hệ thống Mơ hình xoắn ốc Boehm Quá trình đại diện xoắn ốc chuỗi hoạt động với quay trở lại Mỗi vòng lặp xoắn ốc đại diện cho pha tiến trình Khơng có giai đoạn cố định đặc tả vòng thiết kế xoắn ốc chọn tùy thuộc vào yêu cầu Rủi ro đánh giá giải cách rõ ràng suốt q trình Mơ hình xoắn ốc 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 xác định Đánh giá giảm rủi ro Rủi ro đánh giá hoạt động đưa để giảm rủi ro Phát triển xác nhận Một mơ hình phát triển cho hệ thống chọn mơ hình chung Lập kế hoạch Dự án xem xét giai đoạn dự án xoắn ốc lên kế hoạch Sử dụng mơ hình xoắn ốc Mơ hình xoắn ốc có ảnh hưởng lớn việc giúp người suy nghĩ lặp lặp lại quy trình phần mềm giới thiệu cách tiếp cận rủi ro phát triển Tuy nhiên, thực tế, mơ hình sử dụng xuất để phát triển phần mềm thực tế Quá trình hợp Rational Một trình chung chung đại bắt nguồn từ công việc UML q trình liên quan Kết hợp khía cạnh mơ hình quy trình chung chung thảo luận trước Thơng thường mơ tả từ quan điểm Một phối cảnh động cho thấy giai đoạn theo thời gian; Một phối cảnh tĩnh cho thấy hoạt động trình; Một quan điểm practive cho thấy thực hành tốt Các giai đoạn trình hợp hợp lý Các giai đoạn RUP Khởi đầu Thiết lập trường hợp kinh doanh cho hệ thống Xây dựng Phát triển hiểu biết miền vấn đề kiến trúc hệ thống Xây dựng Thiết kế hệ thống, lập trình thử nghiệm Chuyển đổi Triển khai hệ thống môi trường hoạt động Lặp lại RUP Lặp lại pha Mỗi giai đoạn lặp lặp lại với kết phát triển bước Phép lặp chéo pha Như hiển thị vòng lặp mơ hình RUP, tồn giai đoạn ban hành theo bước Luồng cơng việc tĩnh trình hợp Rational Quy trình làm việc Sự miêu tả Mơ hình kinh doanh Các quy trình nghiệp vụ mơ hình bằ trường hợp sử dụng kinh doanh Các diễn viên tương tác với hệ thống x trường hợp sử dụng phát triển hình yêu cầu hệ thống Một mơ hình thiết kế tạo ghi lại bằ mơ hình kiến trúc, mơ hình thành phần, mơ h tượng mơ hình trình tự Các thành phần hệ thống thực cấu trúc thành tiểu hệ thống thực T tạo mã từ mơ hình thiết kế giúp đẩy nha trình u cầu Phân tích thiết kế Thực Luồng cơng việc tĩnh trình hợp Rational Quy trình làm việc Thử nghiệm Triển khai Sự miêu tả Thử nghiệm trình lặp lặp lại thực kết hợp với việc thực Kiểm tra hệ thống sau hoàn thành việc thực Bản phát hành sản phẩm tạo ra, phân phối Cấu hình quản lý thay đổi Quản lý dự án Môi trường cho người dùng cài đặt nơi làm việc họ Quy trình làm việc hỗ trợ quản lý thay đổi hệ thống (xem Chương 25) Quy trình cơng việc hỗ trợ quản lý việc phát triển hệ thống (xem Chương 22 23) Luồng công việc liên quan đến việc tạo công cụ phần mềm phù hợp cho đội phát triển phần mềm Thực hành tốt RUP Phát triển phần mềm lặp lặp lại Lập kế hoạch gia số dựa ưu tiên khách hàng đưa mức tăng ưu tiên cao Quản lý yêu cầu Mô tả rõ ràng yêu cầu khách hàng theo dõi thay đổi yêu cầu Sử dụng kiến trúc dựa thành phần Tổ chức kiến trúc hệ thống thành phần tái sử dụng Thực hành tốt RUP Mơ hình phần mềm trực quan Sử dụng mơ hình UML đồ họa để trình bày quan điểm tĩnh động phần mềm Xác minh chất lượng phần mềm Đảm bảo tiêu chuẩn chất lượng tổ chức phần mềm đáp ứng Kiểm soát thay đổi phần mềm Quản lý thay đổi phần mềm cách sử dụng hệ thống quản lý thay đổi công cụ quản lý cấu hình Những điểm Các quy trình nên bao gồm hoạt động để đối phó với thay đổi Điều liên quan đến giai đoạn tạo mẫu để tránh định yêu cầu thiết kế Các quy trình cấu trúc để phát triển lặp lại phân phối để thay đổi thực mà khơng làm gián đoạn hệ thống toàn thể Quy trình hợp Rational mơ hình quy trình chung đại tổ chức thành giai đoạn (khởi đầu, xây dựng, xây dựng chuyển đổi) tách hoạt động (các yêu cầu, phân tích thiết kế, vv) từ giai đoạn ... triển phần mềm diễn bạn thay đổi hệ thống phần mềm để đáp ứng yêu cầu Phần mềm phải phát triển để hữu ích 29 Phần Chương Các quy trình phần mềm Đối phó với thay đổi Thay đổi tránh khỏi tất dự án phần. .. thống (xem Chương 25 ) Quy trình cơng việc hỗ trợ quản lý việc phát triển hệ thống (xem Chương 22 23 ) Luồng công việc liên quan đến việc tạo công cụ phần mềm phù hợp cho đội phát triển phần mềm Thực... nghiệm giai đoạn 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 thay đổi Khi yêu cầu thay đổi thông qua thay đổi tình kinh doanh, phần mềm hỗ trợ doanh nghiệp

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

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

Tài liệu liên quan