Tentang

Profilku

This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Rabu, 29 April 2015

SISTEM INFORMASI MANAJEMEN

     Dipikir - pikir saat memasuki semester 6 semua terfokus pada nilai IP yang membuat kita bisa mengambil 24 sks bila hasil IP tersebut di atas 3.0 akan tetap riskan sekali bila IP di bawah 3.0 membuat kita sedih dan pusing tujuh keliling. Semua tergantung sobat yang menentukan .
     Baiklah pada kesempatan kali ini izinkan saya meluangkan waktu menulis artikel pembelajaran SIM (Sistem Informasi Manajemen) yang pernah saya tempuh pada perkuliahan semester 6 .
Semua saya rangkum dan saya catat baik pemberian berupa file dari dosen maupun dari catatan kecil saya di notepad .

A. PENGERTIAN SIM 
 
     SISTEM INFORMASI (Pemberi data melalui pesan) MANAJEMEN (Mengatur dan mengelola),
yang dikelola dalam manajemen : sumber daya manusia / sdm, sarana dan prasarana, keuangan, Marketing, dll . 

Konsep Dasar SIM   
  1. Prosedure/tahapan : suatu jaringan kerja dri procedure2 yg berupa urutan kegiatan yg saling berhubungan berkumpul bersama2 u/ mencapai tujuan tertentu .
  2. Komponen/elemen : kumpulan komponen yg saling berkaitan dan bekerjasama u/ mencpai suatu tujuan tertentu .
Ciri Sistem Menurut Tatang M Amirin
  1. Setiap sistem mempunyai tujuan 
  2. Setiap sistem mempunyai batas yang memisahkan nya dari lingkungannya
  3. Walau sistem mempunyai batas tetapi bersifat terbuka
  4. Sistem terdiri dari beberapa sub sistem / unsur
  5. Sistem mempunyai sifat holistik (Utuh Menyeluruh)
  6. saling berhubungan dan saling bergantung baik intern / ekstern
  7. sistem melkukan proses transformasi
  8. sistem memiliki mekanisme kontrol dgn pemanfaatn umpan balik (saling melengkapi)
  9. memiliki kemampuan u/ mengatur diri sendiri dan menyesuaikan diri
Klasifikasi Sistem 
  1. Sistem Abstrak : Sistem yg tidak terlihat / tidak dpt dirasakan 
  2. Sistem Fisik          : Sistem yg dpt terlihat
  3. Sistem Alamiah     : Sistem yg bersifat secara alami / terjadi dengan sendirinya
  4. Sistem Buatan       : Sistem yang dibuat / tidak terjadi dengan sendirinya
  5. Sistem Tertentu     : Sistem yang telah ditentukan /dapat di prediksi
  6. Sistem Tak Tentu  : Sistem yang berubah-ubah / tidak dapat di prediksi
  7. Sistem Tertutup    : Sistem yang tidak terpengaruh dengan sistem yg lain 
  8. Sistem Terbuka    : Sistem yang berpengaruh dengan sistem yang lain
model sistem : penyederhanaan dri sesuatu bentuk / objek

Jenis-Jenis / Model :
  1. Model Fisik : Penggambaran entitas dlm bentuk 3 dimensi 
  2. Model Naratif : menggambarkan entitas secara lisan / tulisan
  3. Model Grafik : Model yg mewakili entitas nya dgn menggunakan garis, simbol
  4. Model Matematis
B. CIRI-CIRI MASYARAKAT INFORMASIONAL

