1. Trang chủ
  2. » Luận Văn - Báo Cáo

đề xuất áp dụng phương thức phát triển phần mềm linh hoạt agile tại ngân hàng thương mại cổ phần quân đội mb

23 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Đề xuất áp dụng phương thức phát triển phần mềm linh hoạt Agile tại Ngân hàng Thương mại Cổ phần Quân đội MB
Định dạng
Số trang 23
Dung lượng 1,44 MB

Nội dung

Do đó rất cần một phương thức phát triển phần mềmlinh hoạt để việc số hóa các văn bản, thủ tục, phương thức làm việc và giao dịch trongnội bộ công ty hay đối với cả khách hàng, diễn ra m

Trang 1

ĐỀ XUẤT ÁP DỤNG PHƯƠNG THỨC PHÁT TRIỂN PHẦN MỀM LINH HOẠT AGILE TẠI NGÂN HÀNG THƯƠNG MẠI CỔ PHẦN QUÂN ĐỘI MB

A MỞ ĐẦU

CHƯƠNG I: TỔNG QUAN VỀ ĐỀ TÀI

1.1 Tính cấp thiết của đề tài nghiên cứu

Trong bối cảnh thế giới hội nhập đang ngày càng phát triển hiện nay, côngnghệ 4.0 đang từng bước trở thành một phần không thể thiếu của đời sống, kinh tế, xãhội Nó thay đổi cách thức vận hành của một nền kinh tế, hoạt động sản xuất hàng hóa

và dịch vụ nhắm đến xây dựng một cơ sở hạ tầng công nghệ thông tin và viễn thôngliên kết chặt chẽ, linh hoạt Đặc biệt là trong lĩnh vực Ngân hàng, sự phát triển chóngmặt của công nghệ thông tin và viễn thông đã thực sự thay đổi bộ mặt của ngành NgânHàng, không còn những thủ tục rườm rà, hay bất lợi về khoảng cách địa lý Chuyểnđổi số đã bao trùm lên mọi mặt của lĩnh vực này, giúp cho việc trao đổi thông tin trởnên nhanh chóng và trực tiếp, các dịch vụ ngân hàng ngày càng tinh giản, thuận tiện

và mang tính bảo mật cao hơn, thị trường mở rộng mạnh mẽ không giới hạn Do đóchuyển đổi số trong Ngân hàng đã trở thành một thực tiễn tất nhiên xảy ra không chỉ ởViệt Nam mà còn trên toàn thế giới

Đồng thời với đó chuyển đổi số còn góp phần thay đổi tư duy nhận thức củachính chúng ta về cách thức hoạt động của một số mô hình đang sẵn có trong xã hội.Điển hình cụ thể như trong đại dịch COVID-19 các Ngân hàng thương mại Việt Namnói riêng đã phải đối mặt với rất nhiều những thách thức mới như: Kiểm định lại chínhsách đã xây dựng về quản trị rủi ro, trong đó thì rủi ro hoạt động là một phần quantrọng, tổ chức lại quy trình hoạt động và hệ thống nhân sự từ đó tối ưu hóa chi phíhoạt động Ngoài ra, đại dịch còn là một cơ hội tốt để ban lãnh đạo nhìn nhận lại và dựphòng các kịch bản có thể gặp phải từ đó hình thành các phương án hoạt động đối phóvới khủng hoảng hiệu quả hơn Nổi bật trong đó là việc thúc tiến mạnh mẽ quá trìnhchuyển đổi số của Ngân hàng Do đó rất cần một phương thức phát triển phần mềmlinh hoạt để việc số hóa các văn bản, thủ tục, phương thức làm việc và giao dịch trongnội bộ công ty hay đối với cả khách hàng, diễn ra một cách trơn tru, không bị gián

