View
5
Download
0
Category
Preview:
Citation preview
PENERAPAN INSOURCING DAN OUTSOURCING DALAM
PENGELOLAAN SISTEM INFORMASI
DI PERUSAHAAN
Oleh:
Nugraha Bagoes Soegesty
K15161136
Angkatan E63
Dosen :
Dr. Ir. Arif Imam Suroso, MSc
PROGRAM PASCASARJANA MANAJEMEN DAN BISNIS
INSTITUT PERTANIAN BOGOR
2017
BAB I
PENDAHULUAN
1.1 Latar Belakang
Perkembangan bisnis yang penuh dengan kompetitif seperti saat ini, suatu
organisasi atau perusahaan diharuskan memiliki kinerja yang optimal. Tuntutan
tersebut dapat dipenuhi dengan peningkatan efisiensi manajemen organisasi yang
didalamnya terdapat proses inovasi yang berkesinambungan dengan didukung oleh
penggunaan teknologi. Salah satu bentuk penerapan teknologi adalah pengelolaan
sistem informasi dalam aktivitas suatu organisasi atau perusahaan.
Pembangunan sistem informasi pada umumnya dapat dilakukan dengan cara
outsourcing, insourcing maupun co sourcing. Masing-masing pendekatan ini
mempunyai keunggulan dan kelemahan. Outsourcing merupakan bentuk dari
pengambilan ketenagakerjaan yang ada saat ini. Tujuannya suatu perusahaan
menggambil bentuk dari pengambilan resource ini adalah agar perusahaan tersebut
dapat lebih fokus dalam pencapaian bisnis intinya atau core business-nya.
Outsourcing merupakan trend yang digunakan untuk menyelesaikan permasalahan-
permasalahan yang terjadi. Outsourcing merupakan perpindahan rutinitas usaha ke
sumber daya yang ada di luar dan merupakan upaya untuk mendapatkan barang atas
jasa dari supplier luar atau yang beroperasi di luar negri dalam rangka memotong
biaya.
In-sourcing adalah suatu model pengembangan dan dukungan dari sistem
teknologi informasi yang dilakukan oleh para pekerja di suatu area fungsional dalam
organisasi (misalnya Akunting, Keuangan, dan Produksi) dengan sedikit bantuan dari
pihak spesialis sistem informasi atau tanpa sama sekali. Keputusan yang diambil
dalam penggunaan salah satu pendekatan untuk mengembangkan sistem informasi di
suatu organisasi atau perusahaan bisnis yaitu outsourcing ataupun insourcing dan
cosourcing tergantung pada kondisi perusahaan dengan memperhatikan beberapa
aspek yaitu ketersediaan sumber daya manusia, ketersediaan dana dan kompleksitas
sistem informasi yang dibutuhkan.
1.3 Tujuan
Mengetahui perbedaan dari masing-masing metode pengembangan sistem
informasi melalui Insourcing, Outsourcing dan Cosourcing pada perusahaan baik dari
segi kelebihan maupun kelemahannya.
BAB II
PEMBAHASAN
2.1 Outsourcing
Outsourcing merupakan trend yang digunakan untuk menyelesaikan
permasalahan-permasalahan yang terjadi outsourcing merupakan perpindahan
rutinitas usaha ke sumber daya yang ada di luar. Dengan kata upaya untuk
mendapatkan barang atas jasa dari supplier luar atau yang beroperasi di luar negri
dalam rangka memotong biaya. ada 3 komponen dari outsourcing : 1). IT, yang
merupakan perkembangan dari teknologi informasi, 2). Komunikasi, yang merupakan
bagaimana bentuk dari kinerja suatu perusahaan berdasarkan lancar tidaknya
komunikasi yang terjalin, 3). Struktur organisasi perusahaan. Sehingga secara umum
pengertian dari outsourcing menurut adalah suatu pengalihan aktivitas perusahaan
baik barang atau jasa ke perusahaan lain yang memiliki 3 komponen
tersebut. Hubungan dalam dunia Information Technology adalah menurut IT
outsourcing adalah kontrak tambahan dari sebagian atai keseluruhan fungsi IT dari
perusahaan kepada pencari outsourcing external. IT outsourcing merupakan
pemanfaatan organisasi external untuk memproduksi atau membuat ketetapan jasa
teknologi informasi. Jasa IT yang biasanya di outsourcing adalah jaringan, desktop,
aplikasi dan web hosting. IT outsourcing kedalam 4 bagian, yaitu :
1. Total Outsourcing, yaitu sepenuhnya menyerahkan semuanya ke pihak lain,
baik hardware, software, dan brainware.
2. Total Insourcing, peminjaman atau penyewaan sumber daya manusia yang
dimiliki oleh pihak lain yang di pakai dalam jangka waktu tertentu.
3. Selective Sourcing, perusahaan memilah-milah bagian mana yang akan di
serah ke pada pihak lain, dan bagian yang tidak di berikan tersebut akan
dikelola oleh perusahana sendiri.
4. De facto insourcing, menyerahkan semua yang menyangkut IT ke perusahaan
lain dikarenakan adanya latar belakang sejarah.
Keempat penjelasan diatas adalah pemindahan tanggung jawab bisa dalam
bentuk ketenaga kerjaan yang mendukung proses kerja yang tidak merupakan inti dari
bisnis atau non-core business atau juga secara prakteknya semua lini kerja di alihkan
sebagai unit outsourcing. Perusahaan lainnya bisa dalam bentuk vendor, koperasi,
atau instansi yang semuanya diaatur sesuai dengan ketentuan yang sudah di tetapkan.
Namun dalam pelaksanaannya outsourcing ini mengalami pro dan kontra juga antara
lainnya adalah :
1. Pro-Outsourcing :
Dapat lebih fokus kepada core business yang sedang di jalankan.
Dapat mengurangi biaya.
Dapat mengubah biaya investasi menjadi biaya belanja.
Tidak dipusingkan jika terjadi turn over tenaga kerja.
Merupakan modernisasi dunia usaha.
Efektivitas manpower.
Tidak perlu membuang-buang waktu dan tenaga untuk suatu pekerjaan yang
bukan merupakan inti bisnis atau pekerjaan yang bukan utama.
Memberdayakan anak perusahaan.
Dealing with unpredicted business condition.
2. Kontra-Outsourcing :
Status ketenagakerjaan yang tidak pasti.
Adanya perbedaan kompensasi dan benefit antara tenaga kerja internal dengan
tenaga kerja outsourcing.
Career path dari outsourcing kurang terencana dan kurang terarah.
Para pihak pengguna jasa dapat memungkin untuk memutuskan hubungan
kerjasama dengan pihak outsourcing provider secara sepihak sehingga dapat
mengakibatnya status mereka menjadi tidak jelas.
Hal-hal yang menjadi pertimbangan mereka dalam memilih outsourcing adalah :
1. Harga.
2. Reputasi yang baik dari pihak outsourcing provider.
3. Tenaga kerja yang dimiliki oleh pihak provider outsourcing sesuai dengan
yang dibutuhkan oleh perusahaan.
4. Pihak provider perusahaan mengetahui bentuk dari kegiatan bisnis
perusahaan.
5. Pengalaman pihak provider outsource.
6. Eksistensinya dan lain-lainnya.
Adapun masalah yang terjadi ketika melakukan penggunaan outsourcing adalah :
1. Saat penentuan partner outsourcing. Bahwa pihak provider outsourcing harus
betul-betul mengetahui apa yang betul-betul di butuhkan oleh pihak
perusahaan dan menjaga hubungan yang baik dengan pihak provider
outsourcing.
2. Pelanggaran ketentuan outsourcing. Agar biaya produksi perusahaan
berkurang, perusahaan terkadang melanggar ketentuan-ketentuan yang telah
di tetapkan sehingga seringah terjadi demo para buruh-buruh yang ada.
3. Pihak provider outsourcing sering memotong gaji para pekerja tanpa ada
batasannya sehingga yang mereka terima menjadi sedikit karna berkurang
lebih banyak.
Alasan mengapa suatu perusahaan mengambil langkah outsourcing adalah
dikarenakan agar peruhsahaan tersebut dapat bertahan dalam memasuki pasar
international dan mendapatkan keuntungan. Pengambilan langkah outsourcing
merupakan suatu penerapan kebijakan perusahaan. Juga dikatakan bahw ketika
perusahaan mengambil langkah melakukan IT outsourcing, perusahaan tersebut akan
di hadapkan kepada beberapa manfaat dan resiko, yang dimana ada salah satu resiko
tersebut jika tidak di tangani dengan baik akan menimbulkan masalah yang besar bagi
perusahaan. Dibutuhkannya suatu vendor IT sebagai penyedia IT yang berguna untuk
kepentingan IT outsourcing. Manfaat dari pemilihan IT outsourcing antara lain adalah
Teknologi yang maju. IT sourcing memberikan kemajuan teknologi kepada
organisasi klien dan pengalaman personil. Suatu perusahaan memiliki kemajuan
teknologi jika teknologi tersebut dapat membantu perusahaan dalam menyelesaikan
misinya, dan teknologi tersebut tergantung kepada vendor sebagai penyedia IT
outsourcing tersebut.
1. Cash Flow. Jasa yang disediakan oleh vendor relatif lebih murah dibanding
jika perusahaan mengusahakannya sendiri. outsourcing dapat membantu
pengelolaan arus kas sebab perusahaan tidak perlu melakukan penanaman
modal awal besar sebab vendor memiliki kebijakan free-for service basis.
Harland et al mengatakan bahwa perusahaan dapat di bebaskan dari
pembelian aset IT melalui outsourcing. Perusahaan tidak akan di bebani lg
dengan biaya pembelian, pengembangan, pemeliharaan dan pengelolaan aset-
aset IT yang mahal.
2. Pemusatan Aktivitas Inti. Perusahaan dapat lebih berkonsentrasi pada
kegiatan operasinya dan dapat mengendalikan jumlah tugas sehingga kegiatan
operasi perusahaan dapat menjadi sempurna.
3. Kebutuhan akan personil IT. Penggunaan IT sourcing oleh suatu perusahaan
menggambarkan kurangnya personil IT dalam satu perusahaan tersebut.
Vendor memiliki resources yang lebih besar, maka alangkah baiknya jika
perusahaan tersebut menggunakan IT outsourcing staff yang berasal dari
vendor.
4. Fleksibilitas penggunaan Teknologi. Outsourcing di pertimbankan sebagai
langkah management resiko yang lebih baik, sebab dengan begitu, segala
resiko yang di hadapi di limpahkan kepada vendor yang bertanggung jawab
dalam memperbaharui teknologi.
Sedangkan resiko yang akan di hadapi adalah :
1. Legal. Salah satu komponen penting dalam outsourcing adalah kontrak.
Didalam kontrak dijelaskan mengenai layanan vendor kepada penyedia,
diskusi financial, dan legal issue. Ini akan dijadikan blueprint sebagai bentuk
persetujuan mereka. Ada beberapa hal yang perlu di perhatikan dalam
melakukan pembuatan kontrak yaitu service level agreements, penalties for
non-performance, contract length, flexibility, post-outsourcing, dan vendor
standart contract. Dan ini merupakan resiko yang perlu di perhatikan dengan
sebaik-baiknya, jika tidak maka IT outsourcing akan menjadi masalah bagi
perusahaan.
2. Informasi merupakan aset berharga bagi perusahaan, jika tidak dikelola
dengan baik maka akan menjadi masalah bagi perusahaan tersebut.
3. Dalam menetapkan strategi hendaknya disesuaikan dengan kebutuhan IT
outsourcing (outsourcing scope), yang meliputi total outsourcing dan
selective outsourcing.
4. Maintaining the relationship.
5. Loss of flexibility. Jika menandatangani kontrak outsourcing yang berjangka
lebih dari 3 tahun, maka dapat megnurangi fleksibilitas. Seandainya ada
kebutuhan bisnis yang berubah, perkembangan teknologi yang menciptakan
peluang baru dan adanya penurunan harga maka klien harus meeundingkan
kembali kontraknya.
6. Managerial Control Issue. Tafti mengatakan bahwa pengambilan keputusan
hanyalah di kendalikan oleh sebagian kecil para eksekutif senior saja,
sedangkan para departement IT yang lebih mengetahui kebutuhan IT
perusahaan dikendalikan oleh atasan saja.
7. Financial Ada biaya yang dikenal dengan hidden cost, yaitu biaya seperti
biaya diluar jasa standar, biaya pencarian vendor(melibatkan aktivitas yang
mahal seperti riset, wawancara, evaluasi dan kunjungan lokasi luar negri, dan
pemilihan akhir suatu penjualan), biaya transisi(transisi meliputi penyusunan,
penarikan kembali dan penampungan yang dilakukan oleh vendor), dan biaya
post outsourcing.
Pemilihan mengenai mana yang akan di gunakan dalam suatu perusahaan,
sebenarnya tergantung dari ruang lingkup, budget, resiko, tingkat kegunaan, dan
sejauh mana kita memerlukannya. Kalau dilihat dari ruang lingkup, yaitu ruang
lingkup perusahaan kita, ruang lingkup area kerja kita, dan ruang lingkup perusahaan
kita. Kalau ruang lingkup itu tidaklah terlalu besar dan sangat sederhana, maka jalan
insourcing atau selfsourcing adalah langkah yang terbaik yang ada. Tetapi kalau
sudah mencakup area yang lebih luas lagi, mungkin outsourcing adalah jalannya, atau
juga bisa menggunakan insourcing, sehingga fokus kegiatan bisnis kita bis lebih di
fokuskan daripada kita menyibukkan diri untuk mengurusi sesuatu yang membuat
kita menjadi kesusahan dalam menjalankan inti bisnis kita.
Dilihat dari budget yang ada, kalau budget yang perusahaan miliki tidak teralu
banyak, atau masih kalangan menengah ke bawah, ada baiknya kalau menggunakan
insourcing atau selfsourcing, karena tidak terlalu memakan biaya yang begitu besar.
Di sebabkan orang-orang yang ada, itu masih berada di dalam 1 perusahaan. Tidak
memakan banyak biaya salah satunya biaya gaji atau biaya kerja. Jadi lebih
menguntungkan daripada harus menggunakan outsourcing. Dan kalau saja
perusahaan tersebut tergolong perusahaan besar, sebaiknya menggunakan tenaga
outsourcing karena pengaruhnya bisa lebih besar untuk membantu mengurangi biaya
IT tetapi memiliki kualitas kinerja yang baik. Dan dapat membantu perusahaan
tersebut untuk lebih fokus dalam mengembangkan inti bisnisnya, tetapi tetap
memiliki kualitas ICT yang baik.
Dilihat dari segi resiko dan tingkat kegunaannya, ini tergantung dari bentuk
dan kegiatan bisnis perusahaan. Jika resiko yang di hadapi dan tingkat kegunaannya
tidak terlalu mengkhawatirkan maka ada baiknya hanya menggunakan insourcing
atau selfsourcing. Sehingga tidak terlalu mengurangi biaya untuk masalah IT, tetapi
jika resiko yang di hadapi dan tinggkat kegunaan tinggi, sebaiknya menggunakan
outsourcing, dengan artian perusahaan dapat lebih konsentrasi dalam menghadapi
resiko yang ada, dan perusahaan terlindungi dari segala ancaman, dan tindakan
pencurian data dan segalanya. Begitu juga dengan tingkat kegunaan, jika kegunaan
dari ICT memang sangat di butuhkan, ada baiknya jika perusahaan menggunakan
Outsourcing, sehingga mereka dapat membuat sesuai dengan permintaan dari
perusahaan didasarkan kepada pengendalian resiko yang di harapkan. Dikarenaka
outsourcing memiliki tenaga yang lebih ahli dalam bidangnya tersebut. Jika di lihat
dari keperluannya, cukup bisa di pikir secara logika. Karena jika kegunaan dari ICT
tidak terlalu penting atau biasa saja, maka insourcing dan selfsourcing sudahlah
cukup untuk menjalankan permintaannya tersebut, tetapi jika keperluan akan ICT
dikatakan sangan membantu, maka tenaga outsourcing memang menjadi pilihan
terbaik. Dikarenakan mereka memang ahli didalamnya. Tenaga outsourcing memiliki
keahlian tersendiri dikarenakan bidang yang mereka hadapi memang berada pada
daerah itu juga. Sehingga sebaiknya pilihan jatuh kepada outsourcing. Mana yang
lebih baik, tidaklah menjadi pertanyaan bagi perusahaan. Tetapi faktor-faktor
diataslah yang menentukan mana yang menjadi pilihan terbaik perusahaan. Juga
bukan hanya tergantung itu saja, untuk bagian outsourcing, perlu di perhatikannya
bentuk kontrak kerjasama yang di buat. Agar kinerja dan kualitas kerja dari pihak
vendor outsourcing dapat seperti yang kita harapkan.
2.2 In-sourcing
In-sourcing adalah suatu model pengembangan dan dukungan dari sistem
teknologi informasi yang dilakukan oleh para pekerja di suatu area fungsional dalam
organisasi (misalnya Akunting, Keuangan, dan Produksi) dengan sedikit bantuan dari
pihak spesialis sistem informasi atau tanpa sama sekali. Model ini dikenal juga
dengan istilah end-user computing atau end-user development. Pengembangan ini
dilakukan oleh para spesialis sistem informasi yang berada dalam departemen EDP
(Electronic Data Processing), IT (Information Technology), atau IS (Information
System). Pengembangan sistem umumnya dilakukan dengan menggunakan SDLC
(Systems Development Life Cycle) atau daur hidup pengembangan sistem. Dengan
menggunakan SDLC ini, organisasi akan mengikuti 6 langkah penting, yang
mencakup berbagai tahapan berikut :
1. Perencanaan, yaitu membentuk rencana pengembangan sistem informasi
yang memenuhi rencana-rencana strategis dalam organisasi.
2. Penentuan lingkup, yaitu menentukan lingkup sistem yang diusulkan untuk
dibangun.
3. Analisis, yaitu menentukan kebutuhan-kebutuhan sistem yang diusulkan.
4. Desain, yaitu merancang sistem yang memenuhi kebutuhan-kebutuhan yang
diperoleh pada tahapan analisis.
5. Implementasi, yaitu membuat sistem dan menyiapkan infrastruktur untuk
sistem.
6. Pemeliharaan, yaitu mendukung sistem yang telah berjalan.
Pendekatan SDLC biasa disebut sebagai pengembangan tradisional dan mempunyai
kelemahan yakni pengembangannya lambat dan mahal. Selain itu, pemakai akhir
kurang terlibat sehingga rawan terhadap ketidakcocokan dengan yang diinginkan oleh
pemakai.
Kelebihan :
Sistem dapat diatur sesuai dengan kebutuhan dari perusahaan.
Sistem dapat diintegrasikan dengan lebih baik terhadap sistem yang sudah
ada.
Dokumentasi menjadi lebih lengkap.
Proses pengembangan sistem dapat dikelola dan dikontrol oleh perusahaan.
User dalam perusahaan dapat mengendalikan pembuatan sistem.
Mengembangkan sistem sendiri dapat dijadikan sebagai keunggulan
kompetitif perusahaan.
Kelemahan :
Membutuhkan waktu yang cukup lama untuk mengembangkan sistem karena
harus dimulai dari awal.
Adanya kemungkinan program mengandung bug yang sangat besar.
Terdapat kesulitan para user dalam menyatakan kebutuhan dan kesukaran
pengembang memahami user dan seringkali hal tersebut membuat para
pengembang merasa putus asa.
Memerlukan sumber daya manusia yang ahli dalam bidang sistem informasi
dan teknologi informasi. Jika masih terbatas, maka sangat memerlukan
diadakannya pelatihan.
Sistem buatan sendiri kurang efisien dan harganya cukup mahal.
2.3 Cosourcing
Cosourcing dapat diartikan partnership dan didasarkan atas hubungan
kerjasama jangka panjang. Pelaksanaan strategi cosourcing oleh suatu perusahaan
pada intinya disebabkan semakin meningkatnya kegiatan bisnis suatu perusahaan
pada satu sisi dan adanya keterbatasan SDM internal dari segi kuantitas maupun
knowledge untuk mengatasi secara baik (efektif dan efisien) meningkatnya kegiatan
bisnis tersebut.
Strategi ini lebih terarah pada performa bisnis yang dilaksanakan setiap
perusahaan. Trend globalisasi dan tantangan yang semakin besar pada lingkungan
yang membutuhkan fleksibilitas, perkembangan berkelanjutan dan fokus kepada
kompetensi inti perusahaan merupakan penyebab perusahaan memilih strategi
cosourcing.
Kelebihan :
Adanya sharing knowledge antar organisasi.
Pengembangan sistem berada didalam pengawasan dan pengarahan
perusahaan.
Kualitas sistem informasi yang dikembangkan dapat dikendalikan oleh
perusahaan.
Lebih fokus pada pengembangan sistem informasi terhadap bentuk jenis
bisnis.
Kelemahan
Rahasia perusahaan diketahui oleh pihak luar.
Keamanan sistem kurang terjamin.
Ada kemungkinan terjadinya pola pikir yang berbeda antara perusahaan dan
partner dan berdampak pada perpecahan dalam tim tersebut.
Sulitnya melakukan modifikasi sistem karena ada dua pihak yang terkait
dalam proses pembuatannya.
Sumber daya yang dimiliki perusahaan dapat berpindah ke perusahaan
pesaing.
BAB II
KESIMPULAN
2.1 Kesimpulan
Dari pembahasan mengenai ketiga pendekatan pengembangan proyek yaitu
self-sourcing, out-sourcing, maupun In-sourcing. Ketiga pendekatan memiliki
keunggulan dan kelemahan masing-masing. Sebenarnya tidak bisa dikatakan mana
yang lebih baik dan mana yang buruk, tapi kebijakan memilih pendekatan itu
tergantung pada situasi perusahaan. Ada pula perusahaan yang tidak hanya
menggunakan satu pendekatan, namun dua pendekatan sekaligus digunakan.
Urgensi dari Kualitas Software Berdasarkan aspek Maintanability di
Suatu Organisasi
Oleh:
Nugraha Bagoes Soegesty
K15161136
Angkatan E63
Dosen :
Dr. Ir. Arif Imam Suroso, MSc
PROGRAM PASCASARJANA MANAJEMEN DAN BISNIS
INSTITUT PERTANIAN BOGOR
2017
BAB I
PENDAHULUAN
1.1 Kata Pengantar
Sistem Informasi (SI) adalah suatu kesatuan yang terdiri dari manusia,
perangkat keras, piranti lunak, jaringan komunikasi dan sumber daya data yang
mengumpulkan, mentransformasi dan mendistribusikan informasi di dalam suatu
organisasi. Dalam sistem informasi dikenal sistem database. Sistem Database (SD)
adalah penerapan database ke dalam sistem informasi. Database salah satu komponen
yang penting dalam sistem informasi, karena basis dalam menyediakan
informasi pada para user. Database juga merupakan himpunan kelompok data (arsip)
yang saling berhubungan dan diorganisasikan sedemikian rupa agar kelak dapat
dimanfaatkan kembali dengan cepat dan mudah. Kumpulan file, tabel atau arsip yang
saling berhubungan tersebut disimpan secara bersama-sama di media
penyimpan elektronik untuk memperoleh kemudahan, kecepatan (speed), efisiensi
ruang penyimpanan (space), keakuratan (accuracy), ketersediaan (availability),
kelengkapan (completeness), keamanan (security), kebersamaan pemakai
(shareability) dan tanpa pengulangan (redundensi) yang tidak perlu.
Sistem Informasi memainkan tiga peran penting dalam organisasi yaitu, untuk
mendukung kegiatan operasi bisnis perusahaan, mendukung pengambilan keputusan
manajerial, dan mendukung pencapaian keunggulan kompetitif strategis. Sistem
informasi dan database dapar diakses menggunakan software yang memudahkan user
untuk mengakses berbagai macam informasi yang dibutuhkan. Sistem informasi,
database, dan software memerlukan maintance untuk mempertahankan efisiensinya.
Berdasarkan ISO 9126 adalah salah satu karakter sofware yang baik adalah
kemampuan software untuk dapat dimodifikasi yaitu dapat dilakukan koreksi,
adaptasi serta perbaikan yang lebih dikenal dengan konsep maintainability.
Maintenance adalah suatu kegiatan yang dilakukan secara berulang-ulang
dengan tujuan agar software selalu memiliki kondisi yang sama dengan keadaan
awalnya. Maintenance merupakan permasalahan yang tergolong rumit pada
penerapannya seperti cleaning, inspection, running maintenance dan shut down,
breakdown maintenance sampai emergency maintenance, dimana di dalamnya
terdapat beberapa faktor pendukung proses yang saling berkaitan, diantaranya seperti
skill tenaga kerja, spesifikasi mesin, keteraturan penjadwalan, spare parts, serta
kesesuaian jenis maintenance dan spesifikasi tugas yang dilakukan (Choiri et al.
2011). Perawatan perangkat lunak (software maintenance) adalah aktivitas yang
dimulai sejak perangkat lunak mulai digunakan (after delivery) hingga akhirnya
perangkat lunak tersebut tidak dapat digunakan lagi (retired). Hal ini dilakukan
dengan tujuan untuk memperbaiki kesalahan (to correct), meningkatkan kinerja (to
improve), menyesuaikan dengan kebutuhan (to adapt), atau untuk mencegah
terjadinya kesalahan (to prevent).
1.2 Tujuan
Mengingat pentingnya maintainability dalam pengembangan sistem informasi
melalui software maka makalah ini bertujuan untuk membahasa urgensi
maintainability dalam pengembangan sistem informasi melalui software.
BAB II
PEMBAHASAN
2.1 Pengertian Pemeliharaan
Pemeliharaan perangkat lunak merupakan proses memodifikasi sistem
perangkat lunak atau komponennya setelah penggunaan oleh konsumen untuk
memperbaiki kerusakan, meningkatkan kinerja, manfaat, atau kualitas lainnya
atau untuk menyesuaikan sistem perangkat lunak dengan lingkungan yang
berubah. Definisi ini menegaskan bahwa proses pemeliharaan perangkat lunak
merupakan proses yang bersifat post-delivery, artinya dilakukan setelah sistem
perangkat lunak digunakan oleh konsumen. Aktivitas ini dimulai sejak sistem
dilepaskan ke pasaran dan digunakan oleh konsumen dan mencakup semua
aktivitas yang menjaga operasional sistem dan kesesuaian dengan kebutuhan
pengguna. Sebagian ahli berpendapat tidak demikian. Menurut mereka,
pemeliharaan perangkat lunak harus dimulai sebelum operasional sistem
berjalan.
Schneidewind berpendapat bahwa pandangan tentang pemeliharaan perangkat
lunak merupakan aktivitas post-delivery adalah salah satu penyebab mengapa
aktivitas pemeliharaan menjadi hal yang sangat sulit dilakukan. Osborne dan
Chikofsky berpendapat bahwa penting untuk mengadopsi pendekatan SDLC
untuk mengelola dan mengubah sistem perangkat lunak pada tahapan
pemeliharaan perangkat lunak. Aktivitas post-delivery berupa modifikasi perangkat
lunak, pelatihan, dan mengoperasikan help desk.
2.1.1 Kategori Pemeliharaan Perangkat Lunak
Pemeliharaan perangkat lunak ke dalam tiga komponen, yakni pemeliharaan
korektif, adaptif, dan perfektif. Pemeliharaan korektif mencakup semua perubahan
yang dilakukan untuk menghilangkan kerusakan aktual pada perangkat lunak.
Pemeliharaan adaptif mencakup semua perubahan yang dibutuhkan sebagai
konsekuensi dari perubahan lingkungan di mana sistem beroperasi, misalkan
perubahan perangkat keras, sistem operasi, DBMS, atau jaringan
komputer.Pemeliharaan perfektif mencakup semua perubahan yang berasal dari
permintaan pengguna. Presentase masing-masing kategori pemeliharaan dapat dilihat
pada diagram berikut ini:
Gambar 1. Presentase Kategori Pemeliharaan
Pigoski menggabungkan pemeliharaan adaptif dan perfektif sebagai
enhancement karena kedua tipe ini tidak bersifat korektif, namun merupakan
peningkatan kemampuan perangkat lunak. Namun sebagian organisasi menggunakan
istilah pemeliharaan perangkat lunak jika itu berkaitan dengan perubahan kecil pada
sistem perangkat lunak, sedangkan untuk perubahan besar pada sistem perangkat
lunak disebut dengan pengembangan perangkat lunak. Idealnya, pemeliharaan tidak
boleh mengurangi realibilitas dan struktur dari sistem, sebab akan menyusahkan
perubahan di masa datang. Namun, kasus ini tidak berlaku pada dunia nyata di mana
usia sistem akan mengakibatkan struktur sistem menjadi lebih kompleks dan sumber
daya ekstra harus ditambahkan untuk menyediakan semantik dan menyederhanakan
struktur. Karena itu, beberapa ahli menyarankan kategori keempat dari pemeliharaan
perangkat lunak, yang disebut dengan pemeliharaan preventif. ISO mendefinisikan
juga tiga kategori pemeliharaan perangkat lunak, yakni:
1. Pemeliharaan Perangkat Lunak
Peningkatan kinerja/ekspansi fungsional yang diperlukan oleh konsumen pada
fase pemeliharaan. Sebuah rekomendasi adalah semua perubahan harus
dilakukan dengan prosedur yang sama dengan yang digunakan pada
pengembangan perangkat lunak IEEE mengkategorikan pemeliharaan perangkat
lunak ke dalam empat kategori, yakni:
a. Pemeliharaan korektif. Perubahan reaktif pada perangkat lunak yang
dilakukan setelah penggunaan perangkat lunak oleh konsumen untuk
memperbaiki kerusakan yang ditemukan
b. Pemeliharaan adaptif.
Perubahan pada perangkat lunak yang dilakukan setelah penggunaan
perangkat lunak oleh konsumen agar perangkat lunak dapat digunakan pada
lingkungan yang berubah.
c. Pemeliharaan perfektif.
Perubahan pada perangkat lunak yang dilakukan setelah penggunaan
perangkat lunak oleh konsumen untuk meningkatkan kinerja atau
maintainabilitas Pemeliharaan emergensi. Pemeliharaan korektif yang
tidak dijadwalkan untuk menjaga operasional sistem. Berikut adalah
hubungan antara kategorisasi yang dilakukan oleh ISO dengan yang
dilakukan oleh IEEE:
2.2 Permasalahan Pemeliharaan Perangkat Lunak
Pemeliharaan merupakan aktivitas yang sangat menghabiskan biaya. Satu
alasannya adalah karena untuk menambahkan fungsionalitas sistem yang sedang
beroperasi jauh lebih mahal dibandingkan dengan menambahkan fungsionalitas
sistem ketika fase pengembangan. Faktor yang membedakan antara pengembangan
dan pemeliharaan yang berakibat pada mahalnya pemeliharaan adalah:
1. Stabilitas sistem.
Setelah sistem dipasarkan, biasanya tim pengembang dibubarkan dan masing-
masing anggota bekerja pada proyek yang baru. Tim yang kemudian bertanggung
jawab terhadap pemeliharan perangkat lunak tidak memiliki pemahaman yang
lengkap terhadap perangkat lunak yang bersangkutan sehingga diperlukan usaha
tambahan untuk memahami perangkat lunak yang bersangkutan.
2. Tanggung jawab kontraktual.
Kontrak untuk pemeliharaan perangkat lunak biasanya terpisah dari kontrak
untuk pengembangan perangkat lunak.
3. Keahlian staf.
Staf pemeliharaan seringkali kurang pengalaman dan tidak terbiasa dengan
domain aplikasi. Proses pemeliharaan seringkali dilihat sebagai proses yang
membutuhkan skill tidak terlalu tinggi dibandingkan dengan proses pengembangan
perangkat lunak, hal ini menyebabkan staf bagian pemeliharaan seringkali adalah
staf dengan level junior. Lebih parah lagi, sistem yang dipelihara adalah
seringkali sistem yang menggunakan bahasa pemrograman dengan versi lama.
Staf bagian pemeliharaan tentu saja kurang familiar dengan bahasa
pemrograman model ini sehingga perlu usaha untuk memahami bahasa
pemrograman tersebut.
4. Usia dan struktur program.
Seiring dengan usia program, struktur dari program juga ikut berubah sehingga
semakin sulit untuk dimengerti apalagi diubah. Beberapa bagian sistem tidak dibuat
dengan menggunakan teknik RPL modern, sehingga tidak pernah diatur dengan
baik.
5. Dokumentasi sistem mungkin saja hilang atau inkonsisten
Tiga permasalahan awal dapat diselesaikan dengan cara merencanakan sebuah proses
pengembangan berkelanjutan sepanjang usia dari perangkat lunak sedangkan
permasalahan yang terakhir dapat diselesaikan melalui teknik merekayasa ulang
perangkat lunak (Software Re-engineering).
Pendekatan tipikal untuk pemeliharaan perangkat lunak adalah dengan
mengubah kode program terlebih dahulu, kemudian membuat perubahan yang
diperlukan pada dokumentasi program. Pendekatan ini disebut pendekatan quick-fix
model. Idealnya setelah kode diubah, maka dokumentasi terkait kebutuhan, analisis,
perancangan, pengujian, dan hal-hal terkait perangkat lunak yang bersangkutan harus
diubah juga menyesuaikan dengan perubahan pada kode program. Namun realita di
lapangan menunjukkan bahwa perubahan pada kode program kadang tidak
didokumentasikan disebabkan oleh tekanan waktu dan biaya sehingga tim pemelihara
tidak sempat untuk mengubah dokumentasi program.
Gambar 2. Quick-Fix Model
2.4 Quick-Fix Model
Model siklus hidup evolutionary menawarkan pendekatan alternatif untuk
pemeliharaan perangkat lunak. Model ini menyatakan bahwa kebutuhan sistem tidak
dapat dikumpulkan dan dipahami pada tahap awal, sehingga sistem dibangun dengan
memperbaiki kebutuhan dari bangunan sistem sebelumnya berdasarkan feedback dari
pengguna. Kelebihan dari model ini adalah dokumentasi dari sistem senantiasa
berubah seiring dengan perubahan pada kode program.
Gambar 3. Iterative Enhancement Mode
Ada lagi pendekatan full reuse model, diperlihatkan sebagai berikut:
Gambar 4. Full Reuse Model
Model ini memandang pemeliharaan sebagai sebuah kasus dari
pengembangan perangkat lunak berorientasi gunaulang. Full-reuse dimulai dengan
analisis kebutuhan dan perancangan dari sistem yang baru dan menggunakan ulang
kebutuhan, rancangan, kode, dan pengujian dari sistem versi sebelumnya yang telah
ada. Ini adalah perbedaan dari model iteratif-enhancement yang dimulai dari analisis
terhadap sistem yang telah ada.
Model iterative-enhancement cocok digunakan pada sistem yang memiliki
umur yang panjang dan berevolusi seiring dengan waktu. Model ini mendukung
evolusi sistem untuk memudahkan modifikasi ke depannya. Model Full-reuse cocok
digunakan pada pengembangan sistem-sistem yang berkaitan. Model ini
mengumpulkan komponen-komponen yang reuseable pada level abstraksi yang
berbeda-beda dan menjadikan pengembangan sistem ke depannya menjadi lebih
hemat.
2.3 Proses Pemeliharaan Perangkat Lunak
Ada beberapa model proses pemeliharaan perangkat lunak. Model-model ini
mengorganisasikan pemeliharaan menjadi serangkaian aktivitas terkait dan
menentukan urutan dari masing-masing aktivitas. Kadang-kadang juga disertai
dengan penentuan hal-hal yang harus disampaikan antara aktivitas satu dengan
aktivitas lainnya.Dua jenis di antara model-model tersebut adalah versi IEEE yang
menggunakan standar yang khusus dan ISO yang menggunakan standar sesuai
dengan siklus hidup perangkat lunak.
2.4 Proses Pemeliharaan Versi IEEE-1219
Standar IEEE mengorganisasikan proses pemeliharaan menjadi tujuh fase.
Pada tiap fase, standar IEEE menetapkan input dan output pada tiap fase,
mengelompokkan dan menghubungkan aktivitas-aktivitas, mendukung proses-proses,
kontrol, dan sekumpulan metrik.
Ketujuh fase tersebut adalah:
1. Identifikasi, klasifikasi, dan penentuan prioritas modifikasi.
Pada fase ini, permintaan perubahan yang diajukan oleh pengguna,
konsumen, programmer, atau manajer ditetapkan sebagai kategori
pemeliharaan dan menetapkan prioritas. Fase ini juga mencakup aktivitas
untuk menentukan apakah permintaan tersebut disetujui atau tidak dan
menetapkannya ke dalam jadwal pengimplementasian
2. Analisis.
Fase ini mencakup perencanaan awal untuk perancangan,
implementasi, pengujian, dan pemasaran. Fase ini terdiri dari dua level,
analisis feasibilitas yang menentukan solusi alternatif beserta efek dan biaya
solusi tersebut dan juga analisis detail yang menentukan kebutuhan untuk
modifikasi, strategi pengujian, dan juga membangun rencana
pengimplementasian
3. Perancangan.
Modifikasi sistem dirancang pada fase ini. Kegiatan ini menggunakan
keseluruhan dokumentasi sistem dan proyek, basisdata dan perangkat lunak
yang ada, dan output dari fase analisis. Aktivitas ini mencakup identifikasi
terhadap modul yang terpengaruh, modifikasi dokumentasi modul perangkat
lunak, pembuatan kasus uji untuk rancangan yang baru, dan identifikasi
pengujian regresi.
4. Implementasi.
Fase ini mencakup aktivitas coding dan unit testing, integrasi modul
yang telah dimodifikasi, integration dan regression testing, analisis resiko, dan
kajian. Fase ini juga mencakup kajian kesiapan pengujian untuk menetapkan
kesiapan untuk pengujian sistem dan regresi.
5. Regression/system testing.
Pada fase ini keseluruhan sistem diuji untuk memastikan kesesuaian
dengan kebutuhan awal dan juga modifikasi kebutuhan tersebut. Selain
pengujian fungsional dan antarmuka, fase ini juga mencakup pengujian
regresi untuk memvalidasi tidak ada kerusakan baru yang muncul.
6. Acceptance testing.
Pengujian ini fokus pada sistem yang telah terintegrasi sepenuhnya
dan melibatkan pengguna, konsumen, atau pihak ketiga yang dirancang oleh
konsumen. Pengujian ini mencakup pengujian fungsional, interoperabilitas,
dan regresi.
7. Delivery.
Pada fase ini, sistem dirilis untuk diinstal dan dioperasikan. Aktivitas
ini mencakup pemberitahuan kepada pengguna, melakukan instalasi dan
pelatihan, serta menyiapkan backup dari perangkat lunak versi sebelumnya.
2.5 Proses Pemeliharaan Versi ISO-12207
Standar ISO fokus pada siklus hidup perangkat lunak. Standar ini menetapkan
17 aktivitas yang dikelompokkan ke dalam tiga kelas besar, yakni primary,
supporting, dan organizational processes. Berikut pembagiannya:
Gambar 5. Proses Siklus Hidup ISO
Pemeliharaan Perangkat Lunak Pemeliharaan merupakan satu dari kelima
proses pada kelompok primary, dimana aktivitas pemeliharaan ini terdiri dari:
1. Implementasi Proses.
Aktivitas ini mencakup rencana pengembangan dan prosedur pemeliharaan
perangkat lunak, menciptakan prosedur penerimaan, pencatatan, dan penelusuran
permintaan pemeliharaan, dan membangun antarmuka organisasional dengan proses
manajemen konfigurasi. Perencanaan pemeliharaan sebaiknya dipersiapkan paralel
dengan perencanaan pengembangan
2. Analisis Masalah dan Modifikasi.
Aktivitas ini mencakup analisis terhadap permintaan pemeliharaan, apakah
merupakan laporan permasalahan atau permintaan perubahan,
mengklasifikasikannya, untuk menentukan besar skalanya, biaya, dan waktu yang
dibutuhkan. Aktivitas lainnya adalah pengembangan dan pendokumentasian alternatif
implementasi modifikasi dan penentuan opsi terpilih sesuai kontrak
3. Implementasi Modifikasi.
Aktivitas ini mencakup identifikasi item yang perlu dimodifikasi dan
pengajuan proses pengembangan untuk merealisasikan perubahan yang direncanakan.
Tambahan kebutuhan untuk proses pengembangan adalah prosedur pengujian untuk
memastikan bahwa kebutuhan yang telah dimodifikasi telah diimplementasikan
dengan benar sepenuhnya dan kebutuhan awal yang tidak dimodifikasi tidak
terpengaruh.
4. Penerimaan/Pengkajian Pemeliharaan.
Aktivitas ini mencakup penilaian integritas dari sistem termodifikasi hingga
pengembang memperoleh pernyataan kepuasan dari terpenuhinya permintaan
perubahan. Beberapa aktivitas lain yang mungkin dilakukan adalah penjaminan
kualitas, verifikasi, validasi, dan joint review.
5. Migrasi.
Aktivitas ini terjadi ketika sistem perangkat lunak dipindahkan dari satu ke
lingkungan ke lingkungan lainnya. Hal ini mengakibatkan harus dibuat sebuah
perencanaan migrasi dan diketahui oleh pengguna sistem, alasan mengapa lingkungan
yang lama tidak mendukung, dan sebuah deskripsi dari lingkungan baru dan kapan
bisa dipakai. Aktivitas ini juga fokus kepada proses paralel pada lingkungan lama dan
baru serta kajian tentang efek migrasi ke lingkungan baru.
6. Pemberhentian Operasi Perangkat Lunak.
Aktivitas ini mencakup pemberhentian operasi dari sebuah perangkat lunak
dan perencanaan pengembangan dari perangkat lunak tersebut serta pemberitahuan
kepada pengguna mengenai hal tersebut
2.6 Manajemen Pemeliharaan Perangkat Lunak
Fungsi manajemen terdiri dari beberapa hal yakni:
1. Training.
Terdiri dari penentuan tujuan, misi, dan serangkaian aksi untuk
merealisasikannya. Komitmen dari manusia dan sumber daya serta penjadwalan aksi
adalah aktivitas yang penting pada fungsi ini.
2. Organizing.
Fungsi manajemen yang membangun pembagian peran manusia pada
sebuah organisasi. Termasuk juga membangun hubungan antar manusia dan
pemberian tanggung jawab serta hak yang dibutuhkan.
3. Staffing.
Mencakup bagaimana mengisi posisi pada organisasi dengan orang yang
terpilih dan terlatih. Aktivitas kunci dari fungsi ini adalah mengevaluasi personal
dan menyediakan pembangunan SDM contohnya peningkatan pengetahuan, sopan
santun, dan keahlian.
4. Leading.
Menciptakan lingkungan kerja dan atmosfer yang akan membantu dan
memotivasi orang agar mereka dapat berkontribusi maksimal untuk mencapai
sasaran organisasi.
5. Controlling.
Mengukur kinerja aktual dengan sasaran yang hendak dicapai dan jika
terjadi penyimpangan akan melakukan aksi korektif. Aktivitas juga mencakup
reward and punish bagi personal.
Organisasi pemeliharaan perangkat lunak dapat dirancang dan dibangun
dengan menggunakan tiga struktur organisasi yang berbeda, yakni:
Gambar 5. Susunan Organisasi Fungsional
Organisasi dibagi menjadi unit-unit fungsional yang berbeda-beda, seperti
modifikasi perangkat lunak, pengujian, dokumentasi, penjaminan kualitas, dsb.
1. Organisasi fungsional
Menampilkan kelebihan dari organisasi terpusat dari sumber daya yang
serupa. Kelemahan utamanya adalah permasalahan antarmuka yang sulit
untuk diselesaikan misalkan departemen dilibatkan pada lebih dari satu
proyek akan mengakibatkan konflik mengenai prioritas proyek-proyek yang ada
karena keterbatasan sumber daya bahkan dengan kurangnya hak dan tanggung
jawab pusat terhadap proyek akan mengakibatkan departemen fokus hanya
pada spesialisasinya saja dibandingkan dengan sasaran proyeknya.
2. Project Organization.
Merupakan kebalikan dari tipe pertama. Pada tipe ini, seorang manajer
diberikan tanggung jawab dan hak penuh untuk mengatur orang, semua sumber
daya yang dibutuhkan untuk pengerjaan proyek dipisahkan dari struktur
fungsional regulernya dan diorganisasikan pada bagian swantara tertentu. Manajer
proyek mungkin saja mendapatkan tambahan sumber daya dari luar organisasi.
Kelebihan dari tipe ini adalah kontrol penuh terhadap proyek, pengambilan
keputusan yang cepat, dan masing-masing personal mendapatkan motivasi yang
tinggi. Kekurangannya adalah adanya waktu yang dibutuhkan untuk membentuk
sebuah tim dan kemungkinan inefisiensi sumber daya.
3. Matrix Organization.
Gabungan kedua tipe di awal dengan tujuan untuk memaksimalkan kelebihan
dan meminimalkan kekurangan kedua tipe di atas. Kelebihan dari tipe ini adalah
adanya keseimbangan antara sasaran departemen fungsional dengan sasaran
proyek itu sendiri. Masalah utama adalah setiap orang akan berkoordinasi dengan
dua orang manajer dan ini bisa menjadi sumber konflik. Solusinya bisa dengan
penentuan peran yang jelas, tanggung jawab dan hak dari manajer fungsional dan
manajer proyek untuk setiap jenis keputusan
2.7 Perencanaan Pemeliharaan Perangkat Lunak
Perencanaan pemeliharaan perangkat lunak sangat erat kaitannya dengan
bagaimana memperkirakan perubahan-perubahan sistem yang mungkin terjadi dan
bagian-bagian mana dari sistem yang kemungkinan sulit untuk dipelihara. Selain itu,
harus memperkirakan biaya pemeliharaan untuk jangka waktu tertentu. Perkiraan-
perkiraan berikut sangat terkait satu sama lain:
Apakah perubahan sistem harus diterima tergantung dari maintainabilitas
dari komponen sistem yang dipengaruhi oleh perubahan tersebut
Mengimplementasikan perubahan sistem akan mendegradasikan struktur
sistem dan akan mengurangi nilai maintainabilitas dari sistem
Biaya pemeliharaan tergantung pada jumlah perubahan dan biaya
terhadap perubahan sistem bergantung dari maintainabilitas komponen sistem
Memperkirakan jumlah permintaan perubahan membutuhkan pemahaman tentang
hubungan antara sistem dengan lingkungan eksternalnya. Beberapa sistem memiliki
hubungan yang sangat kompleks dengan lingkungan eksternalnya dan perubahan
pada lingkungan tersebut akan menyebabkan perubahan pada sistem. Untuk
menentukan hubungan antara sistem dengan lingkungan eksternalnya, ada beberapa
faktor yang perlu dinilai antara lain:
Jumlah dan kompleksitas antarmuka. Semakin besar jumlah antarmuka dan
semakin kompleks antarmuak tersebut, akan semakin tinggi permintaan
perubahan yang muncul.
Jumlah kebutuhan sistem yang berubah-ubah. Kebutuhan yang mencerminkan
prosedur atau kebijakan organisasional sangat mudah berubah dibandingkan
dengan kebutuhan yang berasal dari domain yang karakteristiknya stabil.
Proses bisnis dari sistem. Seiring dengan perubahan proses bisnis akan
menghasilkan permintaan-permintaan untuk perubahan sistem. Semakin
banyak bisnis proses yang menggunakan sistem, semakin banyak permintaan
perubahan terhadap sistem.
Untuk memperkirakan maintainabilitas sistem, harus dipahami mengenai jumlah
dan tipe dari hubungan antar komponen sistem dan juga kompleksitas dari
komponen-komponen tersebut. Pengukuran kompleksitas tersebut sangat berguna
untuk menentukan komponen program yang sangat sulit untuk dipelihara. Selain itu
untuk menentukan maintainabilitas sistem, dapat menggunakan beberapa metrik
berikut:
Jumlah permintaan pemeliharaan korektif. Peningkatan jumlah laporan
kerusakan dapat mengindikasikan semakin banyak kesalahan yang muncul
pada program dibandingkan dengan yang diperbaiki selama proses
pemeliharaan. Ini dapat menunjukkan penurunan nilai maintainabilitas.
Rata-rata waktu yang dibutuhkan untuk analisis akibat. Hal ini mencerminkan
jumlah komponen program yang terpengaruh oleh permintaan perubahan. Jika
waktu ini meningkat, akan mengakibatkan semakin banyak komponen yang
terpengaruh perubahan dan nilai maintainabilitas menurun.
Rata-rata waktu yang dipakai untuk mengimplementasikan perubahan sistem.
Ini adalah waktu yang dibutuhkan untuk memodifikasi sistem dan
dokumentasinya setelah menentukan komponen mana saja yang terpengaruh
oleh perubahan. Peningkatan waktu yang dibutuhkan untuk
mengimplementasikan perubahan sistem mengindikasikan penurunan nilai
maintainabilitas.
Jumlah permintaan perubahan yang drastis. Peningkatan nilai ini dapat
berakibat kepada penurunan nilai maintainabilitas
Perkiraan tentang permintaan-permintaan perubahan sistem dan maintainabilitas,
sistem dapat digunakan untuk memprediksi biaya pemeliharaan. Model
COCOMO 2 menyatakan bahwa perkiraan besar usaha untuk pemeliharaan dapat
dilihat dari besar usaha untuk memahami kode program yang ada pada sistem dan
besar usaha untuk mengembangkan kode program yang baru.
BAB III
KESIMPULAN
Pemeliharan adalah aktivitas keseluruhan yang dilakukan untuk menyediakan
dukungan yang murah dan efektif terhadap sistem perangkat lunak. Aktivitas
pemeliharaan dapat berupa pre-delivery dan post-delivery Kategori pemeliharaan
perangkat lunak: Pemeliharaan korektif, pemeliharaan adaptif, pemeliharaan
perfektif, dan pemeliharaan emergensi. Pemeliharaan perangkat lunak merupakan
kegiatan yang membutuhkan biaya tinggi karena beberapa faktor antara lain
stabilitas sistem, tanggung jawab kontraktual, keahlian staf, serta usia dan struktur
program Tiga model pemeliharaan perangkat lunak yakni Quick-Fix Model,
Iterative Enhancement Model, dan Full-Reuse Model
Proses Pemeliharaan Versi IEEE-1219 dibagi menjadi tujuh fase, yakni:
1. Identifikasi, klasifikasi, dan penentuan prioritas modifikasi
2. Analisis
3. Perancangan
4. Implementasi
5. Regression/system testing
6. Acceptance testing
7. Delivery Proses Pemeliharaan Versi ISO-1220 membagi aktivitas pemeliharaan ini
menjadi beberapa aktivitas, yakni:
1. Implementasi Proses
2. Analisis Masalah dan Modifikasi
3. Implementasi Modifikasi
4. Penerimaan/Pengkajian Pemeliharaan
5. Migrasi
6. Pemberhentian Operasi Perangkat Lunak
DAFTAR PUSTAKA
Binadarma. (2012, 17 Juni). Rekayasa Perangkat Lunak. Diperoleh 25 Januari
2017, dari
http://eprints.binadarma.ac.id/932/1/REKAYASA%20PERANGKAT
%20LUNAK%20MATERI%201.pdf
IEEE Standart 1016-1998 Software Design Description.
Recommended