Analisis Dan Pengukuran Fleksibilitas Perangkat Lunak Berdasarkan Poin-Poin Fleksibel
Analisis Dan Pengukuran Fleksibilitas Perangkat Lunak Berdasarkan Poin-Poin Fleksibel
Fleksibilitas
perangkat lunak merupakan salah satu sifat yang menunjukkan jika perangkat lunak mudah untuk diubah.
Perangkat lunak yang fleksibel dapat dengan mudah beradaptasi dengan kebutuhan pengguna dan/ atau
perubahan lingkungan selama periode pengembangan perangkat lunak atau setelah perangkat lunak
digunakan. Dalam makalah ini, kami memperkenalkan dua konsep baru, perubahan fleksibel dan Titik
Fleksibel (FXP). Terkait dengan titik fleksibel, seperangkat indeks fleksibilitas, yaitu derajat fleksibel, gaya
fleksibel, jarak fleksibel, kapasitas fleksibel, dan rumus perhitungannya ditentukan. Kami selanjutnya
menyajikan skema yang memanfaatkan konsep dan indeks baru ini untuk mengukur fleksibilitas perangkat
lunak secara kuantitatif. Fleksibilitas perangkat lunak terkait properti. Mereka adalah kemampuan beradaptasi
perangkat lunak, kerapuhan, kekakuan, elastisitas dan plastisitas, juga dibahas dan dianalisis. Poin fleksibel
dikategorikan ke dalam lima jenis berbeda: FXP potensial, FXP yang tersedia, FXP bekas, FXP saat ini, dan
FXP yang diperlukan, dan empat level berbeda: FXP Adaptif Mandiri, FXP Pengguna Tingkat Rendah, FXP
Pengguna Tingkat Tinggi, dan Pengembang -Tingkat Pengguna FXP. Hubungan dan perbedaan antara titik
fleksibel dan dampaknya terhadap pengembangan, pemeliharaan, dan kualitas perangkat lunak dibahas.
Proses pengukuran fleksibilitas perangkat lunak berdasarkan titik fleksibel direpresentasikan. Studi kasus
sederhana dilakukan untuk mengilustrasikan analisis dan pengukuran fleksibilitas perangkat lunak. Metrik
dalam makalah ini dapat digunakan untuk memandu pengembang perangkat lunak untuk menentukan dan
meningkatkan fleksibilitas aplikasi perangkat lunak mereka dan untuk membandingkan fleksibilitasnya di
antara sistem perangkat lunak yang berbeda atau versi yang berbeda.
1. Perkenalan
Fleksibilitas sering digunakan dalam rekayasa perangkat lunak sebagai salah satu sifat utama. Banyak
produk dan teknologi perangkat lunak diberi label "fleksibel". Namun, apa itu fleksibilitas perangkat lunak
dan bagaimana mengukurnya masih belum jelas. Meskipun secara intuitif fleksibilitas perangkat lunak
dipahami sebagai kemampuan untuk menanggapi perubahan, dan kadang-kadang digunakan untuk
mengevaluasi kualitas perangkat lunak, definisi formal dari fleksibilitas perangkat lunak dan sifat-sifatnya
kurang dipahami. Situasi tersebut dapat terjadi karena alasan-alasan berikut: • “Fleksibilitas”
adalah kata yang kaya makna. Kadang-kadang digunakan secara bergantian dengan istilah lain, seperti
adaptabilitas, plastisitas, elastisitas, kelincahan dan keserbagunaan, dll. • Fleksibilitas
perangkat lunak, mirip dengan fleksibilitas material, adalah salah satu sifat internal perangkat lunak.
Meskipun, betapa mudahnya perangkat lunak digunakan, berapa lama waktu yang diperlukan untuk
membuat perubahan pada perangkat lunak yang ada, dll., sampai batas tertentu mencerminkan sifat
fleksibilitas perangkat lunak, perilaku eksternal seperti itu tidak
mengungkapkan inti dari fleksibilitas perangkat lunak. • Sepengetahuan penulis, tidak ada kriteria pengukuran
fleksibilitas perangkat lunak yang terdefinisi dengan baik dan terpadu.
Sejak awal tahun 1980-an, konsep “fleksibilitas” telah menarik perhatian dalam industri manufaktur dan
manajemen bisnis [1][2][3]. Dalam Sistem Manufaktur Fleksibel (FMS), fleksibilitas menunjukkan kemampuan
untuk menanggapi perubahan dan kemampuan untuk menimbulkan perubahan tersebut pada entitas lain
dalam sistem. Dalam rekayasa perangkat lunak, konsep fleksibilitas perangkat lunak telah muncul pada
tahun 1979 [4], tetapi sebagian besar literatur datang hampir sepuluh tahun kemudian (pada tahun 1990-an)
dan penelitian terutama difokuskan pada aspek kualitatif dari fleksibilitas perangkat lunak [4][5][ 6][7][8].
331
Machine Translated by Google
Pamas (1979) berpendapat perangkat lunak yang fleksibel adalah perangkat lunak yang dapat dengan
mudah diubah, diperluas, dikontrak, atau lainnya agar dapat digunakan dalam berbagai cara [4]. Keith
Bennett (1999, 2000,2004) mempresentasikan daftar fitur perangkat lunak yang fleksibel, menunjukkan
bahwa perangkat lunak yang fleksibel harus diperlukan dan memadai, dipersonalisasi, dapat disesuaikan
dan menyesuaikan diri, didistribusikan, dalam unit kecil dan transparan [5][6] [7]. Nelson, dkk. (1997)
mendefinisikan fleksibilitas teknologi dalam konteks perangkat lunak manajemen alur kerja. Mereka
mengusulkan kerangka pengukuran untuk fleksibilitas teknologi yang mencakup faktor-faktor seperti
modularitas, dimensi perubahan, tingkat respon, keahlian dan koordinasi tindakan dalam dimensi
fleksibilitas proses [8]. Zhao (1998) mengusulkan dua konsep fleksibilitas perangkat lunak terkait dalam
penelitian tentang manajemen alur kerja: kemampuan beradaptasi sistem dan keserbagunaan sistem.
Kemampuan beradaptasi sistem adalah kemampuan untuk memodifikasi sistem untuk mengatasi
perubahan besar dalam proses bisnis dengan sedikit atau tanpa gangguan pada operasi bisnis.
Keserbagunaan sistem (atau ketahanan sistem) adalah kemampuan sistem untuk memungkinkan
prosedur yang fleksibel menangani pengecualian dalam proses dan prosedur [9]; Lassing (1999)
membuat analisis kualitatif fleksibilitas perangkat lunak pada perangkat lunak manajemen berdasarkan
skenario yang diberikan [10]; Zeng dan Zhao (2002) mempresentasikan “Mencapai Fleksibilitas Perangkat
Lunak melalui Teknik Alur Kerja Cerdas” [11]. Keith Bennett (2004) menjelaskan fleksibilitas perangkat
lunak sedemikian rupa sehingga perangkat lunak itu fleksibel – mudah untuk diubah tanpa mengorbankan
ketergantungan (dalam arti luas, biaya membuat perubahan sebanding dengan ukuran perubahan, bukan
sistem) [7 ]. Fenton [3] mengusulkan pengukuran dilakukan pada arsitektur perangkat lunak, tetapi
arsitektur umumnya tidak terlihat oleh klien.
Perangkat lunak mudah diubah karena "lunak", hanya dengan beberapa penekanan tombol, tetapi
dalam praktiknya sulit untuk diubah karena kompleksitas dan tembus pandang intrinsiknya. Seringkali
tidak jelas kapan perangkat lunak harus diubah, dan kapan harus dibuang dan diganti, properti apa yang
harus tetap tidak berubah. Hingga saat ini, perekayasa perangkat lunak belum begitu berhasil dalam
memahami bagaimana melakukan ini, dan adaptasi perangkat lunak terhadap perubahan belum
sepenuhnya diselesaikan, namun tuntutan untuk mengubah perangkat lunak dalam waktu internet terus
meningkat. Saat ini, tantangan besar yang dihadapi perangkat lunak datang dari perubahan acak
kebutuhan pengguna dan lingkungan. Hanya perangkat lunak yang dapat menangani perubahan ini, ia
dapat bertahan lama karena perangkat lunak adalah entitas logis, tidak dapat usang atau habis seperti
perangkat keras, dan perangkat lunak dapat hidup selamanya tanpa perubahan persyaratan dan
lingkungan. Fleksibilitas perangkat lunak adalah milik perangkat lunak yang dapat diubah atau diubah
dengan mudah untuk memenuhi permintaan kebutuhan pengguna dan perubahan lingkungan, dan oleh
karena itu fleksibilitas perangkat lunak dapat dimanfaatkan untuk mengatasi tantangan tersebut. Makalah
ini mencoba mengembangkan metrik dan metode pengukuran fleksibilitas
perangkat lunak pada fungsionalitas yang dapat
digunakan untuk: • Membandingkan fleksibilitas
perangkat lunak yang berbeda. • Mengevaluasi kapasitas fleksibilitas perangkat lunak. • Panduan
pengembang perangkat lunak
dan pengguna perangkat lunak untuk melakukan evolusi perangkat lunak dan lebih lanjut meningkatkan
fleksibilitas perangkat lunak. • Siapkan manipulator perangkat lunak pada tingkat yang berbeda untuk menerapkan flek
Makalah selanjutnya disusun sebagai berikut: Bagian 2 mengembangkan konsep di balik metrik kami
untuk pengukuran fleksibilitas perangkat lunak, dan menganalisis konotasi fleksibilitas, adaptasi,
perubahan perangkat lunak, dan perubahan fleksibel. Bagian 3 mengusulkan konsep dan metrik
pengukuran fleksibilitas perangkat lunak seperti derajat fleksibel, gaya fleksibel, jarak fleksibel dan
kapasitas fleksibel, serta rumus perhitungannya. Bagian 4 membahas analisis berdasarkan jenis dan
level titik fleksibel dan merepresentasikan proses pengukuran fleksibilitas perangkat lunak.
332
Machine Translated by Google
Bagian 5 selanjutnya memberikan studi kasus untuk mengilustrasikan analisis dan pengukuran fleksibilitas
perangkat lunak. Akhirnya, bagian 6 menarik kesimpulan dan membahas pekerjaan masa depan.
2. Analisis konsep
Jelas bahwa arti asli dari kelenturan seharusnya terkait dengan sifat-sifat bahan yang dapat ditekuk, diputar,
ditekuk, ditekuk atau dipelintir berulang kali tanpa patah, atau rusak. Dengan demikian, fleksibilitas perangkat
lunak didefinisikan sebagai properti perangkat lunak yang menunjukkan apakah perangkat lunak mudah diubah
atau diubah berulang kali, secara terbalik dan harmonis, yaitu perangkat lunak mampu dibengkokkan, diputar,
ditundukkan, ditekuk atau diputar berulang kali tanpa putus, cedera. atau kerusakan. Kami menamakan
perubahan tersebut sebagai perubahan fleksibel.
Perubahan fleksibel memiliki ciri-ciri sebagai berikut: •
Perubahan dapat dikontrol, yaitu perubahan terbatas pada suatu rentang
tertentu; • Change is repeatable, yaitu perubahan dapat dilakukan berulang kali dengan kemudahan yang
hampir sama; • Perubahan terbalik, yaitu perubahan dapat dipulihkan dengan kemudahan
yang hampir sama; • Perubahan itu harmonis, yaitu perubahan itu konsisten dan perubahan di satu titik tidak
mengarah pada kegagalan di titik lain, dan mudah berubah tanpa mengorbankan ketergantungan;
• Perubahan itu mudah, yaitu perubahan dilakukan dengan sedikit waktu dan biaya rendah.
333
Machine Translated by Google
Waktu dan biaya dapat diukur, tetapi nilainya relatif, tidak dapat digunakan untuk definisi, karena tidak dapat
mencerminkan esensi fleksibilitas. Karena sifat multidimensinya, sulit menemukan nilai tunggal untuk mengukur
fleksibilitas dan membandingkan fleksibilitas di antara perangkat lunak yang berbeda di masa lalu.
Dalam pandangan kami, karena perangkat lunak ditulis oleh bahasa pemrograman, maka ia memiliki komposisi
statis dan komposisi dinamis. Komposisi statis perangkat lunak adalah bentuk statisnya yang terdiri dari kode
statis, kerangka kerja, metode, data, dan informasi statis lainnya; sementara komposisi dinamis perangkat lunak
adalah bentuk dinamisnya, yaitu perilaku waktu prosesnya, terdiri dari proses dinamis, utas, aliran kontrol, aliran
data, interaksi pengguna, dan faktor dinamis lainnya. Secara intuitif, fleksibilitas perangkat lunak adalah salah satu
properti perangkat lunak yang menunjukkan betapa mudahnya perangkat lunak dapat membuat perubahan
komposisi statis dan perubahan komposisi dinamis.
Namun, tidak mudah untuk mengukur dan mengevaluasi 'mudah'.
334
Machine Translated by Google
besar i f , perubahannya.
f menunjukkan ikemudahan
lebih keras atau
perangkat
kesulitan
lunak
untuk
membuat
melakukan
perubahan
perubahan
melalui
perangkat
FXP i. lunak.
Semakin
Gelar Fleksibel Ki
Saya
C Ki
C: ÿ= = 1
, perangkat lunak seluruh atau sebagian. • Berdasarkan
• Kapasitas Fleksibel ukuran fleksibilitas
Saya
definisi di atas, seorang manipulator dapat menggunakan fleksibilitas pada i hanya jika F ÿ f . Dia
Saya
.
FXP (AFXP): titik fleksibel di mana pengguna memiliki kemampuan untuk memanipulasi. Itu
N
CAFXP |
= ÿKi f ÿ F kapasitas Saya Dia
=1
AFXP adalah 3 FXP Saya
.
Terpakai (UFXP): titik fleksibel yang telah dimanipulasi dan benar-benar digunakan oleh pengguna. Itu
N
CUFXP
= ÿK jika ÿ F )( | Saya Dia
=1
kapasitas UFXP adalah Saya
335
Machine Translated by Google
pengguna telah menggunakan beberapa poin fleksibel, dan perangkat lunak telah berubah dan beberapa
mekanisme fleksibel telah aktif, dan efek fleksibilitas telah dilakukan dalam perilaku perangkat lunak.
4 FXP Saat Ini (CFXP): poin fleksibel yang dapat dimanipulasi oleh pengguna saat ini. Itu
N
C = ÿK if ÿ F )( | Saya
(
e pengguna saat ini )
kapasitas fleksibel CFXP adalah Saya
=1 .
5 FXP yang Diperlukan (RFXP): poin fleksibel yang tidak ada dalam perangkat lunak dan perlu ditambahkan
ke dalam perangkat lunak.
Kebutuhan Pengguna
CF bertemu
YCF Pengaturan
penyesuaian YCF
N
penyesuaian CF
DAN
DAN
Jelas, PFXP ÿ AFXP ÿ UFXP ÿ CFXP . Saat pengguna mengajukan persyaratan perubahan baru pada
perangkat lunak, pengguna dapat menggunakan FXP perangkat lunak untuk menyesuaikan fungsi
perangkat lunak. Gambar 1 menunjukkan langkah-langkah penyesuaian. Jumlah fleksibilitas yang
tidak sesuai dan manipulator yang tidak sesuai ditunjukkan oleh perbedaan yang signifikan antara jumlah PFXP, AFXP
Permasalahan tersebut dapat tercermin dari ketersediaan dan kesesuaian.
Tingkat ketersediaan FXP (RA) = jumlah AFXP/ jumlah PFXP. Jika RA lebih rendah, itu
berarti manipulator tidak cocok dan manipulator harus disesuaikan.
Tingkat kesesuaian FXP (RS) = jumlah UFXP/ jumlah PFXP. Jika RS lebih rendah, itu berarti beberapa
FXP perangkat lunak tidak sesuai, atau banyak FXP baru diperlukan, atau manipulator tidak memiliki
kemampuan untuk mengoperasikannya, atau persyaratan perubahan sedikit. Jika RS lebih rendah dan
jumlah RFXP lebih besar dari jumlah PFXP, FXP yang dirancang tidak efektif, dan ada beberapa masalah
serius dalam desain FXP.
336
Machine Translated by Google
FLU ÿ FHU ÿ FDU . Apakah pengguna dapat menggunakan FXP, ditentukan oleh fakta apakah Fe manipulator lebih besar dari
F ÿ f FXP . yaitu f ,
Saya
Dia
Saya
Berdasarkan range nilai f dan hubungannya dengan Fe, FXP dapat dibedakan menjadi empat level yang berbeda sebagai
Saya
berikut.
mendeteksi persyaratan dan perubahan lingkungan saat runtime dan melakukan tindakan konfigurasi diri, optimalisasi diri,
perlindungan diri dan pemulihan diri. Tindakannya transparan bagi pengguna dan sepenuhnya digerakkan oleh Fi Namun,
efek SAFP dapat dilihat oleh
N
pengguna. C SAFP = 0.
= ÿ )(K |i f
Saya
=1
Saya
2 Titik Fleksibel Pengguna Tingkat Rendah (LUFP): titik fleksibel dengan 0 < f ÿ . Mereka berorientasi pada FLU
N
ke LU. C = ÿK i )( 0| < f ÿ F
LUFP Saya LU
. LU adalah pengguna rutin perangkat lunak yang hanya memiliki pengetahuan dasar
Saya
=1
tentang komputer dan bisnis. Melalui LUFXP, perangkat lunak asli tidak memerlukan modifikasi pengembang, dan LU dapat
menerapkan antarmuka dan operasi yang disediakan oleh perangkat lunak itu sendiri untuk menyesuaikan fungsi perangkat
lunak seperti mengatur parameter, menentukan kueri, dll.
3 Titik Fleksibel Pengguna Tingkat Tinggi (HUFP): titik fleksibel dengan . Mereka adalah F < f ÿ i FHU LU
N
berorientasi pada HU. . HU adalah perangkat lunak pengguna tingkat tinggi yang memiliki luas
= ÿKi =F1 < f ÿ| FLU
CHUFP Saya
saya HU
dan pengetahuan mendalam tentang komputer dan domain aplikasi. Misalnya, kontrol akses, keamanan dan kemampuan
manipulasi, penyesuaian kunci dan rumit ini hanya dapat dilakukan oleh HU. Misalnya, dengan HUFP, HU dapat
menyesuaikan lingkungan pengoperasian awal, antarmuka pengguna, aturan bisnis, alur kerja, dan rumus perhitungan, dll.
4 (Developer-Level User Flexible Point (DUFP): titik fleksibel dengan F < f ÿ HU i FDU
N
berorientasi pada DU. . DU adalah pengguna dengan Fe tertinggi . DU punya
= ÿKi =F1 < f ÿ| FHU i
CDUFP Saya
DARI
kemampuan yang kuat, pengalaman dan pengetahuan bisnis, administrasi sistem dan pengembangan perangkat lunak.
Ketika penyesuaian LUFXP dan HUFXP tidak dapat memenuhi kebutuhan pengguna baru, DU dapat memanfaatkan HUFXP
untuk melakukan penyesuaian mendalam terhadap perangkat lunak melalui antarmuka atau platform seperti menambahkan
kode atau konfigurasi ulang.
Karena FLU ÿ FHU ÿ FDU , FXP yang dapat digunakan langsung oleh LU adalah ASFXPÿLUFXP, tetapi LUFXP cocok
untuk LU. FXP yang langsung digunakan HU adalah ASFXPÿLUFXPÿHUFXP, tetapi HUFXP cocok untuk HU.
FXP yang langsung digunakan DU adalah
ASFXPÿLUFXPÿHUFXPÿDUFXP, tetapi DUFXP cocok untuk DU. Jelas bahwa semakin kecil f FXP , semakin mudah FXP
digunakan. Semakin besar Fe pengguna , semakin banyak
Saya
FXP yang bisa dia manfaatkan. Fe DU adalah yang terkuat, jadi dia bisa memanfaatkan semua FXP.
337
Machine Translated by Google
level pengembang, dia akan menggunakan semua FXP; jika f semua FXP bisa mencapai 0, semua FXP bisa dimanfaatkan oleh pengguna m
Saya
338
Machine Translated by Google
File Antarmuka Eksternal (EIF); yang lainnya adalah kita dapat langsung menggunakan pendekatan
analisis titik fungsi yang diberikan oleh International Function Point User Group (IFPUG) untuk menghitung
jumlah titik fungsi dari komponen titik fungsi yang diubah. Proses analisis function point adalah sebagai
berikut [14]: • Menentukan
jenis perhitungan function point. • Tentukan
batas aplikasi. • Mengidentifikasi dan menilai
jenis fungsi transaksional untuk menentukan kontribusinya terhadap hitungan Titik Fungsi yang Tidak
Disesuaikan (UFP). • Mengidentifikasi dan
menilai jenis fungsi data untuk menentukan kontribusinya terhadap hitungan UFP. • Menentukan
nilai adjustment factor (VAF). • Hitung jumlah titik fungsi
yang disesuaikan.
Karena hanya memperhatikan tentang ukuran perubahan, kami menganggap hitungan UFP sebagai jarak fleksibel.
Oleh karena itu, saat menghitung jarak fleksibel, kita hanya perlu melakukan langkah 1 hingga 4.
5. Studi kasus
Tabel 3 memberikan studi kasus sederhana untuk menunjukkan perhitungan derajat fleksibel dan
kapasitas fleksibel. Perangkat Lunak Penghitungan Upah (WCS) memiliki fungsi dasar: input data, cetak
data, permintaan, impor data, dan ekspor data. Sementara itu, WCS menyediakan sejumlah fungsi titik
fleksibel untuk mengubah fungsionalitas dan perilaku perangkat lunak sebagai berikut. • Sesuaikan
lebar item upah. • Menambah/
menghapus item upah.
339
Machine Translated by Google
Kami mengusulkan tiga skema implementasi untuk poin fleksibel. Tingkat titik fleksibel di setiap skema
mungkin berbeda. Kita dapat membuat perbandingan pada fleksibilitas skema yang berbeda. Pada tabel 3,
jika f berarti titik fleksibel tidak ada., Dalam skema 1, kami merancang FXP2, untuk menambah/menghapus
Saya
=ÿ
item upah sebagai HUFXP, yang dapat membuat HU menambah atau menghapus item informasi seperti
alamat, email, tanggal lahir, dll dan item yang dapat dihitung seperti tunjangan lalu lintas, jam kerja, jam
pembayaran, dll tanpa mengubah kode. Kita dapat melihat manipulasi layar yang relatif sederhana yang
diekspos ke pengguna akhir pada titik yang fleksibel, tetapi setelah pengguna menambah atau menghapus
item upah, WCS dapat secara otomatis menyesuaikan dan mengubah antarmuka input data, antarmuka
output data, struktur file data internal, dll di bawah titik fleksibel, yaitu komponen titik fungsi EI, EO, EQ,
ILF dan EIF terpengaruh dan diubah. Ini adalah proses yang kompleks dan kuat. Jika FXP 2 dirancang
sebagai DUFXP, diperlukan intervensi pengembang untuk memenuhi persyaratan untuk menambah atau
menghapus item upah, dan fleksibilitas pada titik fleksibel akan berkurang.
Kami berasumsi bahwa manipulator yang disiapkan untuk WCS adalah LU dan HU. Tabel 3 menunjukkan
fleksibilitas dan tarif yang tersedia dari setiap skema. Skema 1 tidak hanya memperoleh fleksibilitas
tertinggi, tetapi juga memiliki tingkat ketersediaan tertinggi karena manipulator yang disiapkan sesuai
dengan manipulator yang dibutuhkan. Sebaliknya, skema 3 tidak hanya memperoleh fleksibilitas terendah,
tetapi juga tingkat ketersediaannya adalah 0 karena manipulator yang dibutuhkan adalah DU tetapi
manipulator yang disiapkan adalah HU. Data pada tabel 3 dapat digunakan sebagai fakta kuantitatif untuk
memandu pengembang perangkat lunak, organisasi, dan pengguna untuk melakukan peningkatan fleksibilitas perangkat lu
Berubah S Saya
Skema1 Skema 2 Skema 3
TIDAK
Poin fleksibel
Komponen (UPF)
F Saya Ke f Ki Saya
F Saya Ke
Kapasitas fleksibel SA
Kapasitas fleksibel LU 6
340
Machine Translated by Google
6. Kesimpulan
Banyak manfaat fleksibilitas tidak berwujud, dan sulit diukur.
Namun, untuk mengevaluasi dan meningkatkan fleksibilitas perangkat lunak, di sisi lain,
memerlukan pendekatan yang lebih kuantitatif. Berdasarkan konsep titik fleksibel yang
dikembangkan dalam makalah ini, konotasi fleksibilitas perangkat lunak dieksplorasi. Metrik
dasar untuk fleksibilitas perangkat lunak seperti derajat fleksibel, gaya fleksibel, jarak fleksibel,
dan kapasitas fleksibel diusulkan. Kami telah menunjukkan kasus bagaimana metrik ini diterapkan.
Ini adalah penyelidikan awal kami tentang pengukuran fleksibilitas perangkat lunak. Masih
banyak pekerjaan yang harus diselesaikan. Salah satu tugasnya adalah memberikan bukti formal
untuk evaluasi gaya fleksibel. Kami perlu lebih meningkatkan metode titik fungsi agar sesuai dengan
pengukuran jarak fleksibel. Meskipun tugas belum selesai, pekerjaan kami memberikan cara baru
untuk memahami dan menjawab
pertanyaan-pertanyaan berikut: • Apakah inti dari
fleksibilitas perangkat lunak? • Mengapa, di mana, kapan, dan berapa banyak
perangkat lunak yang dibutuhkan fleksibilitas perangkat lunak? • Apa trade-
off yang terkait dengan merancang perangkat lunak yang fleksibel? • Bagaimana mengukur fleksibilitas perangkat lu
7. Referensi [1]
Shi, D. dan Daniels, RL, "Survei Fleksibilitas Manufaktur: Implikasi untuk fleksibilitas
bisnis", IBM SYSTEMS JOURNAL, VOL 42, NO 3, 2003, pp.414-427.
[2] Meyer, D., “Fleksibilitas: Pertarungan Kompetitif Berikutnya-Masa Depan Manufaktur
Survei”, Jurnal Manajemen Strategis, VOL 10, NO 2, 1989, hlm.135-144.
“
[3] Matsuyra, S. and Kurumma H., EVA: Metode Pemrograman yang Fleksibel untuk Berkembang
Systems”, IEEE Transactions on Software Engineering, VOL 23, No5, 1997, pp.296-312.
[4] Pamas, D., “Merancang perangkat lunak untuk Kemudahan Perpanjangan dan Kontraksi”. Transaksi
IEEE pada Rekayasa Perangkat Lunak, VOL SE-5, No 2, Maret 1979. hlm. 128-138.
[5] Brereton, P., Budgen, D. dan Bennett, K., “Masa Depan Perangkat Lunak”, Komunikasi ACM, VOL
42, No12, 1999, hlm.78-84.
[6] Bennett, K., Bennett, P dan Budgen, D., “Perangkat Lunak Berbasis Layanan: Masa Depan untuk
Perangkat Lunak Fleksibel”, Prosiding Konferensi Rekayasa Perangkat Lunak Asia-Pasifik
(APSEC'00), Singapura, 2000, hlm.214-217 .
[7] Bennett, K., “Evolusi Perangkat Lunak dan Masa Depan untuk Perangkat Lunak Fleksibel”, 29
April 2004, http://www.cs.ncl.ac.uk/research/events/colloquia/abstract.php?
[8] id=105 Nelson, KM , Nelson, HJ and Ghods, M., “Fleksibilitas teknologi: konseptualisasi,
validasi dan pengukuran”, Prosiding HICSS97, IEEE Computer Society Press,, New York,1997,
pp.76-87.
[9] Zhao, L. dan Leon, J., Agen Cerdas untuk Sistem Alur Kerja Fleksibel. Prosiding dari
Konferensi AIS Amerika tentang Sistem Informasi, Baltimore, Maryland, Agustus 1998:90-112
[10] Lassing, N, Rijsenbrij D. and Vliet H., “Towards a Broader View on Software Architecture Analysis
of Flexibility”, Prosiding Konferensi Rekayasa Perangkat Lunak Asia Pasifik Keenam,
1999:pp.238-247 [11] Zeng, D.D
dan Zhao, L, “Mencapai Fleksibilitas Perangkat Lunak melalui Alur Kerja Cerdas
Teknik”, Prosiding Konferensi Internasional Hawaii ke-35 tentang Ilmu Sistem, 2002, hlm.606-615.
[12] http://
thesaurus.reference.com/ [13] Garmus,
D. dan Herron, D., "Analisis Titik Fungsi: Praktik Pengukuran untuk Proyek Perangkat Lunak yang
Berhasil", Addison Wesley, 2001.
[14] “Panduan Pelatihan Titik Fungsi”, www.SoftwareMetrics.Com
341