đoạn thì AGILE (Một cách gọi vắn tắt những phương thức làm việc như Scrum,

Karban, eXtremeProgamming - quản lý và phát triển sản phẩm dựa trên những nguyên lý được mô tả trong Tuyên ngôn phát triển phần mềm linh hoạt với chủ trương nhấn mạnh tính sáng tạo của cá nhân và nhóm, tạo lập và duy trì sự linh hoạt cho mỗi

tổ chức nhằm tăng lợi thế cạnh tranh bền vững trong nền kinh tế sáng tạo ) 1 được rất

nhiều Ngân hàng áp dụng vào hệ thống làm việc và quản lý mang tính số hóa, mang

lại giá trị to lớn trong rất nhiều lĩnh vực như: Lĩnh vực quản trị và lãnh đạo (Agile Management, Agile Leadership), Nhân sự (Agile HR, Agile People), hay Marketing (Agile Marketing), Chính việc áp dụng này cũng đã đẩy nhanh việc hoàn thiện hệ

1 https://dantri.com.vn/giao-duc/viet-nam-dang-rat-can-nhan-luc-agile-20160517091641871.htm

Trang 2

thống Big Data của Ngân hàng, giúp cho Ngân hàng đẩy nhanh tốc độ ra sản phẩm,đưa vào ứng dụng cách dịch vụ Ngân hàng số, giao dịch Ngân hàng điện tử đặc biệtdịch vụ Mobile Banking, Internet Banking, phát triển mạnh mẽ đã làm giảm giaodịch trực tiếp đáng kể đối với tệp khách hàng cá nhân của nhóm Retail Banking (ngânhàng bán lẻ)2 Do không chỉ giới hạn ở những lĩnh vực liên quan đến ngành Ngânhàng, Agile còn gắn liền với công cuộc chuyển đổi số nên đối với các doanh nghiệpCông nghệ thông tin Nhiều doanh nghiệp trên Thế giới đã và đang dịch chuyển mạnh

mẽ sang Agile/ Scrum, từ những công ty lớn như Microsoft, Google tới những doanhnghiệp nhỏ đang trong quá trình Startup Theo một nghiên cứu Tại Việt Nam hiệnnay, các công ty có tên tuổi như Viettel, FPT, VNG cũng đang tham gia mạnh mẽ vàocông cuộc chuyển dịch phương thức làm việc được nhận định rằng : “Agile có thể rút

ngắn thời gian chuyển giao sản phẩm, dễ dàng thay đổi tính năng để đáp ứng nhu cầu của thị trường Ở Việt Nam thì còn mới, chứ trên thế giới thì Công nghệ thông tin không thể không dùng Agile” bởi ông Đỗ Văn Khắc, Phó Tổng giám đốc FPT

Software

Tại Việt Nam, các ngân hàng thương mại hiện nay đang không ngừng chạyđua công nghệ để phát triển những phần mềm, dịch vụ mang tính linh hoạt và hiệu quảcao, kéo theo là sự cạnh tranh khốc liệt giữa các Ngân hàng đó để phát triển kinh

doanh và thu hút khách hàng Ngân hàng Thương mại Cổ phần Quân đội ( Military Commercial Joint Stock Bank), tên gọi tắt MBBank là một trong những Ngân hàng

đầu tiên tiên phong ứng dụng hiệu quả và thành công phương thức Agile vào hoạtđộng nội bộ, kinh doanh của Ngân hàng, từ đó đã đạt được nhiều thành tựu, đóng góp

to lớn vào công cuộc đổi mới, phát triển một phương thức làm việc mới tập chung ưutiên sự cộng tác hiệu quả công việc của nhóm, hướng đến tạo lập và duy trì sự linhhoạt Mang lại một mô hình mới cho hệ thống vận hành kinh tế trong công cuộc hiệnđại hóa đất nước nói chung Nhận thấy cơ hội này Ngân hàng MB cho rằng đây là mộthướng đi hiệu quả để phát triển công nghệ thông tin - một trong những vấn đề cốt lõihiện nay và thay đổi phương thức làm việc

( Khó khăn nhất là đồng đều về chất lượng và mức độ trưởng thành của nhân

sự và công nghệ )

