Thuộc tính sản phẩm nội bộ

Các thuộc tính sản phẩm bên trong mô tả các sản phẩm phần mềm theo cách chỉ phụ thuộc vào chính sản phẩm đó. Lý do chính để đo lường các thuộc tính sản phẩm nội bộ là nó sẽ giúp giám sát và kiểm soát sản phẩm trong quá trình phát triển.

Đo lường các thuộc tính sản phẩm nội bộ

Các thuộc tính sản phẩm nội bộ chính bao gồm sizestructure. Kích thước có thể được đo tĩnh mà không cần phải thực hiện chúng. Kích thước của sản phẩm cho chúng ta biết về nỗ lực cần thiết để tạo ra nó. Tương tự, cấu trúc của sản phẩm đóng một vai trò quan trọng trong việc thiết kế bảo trì sản phẩm.

Đo kích thước

Kích thước phần mềm có thể được mô tả bằng ba thuộc tính:

  • Length - Đó là kích thước vật lý của sản phẩm.

  • Functionality - Nó mô tả các chức năng do sản phẩm cung cấp cho người dùng.

  • Complexity - Độ phức tạp có nhiều loại khác nhau, chẳng hạn như.

    • Problem complexity - Đo lường mức độ phức tạp của vấn đề cơ bản.

    • Algorithmic complexity - Đo độ phức tạp của thuật toán được thực hiện để giải quyết vấn đề

    • Structural complexity - Đo cấu trúc của phần mềm được sử dụng để thực hiện thuật toán.

    • Cognitive complexity - Đo lường nỗ lực cần thiết để hiểu phần mềm.

Phép đo của ba thuộc tính này có thể được mô tả như sau:

Chiều dài

Có ba sản phẩm phát triển có phép đo kích thước rất hữu ích để dự đoán nỗ lực cần thiết cho việc dự đoán. Chúng là đặc điểm kỹ thuật, thiết kế và mã.

Đặc điểm kỹ thuật và thiết kế

Các tài liệu này thường kết hợp văn bản, đồ thị và các sơ đồ và ký hiệu toán học đặc biệt. Phép đo đặc điểm kỹ thuật có thể được sử dụng để dự đoán độ dài của thiết kế, do đó nó là một công cụ dự đoán độ dài mã.

Các sơ đồ trong tài liệu có cú pháp thống nhất như đồ thị có nhãn, sơ đồ luồng dữ liệu hoặc lược đồ Z. Vì tài liệu đặc tả và thiết kế bao gồm văn bản và sơ đồ, độ dài của nó có thể được đo bằng một cặp số thể hiện độ dài văn bản và độ dài sơ đồ.

Đối với các phép đo này, các đối tượng nguyên tử phải được xác định cho các loại biểu đồ và ký hiệu khác nhau.

Các đối tượng nguyên tử cho sơ đồ luồng dữ liệu là quy trình, thực thể bên ngoài, kho dữ liệu và luồng dữ liệu. Các thực thể nguyên tử cho các đặc tả đại số là sắp xếp, chức năng, phép toán và tiên đề. Các thực thể nguyên tử cho các lược đồ Z là các dòng khác nhau xuất hiện trong đặc tả.

Mã có thể được tạo ra theo nhiều cách khác nhau như ngôn ngữ thủ tục, hướng đối tượng và lập trình trực quan. Thước đo truyền thống được sử dụng phổ biến nhất về độ dài chương trình mã nguồn là Dòng mã (LOC).

Tổng chiều dài,

LOC = NCLOC + CLOC

I E,

LOC = Non-commented LOC + Commented LOC

Ngoài dòng mã, các lựa chọn thay thế khác như kích thước và độ phức tạp do Maurice Halsted đề xuất cũng có thể được sử dụng để đo chiều dài.

Khoa học phần mềm của Halstead đã cố gắng nắm bắt các thuộc tính khác nhau của một chương trình. Ông đề xuất ba thuộc tính nội bộ của chương trình như độ dài, từ vựng và khối lượng phản ánh các quan điểm khác nhau về kích thước.

Anh ấy bắt đầu bằng cách xác định một chương trình Pnhư một tập hợp các mã thông báo, được phân loại theo toán tử hoặc toán hạng. Các chỉ số cơ bản cho các mã thông báo này là,

  • μ1 = Số lượng toán tử duy nhất

  • μ2 = Số toán hạng duy nhất

  • N1 = Tổng số lần xuất hiện của các toán tử

  • N2 = Số lượng toán tử duy nhất

Độ dài P có thể được định nghĩa là

$$ N = N_ {1} + N_ {2} $$

Từ vựng của P

$$ \ mu = \ mu _ {1} + \ mu _ {2} $$

Khối lượng chương trình = Số phép so sánh tinh thần cần thiết để viết một chương trình có độ dài N, Là

$$ V = N \ times {log_ {2}} \ mu $$

Cấp độ chương trình của một chương trình P khối lượng V Là,

$$ L = \ frac {V ^ \ ast} {V} $$

Trong đó, $ V ^ \ ast $ là khối lượng tiềm năng, tức là khối lượng triển khai kích thước tối thiểu của P

Nghịch đảo của mức độ là khó khăn -

$$ D = 1 \ sơ đồ L $$

Theo lý thuyết Halstead, chúng ta có thể tính toán một ước tính L như

$$ {L} '= 1 \ Diagup D = \ frac {2} {\ mu_ {1}} \ times \ frac {\ mu_ {2}} {N_ {2}} $$

Tương tự, thời lượng chương trình ước tính là, $ \ mu_ {1} \ times log_ {2} \ mu_ {1} + \ mu_ {2} \ times log_ {2} \ mu_ {2} $

Nỗ lực cần thiết để tạo ra P được đưa ra bởi,

$$ E = V \ Diagup L = \ frac {\ mu_ {1} N_ {2} Nlog_ {2} \ mu} {2 \ mu_ {2}} $$

Đơn vị đo lường ở đâu E phân biệt tinh thần sơ đẳng cần thiết để hiểu P

Các lựa chọn thay thế khác để đo chiều dài là -

  • Về số lượng byte bộ nhớ máy tính cần thiết cho văn bản chương trình

  • Xét về số lượng ký tự trong văn bản chương trình

Phát triển hướng đối tượng đề xuất những cách mới để đo độ dài. Pfleeger và cộng sự. nhận thấy rằng số lượng đối tượng và phương pháp dẫn đến ước tính năng suất chính xác hơn so với những người sử dụng dòng mã.

Chức năng

Số lượng chức năng vốn có trong một sản phẩm cho phép đo kích thước sản phẩm. Có rất nhiều phương pháp khác nhau để đo lường chức năng của các sản phẩm phần mềm. Chúng ta sẽ thảo luận về một phương pháp như vậy ─ phương pháp Điểm hàm của Albrecht ─ trong chương tiếp theo.