Jumat, 14 Agustus 2015

Model proses

Model proses kelebihan dan kekurangan

Rapid application development 
Rapid application development (RAD) atau rapid prototyping adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat). RAD menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Rapid application development menggunakan metode iteratif (berulang) dalam mengembangkan sistem dimana working model (model bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) user dan selanjutnya disingkirkan. Working model digunakan kadang-kadang saja sebagai basis desain dan implementasi sistem final.

Penerapan Model RAD
Model RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat yang dicapai dengan menerapkan :
  1. Component based construction ( pemrograman berbasis komponen bukan prosedural).
  2. Penekanan pada penggunaan ulang (reuse) komponen perangkat lunak yang telah ada.
  3. Pembangkitan kode program otomatis/semi otomatis.
  4. Multiple team (banyak tim), tiap tim menyelesaikan satu tugas yang selevel tapi tidak sama. Banyaknya tim tergantung dari area dan kompleksitasnya sistem yang dibangun.
Jika keutuhan yang diinginkan pada tahap analisis kebutuhan telah lengkap dan jelas, maka waktu yang dibutuhkan untuk menyelesaikan secara lengkap perangkat lunak yang dibuat adalah berkisar 60 sampai 90 hari. Model RAD hampir sama dengan model waterfall, bedanya siklus pengembangan yang ditempuh model ini sangat pendek dengan penerapan teknik yang cepat.
Sistem dibagi-bagi menjadi beberapa modul dan dikerjakan beberapa tim dalam waktu yang hampir bersamaan dalam waktu yang sudah ditentukan. Model ini melibatkan banyak tim, dan setiap tim mengerjakan tugas yang selevel, namun berbeda. Sesuai dengan pembagian modul sistem.
Dibawah ini adalah pendekatan RAD melingkupi fase – fase sebagai berikut : 
1. Bussiness modeling
Aliran informasi di antara fungsi – fungsi bisnis dimodelkan dengan suatu cara untuk menjawab pertanyaan – pertanyaan berikut : informasi apa yang mengendalikan proses bisnis? Informasi apa yang di munculkan? Siapa yang memunculkanya? Ke mana informasi itu pergi? Siapa yang memprosesnya?
2. Data modeling
Aliran informasi yang didefinisikan sebagai bagian dari fase bussiness modelling disaring ke dalam serangkaian objek data yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (disebut atribut) masing–masing objek diidentifikasi dan hubungan antara objek – objek tersebut didefinisikan.
3. Prosess modelling
Aliran informasi yang didefinisikan di dalam fase data modeling
ditransformasikan untuk mencapai aliran informasi yang perlu bagi implementasi sebuah fungsi bisnis. Gambaran pemrosesan diciptakan untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali sebuah objek data.
4. Aplication generation
RAD mengasumsikan pemakaian teknik generasi ke empat. Selain
menciptakan perangkat lunak dengan menggunakan bahasa pemrograman generasi ketiga yang konvensional, RAD lebih banyak memproses kerja untuk memkai lagi komponen program yang ada ( pada saat memungkinkan) atau menciptakan komponen yang bisa dipakai lagi (bila perlu). Pada semua kasus, alat – alat bantu otomatis dipakai untuk memfasilitasi konstruksi perangkat lunak.
5. Testing and turnover
Karena proses RAD menekankan pada pemakaian kembali, banyak


komponen program telah diuji. Hal ini mengurangi keseluruhan waktu pengujian. Tetapi komponen baru harus di uji dan semua interface harus dilatih secara penuh.
Kelemahan & Kelebihan RAD
Dibawah ini ada beberapa hal yang perlu diperhatikan kelemahan dan kelebihan dari RAD .
  1. Model RAD memerlukan sumber daya yang cukup besar, terutama untuk proyek dengan skala besar.
  2. Model ini cocok untuk proyek dengan skala besar.
  3. Model RAD memerlukan komitmen yang kuat antara pengembang dan pemesssan, bahkan keduanya bisa tergabung dalam 1 tim
  4. kinerja dari perangkat lunak yang dihasilkan dapat menjadi masalah manakala kebutuhan-kebutuhan diawal proses tidak dapat dimodulkan, sehingga pendekatan dengan model ini kurang bagus.
  5. sistem yang tidak bisa dimodularisasi tidak cocok untuk model ini.
  6. penghalusan dan penggabungan dari beberapa tim di akhir proses sangat diperlukan dan ini memerlukan kerja keras.
  7. proyek bisa gagal karena waktu yang disepakati tidak dipenuhi
  8. risiko teknis yang tinggi juga kurang cocok untuk model ini.