Dựa trên thực tiễn đó chủ đề “ Đề xuất áp dụng phương thức phát triển phầnmềm linh hoạt Agile tại Ngân hàng Thương mại Cổ phần Quân đội (MB) ” đã đượclựa chọn để nghiên cứu

1.2 Tổng quan nghiên cứu

1.2.1 Tổng quan nghiên cứu nước ngoài

1.1.2 Tổng quan nghiên cứu trong nước

2 viet-nam-nhung-kho-khan-va-giai-phap.htm

Trang 3

https://tapchinganhang.gov.vn/anh-huong-cua-dich-benh-covid-19-doi-voi-hoat-dong-ngan-hang-1.3 Mục tiêu nghiên cứu

Mục đích của đề tài là tìm hiểu và đánh giá khả năng áp dụng phương thức Agiletrong quá trình phát triển phần mềm tại Ngân hàng Thương mại Cổ phần Quân đội

MB Nghiên cứu sẽ tập trung vào việc xác định các ưu điểm và hạn chế của phươngthức Agile, đánh giá khả năng áp dụng của phương thức này trong môi trường ngânhàng, đề xuất các giải pháp để tối ưu hóa quá trình phát triển phần mềm và nâng caohiệu quả công việc của nhân viên Kết quả của đề tài sẽ giúp Ngân hàng Thương mại

Cổ phần Quân đội MB cải thiện quá trình phát triển phần mềm, tăng cường sự linhhoạt và đáp ứng nhanh chóng các yêu cầu của khách hàng

1.4 Đối tượng nghiên cứu

1.5 Phạm vi nghiên cứu

1.6 Phương pháp nghiên cứu

- Tìm hiểu về phương pháp phát triển phần mềm linh hoạt Agile, so sánh với quy

trình phát triển phần mềm truyền thống

- Tìm hiểu về quy trình phát triển phần mềm Agile - Scrum, phát triển phần mềm

dựa trên các đặc điểm của phương pháp Agile

- Nghiên cứu về tính ứng dụng của phương thức này lên hệ thống Ngân hàng,

đánh giá khả năng ứng dụng

1.7 Khoảng trống nghiên cứu

B NỘI DUNG NGHIÊN CỨU

CHƯƠNG 1: Cơ sở lý luận về ứng dụng Agile trong ngân hàng

1.1 Giới thiệu về Agile

Agile là một phương pháp phát triển phần mềm linh hoạt không còn quá xa lạ tronghoạt động số hóa của các doanh nghiệp, tổ chức trên toàn thế giới, bản chất đây là mộttriết lý - khung tư duy nhằm nhanh chóng thích ứng và phản hồi đối với thay đổi, từ

đó tạo ra hiệu quả trong một môi trường không chắc chắn và luôn biến động Triết lýAgile được xuất phát từ ngành công nghệ, được miêu tả bằng 12 nguyên lý và 4 giátrị cốt lõi trong Tuyên ngôn phát triển phần mềm linh hoạt hay Tuyên ngôn Agile (The

Manifesto for Agile Software Development), triết lý này cho đến ngày nay đã làm

thay đổi diện mạo ngành công nghệ thông tin nói riêng và nhiều lĩnh vực khác như:Quản lý, Nhân sự, Marketing, Quản trị và Lãnh đạo nói chung

Agile Software Development là một thuật ngữ chung chỉ tất cả các kỹ thuật và phươngpháp phát triển phần mềm theo triết lý Agile Triết lý này được mô tả sơ bộ trong bảnTuyên ngôn Agile (The Manifesto for Agile Software Development) thông qua nhữnggiá trị cốt lõi và nguyên tắc mang tính khái quát, tuy nhiên không ghi rõ thực hiện

Trang 4

những nguyên tắc đó như thế nào Do đó, các phương pháp Agile sẽ làm nhiệm vụlàm rõ hơn để các cá nhân, tổ chức có thể vận dụng linh hoạt vào hệ thống của mình,trong từng bối cảnh cụ thể Các phương pháp này đều tập chung vào việc thiết lập cáckịch bản thích ứng, phát triển tăng dần, chuyển giao sớm và cải thiện liên tục tạo rakhả năng thích ứng nhanh với sự biến động.

