Bài giảng Nhập môn công nghệ phần mềm - Tuần 3: Phương pháp Agile và các hoạt động của Agile

Biểu đồ phân cấp chức năng (BFD - Bussiness Function Diagram): phân rã có thứ bậc đơn giản các chức năng của hệ thống thành các chức năng nhỏ hơn, cuối cùng thu được một cây chức năng. – Biểu đồ này thể hiện các đầu việc mà hệ thống cần thực hiện để đạt được mục tiêu quản lý (quản lý cái gì?), xây dựng dựa trên cơ sở của bước khảo sát và phân tích cơ bản trước đó. Các ký hiệu chính trong biểu đồ phân cấp chức năng: – Ký hiệu chức năng là một hình chữ nhật bên trong là tên chức năng, Tên chức năng là động từ - bổ ngữ và động từ nên ở dạng thức mệnh lệnh. Các chức năng cần đánh số thể hiện sự phân cấp. – Liên kết các chức năng là đường thẳng

pdf34 trang | Chia sẻ: hachi492 | Ngày: 05/01/2022 | Lượt xem: 467 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Nhập môn công nghệ phần mềm - Tuần 3: Phương pháp Agile và các hoạt động của Agile, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Nhập môn Công nghệ phần mềm Introduction to Software Engineering (IT3180) Bài tập tuần 03 Phương pháp Agile & Các hoạt động của Agile Thông tin GV Mục tiêu 29/30/2020 Department of Software Engineering - SOICT/HUST • Thực hiện các bài tập (câu hỏi) về nội dung Phương pháp Agile • Phân tích các yêu cầu chức năng cho bài toán (case study) • Bài tập về 4 hoạt động chính của Agile Đánh giá 39/30/2020 Department of Software Engineering - SOICT/HUST • Hoàn thành các bài tập về nội dung Phương pháp Agile, nắm được tư tưởng của phương pháp Agile và các hoạt động chính. Phân biệt phương pháp Agile với các mô hình phát triển phần mềm khác • Xác định các yêu cầu chức năng chính cho bài toán (case study) xây dựng được biểu đồ phân cấp chức năng và liệt kê một số yêu cầu phi chức năng • Hoàn thành bài tập về 4 hoạt động chính của Agile Bài 1.1 a) Nội dung nào sau đây được chuyển giao vào cuối Sprint? 1. Một tài liệu chứa các trường hợp kiểm thử cho sprint hiện tại 2. Một thiết kế kiến trúc của giải pháp 3. Một phiên bản gia tăng của phần mềm hoàn thành 4. Thiết kế giao diện người dùng 9/30/2020 Department of Software Engineering - SOICT/HUST 4 Bài 1.1 b) Product Backlog chứa những thông tin cơ bản gì? 1. Danh sách đầy đủ các yêu cầu hiện không có trong bản phát hành sản phẩm 2. Danh sách nhật ký các hoạt động của nhóm phát triển sản phẩm 3. Danh sách các trường hợp kiểm thử 4. Danh sách các sơ đồ thiết kế của sản phẩm 9/30/2020 Department of Software Engineering - SOICT/HUST 5 Bài 1.1 c) Chuỗi hoạt động nào sau đây là đúng cho Extreme Programming (XP)? 1. Write code, write test, refactor 2. Write code, refactor, write test 3. Write test, write code, refactor 4. Design, write code, write test 9/30/2020 Department of Software Engineering - SOICT/HUST 6 Bài 1.2 79/30/2020 Department of Software Engineering - SOICT/HUST • Hãy so sánh mô hình thác nước (Waterfall modell) và phương pháp Scrum: Mô hình thác nước (Waterfall modell) Phương pháp Scrum Đặc điểm chính Đặc điểm các pha phát triển Kích thước nhóm phát triển (team size) Phong cách quản lý (management style) Quan điểm về sự thay đổi trong dự án Vấn đề xây dựng tài liệu Đối phó với các nguy cơ / rủi ro (risk) Tình huống áp dụng phù hợp Bài tập về hoạt động chính của Agile 89/30/2020 Department of Software Engineering - SOICT/HUST • a. Dailly meeting – Tất cả các thành viên báo cáo công việc hàng ngày • b. Sprint Planning – Lên kế hoạch công việc làm trong 1 sprint • c. Sprint Reiview – Xem xét lại các công việc đã làm trong sprint, phần nào có thể release/delivriable Bài tập về hoạt động chính của Agile 99/30/2020 Department of Software Engineering - SOICT/HUST • 1 template ví dụ cho 3 hoạt động trên Bài tập về hoạt động chính của Agile 109/30/2020 Department of Software Engineering - SOICT/HUST • Ví dụ: Daily meeting Daily meeting Bài tập về hoạt động chính của Agile 119/30/2020 Department of Software Engineering - SOICT/HUST • Ví dụ: Daily meeting❑ Hàng ngày, các trưởng nhóm (Dev lead, QC lead) phải kiểm tra tiến độ, chất lượng công việc đã giao cho từng thành viên trong nhóm ❑ Hàng ngày, PM phải: ❖ Kiểm tra tiến độ các nhóm, kiểm tra sự phối hợp giữa các vai trò trong dự án ❖ Kiểm tra, nhắc nhở việc tham gia của các Stakeholder đúng cam kết theo kế hoạch dự án. Bài tập về hoạt động chính của Agile 129/30/2020 Department of Software Engineering - SOICT/HUST • d. Restrospective – Tổng kết điểm mạnh/yếu, điểm cần chỉnh sửa trong công việc (mọi người đều nói) – Ví dụ 1: Bài tập về hoạt động chính của Agile 139/30/2020 Department of Software Engineering - SOICT/HUST – Ví dụ 1: Bài tập về hoạt động chính của Agile 149/30/2020 Department of Software Engineering - SOICT/HUST – Ví dụ 2: Phân tích chức năng cho bài toán (case study) 159/30/2020 Department of Software Engineering - SOICT/HUST • Phân tích chức năng: – Mục đích: cho một cái nhìn sơ bộ về chức năng của hệ thống – Sự phân tích theo chức năng chỉ nhằm đưa ra các chức năng lớn (các nhu cầu đối với HT) mà sẽ không tiếp tục đi sâu vào các chức năng nhỏ, vì con đường phân tích & thiết kế đã chọn là hướng đối tượng chứ không hướng chức năng – Nội dung: • Mô hình hoá nghiệp vụ với biểu đồ hoạt động • Xây dựng sơ đồ phân cấp chức năng Phân tích chức năng cho bài toán (case study) 169/30/2020 Department of Software Engineering - SOICT/HUST • Mô hình hoá nghiệp vụ: – Mục đích: Thường thì dự án sẽ được khởi đầu bằng một bước Nghiên cứu sơ bộ nhằm tìm hiểu môi trường nghiệp vụ của hệ thống tương lai. – Trong môi trường đó thì người, thiết bị, máy tính kết hợp với nhau hoạt động theo những quy trình nghiệp vụ nhất định. – Quy trình nghiệp vụ thường được mô tả bằng các biểu đồ hoạt động. Phân tích chức năng cho bài toán (case study) 179/30/2020 Department of Software Engineering - SOICT/HUST • Biểu đồ hoạt động: ▪ Biểu đồ mô tả một nội dung hoạt động, theo các luồng đi từ việc này sang việc khác. ▪ Dùng để diễn tả ▪ Một quy trình nghiệp vụ ▪ Lôgíc của một ca sử dụng, một kịch bản, một nhóm ca sử dụng, hay một thao tác phức tạp. ▪ Biểu đồ hoạt động là một đồ thị có hướng, trong đó các nút (đỉnh) là các hoạt động, các cung là các dịch chuyển. ▪ Có một nút khởi đầu (một chấm đen) và có thể có hay không nhiều nút kết thúc (chấm đen có viền). ▪ Hoạt động (activity) là một công việc, có thể là được xử lý bằng tay hoặc xử lý bằng máy tính Phân tích chức năng cho bài toán (case study) 189/30/2020 Department of Software Engineering - SOICT/HUST • Các phần tử chính trong biểu đồ hoạt động: – Activity Partition (Swimlines): xác định đối tượng nào tham gia hoạt động nào trong một qui trình. – Nút Start, End: Start thể hiện điểm bắt đầu qui trình, End thể hiện điểm kết thúc qui trình. Ký hiệu về nút Start Ký hiệu về nút kết thúc Phân tích chức năng cho bài toán (case study) 199/30/2020 Department of Software Engineering - SOICT/HUST • Các phần tử chính trong biểu đồ hoạt động: – Activity: Activity mô tả một hoạt động trong hệ thống. Các hoạt động này do các đối tượng thực hiện. – Branch: Branch thể hiện rẽ nhánh trong mệnh đề điều kiện. Phân tích chức năng cho bài toán (case study) 209/30/2020 Department of Software Engineering - SOICT/HUST • Các phần tử chính trong biểu đồ hoạt động: – Fork: Fork thể hiện cho trường hợp thực hiện xong một hoạt động rồi sẽ rẽ nhánh tthực hiện nhiều hoạt động tiếp theo. Phân tích chức năng cho bài toán (case study) 219/30/2020 Department of Software Engineering - SOICT/HUST • Các phần tử chính trong biểu đồ hoạt động: – Join: Cùng ký hiệu với Fork nhưng thể hiện trường hợp phải thực hiện hai hay nhiều hành động trước rồi mới thực hiện hành động tiếp theo. Phân tích chức năng cho bài toán (case study) 229/30/2020 Department of Software Engineering - SOICT/HUST • Các phần tử chính trong biểu đồ hoạt động: – Luồng hoạt động: Minh họa quá trình chuyển đổi từ một trạng thái hoạt động này sang trạng thái hoạt động khác. – Nút Merge: Sự kết hợp của các luồng sự kiện. Các đầu vào không đồng bộ. – Nhiều đầu vào và chỉ có một đầu ra – Dịch chuyển (transition) là sự chuyển tiếp từ hoạt động này sang hoạt động khác. Hđ2Hđ1 Phân tích chức năng cho bài toán (case study) 239/30/2020 Department of Software Engineering - SOICT/HUST • Ví dụ biểu đồ hoạt động quy trình mua hàng: : : : Phân tích chức năng cho bài toán (case study) 249/30/2020 Department of Software Engineering - SOICT/HUST • Bài tập: một công ty muốn thực hiện tin học hoá một phần các hoạt động trong quy trình đào tạo (QTĐT) cho nhân viên của mình. Quy trình được mô tả như sau: – 1) QTĐT bắt đầu khi có một nhân viên (NV) gửi đến người phụ trách đào tạo (PTĐT) một đề nghị được đi đào tạo. Người PTĐT xem xét đề nghị này và đưa ra trả lời đồng ý hay không đồng ý. – 2) Nếu đồng ý, người PTĐT tìm trong một catalô một nơi có các lớp đào tạo thích hợp, thông báo nội dung đào tạo lại cho NV đã xin đi đào tạo, cùng với một danh sách các kỳ học sẽ mở tới đây. Khi người NV đã chọn kỳ học, người PTĐT gửi một đăng ký cho NV đó tới cơ sở đào tạo. Phân tích chức năng cho bài toán (case study) 259/30/2020 Department of Software Engineering - SOICT/HUST – 3) Nếu có gì cản trở, người NV phải báo sớm cho người PTĐT để huỷ đăng ký hay huỷ đề nghị đào tạo. – 4) Sau khi đào tạo xong, người NV nạp lại cho người PTĐT một giấy xác nhận sự có mặt và giấy nhận xét kết quả học tập. – 5) Người PTĐT kiểm tra lại hoá đơn mà cơ sở đào tạo gửi tới, trước khi chuyển cho kế toán trả tiền. • Yêu cầu: từ mô tả nghiệp vụ trên hãy mô hình hoá bằng biểu đồ hoạt động • Từ mô hình nghiệp vụ → hãy xác định phạm vi tin học hoá → Xác định các chức năng cho hệ thống Phân tích chức năng cho bài toán (case study) 269/30/2020 Department of Software Engineering - SOICT/HUST • Mô hình hoá quy trình đào tạo với biểu đồ hoạt động: :Nhân viên :Người PTĐT :Cơ sở ĐT :Kế toán Lập đề nghị Chọn kỳ học Đi đào tạo Xem xét đề nghị [từ chối] [chấp nhận] Tìm CSĐT Liên lạc CSĐT Kiểm tra HĐ Đăng ký ĐT Lập HĐ Chi HĐ Phân tích chức năng cho bài toán (case study) 279/30/2020 Department of Software Engineering - SOICT/HUST • Thêm vào biểu đồ hoạt động các đối tượng (input / output được sản sinh ra và trạng thái của chúng): :Nhân viên :Người PTĐT :Cơ sở ĐT :Kế toán Chọn kỳ học Đi đào tạo Xem xét đề nghị [từ chối] [chấp nhận] Tìm CSĐT Liên lạc CSĐT Kiểm tra HĐ Đăng ký ĐT Đơn xin ĐT {chờ duyệt} Đơn xin ĐT {chờ đăng ký} Đơn xin ĐT {đáp ứng} : Nhận xét :Công văn y/c :Giấy triệu tập :Hoá đơn :Phiếu chi Đơn xin ĐT {đã thực hiện} Chi HĐ Lập đề nghị Lập hóa đơn Phân tích chức năng cho bài toán (case study) 289/30/2020 Department of Software Engineering - SOICT/HUST • Xác định phạm vi tin học hoá: :Nhân viên :Người PTĐT :Cơ sở ĐT :Kế toán Lập đề nghị Chọn kỳ học Đi đào tạo Xem xét đề nghị [từ chối] [chấp nhận] Tìm CSĐT Liên lạc CSĐT Kiểm tra HĐ Đăng ký ĐT Lập HĐ Chi HĐ HT tin học hoá Phân tích chức năng cho bài toán (case study) 299/30/2020 Department of Software Engineering - SOICT/HUST • Xác định phạm vi tin học hoá: phần mềm cho phép bắt đầu một yêu cầu đào tạo và theo dõi nó cho đến khi hoàn tất việc đăng ký đào tạo cho một nhân viên. • Hệ YCĐT phải tin học hoá các hoạt động nghiệp vụ sau: – Soạn thảo một đề nghị đào tạo (nhân viên). – Kiểm nhận một đề nghị (người PTĐT). – Tìm nơi đào tạo (người PTĐT). – Chọn lớp (nhân viên). – Đăng ký đào tạo (người PTĐT). Phân tích chức năng cho bài toán (case study) 309/30/2020 Department of Software Engineering - SOICT/HUST • Yêu cầu: Hãy xây dựng biểu đồ hoạt động mô tả nghiệp vụ của bài toán (case study) mà nhóm đã lựa chọn. Phân tích chức năng cho bài toán (case study) 319/30/2020 Department of Software Engineering - SOICT/HUST • Biểu đồ phân cấp chức năng (BFD - Bussiness Function Diagram): phân rã có thứ bậc đơn giản các chức năng của hệ thống thành các chức năng nhỏ hơn, cuối cùng thu được một cây chức năng. – Biểu đồ này thể hiện các đầu việc mà hệ thống cần thực hiện để đạt được mục tiêu quản lý (quản lý cái gì?), xây dựng dựa trên cơ sở của bước khảo sát và phân tích cơ bản trước đó. Phân tích chức năng cho bài toán (case study) 329/30/2020 Department of Software Engineering - SOICT/HUST • Các ký hiệu chính trong biểu đồ phân cấp chức năng: – Ký hiệu chức năng là một hình chữ nhật bên trong là tên chức năng, Tên chức năng là động từ - bổ ngữ và động từ nên ở dạng thức mệnh lệnh. Các chức năng cần đánh số thể hiện sự phân cấp. – Liên kết các chức năng là đường thẳng – Ví dụ: Phân tích chức năng cho bài toán (case study) 339/30/2020 Department of Software Engineering - SOICT/HUST • Mô tả các chức năng: Tên chức năng Mô tả Đánh giá khả năng thực hiện (nhân lực, thời gian, công nghệ, môi trường) Phân tích chức năng cho bài toán (case study) 349/30/2020 Department of Software Engineering - SOICT/HUST • Yêu cầu: Hãy xây dựng biểu đồ phân cấp chức năng cho cho bài toán (case study) mà nhóm đã lựa chọn. Mô tả các chức năng đó.

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_nhap_mon_cong_nghe_phan_mem_tuan_3_phuong_phap_agi.pdf
Tài liệu liên quan