Chapter 13
“Building Information Systems”
ANGGOTA KELOMPOK:
1. Nabila Maharani Zahid (042111333076)
2. Bethania Crist Indraswari (042111333081)
3. Intasya Nurfadilla (042111333127)
4. Verena Ayu Carinnira P. (042111333147)
5. Nidya Azwa Kusuma Lazuardi (042111333159)
UNIVERSITAS AIRLANGGA
FAKULTAS EKONOMI DAN BISNIS
PRODI AKUNTANSI
2023
13-1 How does building new systems produce organizational change?
Perubahan sistem informasi baru merupakan salah satu jenis perubahan organisasi yang
direncanakan. Pengenalan sistem informasi baru tidak hanya melibatkan software dan
hardware tetapi juga mencakup perubahan dalam pekerjaan, keterampilan, manajemen, dan
organisasi. Pembangun sistem harus memahami bagaimana suatu sistem akan mempengaruhi
proses bisnis tertentu dan organisasi secara keseluruhan.
● Systems Development and Organizational Change
Teknologi informasi dapat mempromosikan berbagai tingkat perubahan organisasi,
mulai dari inkremental hingga far-reaching. Berikut adalah perubahan struktural
organisasi struktural oleh teknologi informasi :
1. Automation
Otomatisasi merupakan perubahan organisasi paling umum yang didukung
oleh teknologi informasi. Aplikasi pertama dari teknologi informasi yang
terlibat membantu karyawan untuk melakukan pekerjaannya lebih efisien dan
efektif.
2. Rationalization
Rasionalisasi prosedur (Rationalization of Procedure) merupakan bentuk
perubahan organisasi yang lebih dalam dan mengikuti dengan cepat dari
otomatisasi awal. Apabila otomatisasi mengungkapkan hambatan baru dalam
produksi dan membuat pengaturan prosedur atau struktur menjadi sangat
rumit, maka rasionalisasi prosedur adalah perampingan dari prosedur operasi
standar. TQM dan Six Sigma merupakan salah satu contoh penerapan
rasionalisasi prosedur. Total Quality Management (TQM) menjadikan
pencapaian kualitas sebagai tujuan dan tanggung jawab semua orang dan
fungsi dalam suatu organisasi. Six Sigma merupakan ukuran kualitas yang
spesifik. Sebagian besar perusahaan tidak dapat mencapai tingkat kualitas ini
tetapi menggunakan six sigma sebagai tujuan untuk mendorong program
peningkatan kualitas yang berkelanjutan.
3. Redesign
Perubahan organisasi selanjutnya yang lebih kuat adalah business process
redesign, dimana proses bisnis dianalisis, disederhanakan, dan didesain ulang.
Proses ini akan mengatur ulang alus kerja, menggabungkan langkah-langkah
untuk mengurangi pemborosan dan menghilangkan tugas-tugas yang berulang.
Akan tetapi akan terbatas pada bagian-bagian tertentu dari bisnis.
4. Paradigm Shifts
Pergeseran paradigma merupakan bentuk perubahan bisnis yang lebih radikal.
Pergeseran tersebut melibatkan pemikiran ulang sifat bisnis dan sifat
organisasi.
Analis sistem membuat peta jalan dari organisasi dan sistem yang ada,
mengidentifikasi pemilik utama dan pengguna data bersama dengan perangkat
keras dan perangkat lunak yang ada. Analis sistem kemudian merinci masalah
sistem yang ada. Dengan memeriksa dokumen, kertas kerja, dan prosedur, mengamati
operasi sistem, dan mewawancarai pengguna utama sistem, analis dapat
mengidentifikasi area masalah dan tujuan yang akan dicapai solusi. Seringkali,
solusinya membutuhkan pembangunan sistem informasi baru atau meningkatkan yang
sudah ada.
analisis sistem juga mencakup studi kelayakan untuk menentukan apakah solusi
itu layak, atau dapat dicapai, dari sudut pandang keuangan, teknis, dan
organisasi. Studi kelayakan menentukan apakah sistem yang diusulkan diharapkan
menjadi investasi yang baik, apakah teknologi yang dibutuhkan untuk sistem tersedia
dan dapat ditangani oleh spesialis sistem informasi perusahaan, dan apakah organisasi
dapat menangani perubahan yang diperkenalkan oleh sistem.
Desain Sistem
Desain Sistem menunjukkan bagaimana sistem akan memenuhi tujuan ini. Desain sistem
informasi adalah keseluruhan rencana atau model untuk sistem tersebut.
contoh : denah gedung atau rumah, terdiri atas semua spesifikasi yang memberikan bentuk
dan struktur dari sistem tersebut.
Perancang sistem merinci spesifikasi sistem yang akan memberikan fungsi yang
diidentifikasi selama analisis sistem. Spesifikasi ini harus mencakup semua komponen
manajerial, organisasi, dan teknologi dari solusi sistem.
note : Seperti rumah atau bangunan, sistem informasi mungkin memiliki banyak
kemungkinan desain.
Peran Pengguna Akhir
● Persyaratan informasi pengguna mendorong seluruh upaya pembangunan sistem
● Pengguna harus memiliki kontrol yang cukup atas proses desain untuk memastikan
bahwa sistem mencerminkan prioritas bisnis dan kebutuhan informasi
➔ Pengujian sistem informasi dapat dipecah menjadi tiga jenis aktivitas: pengujian
unit, pengujian sistem, dan pengujian penerimaan.
Pengujian unit (Unit Testing) :
● Terdiri dari pengujian setiap program secara terpisah dalam sistem. Dipercaya
secara luas bahwa tujuan dari pengujian tersebut adalah untuk menjamin bahwa
program bebas dari kesalahan, tetapi tujuan ini secara realistis tidak mungkin
dilakukan.
● Pengujian harus dilihat sebagai sarana menemukan kesalahan dalam program, dengan
berfokus pada menemukan semua cara untuk membuat program gagal.
Pengujian Sistem (System Testing) :
● Menguji fungsi sistem informasi secara keseluruhan.
● Menentukan apakah modul-modul berlainan akan berfungsi bersama seperti yang
direncanakan dan apakah ada ketidaksesuaian antara cara sistem benar-benar bekerja
dan cara kerjanya.
Pengujian penerimaan (Acceptance Testing) :
Perpindahan dari sistem lama ke sistem baru mengharuskan pengguna akhir dilatih
untuk menggunakan sistem baru. Dokumentasi terperinci yang menunjukkan cara
kerja sistem dari sudut pandang teknis dan pengguna akhir diselesaikan selama
waktu konversi untuk digunakan dalam pelatihan dan operasi sehari-hari.
Kurangnya pelatihan dan dokumentasi yang tepat berkontribusi terhadap kegagalan
sistem, sehingga bagian dari proses pengembangan sistem ini sangat penting.
✿Produksi dan Pemeliharaan
● sistem baru dipasang dan konversi selesai, sistem dikatakan dalam produksi
● Sistem akan ditinjau oleh pengguna dan spesialis teknis untuk menentukan
seberapa baik sistem tersebut telah memenuhi tujuan aslinya dan untuk
memutuskan apakah ada revisi atau modifikasi yang sesuai.
13-3 What are the principal methodologies for modeling and designing systems?
Ada metodologi alternatif untuk pemodelan dan perancangan sistem. Metodologi terstruktur
dan pengembangan berorientasi objek adalah yang paling menonjol.
Metodologi Terstruktur
Metodologi terstruktur telah digunakan untuk mendokumentasikan, menganalisis, dan
merancang sistem informasi sejak tahun 1970-an. Terstruktur mengacu pada fakta bahwa
tekniknya langkah demi langkah, dengan setiap langkah dibangun di atas yang sebelumnya.
Metodologi terstruktur bersifat top-down, berkembang dari level tertinggi, paling abstrak ke
level detail terendah—dari yang umum ke yang spesifik.
Metode pengembangan terstruktur berorientasi pada proses, berfokus terutama pada
pemodelan proses, atau tindakan yang menangkap, menyimpan, memanipulasi, dan
mendistribusikan data sebagai aliran data melalui sistem. Metode ini memisahkan data dari
proses. Prosedur pemrograman terpisah harus ditulis setiap kali seseorang ingin mengambil
tindakan pada bagian data tertentu. Prosedur bertindak berdasarkan data yang diteruskan oleh
program kepada mereka.
Alat utama untuk mewakili proses komponen sistem dan aliran data di antara mereka adalah
diagram aliran data (DFD). Diagram aliran data menawarkan model grafis logis dari aliran
informasi, mem
partisi sistem ke dalam modul yang menunjukkan tingkat detail yang dapat dikelola. Ini
dengan ketat menentukan proses atau transformasi yang terjadi dalam setiap modul dan
antarmuka yang ada di antara mereka.
Gambar 13.6 menunjukkan diagram aliran data sederhana untuk sistem pendaftaran mata
kuliah mail-in universitas. Kotak bulat mewakili proses, yang menggambarkan transformasi
data. Kotak persegi mewakili entitas eksternal, yang merupakan pencetus atau penerima
informasi yang terletak di luar batas sistem yang dimodelkan. Persegi panjang terbuka
mewakili penyimpanan data, yang merupakan inventaris data manual atau otomatis. Panah
mewakili aliran data, yang menunjukkan pergerakan antara proses, entitas eksternal, dan
penyimpanan data. Mereka berisi paket data dengan nama atau konten dari setiap aliran data
yang tercantum di samping panah.
Diagram aliran data ini menunjukkan bahwa mahasiswa menyerahkan formulir pendaftaran
dengan nama, nomor induk, dan nomor mata kuliah yang ingin diambil. Dalam proses 1.0,
sistem memverifikasi bahwa setiap mata kuliah yang dipilih masih terbuka dengan merujuk
file mata kuliah universitas. File tersebut membedakan kursus yang dibuka dari yang telah
dibatalkan atau diisi. Proses 1.0 kemudian menentukan pilihan siswa mana yang dapat
diterima atau ditolak. Proses 2.0 mendaftarkan siswa dalam kursus yang telah diterimanya.
Itu memperbarui file kursus universitas dengan nama dan nomor identifikasi siswa dan
menghitung ulang ukuran kelas. Jika pendaftaran maksimum telah tercapai, nomor kursus
ditandai sebagai ditutup. Proses 2.0 juga memperbarui file master mahasiswa universitas
dengan informasi tentang mahasiswa baru atau perubahan alamat. Proses 3.0 kemudian
mengirimkan kepada setiap pelamar siswa surat konfirmasi pendaftaran yang mencantumkan
mata kuliah yang didaftarkannya dan mencatat pilihan mata kuliah yang tidak dapat dipenuhi.
Diagram dapat digunakan untuk menggambarkan proses tingkat tinggi serta detail tingkat
rendah. Melalui diagram aliran data yang diratakan, proses yang kompleks dapat dipecah
menjadi tingkat detail yang berurutan. Seluruh sistem dapat dibagi menjadi subsistem dengan
diagram aliran data tingkat tinggi. Setiap subsistem, pada gilirannya, dapat dibagi menjadi
subsistem tambahan dengan diagram aliran data tingkat kedua, dan subsistem tingkat yang
lebih rendah dapat dipecah lagi hingga tingkat detail terendah tercapai.
Alat lain untuk analisis terstruktur adalah kamus data, yang berisi informasi tentang potongan
data individual dan pengelompokan data dalam suatu sistem (lihat Bab 6). Kamus data
mendefinisikan isi aliran data dan penyimpanan data sehingga pembangun sistem memahami
dengan tepat potongan data apa yang dikandungnya. Spesifikasi proses menggambarkan
transformasi yang terjadi dalam level terendah dari diagram aliran data. Mereka
mengekspresikan logika untuk setiap proses.
Dalam metodologi terstruktur, desain perangkat lunak dimodelkan menggunakan bagan
struktur hierarkis. Bagan struktur adalah bagan top-down, menunjukkan setiap tingkat desain,
hubungannya dengan tingkat lain, dan tempatnya dalam struktur desain keseluruhan. Desain
pertama-tama mempertimbangkan fungsi utama dari suatu program atau sistem, kemudian
memecah fungsi ini menjadi subfungsi, dan mendekomposisi setiap subfungsi hingga tingkat
perincian terendah tercapai.
Gambar 13.7 menunjukkan bagan struktur tingkat tinggi untuk sistem penggajian. Jika suatu
desain memiliki terlalu banyak level untuk dimasukkan ke dalam satu bagan struktur, maka
dapat dipecah lebih lanjut pada bagan struktur yang lebih detail. Bagan struktur dapat
mendokumentasikan satu program, satu sistem (satu set program), atau bagian dari satu
program.
Kita dapat melihat bagaimana kelas dan pewarisan bekerja pada Gambar 13.8, yang
mengilustrasikan hubungan antar kelas mengenai karyawan dan bagaimana mereka dibayar.
Karyawan adalah leluhur bersama, atau superclass, untuk tiga kelas lainnya. salaried, hourly,
dan temporary adalah subkelas dari Karyawan. Nama kelas ada di kompartemen atas, atribut
untuk setiap kelas ada di bagian tengah setiap kotak, dan daftar operasi ada di bagian bawah
setiap kotak. Fitur-fitur yang dimiliki oleh semua karyawan (ID, nama, alamat, tanggal
dipekerjakan, posisi, dan gaji) disimpan di superclass Karyawan, sedangkan setiap subclass
menyimpan fitur yang spesifik untuk jenis karyawan tertentu. Khusus untuk karyawan per
jam, misalnya, adalah tarif per jam dan tarif lembur mereka. Garis solid dari subclass ke
superclass adalah jalur generalisasi yang menunjukkan bahwa subclass Gaji, Per Jam, dan
Temporary memiliki fitur umum yang dapat digeneralisasikan ke dalam superclass
Karyawan.
Pengembangan berorientasi objek lebih iteratif dan inkremental daripada pengembangan
terstruktur tradisional. Selama analisis, pembuat sistem mendokumentasikan persyaratan
fungsional sistem, menentukan properti terpentingnya dan apa yang harus dilakukan oleh
sistem yang diusulkan. Interaksi antara sistem dan penggunanya dianalisis untuk
mengidentifikasi objek, yang mencakup data dan proses. Fase desain berorientasi objek
menjelaskan bagaimana objek akan berperilaku dan bagaimana mereka akan berinteraksi satu
sama lain. Objek serupa dikelompokkan bersama untuk membentuk kelas, dan kelas
dikelompokkan ke dalam hierarki di mana subkelas mewarisi atribut dan metode dari
superkelasnya.
Sistem informasi diimplementasikan dengan menerjemahkan desain ke dalam kode program,
menggunakan kembali kelas-kelas yang sudah tersedia di perpustakaan objek perangkat lunak
yang dapat digunakan kembali, dan menambahkan yang baru yang dibuat selama fase desain
berorientasi objek. Implementasi juga dapat melibatkan pembuatan database berorientasi
objek. Sistem yang dihasilkan harus diuji dan dievaluasi secara menyeluruh.
Karena objek dapat digunakan kembali, pengembangan berorientasi objek berpotensi
mengurangi waktu dan biaya pengisian perangkat lunak karena organisasi dapat
menggunakan kembali objek perangkat lunak yang telah dibuat sebagai blok penyusun untuk
aplikasi lain. Sistem baru dapat dibuat dengan menggunakan beberapa objek yang ada,
mengubah yang lain, dan menambahkan beberapa objek baru. Kerangka kerja berorientasi
objek telah dikembangkan untuk menyediakan aplikasi setengah lengkap yang dapat
digunakan kembali yang dapat disesuaikan lebih lanjut oleh organisasi menjadi aplikasi jadi.
Prototyping
Prototyping terdiri dari membangun sistem eksperimental dengan cepat dan murah bagi
pengguna akhir untuk mengevaluasi. Dengan berinteraksi dengan prototipe, pengguna bisa
mendapatkan ide yang lebih baik tentang kebutuhan informasi mereka. Prototipe yang
didukung oleh pengguna dapat digunakan sebagai template untuk membuat sistem akhir.
Prototipe adalah versi kerja dari sistem informasi atau bagian dari sistem, tetapi dimaksudkan
hanya sebagai model awal. Setelah beroperasi, prototipe akan disempurnakan lebih lanjut
sampai sesuai dengan kebutuhan pengguna. Setelah desain selesai, prototipe dapat dikonversi
ke sistem produksi yang dipoles.
Proses membangun desain awal, mencobanya, menyempurnakannya, dan mencoba lagi telah
disebut proses berulang pengembangan sistem karena langkah-langkah yang diperlukan
untuk membangun sistem dapat diulang berulang kali. Prototyping lebih eksplisit berulang
daripada siklus hidup konvensional, dan secara aktif mempromosikan perubahan desain
sistem. Telah dikatakan bahwa prototyping menggantikan pengerjaan ulang yang tidak
direncanakan dengan iterasi yang direncanakan, dengan setiap versi lebih akurat
mencerminkan kebutuhan pengguna.
❖ Steps in Prototyping
➔ Step 1 : Identifikasi persyaratan dasar pengguna. Perancang sistem (biasanya
spesialis sistem informasi) bekerja dengan pengguna hanya cukup lama untuk
menangkap kebutuhan informasi dasar pengguna.
➔ Step 2 : Kembangkan prototipe awal. Perancang sistem membuat prototipe
kerja dengan cepat, menggunakan alat untuk menghasilkan perangkat lunak
dengan cepat.
➔ Step 3 : Gunakan prototipe. Pengguna didorong untuk bekerja dengan sistem
untuk menentukan seberapa baik prototipe memenuhi kebutuhannya dan
membuat saran untuk meningkatkan prototipe.
➔ Step 4 : Merevisi dan meningkatkan prototipe. Pembuat sistem mencatat
semua perubahan permintaan pengguna dan menyempurnakan prototipe yang
sesuai. Setelah prototipe telah direvisi, siklus kembali ke Langkah 3. Langkah
3 dan 4 diulang sampai pengguna puas.
Ketika tidak ada lagi iterasi yang diperlukan, prototipe yang disetujui kemudian
menjadi prototipe operasional yang melengkapi spesifikasi akhir untuk aplikasi.
Terkadang prototipe diadopsi sebagai versi produksi sistem.
❖ Advantages and Disadvantages of Prototyping
Prototyping paling berguna ketika ada beberapa ketidakpastian tentang persyaratan
atau solusi desain dan sering digunakan untuk merancang antarmuka pengguna akhir
sistem informasi (bagian dari sistem yang berinteraksi dengan pengguna akhir, seperti
tampilan on-line dan layar entri data, laporan, atau halaman web). Karena prototyping
mendorong keterlibatan pengguna akhir yang intens sepanjang siklus hidup
pengembangan sistem, lebih mungkin untuk menghasilkan sistem yang memenuhi
persyaratan pengguna.
Namun, prototyping cepat dapat mengabaikan langkah-langkah penting dalam
pengembangan sistem. Jika prototipe selesai bekerja dengan cukup baik, manajemen
mungkin tidak melihat perlunya pemrograman ulang, desain ulang, atau dokumentasi
lengkap dan pengujian untuk membangun sistem produksi yang dipoles. Beberapa
sistem yang dibangun dengan tergesa-gesa ini mungkin tidak dengan mudah
menampung data dalam jumlah besar atau sejumlah besar pengguna dalam
lingkungan produksi.
Application Software Packages, Software Services, and Outsourcing
Perusahaan dapat menyewa perangkat lunak dari penyedia layanan perangkat lunak online
mereka dapat membeli perangkat lunak dari vendor komersial sebagai paket untuk dijalankan
di rumah, atau mereka dapat memiliki aplikasi khusus yang dikembangkan oleh perusahaan
outsourcing luar.
❖ Application Software Packages and Cloud Software Services
Saat ini banyak sistem didasarkan pada paket perangkat lunak aplikasi yang tersedia
secara komersial atau perangkat lunak cloud sebagai layanan (SaaS). Misalnya,
perusahaan dapat memilih untuk menerapkan perencanaan sumber daya perusahaan
Oracle, manajemen rantai pasokan, atau perangkat lunak manajemen sumber daya
manusia di rumah atau membayar untuk menggunakan perangkat lunak ini yang
berjalan di platform Oracle Cloud. Perangkat lunak produktivitas desktop Microsoft
Office hadir dalam versi desktop dan cloud (Office 365). Banyak aplikasi yang umum
untuk semua organisasi bisnis-misalnya, penggajian, piutang, buku besar, atau kontrol
inventaris. Untuk fungsi universal seperti itu dengan proses standar yang tidak banyak
berubah dari waktu ke waktu, sistem generik kuda betina akan memenuhi persyaratan
banyak organisasi.
Jika paket perangkat lunak komersial atau layanan perangkat lunak cloud dapat
memenuhi sebagian besar persyaratan organisasi, perusahaan tidak perlu menulis
perangkat lunaknya sendiri. Perusahaan dapat menghemat waktu dan uang dengan
menggunakan program perangkat lunak yang telah ditulis, dirancang sebelumnya, dan
telah diuji sebelumnya dari vendor perangkat lunak. Vendor Paket dan SaaS
menyediakan banyak pemeliharaan dan dukungan berkelanjutan untuk sistem.
termasuk penyempurnaan untuk menjaga sistem sejalan dengan perkembangan teknis
dan bisnis yang sedang berlangsung. Ketika paket atau solusi SaaS dikejar, pengguna
akhir akan bertanggung jawab untuk menyediakan persyaratan informasi bisnis untuk
sistem, dan spesialis sistem informasi akan memberikan persyaratan teknis.
Jika organisasi memiliki persyaratan unik yang tidak dipenuhi paket, alat ini
menyertakan kemampuan untuk penyesuaian.
Fitur kustomisasi memungkinkan paket perangkat lunak komersial atau perangkat
lunak berbasis cloud dimodifikasi untuk memenuhi persyaratan unik organisasi tanpa
merusak integritas perangkat lunak. Jika banyak penyesuaian diperlukan,
pemrograman tambahan dan pekerjaan kustomisasi mungkin menjadi sangat mahal
dan memakan waktu bahwa mereka meniadakan banyak keuntungan dari paket dan
layanan perangkat lunak.
Ketika suatu sistem dikembangkan menggunakan paket perangkat lunak aplikasi atau
layanan perangkat lunak cloud, analisis sistem akan mencakup evaluasi formal dari
paket perangkat lunak atau layanan di mana pengguna akhir dan spesialis sistem
informasi akan berpartisipasi. Kriteria evaluasi yang paling penting adalah fungsi
yang disediakan oleh perangkat lunak, fleksibilitas, keramahan pengguna, persyaratan
perangkat keras, persyaratan basis data, upaya instalasi dan pemeliharaan,
dokumentasi, kualitas vendor, dan biaya. Paket atau proses evaluasi layanan perangkat
lunak sering didasarkan pada permintaan proposal (RPP), yang merupakan daftar rinci
pertanyaan yang diajukan ke vendor perangkat lunak.
Ketika perangkat lunak dari sumber eksternal dipilih, organisasi tidak lagi memiliki
kontrol penuh atas proses desain sistem. Alih-alih menyesuaikan spesifikasi desain
sistem langsung dengan kebutuhan pengguna, upaya desain akan terdiri dari mencoba
membentuk persyaratan pengguna agar sesuai dengan fitur paket atau layanan
perangkat lunak. Jika persyaratan organisasi bertentangan dengan cara kerja paket
atau layanan perangkat lunak dan perangkat lunak ini tidak dapat disesuaikan,
organisasi harus beradaptasi dengan paket atau layanan perangkat lunak dan
mengubah prosedurnya.
❖ Outsourcing
Jika sebuah perusahaan tidak ingin menggunakan sumber daya internalnya untuk
membangun atau mengoperasikan sistem informasi, ia dapat melakukan outsourcing
pekerjaan ke organisasi eksternal yang berspesialisasi dalam menyediakan layanan
ini. Cloud computing dan penyedia software as a service (SaaS), adalah salah satu
bentuk outsourcing. Perusahaan berlangganan menggunakan perangkat lunak dan
perangkat keras komputer yang disediakan oleh layanan sebagai platform teknis untuk
sistem mereka. Dalam bentuk lain dari outsourcing, perusahaan dapat menyewa
vendor eksternal untuk merancang dan membuat perangkat lunak untuk sistemnya,
tetapi perusahaan itu akan mengoperasikan sistem pada komputernya sendiri. Vendor
outsourcing mungkin domestik atau di negara lain.
Outsourcing domestik didorong terutama oleh fakta bahwa perusahaan outsourcing
memiliki keterampilan, sumber daya, dan aset yang tidak dimiliki klien mereka.
Memasang sistem manajemen rantai pasokan baru di perusahaan yang sangat besar
mungkin memerlukan perekrutan tambahan 30 hingga 50 orang dengan keahlian
khusus dalam perangkat lunak manajemen rantai pasokan yang dilisensikan dari
vendor. Daripada mempekerjakan karyawan baru permanen, yang sebagian besar akan
membutuhkan pelatihan ekstensif dalam perangkat lunak baru, dan kemudian
melepaskannya setelah sistem baru dibangun, lebih masuk akal, dan seringkali lebih
murah, untuk melakukan outsourcing pekerjaan ini untuk periode 12 bulan.
Dalam kasus outsourcing lepas pantai, keputusannya jauh lebih didorong oleh biaya.
Seorang programmer terampil di India atau Rusia menghasilkan sekitar $ 10.000 – $
30.000 per tahun dibandingkan dengan sekitar $ 60.000 atau lebih per tahun untuk
programmer yang sebanding di Amerika Serikat. Internet dan teknologi komunikasi
berbiaya rendah telah secara drastis mengurangi biaya dan kesulitan
mengoordinasikan pekerjaan tim global di lokasi lepas pantai. Selain penghematan
biaya, banyak perusahaan outsourcing lepas pantai menawarkan aset dan keterampilan
teknologi kelas dunia. Inflasi upah di luar Amerika Serikat baru-baru ini mengikis
beberapa keuntungan ini, dan beberapa pekerjaan telah pindah kembali ke Amerika
Serikat. Perusahaan umumnya tidak mengalihdayakan konsepsi, analisis sistem, dan
desain sistem TI ke perusahaan lepas pantai, tetapi sering melakukan outsourcing
pemrograman, pengujian, pemeliharaan, dan operasi harian sistem TI.
Sebuah perusahaan kemungkinan besar akan mendapat manfaat dari outsourcing jika
meluangkan waktu untuk mengevaluasi semua risiko dan memastikan outsourcing
sesuai untuk kebutuhan khususnya. Setiap perusahaan yang mengalihdayakan
aplikasinya harus benar-benar memahami proyek, termasuk persyaratan, metode
implementasi, manfaat yang diantisipasi, komponen biaya, dan metrik untuk
mengukur kinerja. Banyak perusahaan meremehkan biaya untuk mengidentifikasi dan
mengevaluasi vendor layanan teknologi informasi, untuk transisi ke vendor baru
untuk meningkatkan metode pengembangan perangkat lunak internal agar sesuai
dengan vendor outsourcing, dan untuk memantau vendor untuk memastikan mereka
memenuhi kewajiban kontrak mereka. Perusahaan perlu mengalokasikan sumber daya
untuk mendokumentasikan persyaratan, mengirimkan RFP, menyerahkan biaya
perjalanan, menegosiasikan kontrak, dan manajemen proyek.
Para ahli mengklaim dibutuhkan dari tiga bulan hingga satu tahun penuh untuk
sepenuhnya mentransfer pekerjaan ke mitra lepas pantai dan memastikan vendor
benar-benar memahami bisnis Anda. Outsourcing lepas pantai menimbulkan biaya
tambahan untuk mengatasi perbedaan budaya yang menguras produktivitas dan
menangani masalah sumber daya manusia, seperti memberhentikan atau relokasi
karyawan rumah tangga. Semua undercut biaya tersembunyi ini beberapa manfaat
yang diantisipasi dari outsourcing Perusahaan harus sangat berhati-hati ketika
menggunakan outsourcing untuk mengembangkan atau mengoperasikan aplikasi chat
memberikan beberapa jenis keunggulan kompetitif.
General Motors Corporation (GMT) pada satu titik telah mengalihdayakan 90 persen
layanan TI-nya, termasuk pusat data dan pengembangan aplikasinya. Perusahaan
kemudian memutuskan untuk membawa sebagian besar infrastruktur TI kami sendiri.
Menurunkan biaya yang penting, tetapi alasan utama GM untuk mengurangi
outsourcing adalah untuk mengambil kembali kendali atas sistem informasi, yang
diyakini membuat perusahaan tidak merespons dengan cepat peluang kompetitif.
13-5 What are new approaches for system building in the digital firm era?
Rapid Application Development (RAD), Agile Development, Automated Software
Testing, and DevOps
Istilah pengembangan aplikasi cepat (RAD) mengacu pada proses pembuatan sistem
yang dapat diterapkan dalam waktu yang sangat singkat dengan beberapa fleksibilitas untuk
beradaptasi seiring perkembangan proyek. RAD mencakup penggunaan pemrograman visual
dan alat lain untuk membangun antarmuka pengguna grafis, pembuatan prototipe berulang
dari elemen sistem utama, otomatisasi pembuatan kode program, dan kerja tim yang erat di
antara pengguna akhir dan spesialis sistem informasi.
Kadang-kadang teknik yang disebut joint application design (JAD) digunakan untuk
mempercepat pembuatan kebutuhan informasi dan untuk mengembangkan desain sistem
internal. JAD menyatukan pengguna akhir dan spesialis sistem informasi dalam sesi interaktif
untuk membahas desain sistem.
Agile development berfokus pada pengiriman cepat perangkat lunak yang berfungsi
dengan memecah proyek besar menjadi serangkaian proyek kecil sub proyek yang selesai
secara singkat periode waktu menggunakan iterasi, umpan balik terus menerus, dan
keterlibatan pengguna yang berkelanjutan.
Pengujian terjadi lebih awal dan seringkali di seluruh pengembangan proses. Agile
method menekankan komunikasi tatap muka, mendorong orang untuk berkolaborasi dan
membuat keputusan dengan cepat dan efektif, respons yang cepat dan fleksibel terhadap
perubahan, dan produksi perangkat lunak yang berfungsi daripada dokumentasi yang rumit.
Alih-alih fase pengujian terpisah, seperti dalam pendekatan air terjun tradisional, pengujian
terjadi terus menerus dalam pengembangan tangkas selama setiap sprint, dan pengujian
dianjurkan. Ini sering berarti bahwa lebih banyak waktu pengembangan akan dihabiskan
untuk pengujian daripada saat menggunakan pendekatan tradisional.
Meskipun penting, pengujian berkelanjutan bisa sangat memakan waktu, terutama
karena mengembangkan skrip pengujian, menjalankan langkah pengujian, dan mengevaluasi
hasil biasanya dilakukan secara manual. Alat pengujian otomatis sekarang tersedia untuk
memenuhi kebutuhan ini. Alat pengujian otomatis melakukan pemeriksaan perangkat lunak,
melaporkan hasil, dan membandingkan hasil dengan pengujian sebelumnya. Sesi Interaktif
tentang Teknologi menunjukkan bagaimana pengujian otomatis membantu perusahaan
perangkat lunak keamanan McAfee menggunakan metodologi tangkas dalam proyeknya.
DevOps dibangun di atas prinsip pengembangan agile sebagai strategi organisasi
untuk menciptakan budaya dan lingkungan yang lebih jauh mempromosikan praktik
pengembangan yang cepat dan gesit. DevOps adalah singkatan dari "pengembangan dan
operasi" dan menekankan kolaborasi yang erat antara pengembang perangkat lunak yang
membuat aplikasi dan staf operasional TI yang menjalankan dan memelihara aplikasi.
DevOps mencoba mengubah hubungan ini dengan mempromosikan komunikasi dan
kolaborasi yang lebih baik dan lebih sering antara pengembangan sistem dan grup operasi
serta alur kerja yang cepat dan stabil di seluruh siklus hidup pengembangan aplikasi.