1.1.1 Lịch sử ra đời của Tuyên ngôn Agile và một số phương pháp Agile phổ biến

Agile ra đời trong bối cảnh ngành phát triển phần mềm gặp nhiều thử thách với cácthức phát triển thác nước (Waterfall), hoặc dựa theo kế hoạch (plan- driven), Agile rađời như một phương pháp nhằm khắc phục nhược điểm của mô hình thác nướcWaterfall

(Nguồn: Linkedin)

(Nguồn: https://tigosoftware.com)Đặc trưng của phương pháp Waterfall là tiệm cận tuyến tính, làm tuần tự các bướctheo kế hoạch Tuy nhiên, trong thực thế có rất nhiều những thay đổi và tình huống

Trang 5

xảy ra mà chưa thể đưa ra kịch bản giải quyết, đó có thể đến từ sự thay đổi yêu cầucủa các bên liên quan Do yêu cầu luôn thay đổi, khách hàng có thể chưa thực sự biếtmình cần gì, muốn gì cho đến khi trải nghiệm sản phẩm, khi đó những yêu cầu banđầu của khách hàng có thể đã lỗi thời, không phù hợp mục tiêu kinh doanh Khi đó sẽphải tiến hành thực hiện lại hết toàn bộ kế hoạch, khiến cho tiến độ ra sản phẩm khôngđúng yêu cầu, quá tải ngân sách

Một cuộc khủng hoảng về phương pháp luận phát triển phần mềm đã diễn ra vàokhoảng thập kỷ 90 của thế kỷ 20 đã chứng kiến sự thất bại của các dự án phần mềmcao Cho đến tận ngày 11-13 tháng 2 năm 2001, 17 nhà phát minh và thực hành đãhọp tại bang Utah, Hoa Kỳ để thảo luận về hướng đi mới trong phương pháp luận pháttriển phần mềm và đã đi đến thống nhất cho ra đời bản Tuyên ngôn Agile (TheManifesto for Agile Software development) dựa trên các nguyên tắc phát triển phânđoạn lặp (iterative) và tăng trưởng (incremental), từ đó đưa ra nhu cầu và giải pháptiến hóa thông qua sự tương tác giữa các nhóm và liên chức năng Agile thường sửdụng cách lập kịch bản thích ứng, việc phát triển và chuyển giao hướng tiến hóa sửkhung thời gian ngắn và linh hoạt (sprint) để nhanh chóng phản hồi lại với những thayđổi trong một môi trường biến động Chú trọng đề cao vào sáng tạo cá nhân, tương tácnhóm hơn là quy trình nghiệp vụ, sản phẩm tốt hơn tài liệu đầy đủ

1.1.2 Lý do nên áp dụng Agile vào trong Ngân hàng và môi trường làm việc.

- Mỗi sản phẩm của một dự án là khác nhau nên việc áp dụng một quy trình đểtriển khai sẽ gây ra hàng loạt sự khó khăn

- Agile đi liền với công cuộc Chuyển đổi số

- Khách hàng và các bên liên quan khi đưa ra yêu cầu về một dự án, họ khó cụthể hình dung được đầy đủ những yêu cầu cho sản phẩm, chỉ khi qua quá trìnhhình thành, được tiếp xúc, ứng phó với những thay đổi trong mong muốn Sảnphẩm mới có thể hoàn thiện đúng tiến độ, giảm thiểu rủi ro đúng tiến độ

1.1.3 Các đặc trưng của Agile

- Tính lặp (Iterative)

Dự án sẽ được thực hiện trong các phân đoạn lặp đi lặp lại Các phân đoạn (được gọi

là Sprint) này thường có khung thời gian ngắn (khoảng từ 1-4 tuần) Trong mỗi phânđoạn này, nhóm phát triển thực hiện đầy đủ các công việc cần thiết của một dự án nhưlập kế hoạch, phân tích yêu cầu, thiết kế, triển khai, kiểm thử (với các mức độ khácnhau) để cho ra các phân đoạn nhỏ của sản phẩm

- Tính tiến hóa (Evolutionary)

Cuối các phân đoạn, nhóm phát triển thường cho ra các phần nhỏ của sản phẩm cuốicùng, các phần nhỏ này thường là đầy đủ, có khả năng chạy độc lập tốt, được kiểm thửcẩn thận và có thể sử dụng ngay (potentially shippable product increment offunctionality) Theo thời gian, phân đoạn này tiếp nối phân đoạn kia các phần chạy

Trang 6

được này sẽ được tích lũy, lớn dần lên cho tới khi toàn bộ yêu cầu của khách hàngđược thỏa mãn.

- Nhóm tự tổ chức và liên chức năng

Cấu trúc nhóm agile thường là liên chức năng(cross-functionality) và tự tổ organizing) Theo đó, các nhóm này tự thực hiện lấy việc phân công công việc màkhông dựa trên các mô tả cứng về chức danh (title) hay làm việc dựa trên một sự phâncấp rõ ràng trong tổ chức Các nhóm này cộng tác với nhau để ra quyết định, theo dõitiến độ, giải quyết các vấn đề mà không chờ mệnh lệnh của các cấp quản lý Họ khônglàm việc theo cơ chế “mệnh lệnh và kiểm soát” (command and control)

