MAKALAH REKAYASA PERANGKAT LUNAK PERENCANAAN PROYEK. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

dokumen-dokumen yang mirip
PERENCANAAN PROYEK PERANGKAT LUNAK

PERENCANAAN PROYEK PERANGKAT LUNAK

PERENCANAAN PROYEK PERANGKAT LUNAK

Dibuat Oleh : 1. Andrey ( )

Estimasi Proyek Perangkat Lunak. Universitas Gunadarma

A. Tujuan dan Ruang Lingkup Proyek Perancangan Rekayasa Perangkat Lunak

BAB 5 PERENCANAAN PROYEK PERANGKAT LUNAK

BAB 5 PERENCANAAN PROYEK PERANGKAT LUNAK

MAKALAH REKAYASA PERANGKAT LUNAK ( PERENCANAAN PROYEK PERANGKAT LUNAK )

Rekayasa Perangkat Lunak

Nama : Rendi Setiawan Nim :

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

Perencanaan Proyek PL. A. Sidiq P. Universitas Mercu Buana Yogyakarta

Perencanaan Proyek PL. A. Sidiq P. Prodi Teknik Informatika & Prodi Sistem Informasi Fakultas Teknologi Informasi Universitas Mercu Buana Yogyakarta

COCOMO. Constructive Cost Model

BAB 4 PROSES PERANGKAT LUNAK & METRIK PROYEK

PROSES PERANGKAT LUNAK & METRIK PROYEK

Software Project Planning (Perencanaan Proyek Software)

TESTING & IMPLEMENTASI SISTEM 4KA. Mengukur Produktivitas Perangkat Lunak. helen.staff.gunadarma.ac.id

6. Perenc. Proyek Perangkat Lunak (Software Project Planning)

Metrik Proses dan Proyek Perangkat Lunak KARMILASARI

Dibuat Oleh : 1. Andrey ( )

PENGUKURAN PERANGKAT LUNAK

MAKALAH DESAIN PERANGKAT LUNAK. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

MAKALAH DESAIN TEST CASE. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

Proses PL dan Metrik Proyek

BAB 1 PENDAHULUAN. estimasi biaya dan usaha proyek dapat dilakukan dengan lebih realistis karena semua

Manajemen Proyek Sistem Informasi

MANAJEMEN PROYEK PERANGKAT LUNAK

Manajemen Sumber Daya Proyek Sistem Informasi

2. PERENCANAAN TUJUAN PERANGKAT LUNAK

BAB 2 LANDASAN TEORI. 2.1 Pengukuran Definisi Pengukuran

Pertemuan 4 Manajemen Proyek (2) Rekayasa Perangkat Lunak

MANAJEMEN PROYEK PERANGKAT LUNAK PROYEK Proyek adalah suatu kegiatan mengkoordinasikan segala sesuatu dengan menggunakan perpaduan sumber daya

KONSEP MANAJEMEN PROYEK

MAKALAH MODEL DESAIN DAN DOKUMENTASI DESAIN. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

MANAJEMEN RESIKO. Aprilia Sulistyohati, S.Kom. Jurusan Teknik Informatika Universitas Islam Indonesia. Your Logo

PENGGUNAAN KEMBALI (REUSE) PERANGKAT LUNAK

Manajemen Proyek Sistem Informasi DAY-1. Wiratmoko Yuwono, ST

BAB 1 PENDAHULUAN. diantaranya kompleksitas, ukuran, keandalan, kualitas, waktu, usaha, biaya,

BAB 1. PENDAHULUAN. 1.1 Latar Belakang

Unadjusted Function Points - UFP

