Xem mẫu

  1. Giải thưởng Sinh viên Nghiên cứu khoa học Euréka lần thứ XIX năm 2017 Kỷ yếu khoa học PHÁT TRIỂN HỆ THỐNG QUẢN LÝ CHẤT LƯỢNG DỰA TRÊN PHƯƠNG PHÁP PHÁT TRIỂN HƯỚNG HÀNH VI CHO DỰ ÁN AMS TẠI CÔNG TY TNHH TERRALOGIC VIỆT NAM Trần Mộng Đào* Trường Đại học Ngân hàng TP. Hồ Chí Minh *Tác giả liên hệ: mongdao.tran275@gmail.com TÓM TẮT Đảm bảo chất lượng phần mềm là một trong những vấn đề quan trọng và ngày càng được quan tâm hàng đầu trong lĩnh vực phát triển phần mềm. Quy trình phát triển phần mềm ảnh hưởng không nhỏ tới chất lượng của sản phẩm. Dự án AMS đang gặp phải những vấn đề cần được cải thiện và thay đổi để tăng hiệu quả làm việc cũng như chất lượng phần mềm. Phương pháp phát triển hướng hành vi (BDD) là một trong những phương pháp Agile mang lại nhiều lợi ích cho dự án phần mềm và đang dần trở thành xu hướng trên thế giới. Tuy nhiên, BDD vẫn còn khá mới mẻ tại Việt Nam. BDD được phát triển với mục đích chính là cung cấp giá trị cho khách hàng có thể giải quyết được các vấn đề mà dự án AMS đang gặp phải. Từ khóa: Agile, BDD, TDD, kiểm thử phần mềm, phương pháp phát triển hướng hành vi, phương pháp phát triển hướng kiểm thử. DEVELOP THE QUALITY MANAGEMENT SYSTEM USING BEHAVIOR DRIVEN DEVELOPMENT METHODOLOGY FOR AMS PROJECT OF TERRALOGIC INC Tran Mong Dao* Banking University of Ho Chi Minh City *Corresponding Author: mongdao.tran275@gmail.com ABSTRACT Software quality is the one of most important aspect of software development. Software development process has big effect to the quality of product. AMS project is facing to problems which need to be resolved to increase the product quality. Behavior Driven Development (BDD) is the one of Agile methodologies providing many benefits for stacksholders in project and becoming a trend methodology in the world. BDD, however, still be a new methodology in Viet Nam. BDD brings the best value to clients, thus it can carry off problems of AMS project. Keywords: Agile, BDD, TDD, software testing, behavior driven development, test driven development. TỔNG QUAN đoạn: Định nghĩa yêu cầu của câu chuyện Quy trình phát triển hiện tại của dự án AMS người dùng, Cam kết hoàn thành câu chuyện được mô tả như Hình 1 bao gồm bốn giai người dùng, Phát triển và Kiểm thử. Hình 1. Quy trình phát triển chưa hướng hành vi 134
  2. Giải thưởng Sinh viên Nghiên cứu khoa học Euréka lần thứ XIX năm 2017 Kỷ yếu khoa học Quy trình cộng tác làm việc giữa các bên liên mô tả như Hình 2. quan trong dự án AMS hiện tại có thể được Hình 2. Quy trình cộng tác tạo nhiều cơ hội cho hiểu lầm và thông tin sai lệch Quy trình phát triển hiện tại của dự án AMS biết các tính năng đó nên hoạt động như thế có nhiều vấn đề phát sinh nhưng vẫn chưa nào, nhưng nó lại thường không được ghi rõ được giải quyết triệt để. Các câu chuyện ràng hoặc hoàn toàn bị bỏ qua. người dùng đôi khi giống như một “trò chơi Quy trình cộng tác hiện tại tạo ra nhiều cơ điện thoại”: nhóm khách hàng Frankly nói hội để thông tin bị lệch trong quá trình một điều, nhóm phát triển ở Terralogic làm chuyển từ PO sang BA, từ BA sang nhóm một điều khác, và kiểm thử viên thực thi các phát triển. Các thông tin có thể bị hiểu lầm, kịch bản với kết quả mong đợi không liên hoặc bị bỏ qua dẫn tới các tính năng mới quan. Khi kịch bản kiểm tra thất bại, kiểm không thực hiện chính xác những gì được thử viên quay lại nhóm phát triển để làm rõ, yêu cầu và tài liệu sẽ không phản ánh các yêu nhóm phát triển lại quay trở lại nhóm khách cầu ban đầu mà PO đã đưa ra BA. hàng. Sự hiểu nhầm về yêu cầu phần mềm có thể VẬT LIỆU VÀ PHƯƠNG PHÁP được điều chỉnh trước ngày phát hành, tuy Hệ thống quản lý chất lượng phần mềm theo nhiên thời gian, tài nguyên, và nỗ lực vẫn bị phương pháp hướng hành vi bao gồm ba mất. Các tiêu chuẩn chấp nhận đối với một thành phần như sau: Quy trình, công cụ và câu chuyện người dùng cần phải làm rõ để con người. Hình 3. Các thành phần trong hệ thống quản lý chất lượng phần mềm 135
  3. Giải thưởng Sinh viên Nghiên cứu khoa học Euréka lần thứ XIX năm 2017 Kỷ yếu khoa học Các thành phần này có mối quan hệ chặt chẽ chấp nhận nếu không hoàn thành các kịch và tác động qua lại với nhau trong hệ thống bản kiểm tra và kiểm tra tự động. quản lý chất lượng phần mềm. Các thành Cuối cùng trong quá trình phát triển phần phần này sẽ được trình bày cụ thể ở các mục mềm, bộ ba Amigos nên họp thường xuyên dưới đây. Trong nghiên cứu này chỉ đặc biệt để thảo luận phát triển phần mềm AMS. tập trung vào thành phần quy trình của hệ Thay đổi quy trình thống. Quy trình chuyển đổi từ hiện tại sang hướng Khởi động hành vi được chia làm 3 giai đoạn: Tự động Để thu được lợi ích của BDD, quy trình phát hóa kịch bản kiểm thử, viết kịch bản kiểm triển của AMS cần một vài quy tắc mới. thử chấp nhận bằng mã Gherkin và định Đầu tiên, phải hình thức hóa tất cả các tiêu nghĩa các tiêu chuẩn chấp nhận của câu chuẩn chấp nhận bằng các tập tin Gherkin. chuyện người dùng bằng mã Gherkin. Thứ hai, không bao giờ cam kết hoàn thành Tự động hóa kịch bản kiểm thử một câu chuyện người dùng mà không có Điểm xuất phát sẽ là giai đoạn kiểm thử tự tiêu chuẩn chấp nhận Gherkin. động (Hình 4). Nghĩa là tại thời điểm này, Thứ ba, bắt buộc phải có kiểm thử tự động. các định nghĩa của câu chuyện người dùng từ Các câu chuyện người dùng không nên được phía khách hàng Frankly vẫn giữ nguyên. Hình 4. Tự động hóa kịch bản kiểm thử Viết kịch bản kiểm thử chấp nhận bằng tự động chạy ổn và có thể giảm bớt thời gian mã Gherkin cho kiểm thử viên thực hiện kiểm tra hồi quy Sau khi giai đoạn thứ nhất được thực hiện thì bắt đầu chuyển qua giai đoạn 2. trơn tru và thành công, nghĩa là các kịch bản Hình 5. Bộ ba Amigos họp để xác định các kịch bản kiểm tra được viết bằng mã Gherrkin Viết các tiêu chuẩn chấp nhận của câu trơn tru thì quy trình phát triển của dự án chuyện người dùng bằng mã Gherkin AMS bắt đầu hướng hành vi. Quy trình bắt Sau giai đoạn 2, nếu các cuộc họp giữa bộ ba đầu dịch chuyển giai đoạn này hoàn toàn Amigos đã được thực hiện thành công và sang trái để trở thành giai đoạn đầu tiên trong 136
  4. Giải thưởng Sinh viên Nghiên cứu khoa học Euréka lần thứ XIX năm 2017 Kỷ yếu khoa học mỗi chu kỳ phát triển tiếp theo (Hình 6). Hình 6. Quy trình phát triển hướng hành vi sau khi được dịch chuyển từ phải hoàn toàn sang trái KẾT QUẢ VÀ THẢO LUẬN giải quyết. Vấn đề của dự án AMS và các Khi áp dụng BDD trong quy trình phát triển, giải pháp của quy trình BDD được trình bày các vấn đề hiện tại của dự án AMS đã được trong Bảng 1. Bảng 1. Vấn đề của dự án AMS và các giải pháp của quy trình BDD Vấn đề Giải pháp Chủ sở hữu sản phẩm, lập trình viên và kiểm BDD làm thành bộ ba Amigos và đưa 3 vai thử viên không có cơ hội nói chuyện nhiều trò này hợp tác gần nhau trong các cuộc cùng nhau. họp. Các tiêu chuẩn chấp nhận bị thiếu hoặc xác Các tiêu chuẩn chấp nhận được hệ thống lại định không rõ ràng gây lãng phí thời gian thông qua các tập tin được viết bằng mã trong mỗi chu kỳ phát triển. Gherkin. Các tính năng của sản phẩm khó giải thích Các kịch bản mô tả các hành vi của hệ cho toàn bộ thành viên trong dự án, dẫn tới thống được viết bằng ngôn ngữ Gherkin dễ các thành viên hiểu hệ thống khác nhau. hiểu với tất cả mọi người. Bên cạnh các vấn đề được BDD giải quyết khả năng sẽ phải thay thế nhân sự trong dự thì việc thay đổi quy trình phát triển của dự án AMS. án AMS cũng có thể sẽ gặp không ít thử Thứ ba, vì là quy trình mới, nên chỉ có thể áp thách. dụng từng bước để không làm phá vỡ đi quy Thứ nhất, các thành viên trong bộ ba Amigos trình hiện tại của dự án AMS, vì vậy yêu cầu đã có những vai trò riêng biệt ngay từ ban sự kiên trì và chấp nhận rủi ro của toàn dự án đầu và khó mà điều chỉnh vai trò của họ để trong một thời gian tương đối (ước lượng là 4 thích nghi với sự thay đổi quy trình của dự tháng) để có thể đánh giá được đầy đủ lợi ích án. Việc này đòi hỏi cần sự cộng tác của tất mà quy trình mới mang lại. cả các thành viên trong dự án AMS. Cũng như cần có sự khuyến khích từ phía lãnh đạo KẾT LUẬN VÀ KIẾN NGHỊ Công ty Terralogic Việt Nam. Nghiên cứu đã hoàn thành nhiệm vụ ứng Thứ hai, kiểm thử viên đòi hỏi phải có khả dụng các lý thuyết về kiểm thử phần mềm và năng viết kiểm thử tự động cũng như các phương pháp phát triển hướng hành vi để đề kịch bản Gherkin thật sự tốt. Thường kiểm xuất hệ thống quản lý chất lượng cho dự án thử viên chỉ thực hiện kiểm thử thủ công, do AMS tại Công ty TNHH Terralogic Việt đó không yêu cầu kiến thức lập trình. Tuy Nam. Hệ thống tập trung vào ba thành phần nhiên, khi áp dụng quy trình mới đòi hỏi chính: Quy trình, Công cụ và Con người. kiểm thử viên cần phải bổ sung thêm kiến Hệ thống được đề xuất đặc biệt tập trung đổi thức về lập trình, cũng như có kỹ năng sâu mới quy trình phát triển hiện tại (tồn đọng rộng về mặt kinh doanh của dự án. Do đó, có nhiều hạn chế) từ chưa hướng hành vi sang 137
  5. Giải thưởng Sinh viên Nghiên cứu khoa học Euréka lần thứ XIX năm 2017 Kỷ yếu khoa học quy trình phát triển hướng hành vi (đã giải được hiệu quả của hệ thống, cần phải thử quyết được các hạn chế hiện tại) là phù hợp nghiệm trong thời gian dài, phải được cải và hoàn toàn có cơ sở khả thi để áp dụng tiến, sửa đổi sao cho phù hợp hơn và được thực tế. Tuy nhiên, để có thể khẳng định đánh giá đầy đủ hơn. TÀI LIỆU THAM KHẢO DAN NORTH (2006). Introduce BDD. Better Software magazine. JOHN FERGUSON SMART (2014). BDD in Action. DOROTHY GRAHAM. (2011). Foundations of softwaretesting ISTQB certification. 138
nguon tai.lieu . vn