Perbandingan Masyarakat Prainformasional dan Informasional 
  1. Dasar ilmiah (Paradigma yang kaku, Kemampuan menggabung yang kreatif) 
  2. Jumlah Informasi (Langka, Melimpah)
  3. Tingkat Pertambahan Informasi (Linear, Eksponesial)
  4. Dasar Seleksi (Kabur, tepat)
  5. Kecepatan Transmisi Informasi (Lambat, Cepat)
  6. Lingkungan Informasi (Sempit, Luas)
  7. Biaya Pengadaan Informasi (Mahal, Murah)
  8. Isi Informasi (Stabil, Berubah-ubah)
  9. Lokasi Informasi (Tetap, Stabil)
  10. Jangkauan Terhadap Informasi (Terbatas, Terbuka)
  11. Cara Penyampaian Informasi (Monomedia, Multimedia)
  12. Jenis Interdependensi (Rendah, Tinggi)
  13. Variabilitas Informasi Pengalaman (Langsung, Tidak Langsung)
  14. Unit Untuk Penanganan Informasi (Individu Mesin, Bantuan Mesin)
  15. Struktur Pengolaan Informasi (Hierarkis, Horizontal)
  16. Kerangka Nilai Interpretasi (Monistik, Pluralistic)
  17. Ukuran Teknologi Informasi (Besar, Kecil)
  18. Tingkat Kompleksitas Sistem Informasi (Sederhana, Kompleks)
  19. Arus Informasi (Dari seorang ke banyak Orang, Dari banyak orang ke seorang
  20. Partisipasi Sosial Dalam Pengolahan Informasi (Perwakilan (by proxy) Universal dan langsung)
  21. Tingkat Kerahasiaan (Penuh Kerahasiaan Penetratif)
  22. Orientasi Waktu (Masa lalu, Masa depan)
Tahap-Tahap Penanganan Informasi
  1. Penciptaan Informasi 
  2. Pemeliharaan Saluran Informasi
  3. Seleksi dan Transmisi Informasi
  4. Penerimaan Informasi
  5. Penyimpanan Informasi
  6. Penelusuran Informasi
  7. Penggunaan Informasi
Tahap-Tahap Pendekatan Sistem
  1. PersiapanDefenisi
  2. Usaha solusi
C. EVOLUSI SIM
 
Beberapa Evolusi CBIS :
  1. SIA 
  2. SIM
  3. Sistem Operasi Perkantoran
  4. Sistem Pendukung Keputusan
Skema sistem informasi berbasis komputer di organisasi
  1. Sistem Pemrosesan Transaksi (Transaction Processing System) 
  2. Sistem Otomatisasi Kantor (Office Automation System)
  3. Sistem Informasi Manajemen
  4. Sistem Pendukung
Beberapa Manfaat atau Fungsi Sistem Informasi
  1. Meningkatkan aksesibilitas data 
  2. Menjamin tersedianya kualitas dan keterampilan
  3. Mengembangkan proses perencanaan yang efektif
  4. Mengidentifikasi kebutuhan-kebutuhan
  5. Menetapkan investasi yg akan diarahkan pada sistem informasi
  6. Mengantisipasi dan memahami konsekuensi-konsekuensi ekonomis
  7. Memperbaiki produktivitas dalam aplikasi pengembangan
  8. Organisasi menggunakan sistem informasi untuk mengelolah transaksi-transaksi
Hubungan Informasi dan Data

Transformasi data menjadi informasi
Menurut davis : 
  • Pengumpulan 
  • Memilih
  • PengelompokanP
  • Penyusunan
  • Meringkas
  • Perhitungan
  • Penyimpanan
  • Pengambilan kembali
  • Memperbanyak
  • Diserbar luaskan
Alat Pengolahan Dalam Sistem Informasi 
  • Otak 
  • Mekanik
  • Manual
  • Elektrik
  • Elektronik
Kontribusi Sistem Informasi
  1. Penghematan waktu
  2. Menghemat Biaya
  3. Peningkatan Efektifitas
  4. Pengembangan Tekhnologi
  5. Pengembangan Personel Akuntansi
D. Kebutuhan dan Sumber Informasi Manajemen

Kegiatan organisasi : 

  1. Staffing
  2. Delegration of Authority
  3. Departementasi
  4. Personalia
Kegiatan Menejerial : 
  1. Perencanaan
  2. Pembahasan dan evaluasi menyeluruh (pengendalian manajemen)
  3. Analisis masalah-masalah kritis
  4. Kepemimpinan dan kegiatan upacara
  5. Penyelia langsung
  6. Pengendali operasi
Sumber - Sumber Informasi 
  1. Sumber informasi sekunder
  2. Sumber informasi Primer
  3. Sumber informasi Tersier
Serapan Tidak Pasti : 
  1. Para manajer disetiap lapisan dlm organisasi mempunyai banyak pengaturan yg beragam atas waktu yg dimiliknya .
  2. Manajer juga harusmengikuti upacara dan melaksanakan fungsi kepemimpinan, dan bahkan manajer puncak juga hrus berurusan dgn masalah personil



Minggu, 26 April 2015

Arti Nama Aqilah Salsabila Baligha

     Telah lahir anak perempuan pertama saya yang cantik, imut and bawel atau yang disebut nakal ala kalangan bayi .
     Datang ke klinik pagi sekitar pukul 04.30 wib, sampai disana ternyata baru bukaan 1 (Istilah kedokteran), pukul 14.25 di cek lagi sudah bukaan 8 tetapi sekitar pukul 18.30 bukaan kembali ke 6 (Aneh tapi itu sudah kekuasaan Allah SWT) .
     Lahirnya minggu malam sekitar pukul 22.30 wib Tanggal 17-08-2014 diberi nama Aqilah Salsabila Baligha dengan berat badan 3,3 kg yang insya Allah menurut arti dalam Islam Akal dan Fikiran Baik, cerdas, mulia seperti Mata Air Surga serta Fasih Berbicara .
     Sengaja saya buat artikel ini supaya didapat wejangan dan selalu ingat kapan kelahiran putri pertama saya dilahirkan .


Usia 0 Hari

Usia 0 Hari
 Usia 25 Hari
Usia 40 Hari
Usia 2.5 Bulan
Usia 3 Bulan
Usia 4 Bulan
Usia 5 Bulan

Usia 6 Bulan

Usia 7.5 Bulan

Sabtu, 25 April 2015

PENGANTAR REKAYASA PERANGKAT LUNAK

     Rekayasa Perangkat Lunak sebuah disiplin ilmu yang bertujuan mengembangkan sistem perangkat lunak yang efektif dari segi biaya. Perangkat lunak bersifat abstrak dan tidak nyata. Rekayasa perangkat lunak masih merupakan disiplin yang relatif muda. Istilah rekayasa perangkat lunak pertama kali diajukan pada tahun 1968. 

 
 

I. Pengertian RPL

     Banyak orang menyamakan istilah perangkat lunak dengan program komputer. Sesungguhnya pandangan ini terlalu dangkal, perangkat lunak tidak hanya mencakup program, tetapi juga semua dokumentasi dan konfigurasi data yang berhubungan (Sommerville, 2003).
     Rekayasa perangkat lunak adalah disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi sistem sampai pemeliharaan. Di sisi lain terdapat istilah yang juga tidak kalah populer adalah computer science atau ilmu komputer.
     Pada intinya computer science berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak. Sedangkan rekayasa perangkat lunak berhubungan dengan masalah-masalah praktis dalam memproduksi perangkat lunak.
     Pengetahuan tetang computer science sangat penting bagi perekayasa perangkat lunak sama seperti pengetahuan tentang fisika sangat penting bagi teknik kelistrikan. Istilah lain yang juga populer adalah rekayasa sistem atau rekayasa sistem berbasis komputer. Rekayasa sistem berhubungan dengan pengembangan perangkat keras, perancangan kebijakan dan proses, dan penyebaran sistem sebagaimana pada rekayasa perangkat lunak. Rekayasa sistem merupakan disiplin yang lebih tua dari rekayasa perangkat lunak.

1.1 Product
     Saat ini perangkat lunak memiliki dua peran. Peran pertama berfungsi sebagai sebuah produk dan peran kedua sebagai kendaraan yang mengantarkan sebuah produk (Pressman, 2002). Sebagai produk perangkat lunak mengantarkan potensi perhitungan yang dibangun oleh perangkat lunak komputer. Tidak peduli apakah perangkat lunak ada dalam telepon seluler, dalam mainframe komputer. Perangkat lunak merupakan transformer informasi yang memproduksi, mengatur, memperoleh, memodifikasi, menampilkan atau menyebarkan informasi dimana pekerjaan ini dapat menjadi sederhana suatu bit tunggal atau sekompleks simulasi multimedia. Sebagai kendaraan yang dipakai untuk mengantarkan produk, perangkat lunak berlaku sebagai dasar untuk kontrol komputer (sistem operasi), komunikasi informasi (jaringan komputer). Untuk memperoleh pemahaman tentang perangkat lunak serta pemahaman tentang rekayasa perangkat lunak penting juga untuk mengetahui karakteristik yang membuat perangkat lunak berbeda dengan dengan produk lain yang dihasilkan oleh manusia. Ketika perangkat lunak dibuat proses kreatif manusia (analisis, desain, konstruksi dan pengujian) diterjemahkan ke dalam bentuk fisik.

1.2 Proses
   Perangkat lunak merupakan serangkaian kegiatan dan hasil-hasil relevan yang menghasilkan perangkat lunak. Kegiatan-kegiatan ini sebagian besar dilakukan oleh perekayasa perangkat lunak. Ada empat kegiatan proses dasar perangkat lunak:
    1)Spesifikasi perangkat lunak, fungsional perangkat lunak dan batasan kemampuan operasinya harus didefinisikan.
      2)Pengembangan perangkat lunak, perangkat lunak yang memenuhi spesifikasi tersebut harus dipenuhi.
     3)Validasi perangkat lunak, perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak melakukan apa yang diinginkan oleh pelanggan.
    4)Evolusi perangkat lunak, perangkat lunak harus dikembangkan untuk memenuhi kebutuhan pelanggan yang berubah-ubah.
      Proses perangkat lunak yang berbeda mengatur kegiatan ini dengan cara yang berbeda dan dijelaskan dengan tingkat kerincian yang berbeda pula. Waktu kegiatan bervariasi, sebagaimana hasilnya. Proses perangkat lunak sangat rumit dan seperti semua proses intelektual, bergantung pada penilaian manusia. Karena dibutuhkan penilaian dan kreatifitas keberhasilan usaha untuk mengotomasi proses perangkat lunak menjadi terbatas. Satu alasan mengapa otomasi proses memiliki cakupan terbatas adalah adanya keragaman proses perangkat lunak. Tidak ada proses yang ideal dan organisasi berbeda yang mengembangkan pendekatan yang benar-benar berbeda dalam pengembangan perangkat lunak.

