Ví dụ về cách ước lượng dự án bằng phương pháp FPA (phần I)

Giả sử chúng ta cần lượng giá cho ứng dụng My E-books Lib. Đây là một ứng dụng cho phép bạn quản lý những cuốn ebooks mà bạn đã, đang và dự định đọc, hoặc thậm chí là những cuốn bạn chỉ muốn… sưu tập cho đủ số lượng.

Sách không tự sinh ra và cũng không tự mất đi. Do đó, gì thì gì, bạn cũng phải đi mua sách đã. Ứng dụng có chức năng là “Buy an E-book“. Gọi là mua cho oai thôi nhe, đừng tưởng thiệt mà chạy ra ACB, reg một cái Visa Debit card về rồi thì có nước ngồi… ngắm! Chức năng này đơn giản thôi, có 1 field Textbox dùng để nhập Title, ISBN, Author… hay bất cứ gì cũng được. Một cái Button “Search”.

Vậy rồi… search ở đâu, search bằng niềm tin àh! Oh, yeah… quên mất! Chúng ta sẽ sử dụng dịch vụ của Amazon. Okie. Type “gì gì” đó vào textfield, ứng dụng sẽ “tà tà” hoặc “vùn vụt”  (tùy vào sự hào phóng của anh VDC, FPT hay anh Viettel) tới đập cửa Amazon réo “Ê ê, mày có cuốn sách nào mà có cái tên là ‘gì gì‘ đó không?”. Anh Amazon rất là thân thiện, cười nhe hàm răng trắng bóng được chải bằng bàn chải Colgate với kem… Close-up Whitening, miệng nói tay… quăng cho một list dài dằng dặc “Này thì ‘gì gì‘ mà anh cần tìm đấy! Lần sau có nhờ thì nói rõ rõ một xíu nhóa”. Ô hô hô, một đống hầm bà lằng, nào là Title, nào là ISBN, nào là Publisher, nào là Author… thôi kệ, rút kinh nghiệm đợt sau sẽ type chi tiết hơn. Đại loại sẽ type là “Kamasutra” thay vì type mỗi “gì gì“. Hơ hơ. Sau một thôi, một hồi bới tung đống hầm bà lằng cũng tìm được cuốn “Kỹ thuật ‘gì gì‘ “! Nhấn nút “Add to My Lib” để thêm sách vào thư viện thôi.U…raaaaa công viên chơi nào!

À, mà nhớ tick vào cuốn sách “Kỹ thuật gì gì” rồi mới nhấn nút “Add to My Lib” nhé! Vậy là xong quá trình “mua” sách. Oh, yeah! (Anh Amazon chắc cũng tức trào cơm). Makeno, việc thường ngày ở huyện í mà!

Mua sách xong, nếu thấy háo hức quá thì đọc ngay kẻo “nguội”, nếu chưa muốn đọc thì cứ để đấy đợi hôm nào “trời hồng hồng, nắng trong trong” thì đem ra… phơi, còn nếu hôm qua đã xem “cọp” được của thằng bạn mấy “positions” thì cũng bảo là đang đọc nhé. Còn nếu hôm qua đã “trót” xem hết rồi, nhưng cũng muốn mua về để khi “không thuộc bài” thì có thể lấy ra mà nghía, okie, không sao… Cứ thế mà thiết lập trạng thái (Set Status) cho cuốn sách là “Reading“, “Plan to Read“, “Finished” tương ứng.

Trong quá trình đọc, nếu thấy “kỹ thuật” nào hay thì có thể ghi chú (Noting) lại nhé! Ê, này, này! Gì mà “đắm đuối” thế chứ hả! Đừng thấy “hay” quá mà đọc liền một mạch hết cuốn luôn nha! (Hehe) “Tẩu hỏa nhập ma” bây giờ. Đọc mỗi ngày một tí, một tí tẹo thôi, ghi chú đàng hoàng những lời “khắc cốt ghi tâm”, những “bí kíp”, những lời “vàng ngọc”, “giác ngộ chân lý” của mình… Khi nào tạm ngừng đọc, thì đánh dấu (Paging) số trang lại. Hôm sau nếu rãnh thì lôi ra đọc còn không thì hôm sau, nếu hôm sau của hôm sau lại bận thì có thể để hôm sau của hôm kia đọc cũng không muộn! Yeahhh!

Ứng dụng nho nhỏ mà tui mô tả đến đây là hết rồi! Cảm ơn các bạn đã “căng sức” theo dõi! (Vỗ tay). Thấy ứng dụng mà tui mô tả có “trong sáng” và “rõ ràng” chưa nào!

Tổng quan về Function Point Analysis (FPA) – P1

1. Giới thiệu
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.
2. Mục tiêu
  • 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.