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
34 trang |
Chia sẻ: hachi492 | Ngày: 05/01/2022 | Lượt xem: 478 | Lượt tải: 0
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:
- bai_giang_nhap_mon_cong_nghe_phan_mem_tuan_3_phuong_phap_agi.pdf