Function Point là gì

Đo lường phần mềm là sử dụng các kỹ thuật để xác định được kích thước của phần mềm, từ đó cho ra các số liệu quan trong để tính toán như performance, năng suất làm việc, kế hoạch công việc, … Hiện nay có khá nhiều các để đo lường của phần mềm, trong bài này mình sẽ giới thiêu qua một số khái niệm kỹ thuật thường được áp dụng trên thế giới.

1. LOC – Lines Of Code

Như tên của nó, kỹ thuật này đếm số lượng dòng code để định mức kích thước phần mềm. Hạn chế của kỹ thuật này là khó để tính toán một cách chính xác lúc trước khi bắt đầu thực hiện, thường thì người ta hay đo đạc lại thông số này khi kết thúc dự án. Thêm một hạn chế của nó nữa là con số này còn phụ thuộc vào trình độ và phong cách lập trình của từng người, nên nó cũng mang tính tương đối.

Ngoài LOC ra thì người ta còn sử dụng đến khái niệm KLOC. Thực ra khái niệm này không có gì mới mẻ cả mà cũng là số dòng code nhưng tính theo đơn vị 1000. Điều đó cũng có nghĩa là:

1 KLOC = 1000 LOC

2. McCabe’s Cyclomatic Complexity

Nghe tên thôi thì nó là một kỹ thuật khá mới lạ, kỹ thuật sử dụng cách tính toán độ phức tạp của đường cơ sở (bạn có thể xem mình giới thiệu và áp dụng vào các ví dụ của chúng trong bài này: Kỹ thuật để testcase không bị bỏ sót)
Về ý nghĩa thì nó tính toán ra số đường cơ sở, cũng tỉ lệ với độ phức tạp mỗi đoạn code mang lại. Một mặt hạn chế là cách này khá tốn công để làm, nhưng khi thực hiện thì mang lại kết quả khá chính xác.

3. FPA – Function Point Analysis

Function point là cách đo số lượng chức năng nghiệp vụ trong ứng dụng phần mềm

FPA dựa trên việc break down (phân nhỏ) ứng dụng phần mềm thành nhiều components nhỏ hơn và đo kích thước của chúng.

FPA chủ yếu hướng tới “Form-based/ dựa trên hình thức” hoặc “Record-oriented/ hồ sơ theo định hướng” ứng dụng

Cách tính này có thể không phù hợp với những ứng dụng liên quan đến:

  • Thuật toán phức tạp, ví dụ như hình ảnh / video / âm thanh xử lý văn bản hoặc dữ liệu khai thác mỏ, mô phỏng, trò chơi tối ưu hóa, chiến lược
  • Các ứng dụng đa phương tiện phức tạp, hoạt hình 3D
  • Phần mềm nhúng thời gian thực
  • Quản lý dữ liệu Rất quy mô lớn

Cách tính này được khuyến khích sử dụng với những ứng dụng phần mềm được coi như là sự kết hợp của:

  • Giao dịch = di chuyển dữ liệuDi chuyển dữ liệu từ các ứng dụng bên ngoài hoặc từ bên ngoài để ứng dụng
  • Dữ liệu ở phần còn lạiLưu trữ dữ liệu

Ngoài ra FPA còn sử dụng các mức độ đánh giá khác nhau cho từng component để đánh giá công sức phát triển cho những component đó.

Function Point là gì

Kết

Hiện nay có khá nhiều cách để áp dụng vào việc đo lường. Tuy nhiên dựa vào mục đích sử dụng và tuỳ vào các ràng buộc khác để chúng ta có thể lựa chọn những cách khác nhau đề sử dụng.

Hiện nay, công ty Kaopiz đang sử dụng cách KLOC để đo đạc.

Các cách đo lường ở trên được áp dụng cho hầu hết ngôn ngữ và thiết kế lập trình. Ngoài cách ở trên, phần mềm hướng đối tượng còn có thêm một số cách sau:

  • Depth of inheritance tree (DIT)
  • Number of children (NOC)
  • Weighted method count (WMC)
  • Response for a class (RFC)

Nguyễn Trọng Giáp

defined per function points

the function points , you have

can function

heart function

will function

lung function


FP có nghĩa là gì? FP là viết tắt của Chức năng điểm. Nếu bạn đang truy cập phiên bản không phải tiếng Anh của chúng tôi và muốn xem phiên bản tiếng Anh của Chức năng điểm, vui lòng cuộn xuống dưới cùng và bạn sẽ thấy ý nghĩa của Chức năng điểm trong ngôn ngữ tiếng Anh. Hãy nhớ rằng chữ viết tắt của FP được sử dụng rộng rãi trong các ngành công nghiệp như ngân hàng, máy tính, giáo dục, tài chính, cơ quan và sức khỏe. Ngoài FP, Chức năng điểm có thể ngắn cho các từ viết tắt khác.

