Tải bản đầy đủ (.pdf) (9 trang)

PHÂN TÍCH VÀ THIẾT KẾ PHẦN MỀM

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (611.8 KB, 9 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>TRƯỜNG ĐH NGOẠI NGỮ - </b>

<b>TIN HỌC TP.HCM <sup>CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM </sup>Khoa CÔNG NGHỆ THÔNG TIN Độc Lập - Tự Do - Hạnh Phúc </b>

<b>CHƯƠNG TRÌNH GIÁO DỤC ĐẠI HỌC </b>

<b>Trình độ đào tạo: Đại học Ngành: Cơng nghệ thông tin Mã số: 7480201 ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN </b>

<i><b>1. Thông tin chung về HP </b></i>

<b>1.1 Mã học phần: 1250084 1.2 Tên học phần: Phân tích và thiết kế phần mềm </b>

<b>1.3 Ký hiệu học phần: 1250084 1.4 Tên tiếng Anh: Software Analysis and Design </b>

<b>1.8 Điều kiện tham gia học phần: </b>

<b>2. Mục tiêu HP 2.1. Mục tiêu chung </b>

Thiết kế và phân tích phần mềm là học phần được xây dựng nhằm cung cấp những kiến thức chính yếu cho các giai đoạn thiết kế và phân tích phần mềm. Thơng qua học phần, sinh viên sẽ có cơ hội ơn lại các khái niệm liên quan đến phần mềm, các qui trình phát triển phần mềm, các kĩ thuật cơ bản trong lấy yêu cầu và phương pháp lập trình hướng đối tượng. Quan trọng hơn, học phần sẽ chú trọng đến kĩ thuật phân tích và thiết kế phần mềm theo hướng đối tượng thông qua sử dụng các lược đồ UML. Môn học sẽ giới thiệu các kiến trúc phần mềm thông dụng cũng như giới thiệu một số phương pháp để đảm bảo tính linh hoạt cũng như khả năng mở rộng phần mềm trong tương lai.

<b>2.2. Mục tiêu HP cụ thể 2.2.1. Về kiến thức: </b>

- Nắm bắt được phương pháp phân tích và thiết kế phần mềm chính trong cơng nghiệp. - Nắm rõ các bước chính trong q trình phân tích và thiết kế phần mềm.

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>3. Chuẩn đầu ra của HP “Phân tích và thiết kế phần mềm” </b>

<b>Bảng 3.1. Chuẩn đầu ra (CĐR) của HP </b>

Sau khi học xong học phần, SV có khả năng:

CLO1 Phương pháp phân tích thiết kế dựa trên các lược đồ UML CLO2 Thu thập thơng tin và Phân tích yêu cầu của phần mềm. CLO3 Thiết kế hệ thống, module và tính năng của phần mềm. CLO4 Có khả năng giải quyết một số vấn đề thực tế.

CLO5 Có khả năng làm việc theo nhóm, lập kế hoạch và viết báo cáo kỹ thuật. CLO6 Có năng lực giao tiếp và trình bày giải pháp kỹ thuật.

<b>4. Mối liên hệ giữa CĐR HP (CLO) với CĐR CTĐT (PLO) </b>

Mức độ đóng góp của CLO vào PLO được xác định cụ thể:

<i>1 – CLO có đóng góp vừa vào PLO 2 – CLO có đóng góp nhiều vào PLO </i>

<i> Chú thích: 2 - Cao, 1 - Thấp - phụ thuộc vào mức hỗ trợ của CLO đối với PLO ở mức bắt đầu (1) hoặc mức nâng cao hơn mức bắt đầu, có nhiều cơ hội được thực hành, thí nghiệm, thực tế,…(mức 2) </i>

<b>Bảng 4.1.Mối liên hệ của CĐR HP (CLO) đến CĐR của CTĐT (PLO) </b>

<i><b>a. Phương pháp, hình thức kiểm tra - đánh giá của HP </b></i>

<b>Bảng 5.1. Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập của SV ở HP </b>

<b><small>Th/phần đánh giá </small></b>

<b><small>Trọng số </small></b>

<b><small>Bài đánh giá Trọng số con </small></b>

<b><small>Rubric Lquan đến CĐR nào ở bảng 3.1 </small></b>

<i><b><small>HD PP đánh giá </small></b></i>

<small>A1. Kiểm tra thường xuyên (KTTX) </small>

<small>20% </small>

<small>A1.1. Từng buổi học </small>

<small>10% </small>

<small>R1 CLO 1 - Điểm danh </small>

<small>- Đánh giá hoạt động trên lớp/kết quả bài thực hành </small>

<small>A1.2. Tuần 7: Làm việc nhóm trên case study 2 </small>

<small>30% </small>

<small>R3 CLO 1 CLO 2 CLO 3 CLO 4 CLO 5 </small>

<small>- Đánh giá khả năng làm việc nhóm </small>

<small>- Đánh giá kết quả phân tích thiết kế và thiết kế </small>

<small>A1.3. Tuần 10: Làm việc nhóm trên case study 3 </small>

<small>CLO 2 CLO 3 CLO 4 CLO 5 A1.4. Tuần 14: Làm </small>

<small>việc nhóm trên case study 2 </small>

<small>CLO 2 CLO 3 CLO 4 CLO 5 </small>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<small>A2. Đánh giá phần thực hành </small>

<small>30% </small>

<small>Sinh viên hoàn thành bài thực hành trong buổi thực hành </small>

<small>R3 CLO 1 CLO 2 CLO 3 CLO 4 </small>

<small>- GV giao bài thực hành vào đầu mỗi buổi thực hành </small>

<small>- GV chấm kết quả vào cuối buổi thực hành </small>

<small>A3. Đánh </small>

<small>giá cuối kỳ </small> <sup>50% </sup> <sup>Báo cáo cuối kỳ. </sup>

<small>R5 R6 </small>

<small>CLO 2 CLO 3 CLO 4 CLO 5 CLO 6 </small>

-

<small>GV giao đề cho nhóm từ đầu học kỳ. Việc đánh giá diễn ra vào cuối học kỳ </small>

<small>- Trình bày kết quả làm việc của nhóm - Chạy chương trình demo </small>

<small>- Trả lời câu hỏi </small>

<i><b>b. Chính sách đối với HP </b></i>

<b>6. Kế hoạch và nội dung giảng dạy HP </b>

<b>Bảng 6.1. Kế hoạch và nội dung giảng dạy của HP theo tuần </b>

<b>Tuần/ </b>

<b>CĐR của bài học (chương)/ </b>

<b>chủ đề </b>

<b>Lquan đến CĐR nào ở bảng 3.1 </b>

<b>PP giảng dạy đạt </b>

<b>CĐR </b>

<b>Hoạt động học của </b>

<b>SV(*) </b>

<b>Tên bài đánh </b>

- Phần mềm, tính chất phần mềm

- Cơng nghệ phần mềm - Các vấn đề liên quan đến đạo đức khi thiết kế phần mềm

1.2 Qui trình xây dựng phần mềm

- Mơ hình waterfall, phát triển gia tăng, mơ hình xoắn ốc ... - Những hành vi chính trong quá trình phát triển phần mềm

- Một số khái niệm quan trọng về phân tích và thiết kế phần mềm

3 LT 1.1. Nắm được các khái niệm cơ bản trong PTTKPM1.2. Mối liên hệ với những kiến thức đã học trước đó và kinh nghiệm đã có

CLO1 1.1. Thuyết giảng lý thuyết PTTKPM 1.2. Đặt câu hỏi gợi mở để sinh viên trả lời 1.3. Liên hệ với những kiến thức đã học trước đó và kinh nghiệm đã có

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 1 cuốn [1] - Ghi chú, tham gia các hoạt động trên lớp

2 Giới thiệu về UML - Use-case Diagram 2.1 Giới thiệu về UML - Giới thiệu 9 loại diagrams cơ bản

- Ví dụ và trường hợp sử dụng

2.2 Mơ hình hóa u cầu

- Lược đồ UseCase, các thành phần và các mối liên hệ

3 LT 2.1. Hiểu được các khái niệm nền tảng về UML

2.2. Biết cách nhận biết các use case của một phần mềm hay hệ thống thông tin

CLO1

CLO1 CLO2

2.1. Thuyết giảng về UML 2.2. Đặt câu hỏi gợi mở để sinh viên trả lời 2.3. Cách nhận biết các use case của một phần mềm hay hệ thống thông tin

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 2 & 3 cuốn [1] - Ghi chú, tham gia các hoạt động trên lớp

3 - Lược đồ UseCase, các thành phần và các mối liên hệ (tt.)

- Thực hành phân tích Use-case Diagram trên

3 LT 3.1. Nắm được các thành phần chính trong một phần mềm 3.2. Tổ chức

CLO1 3.1. Thuyết giảng về các thành phần chính trong một

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

Case Study 1 – Máy rút tiền tự động

được mối quan hệ giữa các use case

3.3. Có khả năng vận dụng kiến thức để vẽ sơ đồ use case cho một hệ thống thực tế

CLO2

3.2. Tổ chức mối quan hệ giữa các use case

3.3. Vận dụng kiến thức để vẽ sơ đồ use case cho một hệ thống thực tế

chương 3 cuốn [1] - Ghi chú, tham gia các hoạt động trên lớp

được các khái niệm và cách thiết kế sơ đồ lớp

4.2. Có khả năng vận dụng kiến thức để thiết kế sơ đồ lớp cho 1 vấn đề cụ thể được nêu ra

CLO1

CLO2, CLO3

4.1. Thuyết giảng về các khái niệm và cách thiết kế sơ đồ lớp 4.2. Vận dụng kiến thức để thiết kế sơ đồ lớp cho 1 vấn đề cụ thể được nêu ra

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 4 cuốn [1] - Ghi chú, tham gia các hoạt động trên lớp 5 <b>Sequence Diagram </b> 3 LT 5.1. Nắm bắt

được các khái niệm và cách thiết kế sơ đồ tuần tự 5.2. Có khả năng vận dụng kiến thức để thiết kế sơ đồ tuần tự cho 1 số vấn đề cụ thể

CLO1

CLO2, CLO3

5.1. Thuyết giảng về các khái niệm và cách thiết kế sơ đồ tuần tự 5.2. Vận dụng kiến thức để thiết kế sơ đồ tuần tự cho 1 số vấn đề cụ thể

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 6 cuốn [1] - Ghi chú, tham gia các hoạt động trên lớp 6 Activity Diagram 3 LT 6.1. Nắm bắt

được các khái niệm và cách thiết kế sơ đồ hoạt động 6.2. Có khả năng vận dụng kiến thức để thiết kế sơ đồ hoạt động cho 1 số vấn đề cụ thể

CLO1

CLO2, CLO3

6.1. Thuyết giảng về các khái niệm và cách thiết kế sơ đồ hoạt động 6.2. Vận dụng kiến thức để thiết kế sơ đồ tuần tự cho 1 số vấn đề cụ thể

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 7 cuốn [1] - Ghi chú, tham gia các hoạt động trên lớp 7 Case study 2 – Hệ thống

quản lý thư viện <sup>3 LT </sup> <sup>7.1. Có khả </sup>năng làm việc nhóm trên 1 hệ thống thực tế 7.2. Có khả năng vận dụng kiến thức để phân tích và thiết kế cho 1 số vấn đề cụ thể

CLO2, CLO3, CLO4, CLO5

7.1. Thảo luận và làm việc nhóm trên 1 hệ thống thực tế 7.2. Tập trung thiết kế các sơ đồ phân tích

- Vận dụng sáng tạo phương pháp đã học vào vấn đề thực tế - Giải quyết phần việc đã được phân cơng trong nhóm - Thảo luận và đóng góp ý kiến vào bảng phân tích thiết kế

A1.2.

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

chung 8 State Machine Diagram 3 LT 8.1. Nắm bắt

được các khái niệm và cách thiết kế sơ đồ Máy trạng thái 8.2. Vận dụng kiến thức để thiết kế sơ đồ máy trạng thái cho 1 số vấn đề cụ thể

8.3. Cải thiện kỹ năng phân tích và thiết kế phần mềm

CLO1

CLO2, CLO3

8.1. Thuyết giảng về các khái niệm và cách thiết kế sơ đồ Máy trạng thái 8.2. Vận dụng kiến thức để thiết kế sơ đồ máy trạng thái cho 1 số vấn đề cụ thể 8.3. Nhận xét và đánh giá về kết quả làm việc nhóm trên case study 2

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 5 cuốn [1] - Ghi chú, tham gia các hoạt động trên lớp

được các khái niệm trong thiết kế cơ sở dữ liệu 9.4. Có khả năng phân tích và thiết kế cơ sở dữ liệu cho phần mềm

CLO1

CLO2, CLO3

9.1. Ôn lại về sơ đồ quan hệ thực thể trong cơ sở dữ liệu 9.2. Ôn lại về các dạng chuẩn 9.3. Ôn lại phương pháp phân tích 9.4. Vai trị của thiết kế cơ sở dữ liệu trong phân tích thiết kế phần mềm

- Ơn lại kiến thức đã học trong mơn học Cơ sở dữ liệu - Ghi chú, tham gia các hoạt động trên lớp

10 Case Study 3 – Hệ thống quản lý thực tập của sinh viên

3 LT 10.1. Có khả năng làm việc nhóm trên 1 hệ thống thực tế 10.2. Có khả năng vận dụng kiến thức để phân tích và thiết kế cho 1 số vấn đề cụ thể

CLO2, CLO3, CLO4, CLO5

10.1. Thảo luận và làm việc nhóm trên 1 hệ thống thực tế 10.2. Tập trung vào các sơ đồ thiết kế

- Vận dụng phương pháp đã học vào vấn đề thực tế - Giải quyết phần việc đã được phân cơng trong nhóm - Thảo luận và đóng góp ý kiến vào bảng phân tích thiết kế chung

A1.3.

11 Thiết kế kiến trúc 3 LT 11.1. Nắm bắt được các khái niệm và cách thiết kế kiến trúc 11.2. Có khả năng vận dụng kiến thức để lựa chọn kiến trúc

CLO1

CLO2, CLO3

11.1. Thuyết giảng về các khái niệm và cách thiết kế kiến trúc 11.2. Vận dụng kiến thức để lựa

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 1-3 cuốn [2] - Ghi chú,

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

phần mềm phù hợp

chọn kiến trúc phần mềm phù hợp

tham gia các hoạt động trên lớp 12 Yêu cầu phần mềm cho

hệ thống lớn <sup>3 LT </sup> <sup>12.1. Nắm bắt </sup>được các khái niệm và thu thập yêu cầu phần mềm cho hệ thống lớn

CLO1 12.1. Thuyết giảng về các khái niệm và thu thập yêu cầu phần mềm cho hệ thống lớn

- Phần chuẩn bị ở nhà: Đọc trước nội dung ở chương 1-3 cuốn [2] - Ghi chú, tham gia các hoạt động trên lớp 13 Phản hồi trên các case

study và thiết kế của đồ án môn học

3 LT 13.1. Cải thiện khả năng phân tích thiết kế phần mềm cho 1 hệ thống thực tế

CLO2, CLO3, CLO4, CLO5

13.1. Nhận xét và đánh giá về kết quả làm việc nhóm trên case study 3

- Rút kinh nghiệm từ các nhận xét của giảng viên - Rút kinh nghiệm từ lỗi của các nhóm khác 14 Case study 4 – Hê thống

cho thuê xe

3 LT 14.1. Có khả năng thảo luận và làm việc nhóm trên 1 hệ thống thực tế 14.2. Có khả năng phân tích và thiết kế các tính năng chính của hệ thống

14.1. Thảo luận và làm việc nhóm trên 1 hệ thống thực tế 14.2. Phân tích và thiết kế các tính năng chính của hệ thống

- Vận dụng phương pháp đã học vào vấn đề thực tế - Giải quyết phần việc đã được phân cơng trong nhóm - Thảo luận và đóng góp ý kiến vào bảng phân tích thiết kế chung

A1.4.

kiến thức 15.2. Củng cố và nâng cao kỹ năng phân tích thiết kế

15.1. Ơn tập kiến thức 15.2. Rút tỉa bài học kinh nghiệm từ các case study

- Nộp báo cáo đồ án của môn học

Theo lịch thi

<b>- Các học phần thực hành: được tổ chức thực hiện vào tuần thứ 4 của học kỳ, có nội dung thuyết </b>

<b>giảng và chuẩn đầu ra tương quan với nội dung bài giảng lý thuyết. </b>

<i> </i>

<b>Buổi/ </b>

<b>Số tiết (TH) </b>

<b>Hoạt động của giảng viên </b>

<b>Lquan đến CĐR nào ở bảng 3.1 </b>

<b>Hoạt động học của </b>

<b>Tên bài đánh giá </b>

1 Bài 1: Phân tích và mơ hình hóa các u cầu từ một requirement cho trước

- Sử dụng UseCase Diagram - Thực hành vẽ UseCase Diagram

3 TH - Thuyết giảng - Hướng dẫn sinh

viên thực hiện

CLO 1 CLO 2 CLO 4

- Nghe giảng, ghi chú - Trả lời câu

hỏi

<small>A1.1</small>

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

- Thực hành trên máy 2 Bài 2: Phân tích và mơ hình hóa

u cầu (tt), kết hợp vẽ lược đồ hoạt động để mổ tả luồng thực thi của từng use case

- Sử dụng UseCase Diagram - Sử dụng Activity Diagram - Thực hành vẽ UseCase Diagram và Activity Diagram cho một yêu cầu cụ thể

3 TH - Thuyết giảng - Hướng dẫn sinh

viên thực hiện

CLO 1 CLO 2 CLO 4

- Nghe giảng, ghi chú - Trả lời câu

hỏi

- Thực hành trên máy

3 Bài 3: Phân tích hướng đối tượng - Xác định lớp phân tích

- Xác định các thuộc tính, tác vụ, quan hệ

Tiếp tục thực hiện dựa trên kết quả của 2 buổi thực hành 1 và 2

3 TH - Hướng dẫn sinh viên thực hiện

CLO 1 CLO 2 CLO 4

- Trả lời câu hỏi

- Thực hành trên máy

Tiếp tục thực hiện dựa trên kết quả của 2 buổi thực hành 3 - Xây dựng các lược đồ trạng thái, lược đồ tuần tự để hỗ trợ xác định các tác vụ chi tiết cho từng lớp

- Thực hành vẽ sơ đồ tuần tự

3 TH - Hướng dẫn sinh

viên thực hiện <sup>CLO 1 </sup>CLO 2 CLO 3 CLO 4

- Trả lời câu hỏi

- Thực hành trên máy

5 Bài 5: Thiết kế giao diện (Screen Design) cho phần yêu cầu đã được thực hành ở những buổi trước. Áp dụng các nguyên tắc về thiết kế đã được trình bày ở lớp - Vẽ Mockup Screen

3 TH - Hướng dẫn sinh viên thực hiện - Vẽ minh họa

CLO 1 CLO 2 CLO 3 CLO 4

- Trả lời câu hỏi

- Thực hành trên máy

6 Bài 6: Chọn lựa và hiện thực kiến trúc phù hợp với yêu cầu đề bài - Hiện thực các lớp xử lý, lớp giao diện và lớp thao tác dữ liệu - Ngôn ngữ sử dụng là C#

3 TH - Hướng dẫn sinh

viên thực hiện <sup>CLO 1 </sup>CLO 2 CLO 3 CLO 4

- Trả lời câu hỏi

- Thực hành trên máy

7 Bài 7:

- Hiện thực các lớp xử lý, lớp giao diện và lớp thao tác dữ liệu - Ngôn ngữ sử dụng là C# (tiếp tục hoàn thiện nội dung trong buổi 6)

3 TH - Hướng dẫn sinh viên thực hiện

CLO 1 CLO 2 CLO 3 CLO 4

- Trả lời câu hỏi

- Thực hành trên máy

8 Bài 8: Thiết kế CSDL từ q trình phân tích các lược đồ lớp tương ứng

3 TH - Hướng dẫn sinh

viên thực hiện <sup>CLO 1 </sup>CLO 2 CLO 3

- Trả lời câu hỏi

- Thực hành

<small>A1.1</small>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

- Thực hành vẽ lược đồ dữ liệu mức luận lý, vật lý

- Sử dụng MS SQL Server 2008 để tạo CSDL và lưu trữ

CLO 4 trên máy

9 Bài 9: Hoàn thiện toàn bộ chương trình

3 TH - Hướng dẫn sinh viên thực hiện

CLO 1 CLO 2 CLO 3 CLO 4

- Thực hành trên máy

10 Bài 10: Thi thực hành 3 TH - Nghe báo cáo kết quả thực hành và chấm điểm

CLO 1 CLO 2 CLO 3 CLO 4 CLO 6

- Từng nhóm lần lượt báo cáo kết quả

A2

<b>7. Học liệu: </b>

<b>Bảng 7.1. Sách, giáo trình, tài liệu tham khảo </b>

<b>XB </b>

<b>Tên sách, giáo trình, tên bài báo, văn bản </b>

<b>NXB, tên tạp chí/ nơi ban hành VB Giáo trình chính </b>

1 Martina Seidl, Marion Scholz, Christian Huemer and Gerti Kappel

2014 <b>UML @ Classroom - An Introduction to Object-Oriented Modeling </b>

Springer

<b>Sách, giáo trình tham khảo </b>

2 Roger. S Pressman 2015 <b>Software Engineering: A Practitioner's Approach </b>

McGraw-Hill Higher Education

<b>Bảng 7.2. Danh mục địa chỉ web hữu ích cho HP </b>

<b>nhật </b>

3 Unified Modeling Language (UML) description, UML diagram ...

<i><b>8. Cơ sở vật chất phục vụ giảng dạy: </b></i>

<b>Bảng 8.1. Cơ sở vật chất giảng dạy của HP TT </b>

<b>Tên giảng đường, PTN, xưởng, cơ sở </b>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>TPHCM Ngày…tháng…Năm… </b>

</div>

×