Evolutionary Software Process Model

Model ini memungkinkan perulangan (iterasi) dari setiap tahapan pengembangan perangkat lunak. Dengan model ini kompleksitas perangkat lunak yang dihasilkan akan semakin bertambah untuk setiap iterasi. Model ini terdiri dari:

1.Incertmen Model Merupakan pengembangan dari model waterfall dengan pendekatan top-down Membangun sistem secara meningkat (increment) berdasarkan kemampuan fungsional.
Contoh Penggunaan Incrementl Model  Text Editor • File Management • Editing ( Copy, Paste, Cut) • File Production 1 • Editing (align, find,replace) • Format(font,colour) 2 • Grammar Checking • Auto Correct 3 1 inc 1 Inc 2 inc 2 3 4 5 6 7 8 9 10 11 12 13 14.
  • Kelebihan Incremental Model Dapat menghasilkan dan mendeliver product lebih cepat Lebih flexible dalam perubahan requirement Lebih mudah dalam proses pengujian Lebih mudah untuk mengelola resiko yang ada.
  • Kekurangan Incremental Model Sangat memerlukan perencanaan dan rancangan yang bagus Membutuhkan definisi keseluruhan sistem yang jelas dan lengkap sebelum dilakukan pemecahan bagiannya.
2.Spiral Model pada awalnya diusulkan oleh Boehm, adalah model proses perangkat lunak evolusioner yang merangkai sifat iteratif dari prototype dengan cara kontrol dan aspeksistematis model sequensial linier.

Tahapan - Tahapan Spiral Model
Spiral Model dibagi menjadi enam wilayah tugas yaitu:
1. Komunikasi pelanggan      Yaitu tugas-tugas untuk membangun komunikasi antara pelanggan dan kebutuhankebutuhan yang diinginkan oleh pelanggan
2. Perencanaan   Yaitu tugas-tugas untuk mendefinisikan sumber daya, ketepatan waktu, dan proyek    informasi lain yg berhubungan.
3. Analisis Resiko    Yaitu tugas-tugas yang dibutuhkan untuk menaksir resikomanajemen dan teknis.
4. Perekayasaan    Yaitu tugas yang dibutuhkan untuk membangun satu atau lebih representasi dari    apikasi tersebut.
5. Konstruksi dan peluncuran    Yaitu tugas-tugas yang dibutuhkan untuk mengkonstruksi, menguji, memasang , dan    memberi pelayanan kepada pemakai.
6. Evaluasi Pelanggan    Yaitu tugas-tugas untuk mendapatkan umpan balik dari pelanggan.

Kelebihan dan Kelemahan Spiral Model

a. Kelebihan spiral model :
   1. Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak
       komputer.
   2. Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar
   3. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap
       resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses .
   4. Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap
       keadaan di dalam evolusi produk.
   5. Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya
       ke dalam kerangka kerja iteratif .
   6. Membutuhkan pertimbangan langsung terhadp resiko teknis sehingga mengurangi
       resiko sebelum menjadi permaslahan yang serius.

b. Kelemahan spiral model :
   1. Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
   2. Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang
       serius jika resiko mayor tidak ditemukan dan diatur.
   3. Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolut.


3.Win Win spiral model yaitu model yang memungkinkan user dan pengembang melakukan komunikasi dalam tahap pengembangan, dimana bisa memberikan win-win solution, seperti user bisa mengemukakan sebagian besar dan/atau keseluruhan kebutuhannya sedangkan pengembang bisa mengembangkan perangkat lunak sesuai dengan kebutuhan usertersebut dalam cakupan waktu dan biaya yang sudah dispesifikasikan.


Kelebiihan : 

1.Sama sama adanya kesepakatan developer dengan customer
2.Terdapat kepuasan dan keuntungan antara developer dengan customer karena aplikasi yang dijalankan dengan negoisasi sesuai kesepakatan3.Sangat efektif untuk digunakan karena kesepakatan antara developerdengan customer sama-sama disepakati sehingga tidak akan menimbulkan ketidak puasan customer

Kekurangan :
1.Membutuhkan waktu yang cukup lama 


2.Sering kali pada awalnya customer dengan developer mengalami kecekcokkan pada  saat  negoisasi.



