Yêu cầu chức năng và phi chức năng - Topchuyengia

Yêu cầu chức năng và phi chức năng - Topchuyengia
Tô Lãm

23/02/2024

337

0

Chia sẻ lên Facebook
Yêu cầu chức năng và phi chức năng - Topchuyengia

Bạn có biết yêu cầu chức năng và phi chức năng là gì hay chưa? Xây dựng một phần mềm thành công đòi hỏi sự kết hợp hài hòa giữa nhiều yếu tố. Trong đó, nếu bạn xác định rõ được yêu cầu chức năng và phi chức năng, dự án của bạn sẽ đến được đích mà mình mong muốn. Bài viết này của Topchuyengia sẽ giúp bạn hiểu rõ hai loại yêu cầu này, từ đó áp dụng hiệu quả vào dự án. 

 

Bạn đang gặp khó khăn trong việc xác định yêu cầu chức năng và phi chức năng? Đừng quá lo lắng, chuyên gia BA giàu kinh nghiệm của Askany có thể hỗ trợ bạn giải quyết vấn đề này.

Tổng quan về yêu cầu chức năng và phi chức năng

Yêu cầu chức năng và phi chức năng là hai loại yêu cầu quan trọng trong quá trình phát triển phần mềm hay hệ thống. Chúng được định nghĩa như sau:

Yêu cầu chức năng là gì?

yeu-cau-chuc-nang-va-phi-chuc-nang
Yêu cầu chức năng (Functional Requirements)

 

Yêu cầu chức năng (FR - Functional Requirements) là những mô tả chi tiết về chức năng của một phần mềm hay hệ thống. Chúng quy định những gì hệ thống cần phải làm để đáp ứng nhu cầu của người dùng.

 

Các loại yêu cầu chức năng (Functional Requirements) phổ biến:

  • Chức năng quản trị
  • Giao diện bên ngoài
  • Data Management
  • Quy định kinh doanh
  • Cấp độ ủy quyền
  • Yêu cầu cấp giấy chứng nhận
  • Yêu cầu báo cáo
  • Theo dõi kiểm tra
  • Yêu cầu pháp lý và quy định

 

Ví dụ 1: Phần mềm quản lý khách sạn có thể có các yêu cầu chức năng như: đặt phòng, hủy phòng, thanh toán, in hóa đơn, quản lý nhân viên, báo cáo doanh thu, v.v. Các yêu cầu chức năng thường được biểu diễn bằng các use case, user story, diagram, hoặc các mẫu đặc tả yêu cầu.

 

Ví dụ 2: Hệ thống bán hàng cần có chức năng quản lý sản phẩm, cho phép thêm, sửa, xóa sản phẩm. Chức năng thanh toán cần hỗ trợ các phương thức thanh toán phổ biến như tiền mặt, thẻ ngân hàng, ví điện tử. Hệ thống cần lưu trữ thông tin khách hàng, sản phẩm, đơn hàng,..

Yêu cầu phi chức năng là gì?

Yêu cầu phi chức năng (NFR - Non-Functional Requirements) là những đặc điểm hoặc phẩm chất bổ sung cho chức năng chính của một hệ thống. Chúng quy định các ràng buộc và tiêu chí đánh giá hoạt động của hệ thống thay vì mô tả hành vi cụ thể.

 

 

yeu-cau-chuc-nang-va-phi-chuc-nang
Yêu cầu phi chức năng (Non-Functional Requirements)

Các loại yêu cầu phi chức năng (Non-Functional Requirements) phổ biến:

  • Hiệu suất: Thời gian phản hồi, thông lượng, khả năng mở rộng, v.v.
  • Khả năng sử dụng: Dễ học, dễ sử dụng, thân thiện với người dùng, v.v.
  • Độ tin cậy: Khả năng hoạt động chính xác và không bị lỗi, khả năng phục hồi từ sự cố, v.v.
  • Bảo mật: Bảo vệ dữ liệu và ngăn chặn truy cập trái phép, v.v.
  • Khả năng bảo trì: Dễ dàng sửa chữa và cập nhật, v.v.

 

 

Ví dụ 1: Phần mềm quản lý khách sạn có thể có các yêu cầu phi chức năng như: thời gian phản hồi không quá 2 giây, độ tin cậy 99.9%, bảo mật thông tin khách hàng, khả năng mở rộng cho nhiều khách sạn, v.v. Các yêu cầu phi chức năng thường được biểu diễn bằng các chỉ số, tiêu chí, hay công thức đo lường.

Ví dụ 2: Hệ thống bán hàng cần có khả năng xử lý 1000 giao dịch mỗi giây. Dữ liệu khách hàng cần được bảo mật theo tiêu chuẩn quốc tế. Hệ thống cần có thể mở rộng để hỗ trợ thêm 1000 người dùng mới trong tương lai,...