BAB 2 LANDASAN TEORI. tujuan secara efektif dan efisien. (

III. METODE KONVENS IONAL 11. REKAYASA SISTEM BERBASIS KOMPUTER

DESAIN TEST CASE. Tugas ke 11 Rekayasa Perangkat Lunak

Manajemen Proyek Minggu 2

Pertemuan 3. Manajemen Proyek Perangkat Lunak

Pengukuran Perangkat Lunak. Pengantar

Hal penting dalam manajemen proyek adalah :

KONSEP MANAJEMEN PROYEK

Teknik Informatika S1

Pengelolaan Proyek Sistem Informasi. Manajemen Sumber Daya Proyek

PROSES MODEL DESAIN PERANGKAT LUNAK

Dibuat Oleh : 1. Andrey ( )

Manajemen Proyek Perangkat Lunak

Perencanaan Proyek Perancangan Perangkat Lunak

5. Aktivitas generic dalam semua proses perangkat lunak antara lain adalah : a. Spesifikasi dan pengembangan b. Validasi dan evolusi c.

LAMPIRAN LEMBAR KUESIONER PEMBOBOTAN CORPORATE VALUE. 0 Tidak berhubungan sama sekali. 1 Sangat sedikit hubungannya. 2 Sedikit berhubungan

REKAYASA PERANGKAT LUNAK MATERI TM 10

136 Pemeliharaan Perangkat Lunak

Hanif Fakhrurroja, MT

Pertemuan 3. Manajemen Proyek Perangkat Lunak. Proses Dalam Manajemen PL

TESTING DAN IMPLEMENTASI SISTEM. WAHYU PRATAMA, S.Kom., MMSI.

Teknik Pengujian Perangkat Lunak By : Afijal. M.Kom

MAKALAH KONSEP DAN TEKNIK PEMELIHARAAN PERANGKAT LUNAK. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

JAMINAN KUALITAS PERANGKAT LUNAK

Pengembangan Perangkat Lunak. Fakultas Ilmu Komputer dan Teknologi Informasi Jurusan Sistem Informasi Univesitas Gunadarma

Pertemuan 12 dan 13 SQA TIK : Menjelaskan konsep dan strategi Software Quality Assurance

BAB 2 LANDASAN TEORI

LAMPIRAN KUESIONER PEMBOBOTAN KORPORASI PT TOYOTA ASTRA MOTOR

Muhlis Tahir PTIK A 09 UNM

BAB 1 PENDAHULUAN. tidak bisa dipisahkan dari proses bisnis, bahkan tidak jarang teknologi informasi menjadi

Manajemen Proyek. Bima Cahya Putra, M.Kom

Hanif Fakhrurroja, MT

Chapter 6. Development and quality plans

chapter 7 Integrating quality activities in the project life cycle Empat model proses pengembangan perangkat lunak akan dibahas dalam bagian ini:

BAB III KONSEP MANAJEMEN PROYEK

Daftar Pertanyaan Wawancara. 2. Bagaimana struktur organisasi instansi, beserta tugas dan tanggung jawab tiap

BAB 2 LANDASAN TEORI. Perangkat lunak adalah perintah ( program komputer ) yang bila dieksekusi

PEMELIHARAAN PERANGKAT LUNAK (SOFTWARE MAINTENANCE)

Paradigma Manajemen Resiko. control. track RISK. identify. plan. analyze

Analisis dan Perancangan Sistem Hanif Al Fatta M.kom

COMPUTER SYSTEM ENGINEERING

BAB 7.PENJADWALAN & PENELUSURAN PROYEK

Object-Oriented Reengineering Patterns and Techniques Wahyu Andhyka Kusuma, S.Kom

MODEL DESAIN & DOKUMENTASI DESAIN

BAB 1 PENDAHULUAN. semua keadaan di lingkungan, didapati dalam keadaan yang tidak menentu.

KONSEP MANAJEMEN PROYEK

PERANGKAT LUNAK. (Nelly Sofi)

A. Spesifikasi Perangkat Lunak

MAKALAH REKAYASA PERANGKAT LUNAK ( KONSEP DESAIN PERANGKAT LUNAK )

LAMPIRAN 1 LEMBAR KUESIONER PEMBOBOTAN SWOT. Kuesioner ini digunakan untuk mendapatkan nilai yang nantinya berpengaruh terhadap

Resiko Perangkat Lunak. Project Management RISK ANALYSIS AND MANAGEMENT. Kategori Resiko (1) Kategori Resiko (2) Resiko Teknis (1)

METODE PENGUJIAN PERANGKAT LUNAK

BAB VI ESTIMASI (PERKIRAAN) Estimasi adalah ekspresi suatu opini atau perkiraan tentang kemungkinan biaya yang akan

Tugas Rekayasa Perangkat Lunak

Dibuat Oleh : 1. Andrey ( )

Testing dan Implementasi

Ratna Wardani. Department of Electronic Engineering Yogyakarta State University

PENGEMBANGAN PERANGKAT LUNAK

Transkripsi:

MAKALAH REKAYASA PERANGKAT LUNAK PERENCANAAN PROYEK NAMA : RANI JUITA NIM : 41813120165 DOSEN : WACHYU HARI HAJI. S.Kom.MM JURUSAN SISTEM INFORMASI FAKULTAS ILMU KOMPUTER UNIVERSITAS MERCU BUANA JAKARTA 2015

Proses manajemen proyek perangkat lunak dimulai dengan beberapa aktivitas yang secara kolektif disebut dengan project planning (perencanaan proyek). Aktivitas ini dimulai dengan estimasi, yang merupakan gambaran dimana kita melihat masa depan serta menerima tingkat ketidakpastian sebagai bahan pembicaraan. Perencanaan proyek memberikan sebuah peta jalan bagi suksesnya rekayasa perangkat lunak. A. OBSERVASI PADA ESTIMASI Estimasi yang diperlukan dalam perancangan proyek perangkat lunak di antaranya adalah sumber daya, biaya, dan jadwal sebagai usaha dalam pengembangan perangkat lunak, mengakses informasi historis yang baik, dan keberanian untuk melakukan pengukuran kuantitatif bila hanya data kualitatif saja yang ada. Berikut adalah yang menimbulkan ketidakpastian dalam estimasi : Project complexity (kompleksitas proyek) berpengaruh kuat terhadap ketidakpastian yang inheren dalam perencanaan. Komplekitas ini merupakan pengukuran relatif yang dipengaruhi oleh kebiasaan dengan usaha yang dilakukan sebelumnya. Project size (Ukuran proyek) Merupakan faktor penting yang dapat mempengaruhi akurasi estimasi. Bila ukuran bertambah maka ketergantungan di antara berbagai elemen perangkat lunak akan meningkat dengan cepat. Structural uncertainty (Ketidakpastian struktural) Tingkat ketidakpastian strutural juga berpengaruh dalam risiko estimasi. Dengan melihat kembali, kita dapat mengingat lagi hal-hal yang terjadi dan dapat menghindari tempat-tempat dimana masalah muncul. Risiko diukur melalui tingkat ketidakpastian pada estimasi kuantitatif yang dibuat untuk sumber daya, biaya, dan jadwal.bila ruang lingkup proyek atau syarat proyek tidak dipahami dengan baik, maka risiko dan ketidakpastian menjadi sangat tinggi. Perencana perangkat lunak harus melengkapi fungsi, kinerja, dan definisi interface(yang diisikan ke dalam spesifikasi sistem). Pendekatan-pendekatan rekayasa perangkat lunak modern (seperti model proses evolusioner) memakai pandangan pengembangan yang interaktif. Dengan pandangan semacam ini dimungkinkan untuk melihat estimasi dan merevisinya bila customer mengubah kebutuhannya. B. TUJUAN PERENCANAAN PROYEK Tujuan perencanaan proyek perangkat lunak adalah untuk menyediakan sebuah kerangka kerja yang memungkinkan manajer membuat estimasi yang dapat

dipertanggungjawabkan mengenai sumber daya, biaya dan jadwal. Tujuan perencanaan dicapai melalui suatu proses penemuan informasi yang menunjuk ke estimasi yang dapat dipertanggungjawabkan. C. RUANG LINGKUP PERANGKAT LUNAK Penentuan ruang lingkup perangkat lunak merupakan aktivitas pertama dalam perencanaan proyek perangkat lunak. Ruang lingkup perangkat lunak menggabarkan fungsi, kinerja, batasan, interface dan reliabilitas. Fungsi yang digambarkan dalam statmen ruang lingkup dievaluasi dan disaring untuk memberikan awalan yang lebih detail pada saat estimasi dimulai. Pertimbangan kinerja melingkupi pemrosesan dan kebutuhan waktu respon. Batasan ini mengidentifikasi dari batas yang ditempatkan pada perangkat lunak oleh perangkat keras eksternal, memori, atau sistem informasi yang ada. D. MENCARI INFORMASI YANG DIBUTUHKAN UNTUK RUANG LINGKUP Teknik yang banyak dipakai secara umum untuk menjembatani jurang komunikasi antara pelanggan dan pengembang serta untuk memulai proses komunikasi adalah dengan melakukan pertemuan atau wawancara pendahuluan. Gause & weinberg mengusulkan bahwa analis harus memulai dengan mengajukan pertanyaan-pertanyaan bebas konteks, yaitu serangkaian pertanyaan yang akan membawa pada pemahaman mendasar terhadap masalah, orang yang menginginkan suatu solusi, sifat solusi yang diharapkan, dan efektivitas pertemuan itu. E. SUMBER DAYA Mengestimasi sumber daya yang dibutuhkan untuk menyelesaikan usaha pengembangan perangkat lunak yang meliputi manusia, komponen perangkat lunak, dan peranti perangkat keras/perangkat lunak. Piramida di atas memperlihatkan sumber daya pengembangan sebagai sebuah piramid. Peranti perangkat keras dan perangkat lunak berada pada fondasi dari piramida di atas dan menyediakan infrastruktur untuk mendukung usaha pengembangan(lingkungan pengembang). Dalam tingkat yang lebih tinggi terdapat komponen perangkat lunak reuseable blok bangungan perangkat lunak yang dapat mengurangi biaya pengembangan secara dramatis dan mempercepat penyampaian. Dan di puncak terdapat sumber daya utama yaitu manusia. Masing-masing sumber daya ditentukan dengan empat karakteristik : Deskripsi sumber daya

Statemen ketersediaan Waktu kronologis sumber daya diperlukan Durasi waktu sumber daya diaplikasikan 1. Sumber daya manusia Perencanaan sumber daya manusia memulai dengan mengevaluasi ruang lingkup serta memilih kecakapan yang dibutuhkan untuk mnyelesaikan pengembangan. Baik posisi organisasi maupun specialty. Jumlah orang yang diperlukan untuk sebuah proyek perangkat lunak dapat ditentukan setelah estimasi usaha pengembangan dibuat. 2. Sumber daya perangkat lunak reusable Kreasi dan penggunaan kembali blok bangunan perangkat lunak yang seharusnya dikatalog menjadi referensi yang mudah, distandarisasi untuk aplikasi yang mudah, dan divalidasi untuk integrasi yang mudah. Ada empat kategori sumber daya perangkat lunak yang harus dipertimbngkan pada saat perencanaan berlangsung, yaitu : Komponen off-the-self Perangkat lunak yang ada dapat diperoleh dari bagian ketiga atau telah dikembangkan secara internal untuk proyek sebelumnya. Komponen full-experience Spesifikasi, kode, desain atau pengujian data yang sudah ada yang dikembangkan pada proyek yang lalu yang serupa dengan perangkat lunak yang akan dibangun pada proyek saat ini. Komponen partial-experience Aplikasi, kode, desain, atau data pengujiaan yang ada pada proyek yang lalu yang dihubungkan dengan perangkat lunak yang dibangun untuk proyek saat ini, tetapi akan membutuhkan modifikasi substansial. Komponen baru Komponen perangkat lunak yang harus dibangun oleh tim perangkat lunak khususnya adalah untuk kebutuhan proyek sekarang. Lebih baik mengkhususkan syarat sumber daya perangkat lunak dari awal. Dengan cara ini evaluasi teknis dari semua alternatif dapat dilakukan dan akuisisi secara berkala dapat terjadi. 3. Sumber Daya Lingkungan Lingkungan yang mendukung poyek perangkat lunak, yang disebut juga software engineering environment (SEE), menggabungkan perangkat lunak dan

perangkat keras. Karena sebagian besar organisasi perangkat lunak memiliki konstituen ganda yang memerlukan akses ke SEE, maka perencana proyek harus menentukan jendela waktu yang dibutuhkan bagi perangkat keras dan perangkat lunak serta membuktikan bahwa sember-sumber daya tersebut dapat diperoleh. Pada saat sebuah sistem berbasis komputer akan direkayasa, tim perangkat lunak mungkin membutuhkan akses ke elemen perangkat keras yang sedang dikembangkan oleh tim rekayasa yang lain. F. ESTIMASI PROYEK PERANGKAT LUNAK Biaya perangkat lunak terdiri dari presentase kecil pada biaya sistem berbasis komputer secara keseluruhan. Kesalahan estimasi biaya yang besar dapat memberikan perbedaan antara keuntungan dan kerugian. Estimasi proyek perangkat lunak dapat ditranformasi dari suatu seni yang misterius ke dalam langkah-langkah yang sistematis yang memberikan estimasi dengan risiko yang dapat diterima. Sejumlah pilihan untuk mencapai estimasi biaya dan usaha yang dapat dipertanggung jawabkan: a. Menunda etimasi sampai akhir proyek b. Mendasarkan etimasi pada proyek-proyek yang mirip yang sudah pernah dilakukan sebelumnya c. Menggunakan teknik dekomposisi yang relatif sederhana untuk melakukan estimasi biaya dan usaha proyek d. Menggunakan satu atau lebih model empiris bagi estimasi usaha dan biaya perangkat lunak. Model estimasi empiris dapat digunakan untuk melengkapi teknik dekomposisi serta menawarkan pendekatan estimasi yang secara potensial berharga. Model berbasis pengalaman(data hitoris) dan berbentuk : d=f(vi) di mana d adalah satu dari sejumlah harga estimasi(contoh : usaha, biaya,durasi proyek) dan vi adalah parameter independen yang dipilih (seperti LOC dan FP yang diestimasi). Peranti estimasi otomatis mengimplementasi satu atau lebih teknik dekomposisi atau model empiris. Masing-masing pilihan estimasi biaya perangkat lunak yang dapat dilakukan sama baiknya dengan data hitoris yang digunakan untuk menumbuhkan estimasi. G. TEKNIK DEKOMPOSISI

Masalah yang dipecahkan sangat kompleks untuk dipertimbangkan sebagai satu kesatuan, karena itu kita mendekoposisi masalah, menandainya sebagai serangkaian masalah yang lebih kecil. a. Software Sizing Akurasi estimasi proyek perangkat lunak didasrkan pada sejumlah hal: Tingkat di mana perencana telah dengan tepat mengestimasi ukuran produk yang akan dibuat. Kemampuan untuk menerjemahkan estimasi ukuran ke dalam kerja manusia, waktu kalender, dan dolar Tingkat di mana rencana proyek mencerminkan kemampuan tim perangkat lunak Stabilitas syarat produk serta lingkungan yang mendukung usaha pengembangan perangkat lunak Dalam konteks perencanaan proyek, ukuran berarti keluran yang dapat dikuantitatifkan dari proyek perangkat lunak. Bila dilakukan pendekatan secara langung, ukuran dapat diukur dalam LOC. Tetapi bila dipilih pendekatan tidak langsung, ukuran dihadirkan dalam FP. Putnam dan Myres mengusulkan 4 pendekatan yang berbeda dalam masalah pengukuran: 1). Fuzzy-logic sizing Pendekatan yang menggunakan teknik reasoning aproksimasi yang merupakan dasar bagi fuzzy logic(logika kabur). Perencana harus mengidentifikasi tipe aplikasi, membuat besarnya dalam skala kuantitatif, dan menyaring besaran itu dalam bentuk oriinil. 2). Function point sizing Perencanaan pengembangan estimasi karakteritik domain informasi 3). Standart component sizing Perangkat lunak dibangun dari sejumlah komponen yang standar yang berbedabeda yang umum bagi suatu era aplikasi tertentu. 4). Change sizing Pendekatan ini digunakan bila proyek melingkupi pemakaian perangkat lunak yang ada harus dimodihikasi dengan banyak cara sebagai bagian dari sebuah proyek.