Component based development model
Component-based development sangat berkaitan dengan teknologi berorientasi objek. Pada pemrograman berorientasi objek, banyak class yang dibangun dan menjadi komponen dalam suatu software. Class-class tersebut bersifat reusable artinya bisa digunakan kembali. Model ini bersifat iteratif atau berulang-ulang
prosesnya.
Secara umum proses yang terjadi dalam model ini adalah:
1. Identifikasi class-class yang akan digunakan kembali dengan menguji class tersebut dengan data yang akan dimanipulasi dengan aplikasi/software dan algoritma yang baru
2. Class yang dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa langsung diambil dari library yang sudah ada. Jika ternyata ada kebutuhan class baru, maka class baru dibuat dengan metode berorientasi objek.
3. Bangun software dengan class-class yang sudah ditentukan atau class baru yang dibuat, integrasikan.
Penggunaan kembali komponen software yang sudah ada menguntungkan dari segi:
a. Siklus waktu pengembangan software, karena mampu mengurangi waktu 70%
b. Biaya produksi berkurang sampai 84% arena pembangunan komponen berkurang
Pembangunan software dengan menggunakan komponen yang sudah tersedia dapat menggunakan komponen COTS (Commercial off-the-shelf) – yang bisa didapatkan dengan membeli atau komponen yang sudah dibangun sebelumnya secara internal. Component-Based Software Engineering (CBSE) adalah proses yang menekankan perancangan dan pembangunan software dengan menggunakan komponen software yang sudah ada. CBSE terdiri dari dua bagian yang terjadi secara paralel yaitu software engineering (component-based development) dan domain engineering seperti yang digambarkan pada Gambar 2:
1. Domain engineering menciptakan model domain bagi aplikasi yang akan digunakan untuk menganalisis kebutuhan pengguna. Identifikasi, pembangunan, pengelompokan dan pengalokasikan komponen-komponen software supaya bisa digunakan pada sistem yang ada dan yang akan datang.
2. Software engineering (component-based development) melakukan analisis terhadap domain model yang sudah ditetapkan kemudian menentukan spesifikasi dan merancang berdasarkan model struktur dan spesifikasi sistem, kemudian melakukan pembangunan software dengan menggunakan komponen-komponen yang sudah ditetapkan berdasarkan analisis dan rancangan yang dihasilkan sebelumnya hingga akhirnya menghasilkan software.
rona10

Kelebihan Component Based DevelopmentØ Menggunakan model reuse pada komponen yang sudah mewakili kebutuhan umum.
Ø Pengurangan waktu siklus pengembangan.
Ø Penurunan yang signifikan dalam biaya pengembangan proyek.
Ø Peningkatan yang signifikan dalam produktivitas.
Ø Pembangunan software dengan menggunakan komponen yang sudah tersedia dapat menggunakan komponen COTS (Commercial off-the-shelf) yang bisa didapatkan dengan membeli komponen yang sebelumnya sudah dibangun secara internal.

Formal Method Model
 Menggunakan notasi Matematika yang teliti untuk menentukan desain dan menguji sistem berbasis komputer. formal methode dapat diterapkan di berbagai aspek atau properti dari sistem yang kompleks. formal methode digunakan untuk spesifikasi detail,design dan verifikasi pada bagian-bagian sistem yang bersifat critical (misal avionics atau aerospace systems), serta pada safety critical system (contoh hearts monitor, ATM,banking)

Kelebihan Formal Method ModelØ meminimalkan resiko dengan adanya perhitungan komputasi.
Kekurangan Formal Method ModelØ Tidak Umum untuk Proyek Software pada umumnya
Ø Biaya Tinggi.
Ø Kompleks

4th Generation
Menggunakan alat PL untuk menggenerate source code untuk sistem PL dari representasi perincian level tinggi.

Kelebihan 4th GenerationØ Pengurangan waktu dan peningkatan produktivitas yang besar.

Kekurangan 4th GenerationØ Kemungkinan akan sulit memanfaatkan alat bantu/peralatan/tools 4GT dibandingkan dengan menggunakan bahasa pemrograman yang konvensional, selain itu terdapat juga masalah dalam hal kode sumber yang tidak efisien. Di samping itu, pemeliharaan sistem software besar yang dikembangkan oleh 4GT juga masih sedang dalam proses pengkajian.



Jumat, 07 Agustus 2015

Contoh dan pengertian perangkat lunak jenis PL

Pengertian aplikasi perangkat lunak 

Dibawah ini akan di jelaskan berbagai jenis pengertian aplikasi perangkat lunak berserta contohnya .