Xem thêm:

Sự khác nhau giữa yêu cầu chức năng và phi chức năng

Như vậy, chúng ta có thể thấy sự khác nhau rõ ràng giữa yêu cầu phi chức năng và yêu cầu chức năng. Cụ thể:

  • Yêu cầu phi chức năng: Như tên gọi, yêu cầu chức năng là những yêu cầu về những gì hệ thống thiết kế phải làm. Nó mô tả hệ thống sẽ hoạt động ra sao và đáp ứng nhu cầu của người dùng như thế nào. Chúng cho biết rõ hệ thống sẽ phản ứng như thế nào với một lệnh nào đó, các tính năng và kỳ vọng của người dùng.
  • Yêu cầu phi chức năng: Là những yêu cầu về cách thức hoạt động của hệ thống thiết kế. Chúng chỉ ra các hạn chế và ràng buộc mà hệ thống phải tuân theo. Yêu cầu phi chức năng sẽ không ảnh hưởng đến chức năng của ứng dụng.
yêu cầu chức năng và phi chức năng
Sự khác nhau giữa yêu cầu chức năng và phi chức năng

Do đó trong thực tế thì yêu cầu phi chức năng sẽ được cho là có phần quan trọng hơn. Nếu không thỏa mãn được các yêu cầu này thì hệ thống sẽ không được đưa vào sử dụng. Để phân biệt và phân tích yêu cầu chức năng và phi chức năng hiệu quả, Business Analyst cần thực hiện các bước sau:

  • Bước 1: Thu thập yêu cầu từ các nguồn khác nhau, như khách hàng, người dùng, các bên liên quan, các tài liệu tham khảo, v.v.
  • Bước 2: Phân loại yêu cầu thành các nhóm theo mức độ chi tiết, từ cao đến thấp, như: yêu cầu kinh doanh, yêu cầu người dùng, yêu cầu hệ thống, yêu cầu phần mềm, v.v.
  • Bước 3: Phân loại yêu cầu thành các nhóm theo loại, là yêu cầu chức năng và phi chức năng. Có thể sử dụng các kỹ thuật như: hỏi 5 câu hỏi tại sao, sử dụng biểu đồ use case, sử dụng biểu đồ hoạt động, sử dụng bảng FURPS+, v.v.
  • Bước 4: Mô tả yêu cầu bằng các cách khác nhau, như: sử dụng ngôn ngữ tự nhiên, sử dụng ngôn ngữ mô hình hóa, sử dụng các biểu đồ, sử dụng các ca kiểm thử, v.v.
  • Bước 5: Kiểm tra và xác nhận yêu cầu với các bên liên quan, đảm bảo yêu cầu là rõ ràng, đầy đủ, nhất quán, khả thi, kiểm tra được và đáp ứng nhu cầu.

Vai trò của yêu cầu chức năng và phi chức năng

Business analyst là người sẽ tìm hiểu nhu cầu của tổ chức, phân tích hiện trạng, từ đó đưa ra giải pháp giúp tổ chức thay đổi theo hướng tích cực. Giải pháp đó có thể ở tầm chiến lược, chiến thuật hoặc hoạt động.

 

Vì vậy, vai trò của yêu cầu chức năng và phi chức năng trong công việc của BA là rất quan trọng. Chúng sẽ giúp BA hiểu rõ nhu cầu và mong muốn của khách hàng, người dùng và các bên liên quan khác. BA cũng có thể giao tiếp và thống nhất yêu cầu với các bên liên quan khác, như đội phát triển, đội kiểm thử, đội bảo trì, v.v. Ngoài ra, 2 loại yêu cầu này còn giúp họ đánh giá và lựa chọn giải pháp phù hợp nhất với ngân sách của dự án.

 

Yêu cầu chức năng và phi chức năng là hai loại yêu cầu quan trọng trong quá trình phát triển phần mềm hay hệ thống. Để phân biệt và phân tích yêu cầu chức năng và phi chức năng hiệu quả, BA cần thực hiện các bước thu thập, phân loại, mô tả, kiểm tra và xác nhận yêu cầu. Nếu bạn muốn tìm hiểu thêm về bất cứ kiến thức nào trong lĩnh vực business analyst, bạn có thể gửi câu hỏi về cho chuyên gia của chúng tôi trên app Askany.

Bình luận

Kinh nghiệm thực tế

Tư vấn 1:1

Uy tín

Đây là 3 tiêu chí mà TOPCHUYENGIA luôn muốn hướng tới để đem lại những thông tin hữu ích cho cộng đồng