chức(self-Nhóm tự tổ chức có nghĩa là nó đã đủ các kỹ năng (competency) cần thiết cho việcphát triển phần mềm, do vậy nó có thể được trao quyền để tự ra quyết định, tự quản lý

và tổ chức lấy công việc của chính mình để đạt được hiệu quả cao nhất

- Quản lý tiến trình thực tiễn (Empirical Process Control)

Các nhóm agile ra các quyết định dựa trên các dữ liệu thực tiễn thay vì tính toán lýthuyết hay các tiền giả định (prescription) Việc phân nhỏ dự án thành các phân đoạnngắn góp phần gia tăng các điểm mốc để nhóm phát triển thu thập dữ kiện cho phépđiều chỉnh các chiến lược phát triển của mình Nói cách khác, Agile rút ngắn vòng đờiphản hồi (short feedback life cycle) để dễ dàng thích nghi và gia tăng tính linh hoạt.Theo thời gian, các chiến lược này sẽ tiến gần đến trạng thái tối ưu, nhờ đó nhóm cóthể kiểm soát được tiến trình, và nâng cao năng suất lao động

- Tính thích ứng (Adaptive)

Do các phân đoạn chỉ kéo dài trong một khoảng thời gian ngắn, và việc lập kế hoạchcũng được điều chỉnh liên tục, nên các thay đổi trong quá trình phát triển (yêu cầuthay đổi, thay đổi công nghệ, thay đổi định hướng về mục tiêu v.v.) đều có thể đượcđáp ứng theo cách thích hợp

- Ràng buộc về thời gian (Time - Bound)

Thời gian luôn là vấn đề rất quan trọng trong việc phát triển phần mềm bằng Agile

Nó xác định thời gian hoàn thành dự án và mỗi sprint phát triển dự án để bàn giao sảnphẩm cho khách hàng kiểm tra xem đúng yêu cầu và chức năng hay không

- Quản lý thực nghiệm (Empirical Process Control)

Các nhóm Agile ra các quyết định dựa trên các dữ liệu thực tiễn thay vì tính toán lýthuyết hay các giả định Việc phân nhỏ dự án thành các phân đoạn ngắn góp phần giatăng các điểm mốc để nhóm phát triển thu thập dữ kiện cho phép điều chỉnh các chiếnlược phát triển của mình Theo thời gian, các chiến lược này sẽ tiến gần đến trạng tháitối ưu, nhờ đó nhóm có thể kiểm soát được tiến trình, và nâng cao năng suất lao động

- Giao tiếp trực diện(face-to-face communication)

Về yêu cầu của khách hàng, agile khuyến khích nhóm phát triển trực tiếp nói chuyệnvới khách hàng để hiểu rõ hơn về cái khách hàng thực sự cần, thay vì phụ thuộc nhiềuvào các loại văn bản Trong giao tiếp giữa nội bộ nhóm phát triển với nhau, thay vìmột lập trình viên (thực hiện việc code) và một kỹ sư (thực hiện việc thiết kế) giao

Trang 7

tiếp với nhau thông qua bản thiết kế, agile khuyến khích hai người này trực tiếp traođổi và thống nhất với nhau về thiết kế của hệ thống và cùng nhau triển khai thành cácchức năng theo yêu cầu.

- Dựa trên giá trị (value - based)

Một trong những nguyên tắc cơ bản của Agile là phần mềm chạy tốt chính là thước đotiến độ Nguyên tắc này giúp nhóm dám loại bỏ đi các công việc dư thừa không trựctiếp mang lại giá trị cho sản phẩm Để vận hành được cơ chế “làm việc dựa trên giátrị”, nhóm Agile thường làm việc trực tiếp và thường xuyên với khách hàng (hay đạidiện của khách hàng), cộng tác trực tiếp với họ để biết yêu cầu nào có độ ưu tiên caohơn, mang lại giá trị hơn cho dự án Nhờ đó các dự án Agile thường giúp khách hàngtối ưu hóa được giá trị của dự án Chính vì thế, Agile làm gia tăng đáng kể độ hài lòngcủa khách hàng

1.1.4 Ưu điểm và nhược điểm của phương pháp Agile

Ưu điểm: Có một số lý do khiến Agile được sử dụng rộng rãi và bàn giao được một

sản phẩm hoàn thiện theo đúng yêu cầu của khách hàng

- Khách hàng có thể dễ dàng cảm thấy hài lòng và yên tâm hơn khi có những bảndùng thử được gửi liên tục, định kỳ để trải nghiệm, từ đó mang lại giá trị caohơn cho sản phẩm cuối cùng

- Agile chú trọng việc tương tác giữa các nhân tố trong một nhóm hơn là việcthực hiện theo các quy trình và công cụ, được thể hiện qua quá trình trao đổiliên tục giữa development và tester, development và tech leader, giữa team pháttriển Do đó luôn sẵn sàng đưa ra những kế hoạch thích ứng với những thay đổibất thường, dù là những thay đổi muộn khi sản phẩm đã sắp hoàn thành

Được xác định trong quá trình lập kế hoạch

Xác định trong quá trình xây dựng dự án

Trang 8

Chi phí sản phẩm Được xác định trong

quá trình lập kế hoạch

1.1.7 Các quy trình phát triển phần mềm sử dụng phương pháp Agile

Một số quy trình phát triển phần mềm linh hoạt ứng dụng phương pháp phát triểnphần mềm nhanh Agile gồm phương quy trình Extreme programming (XP), quy trìnhScrum, quy trình Ration Unified Process (RUP)

XP là một phương pháp linh hoạt dành cho các nhóm phát triển phần mềm nhỏ vàtrung bình xây dựng các phần mềm có yêu cầu thay đổi một cách nhanh chóng Nóđảm bảo công việc phù hợp cho các nhà phát triển và lợi ích tốt nhất sau thời gian làmviệc cho khách hàng và người quản

XP sử dụng các nhóm làm việc kết hợp gồm những người lập trình, khách hàng và cácnhà quản trị để phát triển phần mềm có chất lượng cao trong thời gian nhanh chóng.Một chương trình chạy được là thước đo đầu tiên của tiến trình theo XP XP có thểphát triển và tồn tại được là do sự hiểu biết ngày một tiến bộ về các vấn đề đang giảiquyết và cũng là vì các công cụ sẵn có cho phép ta thay đổi được cái giá của sự thayđổi

- Quy trình phát triển phần mềm thống nhất Rational Unified Process (RUP)

RUP là một nền tảng quy trình thích ứng với sự phát triển các tổ chức và các nhóm dự

án phần mềm dựa trên quy trình vòng lặp phát triển phần mềm RUP hỗ trợ các hoạtđộng giữa các nhóm, phân chia công việc cho từng thành viên trong nhóm, trong từnggiai đoạn khác nhau của quá trình phát triển phần mềm RUP sử dụng hệ thống kýhiệu trực quan của UML và RUP được phát triển song song với UML

Vòng đời của dự án RUP được chia theo thời gian qua bốn giai đoạn nối tiếp nhau.Bao gồm: Khởi tạo (Inception), Phác thảo (Elaboration), Xây dựng (Construction),

Trang 9

Chuyển giao (Transition) Mỗi giai đoạn có một mốc quan trọng, mỗi giai đoạn thựcchất là khoảng giữa của 2 điểm mốc Cuối mỗi giai đoạn, bộ phận kiểm định sẽ thựchiện thẩm định các đối tượng của giai đoạn này c

- Phương pháp Crystal Crystal

Một trong những cách tiếp cận thích ứng nhẹ nhất để phát triển phần mềm Crystalđược thực sự bao gồm của một họ của các phương pháp (Crystal Clear, CrystalYellow, Crystal Orange, …) có đặc điểm độc đáo được thúc đẩy bởi một số yếu tốnhư kích thước nhóm, hệ thống tính quyết, và các ưu tiên của dự án Gia đình Crystalnày nêu lên những nhận thức rằng mỗi dự án có thể yêu cầu một bộ hơi phù hợp củacác chính sách và quy trình để đáp ứng đặc điểm độc đáo của dự án

- Phương pháp Feature-Driven Development (FDD)

FDD là một quá trình ngắn lặp đi lặp lại mô hình định hướng Nó bắt đầu với việcthiết lập một hình dạng mô hình tổng thể Sau đó, nó tiếp tục với một loạt hai tuần

"thiết kế bởi tính năng, xây dựng bởi tính năng" lặp đi lặp lại Các tính năng này lànhỏ, "hữu ích trong con mắt của khách hàng" kết quả

FDD bao gồm 5 giai đoạn để cung cấp những phương thức, kỹ thuật và những hướngdẫn mà nhà đầu tư cần đến để chuyển giao hệ thống Phần lặp của quy trình FDD hỗtrợ phát triển linh hoạt với sự thích nghi nhanh chóng với những thay đổi muộn trongyêu cầu của khách hàng

5 Giai đoạn của FDD là: Phát triển một mô hình toàn thể (Develop an Overall Model);Xây dựng một danh sách các tính năng (Build a Features List); Lập kế hoạch nhờ vàotính năng (Plan by Features); Thiết kế theo tính năng và xây dựng theo tính năng(Design by Feature and Build by Feature)

(Nguồn: https://salepeaket.live ) Tỷ lệ áp dụng các phương pháp Agile

Trang 10

1.2 Tổng quan về Agile/Scrum

1.2.1 Scrum Scrum là gì ?

Scrum là khung làm việc đã được sử dụng để quản lý quy trình phát triển sản phẩmphức tạp từ đầu những năm 1990 Scrum là một khung làm việc trong đó con người cóthể xác định các vấn đề thích nghi phức tạp, trong khi vẫn đảm bảo được năng suất và

sự sáng tạo để chuyển giao sản phẩm có giá trị cao nhất

Khung làm việc Scrum bao gồm một hay nhiều Nhóm Scrum với các vai trò đượcphân định rõ ràng, các sự kiện, các tác vụ và các quy tắc Mỗi thành phần trong khunglàm việc phục vụ một mục đích rõ ràng và nòng cốt trong việc sử dụng và thành côngcủa Scrum

1.2.2 Đặc trưng của Scrum

Scrum sử dụng các tiếp cận lặp, tăng dần để tối ưu hóa khả năng dự đoán và kiểm soátrủi ro Ba yếu tố nòng cốt tạo thành một mô hình quản lý tiến trình thực nghiệm gồm:

sự minh bạch, thanh tra, và thích nghi

Các khía cạnh quan trọng của tiến trình phải được hiển thị rõ ràng cho những người cótrách nhiệm với thành quả của tiến trình đó Sự minh bạch yêu cầu các yếu tố này cầnđược định nghĩa theo một tiêu chuẩn để những người quan sát có thể hiểu những gì họthấy theo cùng một cách

Người sử dụng Scrum phải thường xuyên thanh tra các tạo tác và tiến độ để đạt đượcmục tiêu Sprint và phát hiện điểm bất thường ngoài theo ý muốn Tần suất thanh trakhông nên quá dày, không ảnh hưởng đến công việc Công tác thanh tra có ích nhấtkhi được thực hiện một cách cần mẫn bởi người có kỹ năng thanh tra tại các mốc côngviệc

Nếu một người thanh tra xác định được rằng có vấn đề nào đó vượt quá giới hạncho phép, và hậu quả của vấn đề đó đối với sản phẩm là không thể chấp nhận được thìquy trình hoặc các tài liệu đang được xử lý phải được điều chỉnh Sự điều chỉnh phảiđược tiến hành càng sớm càng tốt để giảm thiểu các sai sót khác có thể xảy ra

Scrum yêu cầu bốn sự kiện chính thức cho việc thanh tra và thích nghi như mô

tả trong phần sự kiện Scrum, bao gồm:

- Họp Kế hoạch Sprint (Sprint Planning)

- Họp Scrum hằng ngày (Daily Scrum)

- Họp Sơ kết Sprint (Sprint Review)

- Họp Cải tiến Sprint (Sprint Retrospective)

1.2.3 Các thành phần của dự án quản lý bằng scrum

Trang 11

Để áp dụng quy trình phát triển Scrum cần một số thành phần cơ bản gồm: Tổ chức(Organization), Quy trình (Process), Tài liệu (Atifacts).

a Tổ chức Scrum

Nhóm Scrum bao gồm Chủ Sản phẩm, Nhóm phát triển, và Scrum Master Các NhómScrum là các nhóm tự quản và đa chức năng Các nhóm tự quản tự mình chọn cáchthức tốt nhất để hoàn thành công việc của họ, chứ không bị chỉ đạo bởi ai đó bênngoài nhóm Các nhóm liên chức năng có đủ kỹ năng cần thiết để hoàn thành côngviệc mà không phụ thuộc vào bất kì người ngoài nào khác Mô hình nhóm trongScrum được thiết kế để tối ưu hóa sự linh hoạt, sự sáng tạo và năng suất

Các Nhóm Scrum chuyển giao sản phẩm theo chu kỳ và mang tính tăng dần, tối đahóa cơ hội cho các phản hồi Việc chuyển giao dần dần các phần việc của Sản phẩm

đã hoàn thành đảm bảo một phiên bản có thể sử dụng được của sản phẩm luôn luônsẵn sàng

Chủ Sản phẩm chịu trách nhiệm tối đa hóa giá trị của sản phẩm và công việc củaNhóm Phát triển Cách thức để đạt được điều đó có thể rất khác nhau tùy thuộc tổchức, Nhóm Scrum và cá nhân Chủ Sản phẩm là một người chủ yếu chịu trách nhiệmchính về việc quản lý Product Backlog Việc quản lý Backlog bao gồm:

- Mô tả rõ ràng các hạng mục Product backlog

- Sắp xếp thứ tự của các hạng mục trong Product Backlog sao cho đạt được mục đích

và hoàn thành các nhiệm vụ một cách tốt nhất

- Tối ưu hóa giá trị công việc mà nhóm phát triển thực hiện

- Đảm bảo cho Product Backlog là luôn luôn rõ ràng, minh bạch với tất cả mọi người

- Là nhóm tự quản Không ai có quyền yêu cầu Nhóm Phát triển làm thế nào đểchuyển Product Backlog thành các sản phẩm có thể chuyển giao được

- Là nhóm liên chức năng, có tất cả các kỹ năng cần thiết để tạo ra sản phẩm

Ngày đăng: 20/05/2024, 14:35

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

TÀI LIỆU LIÊN QUAN

w