1. Perangkat Lunak Sistem.
Perangkat lunak sistem adalah suatu istilah generik yang merujuk pada jenis perangkat lunak komputer yang mengatur dan mengontrol perangkat keras  sehingga perangkat lunak aplikasi dapat melakukan tugasnya. Ia merupakan bagian esensial dari sistem komputer. Contohnya sistem operasi, Sistem operasi adalah suatu contoh yang jelas, sedangkan Open GL atau pustaka Basis Data adalah contoh lainnya. Perangkat lunak jenis ini dibedakan dengan perangkat lunak aplikasi, yang merupakan program yang membantu pengguna melakukan tugas spesifik dan produktif, seperti pengolahan kata atau manipulasi gambar.

2. Perangkat Lunak Realtime
Perangkat Lunak Realtime adalah program-program yang memonitor/menganalisis/mengontrol kejadian dunia nyata. Elemen-elemen perangkat lunak real-time mencakup komponen pengumpul data yang mengumpulkan dan memformat informasi dari lingkungan eksternal, sebuah komponen analisis yang mentransformasikan sebuah komponen kontrol/output yang mengkoordinasikan semua komponen lain agar respon real-time nya. ( khususnya untuk jangkauan dari 1 milidetik sampai 1 menit ) dapat terjaga.

Contoh nya : Salah satu contoh umum sistem waktu-nyata adalah sistem komputer yang digunakan oleh Nasa pada pesawat ruang angkasanya, Sistem kontrol pada pabrik kimia
Sistem kontrol pabrik kimia pada dasarnya adalah jenis aplikasi kontrol proses. Dalam
sebuah pabrik kimia otomatis.


3. Embedded Software 
Embedded Software adalah perangkat lunak komputer yang memainkan peran intergral dalam elektronik .
Contohnya : LnynxOS, PikeOs,RTEMS,Windows CL, dll.

4. Perangkat Lunak komputer personal ( Pc) 
Perangkat lunak komputer personal adalah seperangkat komputer yang digunakan oleh satu orang saja / pribadi. Biasanya komputer ini adanya dilingkungan rumah, kantor, toko, dan dimana saja karena harga PC sudah relatif terjangkau dan banyak macamnya.
Fungsi utama dari PC adalah untuk mengolah data input dan menghasilkan output berupa data/informasi sesuai dengan keinginan user (pengguna).
Contoh nya :
 Hardware adalah sekumpulan komponen perangakat keras komputer yang secara fisik bisa dilihat, diraba, dirasakan. Hardware ini dibagi menjadi 5 (lima) bagian, yaitu:
  • Input Device, peralatan masukkan (Keyboard,mouse,dll),
  • Process Device, peralatan proses (processor, motherboard, ram, dll),
  • Output Device, peralatan keluaran (Monitor, Printer, dll),
  • Storage Device, peralatan penyimpan (harddisk,flashdisk, dll),
  • Peripheral Device, peralatan tambahan (WebCam, modem, dll),
Software adalah program yang berisi instruksi/perintah sebagai pelantara yang menghubungkan (menjembatani) antara hardware dan brainware (perangkat manusia) sehingga dapat menghasilkan informasi yang diinginkanbrainwareSoftware dapat dikategorikan menjadi dua kelompok.Software Operating System (OS), Contohnya adalah Windows, Linux, Dos, Android, dll. Tanpa adanya Operating System ini, maka hardware hanyalah benda mati yang tidak bisa digunakan.Software Application System, Contohnya adalah Ms. Office, Open Office, Adobe Photoshop, Corel Draw, Program Database, Program Utilities, dll.

Brainware adalah perangkat yang mengoperasikan dan menjalankan perangkat lunak yang ada didalam komputer. Bukan hanya itu, ternyata brainware itu bukan hanya orang yang menggunakan komputer saja, namun orang yang merasakan manfaat dari komputer pun bisa di katakan Brainware. Contohnya adalah siswa/i dikelas yang sedang memperhatikan presentasi yang dibawakan oleh gurunya dengan menggunakan Laptop dan Projector. Siswa/i ini secara tak sadar disebut juga sebagai brainware karena melihat hasil (informasi) pelajaran yang disampaikan gurunya. Brainware dikelompokkan menjadi beberapa kategori mulai dari pembuat program (programmer), Technical SupportDesigner GraphicOperator, sampai user paling awal sekalipun.

5. Perangkat lunak kecerdasan buatan  adalah Artificial Intelligence atau AI didefinisikan sebagaikecerdasan yang ditunjukkan oleh suatu entitas buatan.Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatumesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. 