1.2.1 Model
     Proses Perangkat Lunak Model proses perangkat lunak merupakan deksripsi yang disederhanakan dari proses perangkat lunak yang dipresentasikan dengan sudut pandang tertentu. Model sesuai sifatnya, merupakan penyederhanaan sehingga model proses bisa mencakup kegiatan yang merupakan bagian dari proses perangkat lunak, produk perangkat lunak, peran orang yang terlibat pada rekayasa perangkat lunak.

1)Model Air Terjun (Waterfall) 
     Model ini dikenal sebagai model air terjun atau siklus hidup pengembangan perangkat lunak.


Gambar 1.1 Model Air Terjun (Waterfall)

     Tahap-tahap utama dari model ini memetakan kegiatan-kegiatan pengembangan dasar, yaitu:
a. Analisis dan Definisi persyaratan. Pelayanan, batasan dan tujuan sistem ditentukan melalui konsultasi dengan user sistem. Persyaratan ini kemudian didefinisikan secara rinci dan berfungsi sebagai spesifikasi sistem.
b. Perancangan sistem dan perangkat lunak. Proses perancangan sistem membagi persyaratan dalam sistem perangkat keras atau perangkat lunak. Kegiatan ini menentukan arsitektur sistem secara keseluruhan. Perancangan perangkat lunak melibatkan identifikasi dan deskripsi abstraksi sistem perangkat lunak yang mendasar dan hubungan-hubungannya.
c. Implementasi dan pengujian unit. Pada tahap ini, perancangan perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Pengujian unit melibatkan verifikasi bahwa setiap unit telah memenuhi spesifikasi.
d. Integrasi dan pengujian sistem. Unit program atau program individual diintegrasikan dan diuji sebagai sistem yang lengkap untuk menjamin bahwa persyaratan sistem telah dipenuhi. Setelah pengujian sistem, perangkat lunak dikirim kepada pelanggan.
e. Operasi dan pemeliharaan. Biasanya merupakan fase siklus hidup yang paling lama. Sistem diinstall dan dipakai. Pemeliharaan mencakup koreksi dan berbagai error yang tidak ditemukan pada tahap-tahap terdahulu, perbaikan atas implementasi unit sistem dan pengembangan pelayanan system, sementara persyaratan-persyaratan baru ditambahkan.