Dengan menggungakan suatu rasio kerja bagi masing-masing tipe perubahanm, maka ukuran perubahan dapat diperkirakan. b. Perkiraan berdasarkan masalah Baris kode(loc) dan titik fungsi (FP) digambarkan sebagai pengukuran dasar di mana metrik produktivitas dapat dihitung. Data LOC dan FP digunakan dalam dua cara : Sebagai variabel untuk estimasi yang dipakai untuk mengukur masing-masing elemen perangkat lunak Sebagai metrik baseline yang dikumpulkan dari proyek yang lalu dan dipakai dalam hubungannya dengan variabel estimasi untuk mengembangkan proyeksi kerja dan biaya. Expected value untuk variabel estimasi (ukuran), EV, dapat dihitung sebagai rata-rata terbobot dari estimasi optimistik (Sopt), paling sering(sm), dan pesimistik (Spess). Contohnya : EV=( Sopt +Sm +Spess)/6 Memberikan kepercayaan terbesar pada estimasi yang paling mungkin serta mengikuti distribui probabilitas beta. Sekali expected value untuk variabel estimasi ditentukan, data produktivitas LOC dan FP diaplikasikan. Setiap teknik estimasi, bagaimanapun canggihnya, masih harus tetap di cross check dengan pendekatan lainnya dan baru kemudian kaidah umum dan pengalaman dapat berlaku di sini. H. MODEL PERKIRAAN EMPIRIS Model perkiraan untuk perangkat lunak komputer menggunakan rumusan yang ditarik secara empiris untuk memprediksi usaha sebagai sebuah fungi LOC dan FP. Data empiris yang mendukung sebagaian besar model perkiraan ditarik dari sebuah sampel proyek yang terbatas. 1. Struktur model perkiraaan Model perkiraan tertentu ditarik dengan menggunakan analisis regresi terhadap data yang dikumpulkan dari proyek perangkat lunak sebelumnya. Struktur model ini berbentuk : E = A+Bx(Ev)c