Contoh nya : 
dibagian keamanan : Antivirus,kunci ponsel,aplikasi deteksi wajah.

Ruang Lingkup Perangkat Lunak 

-Ruang lingkup Perangkat Lunak menggambarkan fungsi,kinerja, batasan, interface dan reliabilitas.
Fungsi-fungsi yang digambarkan dalam statement ruanglingkup dievaluasi dan disaring untuk memberikanawalan yang lebih detail saat estimasi dimulai.
Mencari informasi yang dibutuhkan untuk ruang lingkup.
Penggunaan teknik diperlukan utk menjembatani jurangkomunikasi antara pelanggan dan pengembang.
 - Analis
 harus memulai dengan mengajukan pertanyaan-pertanyaan yg bebas konteks, yaitu serangkaian pertanyan yg
akan membawa kepada pemahaman yg mendasar terhadap
masalah, orang yg menginginkan suatu solusi, sifat solusi ygdiharapkan, dan efektivitas pertemuanitu sendiri.

Contoh Gambar Ruang Lingkup Perangkat Lunak 


 

Rabu, 05 Agustus 2015

Data Base

Perbandingan Basis Data Manual dan Elektronik 


Basis data (bahasa inggris: database), atau sering pula dieja basisdata, adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut.

Basis data manual adalah : Kumpulan informasi yang disimpan dengan kertas atau map yang di simpan pada lemari ataupun box,yang keamanan nya tidak ada sama sekali tetapi tidak membutuhkan dana yang banyak.

Basis data elektronik adalah : Kumpulan informasi yang disimpan pada disk atau memori yang keamanan nya sangat terjamin tetapi membutuhkan dana yang banyak 

"Hirarki Database"
Data Base Merupakan kumpulan file-file yang berhubungan secara logis dan digunakan secara rutin pada operasi-operasi sistem informasi manajemen. Semua database umumnya berisi elemen-elemen data yang disusun ke dalam file-file yang diorganisasikan berdasarkan sebuah skema atau struktur tertentu, tersimpan di hardware komputer dan dengan software untuk melakukan manipulasi data untuk kegunaan tertentu. Jadi, suatu database adalah menunjukkan suatu kumpulan tabel yang dipakai dalam suatu lingkup perusahaan atau instansi untuk tujuan tertentu. Contoh suatu database adalah database akademik yang berisi file-file: mahasiswa, dosen, kurikulum, dan jadwal yang diperlukan untuk mendukung operasi sistim informasi akademik. 


File   File atau tabel adalah kumpulan record yang sejenis dan secara logic berhubungan. Pembuatan dan pemeliharaan file adalah faktor yang sangat penting dalam sistem informasi manajemen yang memakai komputer. Jadi tabel ibarat kumpulan baris/record yang membentuk satu tabel yang berarti, misal gambar 2 mewakili tabel nilai mata kuliah MIS.



Record Record atau baris adalah kumpulan item yang secara logic saling berhubungan. Setiap record dapat dikenali oleh sesuatu yang mengenalinya, yaitu field kunci. Gambar 1 merupakan contoh dari record. Jadi record ibarat kumpulan kata yang membentuk satu kalimat yang berarti, misal gambar 1 mewakili kalimat: Joni memenmpuh mata kuliah MIS (kode IS101) dengan nilai A.




Field Field atau kolom adalah unit terkecil yang disebut data. Field merupakan sekumpulan byte yang mempunyai makna. Contoh: Joni yang merupakan field nama.  Jadi field ibarat kumpulan karakter yang membentuk suatu kata.


Byte Byte adalah bagian terkecil yang dapat dialamatkan dalam memori. Byte merupakan sekumpulan bit yang secara konvensional terdiri atas kombinasi delapan bit. Satu byte digunakan untuk mengkodekan satu buah karakter dalam memori. Contoh: Kode Ascii untuk J ialah 10101010. Jadi byte adalah kumpulan bit yang membentuk satu karakter (huruf, angka, atau tanda). Dengan kombinasi 8 bit, dapat diperoleh 256 karakter (= 2 pangkat 8).

Bit Bit adalah suatu sistem angka biner yang terdiri atas dua macam nilai saja, yaitu 0 dan 1. Sistem angka biner merupakan dasar dasar yang dapat digunakan untuk komunikasi antara manusia dan mesin (komputer) yang merupakan sekumpulan komponen elektronik dan hanya dapat membedakan dua keadaan saja (on dan off). Jadi bit adalah unit terkecil dari pembentuk data.