Keuntungan Metode Waterfall   
  1. Kualitas dari sistem yang dihasilkan akan baik. Ini dikarenakan oleh pelaksanaannya secara bertahap. Sehingga tidak terfokus pada tahapan tertentu.
  2. Document pengembangan system sangat terorganisir, karena setiap fase harus terselesaikan dengan lengkap sebelum melangkah ke fase berikutnya. Jadi  setiap fase atau tahapan akan mempunyai dokumen tertentu.
  3. Metode ini masih lebih baik digunakan walaupun sudah tergolong kuno, daripada menggunakan pendekatan asal-asalan. Selain itu, metode ini juga masih masuk akal jika kebutuhan sudah diketahui dengan baik.
Kelemahan Metode Waterfall 
  1. Diperlukan majemen yang baik, karena proses pengembangan tidak dapat dilakukan secara berulang sebelum terjadinya suatu produk.
  2. Kesalahan kecil akan menjadi masalah besar jika tidak diketahui sejak awal pengembangan yang berakibat pada tahapan selanjutnya.
  3. Pelanggan  sulit menyatakan kebutuhan secara eksplisit sehingga tidak dapat mengakomodasi ketidak pastian pada saat awal pengembangan. 
  4. Pelanggan harus sabar, karena pembuatan perangkat lunak akan dimulai ketika tahap desain sudah selesai. Sedangkan pada tahap sebelum desain bisa memakan waktu yang lama. Pelanggan sulit menyatakan kebutuhan secara eksplisit sehingga tidak dapat mengakomodasi ketidak pastian pada saat awal pengembangan.
  5. Pada kenyataannya, jarang mengikuti urutan sekuensial seperti pada teori. Iterasi sering terjadi menyebabkan masalah baru.

  2) Model Sekuensial Linier 
      Menggambarkan sekuensial linier untuk rekayasa perangkat lunak, yang sering disebut juga dengan “siklus kehidupan klasik” atau “model air terjun.” 

