Product Factors Post-Architechture Cost Drivers

Model COCOMO II dapat digunakan untuk memperkirakan usaha dan jadwal untuk seluruh proyek atau untuk sebuah proyek yang terdiri dari beberapa modul. Ukuran dan peringkat cost driver dapat berbeda untuk setiap modul, dengan pengecualian dari atribut Required Development Schedule SCED dan faktor skala.

2.4.1.1 Product Factors

Product factors menjelaskan variasi dalam upaya yang diperlukan untuk mengembangkan perangkat lunak yang disebabkan oleh karakteristik produk dalam pengembangan. Sebuah produk yang kompleks memiliki persyaratan keandalan yang tinggi atau bekerja dengan database yang besar, sehingga akan membutuhkan usaha yang lebih untuk menyelesaikan produk tersebut. Terdapat lima atribut dalam product factors dan atribut CPLX memiliki pengaruh yang kuat pada estimasi usaha. 2.4.1.1.1 Required Software Reliability RELY RELY adalah ukuran sejauh mana perangkat lunak harus melakukan fungsi yang ditujukan selama periode waktu tertentu. Jika efek dari kegagalan perangkat lunak hanya sedikit, hanya berupa ketidaknyamanan maka RELY sangat rendah. Jika kegagalan perangkat lunak berisiko terhadap kehidupan manusia maka RELY sangat tinggi. Tabel 2.11 memberikan skema penilaian untuk RELY. Tabel 2.11. RELY Cost Driver RELY Descriptors : Slight inconven- ience Low, easily recoverable losses Moderate, easily recoverable losses High financial loss Risk to human life Rating Levels Very Low Low Nominal High Very High Extra High Effort Multipliers 0.82 0.92 1.00 1.10 1.26 na 2.4.1.1.2 Database Size DATA Atribut cost driver ini mencoba untuk menangkap efek persyaratan data uji yang besar terhadap pengembangan produk. Peringkat ditentukan dengan menghitung DP, rasio byte dalam database pengujian untuk SLOC dalam program. Alasan ukuran database penting untuk dipertimbangkan adalah karena usaha yang diperlukan untuk menghasilkan data uji yang akan digunakan untuk melaksanakan program. Dengan kata lain, DATA adalah menangkap usaha yang diperlukan untuk merakit dan memelihara data yang dibutuhkan untuk menyelesaikan tes program melalui IOC seperti yang dapat dilihat pada tabel 2.12. Tabel 2.12. DATA Cost Driver DATA Descriptors : Testing DB bytesPgm SLOC 10 10 ≤ DP 100 100≤ DP 1000 DP ≥ 1000 Rating Levels Very Low Low Nominal High Very High Extra High Effort Multipliers na 0.90 1.00 1.14 1.28 na DATA dinilai sebagai rendah jika D P kurang dari 10 dan sebaliknya bernilai sangat tinggi jika lebih besar dari 1000. P diukur dalam baris sumber setara kode SLOC, yang mungkin melibatkan titik fungsi atau konversi penggunaan kembali. 2.4.1.1.3 Product Complexity CPLX Kompleksitas dibagi menjadi lima area, yaitu control operation, computational operational, device-dependant operations, data management operations, dan interface management operations. Ciri untuk masing-masing area dapat dilihat pada tabel 2.13 sampai tabel 2.15, sedangkan rating kompleksitas dari peringkat area yang dipilih dapat dilihat pada tabel 2.16. Tabel 2.13. Komponen CPLX Rating Level Control Operations Computational Operations Device- dependant Operations Data Man. Operations User Interface Man. Operations Very Low Straight-line code with a few non-nested structured programming operators. Dos, CASEs, IFTHENELSE s. Simple module composition via procedure calls or simple scripts. Evaluation of simple expressions : e.g., A=B+CD-E Simple read, write statements with simple formats. Simple arrays in main memory. Simple COTS-DB queries, updates. Simple input forms, report generators. Low Straightforwar d nesting of structured programming operators. Mostly simple predicates. Evaluation of moderate-level expressions : e.g., D=SQRTB 2-4.AC No cognizance needed of particular processor or IO device characteristi cs. IO done at GETPUT level. Single file subsetting with no data structure changes, no edits, no intermediat e files. Moderately complex COTS-DB queries, updates. Use of simple graphic user interface GUI builders. Tabel 2.14. Komponen CPLX Rating Level Lanjutan Control Operations Computational Operations Device- dependant Operations Data Man. Operations User Interface Man. Operations Nominal Mostly simple nesting. Some intermodule control. Decision tables. Simple callbacks or message passing, including middleware- supported distributed processing. Use of standard math and statistical routines. Basic matrixvector operations. IO processing includes device selection, status checking and error processing. Multi-file input and single file output. Simple structural changes, simple edits. Complex COTS-DB queries, updates. Simple use of widget set High Highly nested structured programming operators with many compound predicates. Queue and stack control. Homogeneous , distributed processing. Single processor soft real-time control. Basic numerical analysis : multivariate interpolation, ordinary differential equations. Basic truncation, roundoff concerns. Operations at physical IO level physical storage address translations; seeks, reads, etc.. Optimized IO overlap. Simple triggers activated by data stream contents. Complex data restructurin g. Widget set developmen t and extension. Simple voice IO, multimedia. Tabel 2.15. Komponen CPLX Rating Level Lanjutan Control Operations Computational Operations Device- dependant Operations Data Man. Operations User Interface Man. Operations Very High Reentrant and recursive coding. Fixed- priority interrupt handling. Task synchronizati on, complex callbacks, heterogeneous distributed processing. Single- processor hard real-time control. Difficult but structured numerical analysis : near- singular matrix equations, partial differential equations. Simple parallelization. Routines for interrupt diagnosis, servicing, masking. Communic ation line handling. Performanc e-intensive embedded systems. Distributed database coordination . Complex triggers. Search optimization . Moderately complex 2D3D, dynamic graphics, multimedia. Extra High Multiple resource scheduling with dynamically changing priorities. Microcode- level control. Distributed hard real-time control. Difficult and unstructured numerical analysis : highly accurate analysis of noisy, stochastic data. Complex parallelization. Device timing- dependant coding, micro- programme d operations. Performanc e-critical embedded systems. Highly coupled, dynamic relational and object structures. Natural language data management . Complex multimedia, virtual reality. Tabel 2.16. CPLX Cost Driver Rating Levels Very Low Low Nominal High Very High Extra High Effort Multipliers 0,73 0,87 1 1,17 1,34 1,74 2.4.1.1.4 Developed for Reusability RUSE Atribut cost driver ini menghitung upaya tambahan yang diperlukan untuk membangun komponen yang dapat digunakan kembali pada proyek-proyek saat ini atau masa depan. Upaya ini dilakukan dengan menciptakan desain software yang lebih generik, dokumentasi yang lebih rumit , dan pengujian yang lebih luas untuk memastikan komponen siap untuk digunakan dalam aplikasi lain. Nilai rating RUSE dapat dilihat pada tabel 2.17. Tabel 2.17. RUSE Cost Driver RUSE Descriptors none across project across program across product line across multiple product lines Rating Levels Very Low Low Nominal High Very High Extra High Effort Multipliers na 0,95 1,00 1,07 1,15 1,24 Pengembangan usabilitas ini berpengaruh pada atribut RELY dan DOCU. Atribut RELY harus paling banyak satu tingkat di bawah rating RUSE, sedangkan rating DOCU setidaknya harus berada pada rating Nominal dengan rating Nominal High untuk RUSE, atau berada pada rating High dengan rating Very High dan Extra High untuk RUSE. 2.4.1.1.5 Documentation Match to Life-Cycle Needs DOCU Beberapa model biaya perangkat lunak memiliki cost driver untuk tingkat dokumentasi yang diperlukan. Dalam COCOMO II, skala rating untuk cost driver DOCU dievaluasi dalam hal kesesuaian dokumentasi proyek untuk kebutuhan siklus hidupnya. Skala rating mulai dari Sangat Rendah banyak siklus hidup perlu terbuka hingga Sangat Tinggi sangat berlebihan untuk kebutuhan siklus hidup dapat dilihat Tabel 2.18. Tabel 2.18. DOCU Cost Driver DOCU Descriptors many life cycle needs uncovered some life cycle needs uncovered right- sized to life cycle needs excessive for life cycle needs very excessive for life cycle needs Rating Levels Very Low Low Nominal High Very High Extra High Effort Multipliers 0,81 0,91 1,00 1,11 1,23 na Mencoba untuk menghemat biaya melalui tingkat dokumentasi Sangat Rendah atau Rendah umumnya akan dikenakan biaya tambahan selama proses pemeliharaan siklus hidup proyek.

2.4.1.2 Platform Factors