Dimana A, B, C adalah konstanta yang ditarik secara empiris, E adalah usaha dalam peron-month, dan EV adalah variabel perkiraan (baik dalam LOC maupun FP). 2. Model COCOMO Kependekan dari COnstructive COst MOdel (Model Biaya KOnstruktif). Hirarki model Boehm berbentuk sebagai berikut : Model1 : Model COCOMO dasar menghitung usaha pengembangan perangkat lunak (dan biaya) sebagai fungsi dari ukuran program yang diekspresikan dalam baris kode yang diestimasi, Model2 : Model COCOMO Intermediete menghitung usaha pengembangan perangkat lunak sebagai fungsi ukuran program dan serangkaian pengendali biaya yang menyangkut penilaian yang subyektif terhadap produk, perangkat keras personil, dan atribut proyek. Model3 : Model COCOMO advenced menghubungkan semua karakteristik versi intermediete dengan penilaian terhadap pengaruh pengendali biaya pada setiap langkah (analisis, perancangan, dll) dari proses rekayasa perangkat lunak. Persamaan COCOMO dasar berbentuk : E = abklocbb D = cbedb Dimana E adalah usaha yang diaplikasikan dalam person-month, D adalah waktu pengembangan dalam bulan kronologis, dan KLOC adalah jumlah baris penyampaian kode yang diperkirakan untuk proyek tersebut. Koefisien ab dan cb dan eksponen bb dan db ada pada tabel Model cocomo dasar Proyek perangkat lunak ab bb cb db Organik 2,4 1,05 2,5 0,38 Semi-detached 3,0 1,12 2,5 0,35 Embedded 3,6 1,20 2,5 0,32 3. Persamaan Perangkat Lunak Persamaan perangkat lunak adalah model yang multivariasi yang mengasumsikan distribusi khusus usaha sepanjang hidup proyek pengembangan perangkat lunak. Model estimasinya berbentuk : E = [LOC x B0,333/P]3 x (1/t4)

Di mana E = Usaha dalam person-month atau person-year T = durasi proyek dalam bulan atau tahun B = faktor skill khusus yang meningkat secara pelan- pelan pada saat kebutuhan akan integrasi, pengujian, jaminan kualitas, dokumentasi, manajemen skill tumbuh. Untuk oprogram kecil (KLOC = 5 sampai 15)` B = 0,16. Untuk program yang lebih besar dari pada 70 KLOC, B=0,39. P = parameter produktivitas yang mencerminkan: kematangan proses dan praktik manajemen secara keseluruhan tingkat bahasa pemrograman yang digunakan keadaan lingkungan perangkat lunak skill dan pengalaman tin perangkat lunak kompleksitas aplikasi