Gambar 2.1 Fase Lingkaran Pemecahan Masalah (Raccom, 1995)

Gambar 2.2 Fase-fase di dalam fase lingkaran pemecahan masalah (Raccoon, 1995)

Gambar 2.3 Model Sekuensial Linier


     Sekuensial linier mengusulkan sebuah pendekatan kepada perkembangan perangkat lunak yang sistematik dan sekuensial yang mulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan.


Kelebihan Model Linear Sequential


  1. Mudah diaplikasikan .
  2. Memberikan template tentang metode, desain, pengkodean, pengujian, dan pemeliharaan .
  3. Cocok digunakan produk produk software yang sudah jelas kebutuhannya diawal, sehingga minim kesalahannya .
Kelemahan Model Linear Sequential
  1. Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses. Sulit untuk mengalami perubahan kebutuhan yang diinginkan customer.  
  2. Customer harus sabar untuk menanti  produk selesai, karena di kerjakan tahap pertahap, menyelesaikan tahap awal baru bisa ke tahap selanjutnya. 
  3. Perubahan ditengah – tengah pengerjaan produk akan membuat bingung team work yang sedang membuat produk.  
  4. Adanya waktu menganggur bagi pengembang, karena harus menunggu anggota tim proyek laiinya menuntaskannya pekerjaannya.

a. Rekayasa dan Pemodelan Sistem/Informasi 
     Karena perangkat lunak selalu merupakan bagian dari sebuah sistem (bisbis) yang lebih besar, kerja dimulai dengan membangun syarat dari semua elemen sistem dan mengalokasikan beberapa subset dari kebutuhan ke perangkat lunak tersebut. Pandangan sistem ini penting ketika perangkat lunak harus berhubungan dengan elemen-elemen yang lain seperti perangkat lunak, manusia, dan database. Rekayasa dan analisis sistem menyangkut pengumpulan kebutuhan pada tingkat sistem dengan sejumlah kecil analisis serta desain tingkat puncak. Rekayasa informasi mencakup juga pengumpulan kebutuhan pada tingkat bisnis strategis dan tingkat area bisnis.

b. Analisis Kebutuhan Perangkat Lunak 
     Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khususnya pada perangkat lunak. Untuk memahami sifat program yang dibangun, perekayasa perangkat lunak (analis) harus memahami domain informasi, tingkah laku, unjuk kerja, dan antar-muka (interface) yang diperlukan. Kebutuhan baik untuk sistem maupun perangkat lunak di dokumentasikan dan dilihat lagi dengan pelanggan.

c. Desain
     Desain perangkat lunak sebenarnya adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda; struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) procedural. Proses desain menerjemahkan syarat/kebutuhan ke dalam sebuah representasi perengkat lunak yang dapat diperkirakan demi kualitas sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain didokumentasikan dan menjadi bagian dari konfigurasi perangkat lunak.

d. Generasi Kode 
     Desain harus diterjemahkan ke dalam bentuk mesin yang bisa dibaca. Langkah pembuatan kode melakukan tugas ini. Jika desain dilakukan dengan cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis.

e. Pengujian 
     Sekali kode dibuat, pengujian program dimulai. Proses pengujian berfokus pada logika internal perangkat lunak, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional – yaitu mengarahkan pengujian untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang akan memberikan hasil actual yang sesuai dengan hasil yang dibutuhkan.

f. Pemeliharaan 
     Perangkat lunak akan mengalami perubahan setelah disampaikan kepada pelanggan (perkecualian yang mungkin adalah perangkat lunak yang dilekatkan). Perubahan akan terjadi karena kesalahan-kesalahan ditentukan, karena perangkat lunak harus disesuaikan untuk mengakomodasi perubahan-perubahan di dalam lingkungan eksternalnya (contohnya perubahan yang dibutuhkan sebagai akibat dari perangkat peripheral atau sistem operasi yang baru), atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja. Pemeliharaan perangkat lunak mengaplikasikan lagi setiap fase program sebelumnya dan tidak membuat yang baru lagi.

     Model sekuensial linier adalah paradigma rekayasa perangkat lunak yang paling luas dipakai dan paling tua. Tetapi kritik dari paradigma tersebut telah menyebabkan dukungan aktif untuk mempertanyakan kehandalannya (Hanna, 1995). Masalah-masalah yang kadang–kadang terjadi ketika model sekuensial linier diaplikasikan adalah:
a) Jarang sekali proyek nyata mengikuti aliran sekuensial yang dianjurkan oleh model. Meskipun model linier bias mengakomodasi iterasi, model itu melakukannya dengan cara tidak langsung. Sebagai hasilnya, perubahan-perubahan dapat menyebabkan keraguan pada saat tim proyek berjalan.
b) Kadang-kadang sulit bagi pelanggan untuk menyatakan semua kebutuhannya secara ekplisit. Model linier sekuensial memerlukan hal ini dan mengalami kesulitan untuk mengakomodasi ketidakpastian natural yang ada pada bagian awal beberapa proyek.
c) Pelanggan harus bersikap sabar. Sebuah versi kerja dari program-program itu tidak akan diperoleh sampai akhir waktu proyek dilalui. Sebuah kesalahan besar, jika tidak terdeteksi sampai program yang bekerja tersebut dikaji ulang, bias menjadi petaka.
d) Pengembang sering melakukan penundaan yang tidak perlu. Di dalam analisis yang menarik tentang proyek actual, (Bradac, 1994) mendapatkan bahwa sifat alami dari siklus kehidupan klasik membawa kepada blocking state dimana banyak anggota tim proyek harus menunggu tim yang lain untuk melengkapi tugas yang saling memiliki ketergantungan. Kenyataannya, waktu yang dipakai untuk menunggu bisa mengurangi waktu untuk usaha produktif! Blocking state cenderung menjadi lebih lazim pada awal dan akhir sebuah proses sekuensial linier.

     Masing-masing dari masalah tersebut bersifat riil. Tetapi paradigm siklus kehidupan klasik memiliki tempat yang terbatas namun penting di dalam kerja rekayasa perangkat lunak. Paradigma itu memberikan template dimana metode analisis, desain, pengkodean, pengujian, dan pemeliharaan bisa dilakukan. Siklus kehidupan klasik tetap menjadi model bagi rekayasa perangkat lunak yang paling luas dipakai. Sekalipun memiliki kelemahan, secara signifikan dia lebih baik daripada pendekatan yang sifatnya sembrono kepada pengembangan perangkat lunak.

3) Model Prototipe
     Sering seorang pelanggan mendifinisikan serangkaian sasaran umum bagi perangkat lunak, tetapi tidak melakukan mengidentifikasi kebutuhan output, pemrosesan, ataupun input detail. Pada kasus yang lain, pengembang mungkin tidak memiliki kepastian terhadap efisiensi algoritme, kemampuan penyesuaian dari sebuah system operasi, atau bentuk-bentuk yang harus dilakukan oleh interaksi manusia dengan mesin. Dalam hal ini, serta pada banyak situasi yang lain, prototyping paradigm mungkin menawarkan pendekatan yang terbaik.
     Prototyping paradigma (Gambar 3.1) dimulai dengan pengumpulan kebutuhan. Pengembang dan pelanggan bertemu dan mendefinisikan obyektif keseluruhan dari perangkat lunak, mengidentifikasi segala kebutuhan yang diketahui, dan area garis besar dimana definisi lebih jauh merupakan keharusan kemudian dilakukan “perancangan kilat”. Perancangan kilat berfokus pada penyajian dari aspek –aspek perangkat lunak tersebut yang akan Nampak bagi pelanggan/pemakai (contohnya pendekatan input dan format output). Perancangan kilat membawa kepada konstruksi sebuah prototype. Prototipe tersebut dievaluasi oleh pelanggan/pemakai dan dipakai untuk menyaring kebutuhan pengembangan perangkat lunak. Iterasi terjadi pada saat protipe disetel untuk memenuhi kebutuhan pelanggan, dan pada saat yang sama memungkinkan pengembang untuk secara lebih baik memahami apa yang harus dilakukannya.


Gambar 3.1 Prototyping Paradigma
 
      Secara ideal prototype berfungsi sebagai sebuah mekanisme untuk mengidentifikasi kebutuhan perangkat lunak. Bila prototype yang sedang bekerja dibangun, pengembang harus mempergunakan fragmen-fragmen program yang ada atau mengaplikasikan alat-alat bantu (contohnya report generator, window manager, dll) yang memungkinkan program yang bekerja untuk dimunculkan secara cepat.
     Tetapi apa yang kita lakukan dengan prototype tersebut pada saat dia sudah melayani usulan yang digambarkan di atas? (Brooks, 1975) memberikan jawabannya:
     Pada sebagian besar proyek, system pertama yang dibangun baru saja bisa dipergunakan. Sistem mungkin terlalu pelan, terlalu besar, janggal di dalam pemakaian, atau bahkan ketiganya. Tidak ada alternatif lain selain mulai lagi, tidak dengan halus tetapi dengan lebih halus lagi, dan membangun sebuah versi yang dirancang kembali di mana masalah-masalah tersebut bisa diselesaikan … Ketika sebuah konsep system baru atau teknologi baru dipergunakan, seseorang harus membangun sebuah system sebagai pembuangan, bahkan untuk perencanaan terbaik sekalipun, tidak akan mudah untuk membuatnya benar pada pertama kalinya.

     Dengan demikian, pertanyaan manajemen tidaklah untuk membangun sebuah system contoh dan untuk membuangnya. Anda akan melakukannya. Satu-satunya pertanyaan adalah apakah akan merencanakan lebih dulu untuk membangun sebuah pembuangan, atau menjanjikan untuk menyampaikan pembuangan tersebut kepada pelanggan Prototipe bisa berfungsi sebagai “system yang pertama”. Brooks setuju bila kita membuangnya. Tetapi mungkin ini merupakan pandangan yang ideal. Memang benar bahwa baik pelanggan maupun pengembang menyukai paradigma prototype. Para pemakai merasa enak dengan system aktual, sedangkan pengembang bisa membangunnya dengan segera. Tetapi prototyping bisa juga menjadi masalah karena alasan-alasan sebagai berikut:

