Jumat, 14 Agustus 2015

model process perangakat lunak

Assalamualaikum…..
    Pada post kali ini ane akan menjelaskan Tentang Model Proses perangkat lunak , berserta kelebihan dan kekuranga nya:
 1. RAD( Rapid Appliaction Development),
2. Macam-macam Evolutionty Software Process,
3. Componet based Development,
4. formal Method Model, dan
5.  4th Generation

******
Ya pertama-tama ane akan menjelaskan tentang RAD~~~~~

Rapid application development (RAD)
    [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.
Kelebihan:
-          Menghemat waktu dalam proses pengembangan
-          Lebih fleksibel dalam hal pengembangan desain
-          Mampu meminimalisasi kan kesalahan – kesalahan
-          Dan masih banyak lagi.
Kekurangan:
-          Menggunakan banyak biaya dibandingkan dengan bekerja sendiri
-          Mengalami Kesulitan dalam melakukan pengukuran
-          Kesalahan sering terjadi karena lebih memilih kecepatan dibandingkan dengan kualitas serta biaya yang dikeluarkan
-          Untuk proyek skala besar kurang cocok untuk model ini

******
Selanjutnya Evolutionty Software Process dan berserta teman teman ya~~~~~

Evolutionanty software Process Model terdiri dari:
1. Incerement model
    Model ini merupakan hasil kombinasi elemen-elemen dari model waterfall yang diaplikasikan secara berulang. Elemen-elemen tersebut dikerjakan hingga menghasilkan produk dengan spesifikasi tertentu kemudian proses dimulai dari awal kembali hingga muncul hasil yang spesifikasinya lebih lengkap dari sebelumnya dan tentunya memenuhi kebutuhan pemakai.
Kelebihan model :
-          mampu mengakomodasi perubahan secara fleksibel, dengan waktu yang relatif singkat dan tidak dibutuhkan anggota/tim yang banyak untuk menjalankannya.
-          Bersifat interatif atau perulangan.
-          prioritas tinggi pada pelayanan system adalah yang paling diuji.
-          Produk yang dihasilkan semakin lama semakin lengkap, hingga versi akhir dari sebuah produk akan dianggap paling lengkap dan sempurna karena mengalami perbaikan yang berkesinambungan.
-          Model ini cocok jika jumlah anggota tim pengembangan/pembangunan software terbatas
-          Pelanggan dapat memakai inkremen yang pertama sebagai bentuk prototype dan mendapatkan pengalaman yang dapat menginformasikan persyaratan untuk inkremen system berikutny
-          Resiko untuk kegagalan proyek secara keseluruhan lebih rendah. Walaupun masalah dapat ditemukan pada beberapa inkremen, bias saja beberapa inkremen diserahkan dengan sukses kepada pelanggan

Kekurangan model :
-          tidak cocok untuk proyek berukuran besar (lebih dari 200.000 baris coding),dan sulit untuk memetakan kebutuhan pemakai ke dalam rencana spesifikasi tiap-tiap hasil dari increament.
-          Adanya kesulitan untuk memetakan persyaratan pelanggan pada inkremen dengan ukuran yang benar
-          Butuh waktu yang relatif lebih lama untuk menghasilkan produk yang lengkap.

2. Model spiral
    Model spiral 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.
Kelebihan model Spiral :
-          Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer
-          Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar
-          Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses .
-          Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi produk.
-          Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja iteratif .
-          Membutuhkan pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum menjadi permaslahan yang serius.
Kelemahan model Spiral :
-          Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
-          Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
-          Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute

3. WINWIN Spiral Model
    model yang memungkinkan user dan pengembang melakukan komunikasi dalam tahap pengembangan, dimana bisa memberikan win-win solution, seperti user(pengguna) 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.
Kelebihan :
-          Sama sama adanya kesepakatan developer dengan customer.
-          Terdapat kepuasan dan keuntungan antara developer dengan customer karena aplikasi yang dijalankan dengan negoisasi sesuai kesepakatan.
-          Sangat efektif untuk digunakan karena kesepakatan antara developer dengan customer sama-sama disepakati sehingga tidak akan menimbulkan ketidak puasan customer

Kekurangan :
-          Membutuhkan waktu yang cukup lama 
-          Seringkali pada awalnya customer dengan developer mengalamikecekcokkan pada saat negoisasi

******
Lalu ada Component-based development ~~~~~~

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.

Kelebihan :
-          Mampu mengurangi siklus waktu pengembangan software, 70%.
-          biaya produksi berkurang sampai 84% karena 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
-          Menggunakan model reuse, pada komponen yang sudah mewakili kebutuhan umum
Kekurangan :
-          Model ini bersifat iteratif atau berulang-ulang prosesnya.
-          Sistem yang tidak bisa dimodularisasi tidak cocok untuk model ini.
    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 .

1. software engineering (component-based development) ialah 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.
2. domain engineering ialah  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.

******
Setelah Component-based development ada Formal Method Model ~~~~

Formal Method Model
    Pada model ini, yang digunakan disini adalah notasi matematika yang terperinci dan penuh ketelitian dalam mengidentifikasi desain dan menguji sistem yang berbasis komputer.
Metode ini sering dipakai untuk spesifikasi yang detail, rancangan dan verifikasi pada bagian-bagian sistem yang penting (bersifat kritikal) seperti pada sistem avionic dan aerospace, serta pada sistem keamanan yang kritikal pada monitor jantung, ATM (Anjungan Tunai Mandiri) dan pada perbankan.dan secara khusus, metode formal sangat cocok dijalankan pada sistem yang kompleks.

Kelebihan model :
-          pengurangan waktu
-           peningkatan produktivitas yang besar.
Kekurangan model :
-          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.
-          Dan juga bebrapa kerugian lainya Biaya Tinggi, Kompleks, dan Tidak Umum untuk Proyek Software pada umumnya

******
Selanjutnya dan yang terahkir 4th Generation~~~~~

4th Generation
    Metode pengembangan perangkat lunak 4GT menggunakan perangkat bantu (tools) yang akan membuat kode sumber secara otomatis berdasarkan spesifikasi dari pengembang perangkat lunak. Hanya digunakan untuk menggunakanperangkat lunak yang menggunakan bahasa khusus atau notasi grafik yang diselesaikan dengan syarat yang dimengerti pemakai.
Cakupan aktivitas 4GT meliputi:
1. Pengumpulan kebutuhan, idealnya pelanggan akan menjelaskan kebutuhan yang akan ditranslasikan ke prototype operasional.
2. Translasi kebutuhan menjadi prototype operasional, atau langsung melakukan implementasi secara langsung dengan menggunakan bahasa generasi keempat (4GL) jika aplikasi relatif kecil.
3. Untuk aplikasi yang cukup besar, dibutuhkan strategi perancangan sistem walaupun 4GL akan digunakan.
4. Pengujian.
5. Membuat dokumentasi.
6. Melaksanakan seluruh aktivitas untuk mengintegrasikan solusi-solusi yang membutuhkan paradigma rekayasa perangkat lunak lainnya.
Kelebihan :
-          Pengurangan waktu dan peningkatan produktivitas secara besar
-          Karena 4GT menggunakan 4GL yang merupakan bahasa pemrograman yang  khusus dirancang dengan tujuan tertentu (spesifik), maka untuk permasalahan yang tertentu dengan 4GL tertentu pula sangat tepat menggunakan 4GT.
-          Tool yang menggunakan metode pengembangan perangkat lunak 4GL bisa meng-generate sistem dari output yang dihasilkan oleh CASE tools.
Kekurangan :
-          Penggunaan perangkat bantu (tools) dibandingkan dengan bahasa pemrograman, dan juga kode sumber yang dihasilkannya tidak efisien.
-          Untuk usaha yang besar, dibutuhkan pengembangan strategi desain untuk sistem, walau digunakan bahasa 4GL.
-          Penggunaan 4GT tanpa perencanaan matang (untuk proyek besar) akan menyebabkan kesulitan yang sama (kualitas dan pemeliharaan yang jelek, ketidakpuasan pelanggan) seperti dengan metode konvensional.
-          4GL tidak selalu berhasil menghasilkan sistem yang diinginkan.


Sekian dari saya mohon maaf jika ada yang kurang .{ jika kurang mengerti silakan berguru ke embah google }
wassalamualaikum.....

Jumat, 07 Agustus 2015

Jenis-jenis aplikasi perangkat lunak (Software) dan bagan ruang lungkup Perangkat lunak

Pertama-tama saya mau mengucapkan "Selamat hari libur ~~~~"

    assalamualaikum...., Dipost kali ini ane akan menjelas tentang jenis aplikasi perangkat lunak (software), diantaranya software [ system,Real-time,Embedded,Personal, Artificial Inteligent /AI ].
<<silakan diicip di simak baik-baik J >>

Perangkat Lunak Sistem
    Perangkat lunak sistem adalah perangkat lunak yang berhubungan langsung dengan komponen-komponen perangkat keras komputer, perawatan maupun pemrogramannya. 
Contoh-nya:
Sistem Operasi. sistem operasi yaitu perangkat lunak yang bertugas mengontrol dan melakukan manajemen perangkat keras serta operasi-operasi dasar sistem, termasuk menjalankan perangkat lunak aplikasi seperti pengolah kata dan browser web. (Windows, linux, MacOS,dll) 
Bahasa Pemrogramanbahasa pemrograman yaitu intruksi dan aturan yang tertuang dalam bentuk kode-kode yang diberikan pada komputer untuk melaksanakan suatu tugas.  (compiler/interpreter). (C, Java, C++, C# compiler dll)
Program Utilityprogram utility yaitu perangkat lunak yang ditujukan untuk melengkapi kinerja sistem operasi dan meningkatkan kinerja komputer.

Perangkat Lunak Real-Time.
    Perangkat lunak real-time adalah Program-program yang memonitor/menganalisis kejadian dunia nyata.
    Elemen-elemen perangkat lunak real-time mencakup komponen pengumpul data yang mengumpulkan dan memformat informasi dari lingkungan eksternal,  Perlu dicatat di sini bahwareal-time berbeda dengan interaksi atau timesharing. Sistem real-time harus merespon di dalam suatu rentang waktu yang tetap. Waktu respon sebuah sistem interaktif (timesharing) secara normal dapat diperpanjang tanpa memberikan risiko kerusakan pada hasil. jadi input/output yang memberikan respon pada lingkungan luar dan komponen pengawasan yang mengkoordinasikan seluruh komponen sehingga respon real-time (dengan kisaran waktu 1 milidetik s/d 1 menit) dapat dilaksanakan.

Embedded Software. 
    Embedded software ada dalam read-only memory dan dipakai untuk mengontrol / mengatur hasil serta sistem untuk keperluan konsumen dan pasar industri.
Contoh-nya:
    Microwave oven, Telpon genggam, Pengaturan avionik pesawat udara, fungsi digital pada kendaraan seperti alat ukur tangki bensin, tampilan dashboard, sistem rem Dan lain-lain.

Perangkat Lunak Komputer Personal (pc)
    Perangkat Lunak Komputer Personal Banyak digunakan pada aplikasi yang bersifat perorangan.
Contoh-nya:
    meliputi word processing, spreadsheet,  multimedia, hiburan,  game, DBMS  computer graphic, entertainment, database management, aplikasi bisnis keuangan , Dan lain-lain.

Perangkat Lunak Kecerdasan Buatan. 
    Perangkat Lunak Kecerdasan Buatan ialah perangkat lunak kecerdasan buatan (Artificial Inteligent /AI) menggunakan algoritma non-numeris untuk memecahkan masalah kompleks yang tidak sesuai untuk perhitungan atau analisis secara langsung.
Contoh-nya:
    game, expert sistem, neural network, pengenalan pola (image dan voice), Dan lain-lain.



Selanjutnya ane mau menampilkan ruang lingkup Perangkat Lunak 
( software )



sekian dari ane, mohon maaf jika ada yang kurang, wassalamualikum......
<<jika kurang langkap silakan berguru ke embah google :V >>

Rabu, 05 Agustus 2015

Basis data Manual & Eletronik dan hirarki database

Hirarki Database & Perbandingan dan Perbedaaan --> Basis data { Manual & Eletronik }

{ Note :  baiklah pertama-tama saya sebagai pemilik blog ini mengucapkan "minal aizin walfaizin mohon maaf lahir dan batin", maaf jika sudah sangat lama tidak Post blog ini :3 }


****
assalamualaikum wr wb.....Pertama-tama saya akan membahas apa itu basis data , dan apa itu basis data manual dan eletronik . silakan disemak baik-baik...

Basis data : ialah Kumpulan dari data yang saling berhubungan, selanjutnya ialah tentang basis data Manula dan eletronik. 

____----____
Basis Data [ Manual ]
   Basis data yang dikelola secara manual ini memiliki banyak sekali keterbatasan. Basis data ini hanya bisa disusun menurut salah satu ciri saja, misalnya menurut nama mahasiswa. Jika basis data ini sudah disusun menurut nama mahasiswa, maka tidak mungkin basis data ini disusun lagi menurut misalnya nomor pokok mahasiswa. Susunan tersebut kemudian akan menjadi titik cari (access point) bagi setiap cantuman (record) basis data tersebut. Dengan demikian maka setiap cantuman pada basis data tersebut hanya bisa dicari melalui satu titik cari saja.
   Misalnya map pada filing kabinet tersebut disusun menurut abjad nama mahasiswa, maka setiap map tersebut bisa dicari hanya bila kita mengetahui nama mahasiswa yang bersangkutan. Bila kita tidak tahu nama mahasiswa, tetapi hanya tahu nomor pokoknya saja maka dapat dipastikan bahwa kita tidak akan dapat mencari map mahasiswa yang kita maksud. Sebaliknya juga terjadi, bila map tersebut kita susun menurut urutan nomor pokok mahasiswa, maka bila kita hanya tahu nama mahasiswa, tetapi tidak tahu nomor pokok mahasiswa tersebut maka dapat dipastikan bahwa kita tidak akan menemukan map mahasiswa yang kita inginkan. Jadi pengelolaan basis data secara manual sangat tidak fleksibel

Basis Data [ Eletronik ]
Pengolahan data dengan menggunakan komputer terkenal dengan nama Pengolahan Data Elektronik (PDE) atau Electronic Data Processing (EDP). Data adalah kumpulan kejadian yang diangkat dari suatu kenyataan. Data dapat berupa angka-angka, huruf-huruf atau simbol-simbol khusus atau gabungan darinya. Data mentah masih beium bisa berceritera banyak, sehingga perlu diolah lebih lanjut.

Pengolahan data (data processittg ) adalah manipulasi dari data ke dalam bentuk yang lebih berguna dan lebih berarti, berupa suatu informasi. Informasi (information) adalah hasil dari kegiatan pengolahan data yang memberikan bentuk yang lebih berarti dari suatu kejadian.

Jadi Pengolahan Data Elektronik (PDE) atau Electronic Data Processing (EDP) adalah manipulasi dari data ke dalam bentuk yang lebih berarti berupa suatu informasi dengan menggunakan suatu alat elektronik, yaitu komputer.

****
selanjutnya saya akan menjelaskan tentang bagan Hirarki Database


Database 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. Contoh suatu database sederhana.


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 .Contoh ya serperti gambar dibawah!

Record atau baris adalah kumpulan item yang secara logic saling berhubungan. Setiap record dapat dikenali oleh sesuatu yang mengenalinya, yaitu field kunciJadi record ibarat kumpulan kata yang membentuk satu kalimat . seperti gambar dibawah ini!


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

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 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.

____----____
ngomong-ngomong seperti inilah bagan Hirarki Database


****
baiklah sekian dari saya mohon maf jika ada yang kurang { jika kurang mengerti silakan berguru ke embah google },wassalamualaikum.....