Tìm kiếm định nghĩa chung của FP? FP có nghĩa là Chức năng điểm. Chúng tôi tự hào để liệt kê các từ viết tắt của FP trong cơ sở dữ liệu lớn nhất của chữ viết tắt và tắt từ. Hình ảnh sau đây Hiển thị một trong các định nghĩa của FP bằng tiếng Anh: Chức năng điểm. Bạn có thể tải về các tập tin hình ảnh để in hoặc gửi cho bạn bè của bạn qua email, Facebook, Twitter, hoặc TikTok.

Function Point là gì

Ý nghĩa của FP bằng tiếng Anh

Như đã đề cập ở trên, FP được sử dụng như một từ viết tắt trong tin nhắn văn bản để đại diện cho Chức năng điểm. Trang này là tất cả về từ viết tắt của FP và ý nghĩa của nó là Chức năng điểm. Xin lưu ý rằng Chức năng điểm không phải là ý nghĩa duy chỉ của FP. Có thể có nhiều hơn một định nghĩa của FP, vì vậy hãy kiểm tra nó trên từ điển của chúng tôi cho tất cả các ý nghĩa của FP từng cái một.

Định nghĩa bằng tiếng Anh: Function Point

Bên cạnh Chức năng điểm, FP có ý nghĩa khác. Chúng được liệt kê ở bên trái bên dưới. Xin vui lòng di chuyển xuống và nhấp chuột để xem mỗi người trong số họ. Đối với tất cả ý nghĩa của FP, vui lòng nhấp vào "thêm ". Nếu bạn đang truy cập phiên bản tiếng Anh của chúng tôi, và muốn xem định nghĩa của Chức năng điểm bằng các ngôn ngữ khác, vui lòng nhấp vào trình đơn ngôn ngữ ở phía dưới bên phải. Bạn sẽ thấy ý nghĩa của Chức năng điểm bằng nhiều ngôn ngữ khác như tiếng ả Rập, Đan Mạch, Hà Lan, Hindi, Nhật bản, Hàn Quốc, Hy Lạp, ý, Việt Nam, v.v.

Khi bắt tay vào việc thực hiện một dự án, điều bạn băn khoăn đó là làm sao có thể xác định được khối lượng công việc, từ đó có thể tính toán được chi phí về tài nguyên (con người, thời gian, tiền bạc…). Ví dụ như xây một ngôi nhà cần hết bao nhiêu ngày công, khối lượng vật liệu cần thiết, số lượng nhân công, thời gian thực hiện các công đoạn nhỏ như đào móng, xây tường, đổ bê-tông… để cho ngôi nhà được hoàn thành đúng dự kiến. Để tính được khối lượng công việc cho một dự án phần mềm, người ta dùng phương pháp Function Point Analysis (FPA).

FPA là một phương pháp được ISO chấp nhận, dùng để xác định kích thước về mặt chức năng (functional size) của một hệ thống thông tin. Functional size phản ánh số lượng chức năng liên quan tới và được chấp nhận bởi người dùng trong doanh nghiệp. Nó hoàn toàn độc lập với công nghệ được sử dụng để triển khai hệ thống.Đơn vị dùng để đo lường được gọi là function points (FPs) cũng tương tự như để đo khối lượng, người ta sử dụng “kilôgram”, đo độ dài người ta dùng “mét”…Chính vì vậy, phương pháp FPA biểu diễn độ lớn của hệ thống thông tin bằng số lượng các FPs. Ví dụ như độ lớn của một hệ thống X là 256FPs.Khái niệm FP được đưa ra bởi Allan Albrecht vào giữa những năm 1970 nhằm thay thế cho phương pháp đo lường kích thước phần mềm bằng cách đếm số dòng code, sau đó được IBM xuất bản vào năm 1979, và sau đó là IEEE tái bản vào năm 1981.

  • Tính toán số chức năng dựa trên góc nhìn từ phái end-users về các chức năng của hệ thống.
  • Giảm thiểu hóa công sức, chi phí dùng cho việc tính toán, đo đạc.
  • Thiết lập nên một phương pháp đo đạc thống nhất giữa các tổ chức.

3. Lợi ích

  • Có thể xác định được kích thước của phần mềm từ sớm trong quy trình phát triển.
  • Giữ vai trò như một phương pháp đo đạc căn bản, tăng cường năng suất.
  • Độc lập với công cụ và môi trường phát triển.
  • Cung cấp phương pháp đo lường kích thước thống nhất giữa các nhóm và tổ chức.
  • Là công cụ quan trọng để xác định năng suất, ước lượng chi phí, công sức…

4. Quy trình ( 5 bước)

  1. Xác định loại dự án (phát triển dự án mới, nâng cấp dự án hay chỉ đánh giá một dự án đã có)
  2. Xác định phạm vi của dự án.
  3. Xác định số lượng Function Points thô (Unadjusted Function Points)
  4. Xác định hệ số cân đối (Value Adjusted Factors).
  5. Xác định số lượng Function Points cân đối.