a) Pelanggan melihat apa yang tampak sebagai versi perangkat lunak yang bekerja tanpa melihat bahwa prototype itu dijalin bersama-sama “dengan permen karet dan baling wire”, tanpa melihat bahwa di dalam permintaan untuk membuatnya bekerja, kita belum mencantumkan kualitas perangkat lunak secara keseluruhan atau kemampuan pemeliharaan untuk jangka waktu yang panjang. Ketika diberi informasi bahwa produk harus dibangun lagi agar tingkat kualitas yang tinggi bisa dijaga, pelanggan akan meneriakkan kecurangan dan permintaan agar dipakai “beberapa campuran” untuk membuat protipe menjadi sebuah produk yang bekerja yang lebih sering terjadi, sehingga manajemen pengembangan perangkat lunak menjadi penuh dengan belas kasihan.
b) Pengembang sering membuat kompromi-kompromi implementasi untuk membuat prototype bekerja dengan cepat. Sistem operasi atau bahasa pemrograman yang tidak sesuai bisa dipakai secara sederhana karena mungkin diperoleh dan dikenal; algoritma yang tidak efisien secara sederhana bisa diimplementasikan untuk mendemontrasikan kemampuan. Setelah selang waktu tertentu, pengembang mungkin mengenali pilihan-pilihan tersebut dan melupakan semua alasan mengapa mereka tidak cocok. Pilihan yang kurang ideal telah menjadi bagian integral dari sebuah system.

     Meskipun berbagai masalah bisa terjadi, prototype bisa menjadi paradigm yang efektif bagi rekayasa perangkat lunak. Kuncinya adalah mmendefinisikan aturan-aturan main pada saat awal; yaitu pelanggan dan pengembang keduanya harus setuju bahwa prototype dibangun untuk berfungsi sebagai mekanisme pendefinisian kebutuhan. Prototipe kemudian disingkirkan (paling tidak sebagian), dan perangkat lunak actual direkayasa dengan tertuju kepada kualitas dan kemampuan pemeliharaan. 

4. Pengembangan Evolusioner 
     Pengembangan evolusioner berdasarkan ide untuk mengembangkan implementasi awal, memperlihatkannya kepada user untuk dikomentari, dan memperbaikinya versi demi versi sampai sistem yang memenuhi persyaratan diperoleh. Model pengembangan evolusion.

Gambar 4.1 Model Evolusioner


5. Pengembangan Sistem Formal 
     Pengembangan sistem formal merupakan pendekatan terhadap pengembangan perangkat lunak yang memiliki kesamaan dengan model air terjun (waterfall). Tetapi proses pengembangannya didasarkan pada transformasi matematis dari spesifikasi sistem menjadi program yang dapat dijalankan. 

Gambar 5.1 Model Sistem Formal


6 . Pengembangan Berorientasi Pemakaian Ulang 
     Pada pengembangan perangkat lunak yang besar, terjadi pemakaian ulang. Hal ini biasanya terjadi secara informal ketika orang yang bekerja di proyek tersebut mengetahui adanya rancangan atau kode yang mirip dengan yang dibutuhkan. Mereka mencari rancangan atau kode ini, memodifikasinya sebagaimana dibutuhkan, dan menggabungkannya dalam sistem. 



Gambar 6.1 Model Pengembangan Orientasi Pemakaian Ulang

II. KEGUNAAN RPL 

      Perangkat lunak kini sudah menjadi kekuatan yang menentukan. Perangkat lunak menjadi mesin yang mengendalikan pengambilan keputusan di dalam dunia bisnis. Berfungsi sebagai dasar dari semua bentuk pelayanan serta penelitian keilmuan modern. Perangkat lunak dilekatkan pada semua sistem, seperti transportasi, medis, telekomunikasi, militer, proses industri, hiburan, produk kantor dan sebagainya. Program-program perangkat lunak sudah tersebar secara luas, dan masyarakat memandangnya sebagai kenyataan teknologi dalam kehidupan.

