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

BG Công nghệ phần mềm

326 774 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

Thông tin cơ bản

Định dạng
Số trang 326
Dung lượng 6,27 MB

Nội dung

Mục tiêu môn học: giúp sinh viên Hiểu và giải thích được quy trình phát triển phần mềm Phân tích được các yêu cầu của người sử dụng Lựa chọn một mô hình quy trình phát triển phần mềm thích hợp cho một sản phẩm cụ thể. Giải thích tầm quan trọng của các hoạt động đánh giá chất lượng phần mềm. Biết được phải tạo ra những kết quả gì trong từng giai đoạn của quy trình phát triển phần mềm. Áp dụng các mô hình thiết kế hệ thống thích hợp cho từng sản phẩm cụ thể. Sử dụng các CASE Tool để hỗ trợ quá trình phát triển phần mềm.

CÔNG NGHỆ PHẦN MỀM ThS Đinh Thị Lương dt.luong@hutech.edu.vn 12/11/15 Giới thiệu • Số tiết: 45 • Điểm tổng kết 12/11/15  Semina kỳ: 30%  Thi cuối kỳ: 70% Tài liệu tham khảo • R Pressman, "Software Engineering A Practitioner's Approach", 2001 • Ian Sommerville’s , “Software Engineering 7th Ed.”, 2005 • Các giáo trình, giảng môn Công nghệ Phần mềm Khoa Công nghệ Thông tin trường Đại học giới 12/11/15 Tài liệu tham khảo • R Pressman, "Software Engineering A Practitioner's Approach", 2001 • Ian Sommerville’s , “Software Engineering 7th Ed.”, 2005 • Các giáo trình, giảng môn Công nghệ Phần mềm Khoa Công nghệ Thông tin trường Đại học giới 12/11/15 Các vấn đề liên quan • Điều kiện tiên quyết:  Có kiến thức ngôn ngữ lập trình lập trình ứng dụng  Có khả áp dụng cấu trúc liệu giải thuật  Có hiểu biết kiến trúc máy tính, mạng máy tính Các vấn đề liên quan (tt1) • Mục tiêu môn học: giúp sinh viên        12/11/15 Hiểu giải thích quy trình phát triển phần mềm Phân tích yêu cầu người sử dụng Lựa chọn mô hình quy trình phát triển phần mềm thích hợp cho sản phẩm cụ thể Giải thích tầm quan trọng hoạt động đánh giá chất lượng phần mềm Biết phải tạo kết giai đoạn quy trình phát triển phần mềm Áp dụng mô hình thiết kế hệ thống thích hợp cho sản phẩm cụ thể Sử dụng CASE Tool để hỗ trợ trình phát triển phần mềm Nội dung chương trình • Chương Tổng quan công nghệ phần mềm   Giới thiệu số khái niệm Thế phần mềm tốt? −   12/11/15 Thách thức công nghệ phần mềm? Vấn đề tính chuyên nghiệp quy tắc Bài tập Nội dung chương trình (tt1) • Chương Quy trình xây dựng phần mềm    12/11/15 Một số mô hình phát triển phần mềm Các hoạt động quy trình phần mềm Bài tập Nội dung chương trình (tt2) • Chương Yêu cầu hệ thống 12/11/15  Yêu cầu hệ thống  Yêu cầu người sử dụng  Tài liệu đặc tả yêu cầu  Bài tập Nội dung chương trình (tt3) • Chương Quy trình xác định yêu cầu 12/11/15  Phân tích khả thi  Phát phân tích yêu cầu  Đánh giá yêu cầu  Lập kế hoạch quản lý yêu cầu  Bài tập 10 Hệ thống chuẩn (tt2) Maturity Levels (1 - 5) Process Area Required Specific for each process area Process Area Specific Goals Process Area n Generic Goals Common Commitment to Perform Specific Practices Required Required Sub practices, typical work products, discipline amplifications, generic practice elaborations, goal and practice titles, goal and practice notes, and references 12/11/15 Ability to Perform Required Common across all process areas Features Directing Implementation Verifying Implementation Generic Practices Sub practices, typical work products, discipline amplifications, generic practice elaborations, goal and practice titles, goal and practice notes, and references 312 Hệ thống chuẩn (tt3) 12/11/15 313 Hệ thống chuẩn (tt4) 12/11/15 314 Một số tập Bài • Cho Chương trình Phát trực tuyến sau:  Phần cho người dùng gồm công việc: − Giới thiệu danh mục nhóm đài, kênh, tiết mục phát thể theo phân loại kênh, đài − Tìm kiếm tiết mục theo tên, theo thời gian phát sóng − Đăng ký hủy đăng ký làm "Bạn nghe đài" hệ thống thông qua việc nhập thông tin cá nhân (gồm họ tên, email) vào hệ thống  Phần cho người quản trị gồm công việc: − Quản lý thông tin (liệt kê, thêm, xoá, sửa, tìm kiếm) đài − Quản lý thông tin (liệt kê, thêm, xoá, sửa, tìm kiếm) kênh − Quản lý thông tin (liệt kê, thêm, xoá, sửa, tìm kiếm) tiết mục phát − Quản lý thông tin (liệt kê, xoá, tìm kiếm) bạn nghe đài − Thực thi việc bảo mật hệ thống 12/11/15 316 Bài (tt1) • Yêu cầu:  Câu 1: − Hãy xác định tên Actor có hệ thống (0.5đ) − Hãy xác định tên Use Case có hệ thống (0.75đ) − Vẽ Use Case diagram (0.75đ)  Câu 2: − Hãy xác định nội thực thể (ILF), ngoại thực thể (EIF) liên quan đến hệ thống (0.75đ) − Hãy xác định số lượng thuộc tính (DET) nhóm thuộc tính (RET) nội thực thể hay ngoại thực thể nêu (0.75đ) − Hãy xác định ngoại-nhập (EI) liên quan đến hệ thống (0.75đ) − Hãy xác định ngoại-xuất (EO) liên quan đến hệ thống (0.75đ)  Câu 3: − Hãy đề xuất hình tương ứng với tác vụ Use Case “Quản lý thông tin Bạn xem đài” nêu (1đ) 12/11/15 317 Bài • Cho Hệ thống Quảng cáo trực tuyến sau:  Phần cho người dùng gồm công việc: − Giới thiệu tiết mục quảng cáo, thể theo thể loại, chuyên mục quảng cáo − Tìm kiếm tiết mục quảng cáo theo tên tiết mục, theo thể loại, theo chuyên mục − Đăng ký hủy đăng ký làm "Khách quen" hệ thống thông qua việc nhập thông tin cá nhân (gồm họ tên, email) vào hệ thống  Phần cho người quản trị gồm công việc: − Quản lý thông tin (liệt kê, thêm, xoá, sửa, tìm kiếm) chuyên mục quảng cáo, thể loại quảng cáo tiết mục quảng cáo − Gửi tự động email báo tin cho khách quen chương trình quảng cáo ngày thể loại, chuyên mục quảng cáo − Quản lý thông tin (liệt kê, xoá, tìm kiếm) khách quen − Thực thi việc bảo mật hệ thống 12/11/15 318 Bài (tt1) • Yêu cầu  Câu 1: − Hãy xác định tên Actor có hệ thống (0.5đ) − Hãy xác định tên Use Case có hệ thống (0.75đ) − Vẽ Use Case diagram (0.75đ)  Câu 2: − Hãy xác định nội thực thể (ILF), ngoại thực thể (EIF) liên quan đến hệ thống (0.75đ) − Hãy xác định số lượng thuộc tính (DET) nhóm thuộc tính (RET) nội thực thể hay ngoại thực thể nêu (0.75đ) − Hãy xác định ngoại-nhập (EI) liên quan đến hệ thống (0.75đ) − Hãy xác định ngoại-xuất (EO) liên quan đến hệ thống (0.75đ)  Câu 3: − Hãy đề xuất hình tương ứng với tác vụ Use Case “Quản lý thông tin khách quen” nêu (1đ) 12/11/15 319 Bài • Cho web site NewOnlineHospital hỗ trợ việc tham khảo thông tin y khoa trực tuyến qua mạng, gồm:  Phần cho user: − Giới thiệu danh mục nhóm bệnh nội khoa, ngoại khoa, tâm thần, răng/hàm/mặt, tai/mũi/họng, bệnh (bao gồm triệu chứng, bệnh lý, ) thường gặp nhóm (có thể kèm theo hình ảnh minh hoạ) - thể theo phân loại nhóm bệnh, bệnh lý − Cho phép truy tìm nhóm bệnh theo tên, tìm bệnh theo tên-theo triệu chứng hay cho tìm tất database (nếu trường hợp số lượng nhiều cần chia thành nhiều nhóm kết quả) − Cho phép đăng ký (hay hủy đăng ký) làm "Thành viên" hệ thống thông qua việc nhập địa thông tin cá nhân (gồm user name, password, họ tên, địa chỉ, email…) vào hệ thống để thành viên download tài liệu y khoa đăng ký có thông tin nhóm bệnh, bệnh lý hệ thống tự động gửi email báo tin 12/11/15 320 Bài (tt1)  Phần cho admin: − Cho phép cập nhật, hiệu chỉnh thông tin nhóm bệnh, bệnh, , cần cho upload hình ảnh liên quan Mỗi nhập xong thông tin nhóm bệnh, bệnh hệ thống tự động gửi email tới tất "Thành viên" để thông báo thông tin − Cho phép cập nhật, hiệu chỉnh nhóm quốc gia, nhóm thông tin nhóm bệnh, bệnh… − Thực thi việc bảo mật hệ thống − Cho phép upload tài liệu y khoa liên quan − Tại trang chủ hệ thống (cả phần user/admin) thực phần quảng cáo 12/11/15 321 Bài (tt2) • Yêu cầu:  B1 (1đ) Xác định Actor, UseCase vẽ UseCase diagram  B2 (1.5đ) − (Dành cho CNPM+HTTT): Xác định Class diagram cho toàn hệ thống − (Dành cho MMT): Xác định loại yêu cầu phi-chức (non-function) cho toàn hệ thống  12/11/15 B3 (1.5đ) Hãy vẽ lược đồ (sequence diagram) cho chức hiệu chỉnh thông tin nhóm bệnh (với flow add, update, delete, search, report) 322 Bài • Cho web site Newspaper giới thiệu báo tạp chí qua mạng, gồm:  Phần cho user: − Giới thiệu danh mục báo tạp chí (kèm theo hình ảnh minh hoạ) - thể theo phân loại sách, theo thời gian xuất − Cho phép truy tìm tạp chí theo tên, theo năm xuất hay theo mã số tạp chí hay cho tìm tất database (nếu trường hợp số lượng nhiều cần chia thành nhiều nhóm kết quả) − Cho phép đăng ký (hay hủy đăng ký) làm "Khách quen" hệ thống thông qua việc nhập địa email vào hệ thống (để có sách hệ thống tự động gửi email báo tin) − Đăng ký mua sách qua mạng (shopping card) 12/11/15 323 Bài (tt1)  Phần cho admin: − Cho phép cập nhật, hiệu chỉnh thông tin sách, cần cho upload hình ảnh giới thiệu tạp chí Mỗi nhập xong đợt tạp chí hệ thống tự động gửi email tới tất "Khách quen" để thông báo tên tạp chí − Cho phép cập nhật, hiệu chỉnh loại tạp chí, tác giả, nhà xuất − Thực thi việc bảo mật hệ thống − Cho phép upload hình ảnh tạp chí vào hệ thống − Tại trang chủ hệ thống (cả phần user/admin) thực phần quảng cáo 12/11/15 324 Bài (tt2) • Yêu cầu:  B1 (1đ) Xác định Actor, UseCase vẽ UseCases diagram  B2 (1.5đ) − (Dành cho CNPM+HTTT): Xác định Class diagram cho toàn hệ thống − (Dành cho MMT): Xác định loại yêu cầu phi-chức (non-function) cho toàn hệ thống  12/11/15 B3 (1.5đ) Hãy vẽ lược đồ (sequence diagram) cho chức hiệu chỉnh thông tin loại tạp chí (với flow add, update, delete, search, report) 325 Kết thúc Môn học [...]... câu hỏi sau:            12/11/15 Phần mềm là gì? Công nghệ phần mềm là gì? Sự khác biệt giữa công nghệ phần mềm và khoa học máy tính? Sự khác biệt giữa công nghệ phần mềm và công nghệ hệ thống? Quy trình phần mềm là gì? Mô hình quy trình phát triển phần mềm là gì? Chi phí của công nghệ phần mềm bao gồm những gì? Các phương pháp công nghệ phần mềm là gì? CASE (Computer-Aided Software Engineering)... riêng lẻ … 23 Một số khái niệm cơ bản (tt2) • Công nghệ phần mềm là gì? 12/11/15  Công nghệ phần mềm là những quy tắc công nghệ (engineering discipline) có liên quan đến tất cả các khía cạnh của quá trình sản xuất phần mềm  Các kỹ sư phần mềm nên tuân theo một phương pháp luận có hệ thống và có tổ chức trong công việc của họ Đồng thời, họ nên sử dụng các công cụ và kỹ thuật thích hợp với vấn đề cần... hoàn thiện cho công nghệ phần mềm 25 Một số khái niệm cơ bản (tt4) • Sự khác biệt giữa công nghệ phần mềm và công nghệ hệ thống?  Công nghệ hệ thống (hay còn gọi là kỹ nghệ hệ thống) liên quan tới tất cả các khía cạnh của quá trình phát triển hệ thống dựa máy tính bao gồm: phần cứng, phần mềm, và công nghệ xử lý − Công nghệ phần mềm chỉ là một phần của quy trình này, nó có liên quan tới việc phát triển... gia • Khái niệm về công nghệ phần mềm được đưa ra lần đầu tiên vào năm 1968 tại hội nghị thảo luận về khủng hoảng phần mềm Công nghệ phần mềm đề cập tới các lý thuyết, phương thức và công cụ để xây dựng phần mềm chuyên nghiệp, mang lại lợi nhuận cao 12/11/15 19 Giới thiệu (tt1) • Trong chương đầu tiên, chúng ta sẽ tìm hiểu về một số khái niệm cơ bản có liên quan tới phần mềm và công nghệ phần mềm Để... (tt3) • Sự khác biệt giữa công nghệ phần mềm và khoa học máy tính? 12/11/15  Khoa học máy tính đề cấp tới lý thuyết và những vấn đề cơ bản; còn công nghệ phần mềm đề cập tới các hoạt động xây dựng và đưa ra một phần mềm hữu ích  Khi sự phát triển của phần mềm trở lên mạnh mẽ thì các lý thuyết của khoa học máy tính vẫn không đủ để đóng vai trò là nền tảng hoàn thiện cho công nghệ phần mềm 25 Một số... rủi ro  Bài tập 16 Nội dung chương trình (tt11) • Chương 11 Chuẩn và các quy trình hoạt động trong công nghiệp phần mềm  Các quy trình hoạt động  Các vai trò trong hoạt động sản xuất phần mềm − Khái niệm vai trò − Các vai trò  12/11/15 Hệ thống chuẩn trong công nghiệp phần mềm 17 Chương 1 Tổng quan về công nghệ phần mềm Giới thiệu • Ngày nay, tất cả các nước phát triển đều phụ thuộc chủ yếu vào các... loại phần mềm 12/11/15 33 Một số khái niệm cơ bản (tt12) • Các phương pháp công nghệ phần mềm là gì? 12/11/15  Phương pháp công nghệ phần mềm bao gồm các mô hình hệ thống, các ký pháp, quy tắc, hướng dẫn thiết kế và quy trình để xây dựng phần mềm một cách dễ dàng, đảm bảo chất lượng cao và chi phí hiệu quả  Một số phương pháp công nghệ phần mềm đã được đề xuất như: Phân tích hướng cấu trúc tập trung... giữa chúng 34 CASE • CASE=(Computer-Aided Software Engineering) • Các phương pháp công nghệ phần mềm là gì?  Các hệ thống CASE thường được sử dụng để hỗ trợ các hoạt động trong quy trình xây dựng phần mềm Có hai loại CASE: − Upper-CASE: công cụ để hỗ trợ các hoạt động đầu tiên như đặc tả yêu cầu và thiết kế − Lower-CASE: công cụ để hỗ trợ các hoạt động sau như lập trình, gỡ lỗi và kiểm thử 12/11/15 35... chi phí trong công nghệ phần mềm (tt2)  Việc phân bổ chi phí cũng phụ thuộc vào mô hình phát triển hệ thống được sử dụng  Sau đây là bảng so sánh chi phí của 3 mô hình phổ biến nhất, thường được sử dụng: − Mô hình thác nước: ∗ Chi phí của các pha đặc tả, thiết kế, cài đặt, tích hợp và kiểm thử được xác định một cách riêng rẽ 12/11/15 31 Một số khái niệm cơ bản (tt10) • Các chi phí trong công nghệ phần... cầu hệ thống khác nhau ở từng bước lặp ∗ Sau khi đã thực hiện hết các bước lặp, phải có chi phí kiểm thử toàn bộ hệ thống 12/11/15 32 Một số khái niệm cơ bản (tt11) • Các chi phí trong công nghệ phần mềm (tt4) − Mô hình công nghệ phần mềm hướng thành phần: ∗ Chi phí phụ thuộc nhiều vào việc tích hợp và kiểm thử hệ thống − Ngoài chi phí xây dựng, chúng ta còn phải để một phần lớn chi phí phục vụ cho việc ... tìm hiểu công nghệ phần mềm, thường đặt số câu hỏi sau:            12/11/15 Phần mềm gì? Công nghệ phần mềm gì? Sự khác biệt công nghệ phần mềm khoa học máy tính? Sự khác biệt công nghệ... biệt công nghệ phần mềm công nghệ hệ thống?  Công nghệ hệ thống (hay gọi kỹ nghệ hệ thống) liên quan tới tất khía cạnh trình phát triển hệ thống dựa máy tính bao gồm: phần cứng, phần mềm, công. .. công nghiệp phần mềm  Các quy trình hoạt động  Các vai trò hoạt động sản xuất phần mềm − Khái niệm vai trò − Các vai trò  12/11/15 Hệ thống chuẩn công nghiệp phần mềm 17 Chương Tổng quan công

Ngày đăng: 09/12/2015, 16:22

TỪ KHÓA LIÊN QUAN

w