|
Raqamli texnologiyalar vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari unversiteti
|
səhifə | 3/3 | tarix | 24.12.2023 | ölçüsü | 91,14 Kb. | | #160576 |
| dttl1tYarim ajratilgan
|
3.0
|
1.12
|
2.5
|
0,35
|
Oʻrnatilgan
|
3.6
|
1.20
|
2.5
|
0,32
|
Harakat odam-oylarda o'lchanadi va formuladan ko'rinib turibdiki, kodning Kilo-liniyalariga bog'liq. Rivojlanish vaqti oylar bilan o'lchanadi. Ushbu formulalar Asosiy Model hisob-kitoblarida shunday qo'llaniladi, chunki ishonchlilik, tajriba kabi turli omillar ko'p hisobga olinmaydi, bundan buyon taxmin qo'pol bo'ladi. Quyida Basic COCOMO uchun NodeJs dasturi keltirilgan
Dastur kodi :
const rl = require("readline");
const readline = rl.createInterface({
input: process.stdin,
output: process.stdout,
});
// cocmo funksiya e'lon qilganman. Bu funksiyada klogni kritishni soraydi
function cocomoCalc() {
readline.question("klogni kiriting: ", function (klog) {
if (isNaN(+klog)) {
console.log("Iltimos raqam kriting!");
return cocomoCalc();
}
// bu yerda kitigan klogimiz qaysi kategoriga tegishli ekanligini aniqlaydi
const category =
klog >= 2 && klog <= 50
? "organic"
: klog > 50 && klog <= 300
? "semiDetached"
: "embedded";
// bu yerda pastdagi objectni olib ustida amallar bajaradi
const effort =
COCOMO_CONSTANTS.a[category] *
Math.pow(klog, COCOMO_CONSTANTS.b[category]);
const developmentTime =
COCOMO_CONSTANTS.c[category] *
Math.pow(effort, COCOMO_CONSTANTS.d[category]);
const peopleRequired = effort / developmentTime;
const productivity = klog / effort;
// Natijani ekranga chiqaradi
console.log(`\nKatigoriya: ${category.toUpperCase()}\n`);
console.log(`Effort: ${effort}\n`);
console.log(`Ishlab chiqish vaqti: ${developmentTime}\n`);
console.log(`Dasturchilar soni: ${peopleRequired}\n`);
console.log(`Hosildorlik: ${productivity}\n`);
readline.prompt();
cocomoCalc();
});
}
// bu yerda object yaratib olganman
const COCOMO_CONSTANTS = {
a: {
organic: 2.4,
semiDetached: 3,
embedded: 3.6,
},
b: {
organic: 1.05,
semiDetached: 1.12,
embedded: 1.2,
},
c: {
organic: 2.5,
semiDetached: 2.5,
embedded: 2.5,
},
d: {
organic: 0.38,
semiDetached: 0.35,
embedded: 0.32,
},
};
cocomoCalc();
Natija:
Dostları ilə paylaş:
|
|
|