III. PERKEMBANGAN RPL 

     Selama masa awal era komputer, perangkat lunak dilihat hanya sebagai suatu permenungan. Pemrograman komputer menjadi seni di mana di situ terdapat banyak metode yang sistematis. Perkembangan perangkat lunak sebenarnya tidak dapat diatur sampai terjadi jadwal yang bergeser, atau biaya yang mulai melonjak. Para pemrogram kemudian mulai berusaha untuk membuat semuanya benar kembali. Era kedua evolusi sistem komputer melingkupi decade pertengahan tahun 1960 dan 1970-an. Sistem multiprogram dan multiprosesor memperkenalkan konsep baru interkasi manusia dan komputer. Konsep ini membuka sebuah dunia aplikasi yang baru serta tingkat kecanggihan perangkat lunak dan perangkat keras yang baru pula. Sistem real-time dapat mengumpulkan, menganalisis, serta mengubah data dari banyak sumber sehingga proses pengontrolan dan penghasilan output tidak lagi berada dalam skala menit, melainkan detik. Kemajuan dalam penyimpanan online membawa ke generasi pertama sistem manajemen database.

IV. DESKRIPSI RPL 

     Secara umum rekayasa perangkat lunak memakai pendekatan yang sistematis dan terorganisir terhadap pekerjaan karena cara ini seringkali paling efektif untuk menghasilkan perangkat lunak. Rekayasa perangkat lunak adalah disiplin ilmu yang membahas semua aspek produksi perangkat lunak. Mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Pada definisi ini ada dua istilah kunci: 1) Disiplin Rekayasa Perekayasa membuat suatu alat bekerja. Mereka menerapkan teori, metode, dan alat bantu yang sesuai. Selain itu mereka juga menggunakannya dengan selektif dan selalu mencoba mencari solusi terhadap permasalahan, walaupun tidak ada teori atau metode yang mendukung. Perekayasa juga menyadari bahwa mereka harus bekerja dalam batasan organisasi dan keuangan, sehingga mereka berusaha mencari solusi dalam batasan-batasan ini. 2) Semua Aspek Produksi Perangkat Lunak Rekayasa perangkat lunak tidak hanya berhubungan dengan proses teknis dari pengembanga perangkat lunak, tetapi juga dengan kegiatan seperti manajemen proyek perangkat lunak dan pengembangan alat bantu, metode, dan teori untuk mendukung produksi perangkat lunak.

V. KARAKTERISTIK RPL 

     Perangkat lunak lebih kepada logika dan bukan semata elemen fisik. Perbedaan perangkat lunak dengan perangkat keras yang mendasar adalah: 1) Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam bentuknya yang klasik. 2) Perangkat lunak tidak pernah usang. Sebagian besar perangkat lunak dibuat secara custom (pemesanan) serta tidak dapat dirakit dari komponen yang sudah ada.

VI. KOMPONEN RPL 

     Bersamaan dengan perkembangan disiplin keteknikan diciptakan sekumpulan komponen perancangan standar. Komponen-komponen yang dapat digunakan lagi sudah diciptakan sehingga ahli teknik dapat benar-benar berkonsentrasi pada elemen-elemen inovatif suatu perancangan. Dalam dunia perangkat keras hal ini merupakan hal yang harus dicapai dalam skala yang luas. Reusability meruapakan suatu cirri penting dari komponen perangkat lunak kualitas tinggi. Sebuah komponen perangkat lunak harus didesain dan diimplementasi sehingga dapat dipakai lagi pada berbagai program yang berbeda. Komponen perangkat lunak dibangun dengan bahasa pemrograman yang memiliki kosakata terbatas, sebuah tata bahasa yang dibatasi secara eksplisit. Bahasa tingkat mesin merupakan perwakilan simbolik dari serangkaian instruksi CPU. Bahasa tingkat menengah memungkinkan pengembang perangkat lunak serta program tidak bergantung pada mesin.

VII. APLIKASI RPL 

     Perangkat lunak dapat diaplikasikan ke berbagai situasi dimana serangkaian procedural (seperti algoritma) telah didefinisikan (pengecualian-pengecualian yang dapat dicatatat pada aturan ini adalah sistem pakar dan jaringan syaraf tiruan dalam aplikasi kecerdasan buatan). Kandundan informasi dan determinasi merupakan faktor penting dalam menentukan sifat aplikasi perangkat lunak.

Sekian dari Blogger New Global. Semoga Bermanfaat