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

Kỹ thuật phần mềm ứng dụng - Chương 1: Tổng quan môn học ppt

37 1,4K 8

Đ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 37
Dung lượng 570,5 KB

Nội dung

Viện Điện tử - Viễn thông Bộ Môn Điện tử - Kỹ thuật máy tính Kỹ thuật phần mềm ứng dụng Chương 1: Tổng quan môn học Các nội dung • • • • Giới thiệu chung Các khái niệm Các loại phần mềm Giới thiệu mơ hình tiến trình phổ biến Giới thiệu chung • Kỹ thuật phần mềm (hay kỹ nghệ phần mềm – software engineering) chuyên ngành kỹ thuật (engineering discipline) với trọng tâm nhằm phát triển hệ thống phần mềm chất lượng cao cách hiệu • Phần mềm có đặc điểm trừu tượng khơng chạm đến (intangible) Điều làm cho phần mềm dễ trở nên phức tạp khó hiểu Giới thiệu chung • Khái niệm “Software Engineering” xuất lần đầu vào năm 1968 họp bàn vấn đề gọi “Cuộc khủng hoảng phần mềm” (Software crisis) • Chuyên ngành SE đời hồn cảnh đó, với sứ mạng tìm biện pháp giúp ngành công nghiệp phần mềm tránh nguy khủng hoảng Và thực sự, hồn thành sứ mạng này, gọi “cuộc khủng hoảng phần mềm” không thực xảy Các khái niệm • Phần mềm (sản phẩm phần mềm), bao gồm: – Chương trình (Program): phần thi hành máy tính – Dữ liệu (Data): gồm cấu trúc liệu, sở liệu lưu giữ liệu vào chương trình – Tài liệu (Documentation): tài liệu hệ thống, tài liệu người dùng Các khái niệm • Kỹ thuật phần mềm (Software Engineering): Là chuyên ngành kỹ thuật mà quan tâm đến tất khía cạnh việc sản xuất phần mềm, với mục tiên sản xuất sản phẩm phần mềm đa dạng, chất lượng cao, cách hiệu Các tầng SE Tools Methods Process Quality Focus Các tầng SE • Đảm bảo chất lượng (quality focus) sản phẩm hay dịch vụ nhiệm vụ sống cịn cơng ty hay tổ chức Do đó, tảng cơng nghệ kỹ thuật phải lấy việc đảm bảo chất lượng mục tiêu hướng tới, kỹ thuật phần mềm nằm ngồi mục tiêu • Tầng Tiến trình (process) có nhiệm vụ định nghĩa khung giai đoạn hoạt động cần thực hiện, kết kèm theo chúng Tầng đóng vai trị tảng để kết nối phương pháp, công cụ bước thực cụ thể, để tạo phần mềm có chất lượng thời hạn • Các phương pháp (methods) kỹ thuật phần mềm cung cấp chi tiết kỹ thuật làm để xây dựng phần mềm • Các công cụ (tools) cung cấp phương tiện hỗ trợ tự động bán tự động cho giai đoạn hay phương pháp Các hệ thống phần mềm hỗ trợ công nghệ phần mềm gọi CASE (computer-aided software engineering) Tiến trình phần mềm • Là dãy giai đoạn hoạt động đó, kết kèm theo Kết cuối phần mềm cần phải xây dựng, đáp ứng yêu cầu người dùng, hoàn thành theo kế hoạch thời gian ngân sách • Có ba giai đoạn tiến trình phần mềm: – Giai đoạn định nghĩa (definition phase) – Giai đoạn phát triển (development phase) – Giai đoạn hỗ trợ (support phase) Tiến trình phần mềm • Giai đoạn định nghĩa: tập trung vào làm rõ Cái gì, bao gồm: – Thơng tin cần xử lý, bao gồm thông tin đầu vào đầu – Các chức cần thực – Hành vi hệ thống mong đợi – Các tiêu chuẩn hợp lệ để đánh giá đắn thành công hệ thống 10 Mô hình mẫu 23 Mơ hình mẫu Gồm giai đoạn: – Thu thập yêu cầu (requirements gathering): khách hàng nhà phát triển gặp để xác định mục tiêu tổng thể phần mềm Sau họ định phần rõ, phần cần phải định nghĩa thêm – Thiết kế nhanh (quick design): thiết kế tập trung vào phần mà khách hàng nhìn thấy (giao diện, liệu vào, ra) Sau đó, từ thiết kế này, mẫu xây dựng – Kiểm tra đánh giá mẫu: Bản mẫu dùng phép người dùng đánh giá, nhằm làm rõ yêu cầu họ Đồng thời, thông qua mẫu, người phát triển hệ thống hình dung cụ thể yêu cầu khách hàng, khả cài đặt hiệu hoạt động hệ thống 24 Mô hình mẫu • Ưu điểm: – Cho phép người dùng xác định yêu cầu rõ ràng cụ thể hơn, đồng thời nhà phát triển nắm xác u cầu – Cả người dùng nhà phát triển thường thích mơ hình này, người dùng ln cảm nhận hệ thống thực nào, nhà phát triển ln có để xây dựng dần hồn thiện • Nhược điểm: – Để có mẫu nhanh, việc thiết kế làm nhanh, nên thường làm không cẩn thận Điều dễ dẫn đến thiết kế có tính chắp vá, khơng có nhìn tổng thể dài hạn – Việc làm mẫu nhanh thường kéo theo việc lựa chọn công cụ cài đặt vội vàng, không cẩn thận, (như ngơn ngữ lập trình, hệ quản trị sở liệu,v.v) Điều ảnh hưởng đến giai đoạn phát triển sau quy mô yêu cầu hệ thống ngày lớn lên 25 Mơ hình RAD • Là mơ hình tiến trình phát triển phần mềm tăng trưởng, nhấn mạnh vào chu trình phát triển phần mềm có thời gian ngắn Mơ hình gồm giai đoạn: – Mơ hình hóa nghiệp vụ (Business modeling): mơ hình hóa luồng thơng tin nghiệp vụ chức nghiệp vụ – Mơ hình hóa liệu (Data modeling): từ thơng tin nghiệp vụ, thực thể liệu, thuộc tính chúng, liên kết thực thể xác định mơ hình hóa – Mơ hình hóa xử lý (Process modeling): Mơ tả chức xử lý đối tượng liệu xác định giai đoạn – Sản sinh ứng dụng (Application generation): RAD sử dụng kỹ thuật công nghệ phần mềm hệ thứ 4, cho phép dễ dàng sản sinh mã chương trình từ đặc tả thiết kế trừu tượng Các kỹ thuật cho phép tái sử dụng thành phần chương trình có sẵn (kết hợp mơ hình Component-based development) – Kiểm thử bàn giao (Testing and turnover): phần ứng dụng xây dựng kiểm tra bàn giao cho bên tích hợp hệ thống 26 Mơ hình RAD 27 Mơ hình RAD • Ưu điểm: – Tận dụng công nghệ phát triển hệ thống, cho phép hoàn thành hệ thống thời gian ngắn đáng kể – Khuyến khích việc tái sử dụng thành phần chương trình • Nhược điểm: – Không phù hợp với phần mềm mà phân chia modul rõ ràng, – Địi hỏi tài nguyên chi phí phát triển cao số lượng nhân lực nhiều, công cụ CASE hệ đắt tiền 28 Mơ hình tăng trưởng • Là kết hợp mơ hình tuyến tính triết lý lặp lại mơ hình mẫu • Phần mềm chia thành phần tăng trưởng (increment), phần sản phẩm hoàn chỉnh (đã chạy bàn giao cho người dùng) Đồng thời phần tăng trưởng sau bổ sung thêm tính cịn thiếu phần trước 29 Mơ hình tăng trưởng 30 Mơ hình tăng trưởng • Ưu điểm – Kết hợp ưu điểm mô hình tuyến tính làm mẫu – Rất phù hợp số lượng nhân viên hạn chế, người dùng có địi hỏi phải sớm có hệ thống thử nghiệm • Nhược điểm – Việc gấp gáp đưa thành phần tăng trưởng gây manh mún phân tích thiết kế – Khó khăn việc đảm bảo tính tương thích (compatibility) thành phần tăng trưởng 31 Mơ hình xốy ốc • Cũng mơ hình tiến hóa kết hợp đặc tính lặp lại mơ hình mẫu tính hệ thống mơ hình thác nước cổ điển • Mơ hình cho phép tạo dãy phiên tăng trưởng (incremental release) Tuy nhiên khác với mơ hình tăng trưởng, phiên mơ hình xốy ốc thường mơ hình giấy mẫu (prototype) Đến phiên sau chạy ngày hồn chỉnh 32 Mơ hình xốy ốc 33 Mơ hình xốy ốc • Mơ hình phân chia thành giai đoạn, gọi vùng nhiệm vụ (task regions) • Số lượng vùng nhiệm vụ thay đổi, thường có từ vùng • Mỗi vùng lại bao gồm tập nhiệm vụ (set of tasks), số lượng thay đổi tùy theo tính chất dự án 34 Mơ hình xốy ốc • Ưu điểm: – Linh hoạt, dễ thích ứng với loại phần mềm nhu cầu sử dụng khác nhau, phần mềm quy mơ lớn – Có đầy đủ bước tiến trình phát triển, việc trọng phân tích tính rủi ro (risk) phần mềm mặt kỹ thuật quản lý • Hạn chế: – Phức tạp, cần nhiều thời gian để hiểu vận dụng cách hiệu – Khó khăn việc quản lý nhiều chu trình phát triển 35 Tóm tắt • Các khái niệm • Các loại phần mềm • Các mơ hình tiến trình phổ biến 36 Thank you! 37 ... Các khái niệm Các loại phần mềm Giới thiệu mơ hình tiến trình phổ biến Giới thiệu chung • Kỹ thuật phần mềm (hay kỹ nghệ phần mềm – software engineering) chuyên ngành kỹ thuật (engineering discipline)... lượng phần mềm • QL cấu hình phần mềm 15 Mơ hình tiến trình phần mềm • Mơ hình tiến trình (process model) Là chiến lược phát triển phần mềm , bao gồm cách thức kết hợp, sử dụng tiến trình phần mềm, ... sinh ứng dụng (Application generation): RAD sử dụng kỹ thuật công nghệ phần mềm hệ thứ 4, cho phép dễ dàng sản sinh mã chương trình từ đặc tả thiết kế trừu tượng Các kỹ thuật cho phép tái sử dụng

Ngày đăng: 04/04/2014, 04:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w