Senin, 17 September 2012

RPL lanjutt

Rekayasa Perangkat Lunak Lanjut

Waktu yang dibutuhkan untuk mendapatkan Software begitu lama dikarenakan banyak hal-hal yang menghambat. Misalnya ketidakkonsistenan, ketidaklengkapan, maupun ketidakbenaran dari spesifikasi kebutuhan.
Kebutuhan Perangkat lunak mencangkup kegiatan dalam kondisi yang harus dipenuhi untuk suatu produk baru atau yang akan diganti, dengan mempertimbangkan kemungkinan terjadinya konflik kebutuhan dari berbagai macam stackeholder. Kebutuhan harus terdokumentasi, dapat ditindak lanjuti, dapat diukur, diuji, memiliki kaitan dengan kebutuhan dan peluang bisnis serta memiliki tingkat kerincian yang cukup untuk perancangan sistem.
Ada beberapa tahap teknik kebutuhan perangkat lunak, yaitu:

  1. Tahap Elicitation (pengumpulan informasi), bertujuan untuk mengupulkan sebanyak mungkin informasi       mengenai problem domain, kesulitan klien dan user serta apa yang sistem ingin lakukan untuk mereka.
  2. Spesifikasi, informasi dari proses elicitation dianalisa dan direkam menggunakan teknik modeling dramatis dan tekstual untuk menunjukan masalah dan solusi yang diajukan.
  3. Validasi, mengecek kebutuhan yang telah direkam apakah telah berkaitan dengan tujuan stakeholder terhadap sistem.
Acuan dalam merekayasa perangkat lunak :

  1. dapat terus dirawat dan dipelihara
  2. dapat mengikuti perkembangan
  3. dapat mengikuti keinginan pengguna
  4. efektif dan efisien dalam menggunakan energi dan penggunaannya
  5. dapat memenuhi kebutuhan yang diinginkan.
Itu mengapa perangkat lunak membutuhkan waktu lama, biaya tinggi, dan terdapat kselitan-kesulitan.



www.sianau.blogspot.com







Rabu, 27 Juni 2012

Manipulasi DataBase

Basis adalah kumpulan atau gudang, sedang
Data adalah fakta tentang objek, orang dan lain-lain yang dinyatakan dengan nilai (angka, simbol, dll).
Basis Data adalah sekumpulan data yang saling berelasi satu sama lain menurut aturan tertentu. tidak hanya sekedar sekumpulan berkas yang saling berhubungan, tapi mencakup hal lain seperti hub.antar tabel, view dan bahkan kode.Konsep dasar basis data diantaranya :
  • Data redundancy dan inconsistency
  • Data isolation
  • Difficulty in accessing data
  • Integritas masalah
  • masalah keamanan
Sistem basis data yaitu sistem yang terdiri atas sekumpulan tabel data yang saling berhubungan dan sekumpulan program yang memungkinkan berbagai user atau program lain dapat mengakses dan memanipulasi tabel-tabel tersebut.
Sistem manajemen data base (DBMS) adalah sekumpulan program yang digunakan user untuk memenejemen data base. Beberapa proses dalam DBMS yaitu :
  •  Defining : database mendefinisikan tipe data,  struktur data dan batasan dari data yang disimpan dalam database.
  • Manipulating : database mencakup beberapa fungsi dan query untuk mendapatkan data yang dicari, termasuk operasi insert, update dan delete serta dalam generate report data.
  • Sharing : database dapat diatur untuk dapat sharing multiple user dan program mengakses database secara bersama-sama.
Tujuan database yaitu :
  • kemudahan dan kecepatan dalam pengambilan data
  • efisiensi ruang penyimpanan untuk mengurangi atau menghilangkan redundansi data
  • keakuratan
Pembentukan kode dan relasi antar data berdasar aturan atau batasan tipe data, domain data, keunikan data, untuk menekan ketidak akuratan penyimpanan data.
Disini kita akan membahas tentang manipulasi data, dimana manipulasi data itu berarti :
  • Retrieval  --> mengambil informasi dari database
  • Insertion --> menambahkan data baru ke database
  • Deletion --> menghapus data dari database
  • Modification --> mengubah data dalam database

Data Manupilation Language (DML) merupakan bahasa yang bertujuan memudahkan pemakai untuk mengakses data sebagaimana direpresentasikan oleh model data. Ada 2 jenis DML, yaitu:
  • Prosedural, yang mensyaratkan agar pemakai menentukan data apa yang diinginkan serta bagaimana cara mendapatkannya.
  • Nonprosedural, yang membuat pemakai dapat menentukan data apa yang diinginkan tanpa menyebutkan bagaimana cara mendapatkannya.sianau.blogspot.com

Struktur Data

Struktur data dapat berupa struktur yang kompleks, akan tetapi dalam banyak aplikasi, struktur data yang cocok hanya terdiri dari kumpulan data berurutan. Struktur data seperti ini bisa berupa array ataupun record.
 Array merupakan jenis struktur data yang sangat dasar dan sangat penting. Teknik pengolahan array merupakan teknik pemrograman yang paling penting yang harus dikuasai. Dua teknik pengolahan array yaitu pencarian dan pengurutan.
Record mirip  dengan objek pada java hanya memiliki variabel instansi tanpa metode instansi. Data pada 
record dalam java adalah variabel instansi suatu objek disebut dengan field. Perbedaan sifat dari suatu record adalah bahwa item pada record dipanggil berdasar nama, sedang field yang beda dapat berupa tipe yang beda pula. misalnya klas mahasiswa :

public class Mahasiswa
{
    private String nama;
    private String jurusan;
    private int angkatan;
    private String noUrut;
}
 maka objek dari klas mahasiswa disebut huga record dengan 4 field, yang nama fieldnya adalah nama, jurusan, angkatan dan no urut dan tipe datanya berbeda yaitu string dan int. 

Tipe dasar array bisa berupa tipe java apa saja, baik primitif, nama kelas, atau interface. Setiap posisi pada array bersifat variabel. Dalam java, elemen array selalu dimulai dari nol, yaitu indeks dari elemen pertama adalah nol. jika panjang array adalah N, maka indeks elemen terakir adalah N-1.
Meskipun setiap array merupakan objek, kelas array tidak harus didefinisikan sebelumnya. Jika suatu tipe telah ada, maka kelas array dari tipe tersebut otomatis ada. Jika nama suatu tipe adalah Tipe dasar, maka nama kelas arraynya adalah TipeDasar [ ]. Tanda kurung " [ ] " dimaksudkan untuk mengingat sintaks untuk mengambil item didalam array. Tipe dasar suatu array dapat berupa tipe apapun yangb ada pada java. misalnya tipe primitif int akan diturunkan kelas array int [ ]. Setiap elemen didalam array int [ ] adalah variabel yang memiliki tipe int dan dapat diisi dengan nilai dengan tipe int.
Sebagai contoh : 
int [ ] daftar;
yang membuat variabel bernama daftar dengan tipe int [ ], dengan nilainya awalnya null. Operator new digunakan untuk membuat objek array baru. 
contoh:
daftar = new int [5];

contoh keseluruhan dalam program:

public class Mahasiswa
{
    private String nama;
    private String jurusan;
    private int angkatan;
    private String noUrut;
    private MataKuliah [] matkul = new MataKuliah[10];
   
    public Mahasiswa(String jurusan, int angkatan, String noUrut, String nama){
        this.nama = nama;
        this.jurusan = jurusan;
        this.angkatan = angkatan;
        this.noUrut = noUrut;
    }
   
    public String getNim(){
        return jurusan+"."+angkatan+"."+noUrut;
    }
   
    public String getNama(){
        return nama;
    }
   
    public void inputMatkul(int idx, MataKuliah matkul){
        this.matkul[idx] = matkul;
    }
   
    public void printLaporan(){
        System.out.println("========================================");
        System.out.println("NIM : "+getNim());
        System.out.println("Nama : "+getNama());
        System.out.println("========== Daftar Mata Kuliah ==========");
        for(int i = 0; i < 10; i++){
            System.out.println((i+1)+". "+matkul[i].laporan());
        }
        System.out.println("========================================");
   }


Jumat, 27 April 2012

FighTing

 Xan psti pernh mngalami yg namanya gagal.
Gagal dalam ujian, dalam mlaksanakn kwajiban dan gagal dalam mmperthankan swtu hubungan.
mgkin sbgian dr Xan mnganggap kgagalan adlah akhir dr impian.., tp itu tdk mnrt Xan yg mw mlihat arti dr kgagalan itu sndr.
kgagalan adlh awal dr ksuksesan..kunci swtu kberhasilan yg tertunda..
jgnlah kalian ptus smangat, tp jdikan itu sbg acuan, smangat bwt diri kalian untuk bangkit dan brusaha serta yakin kalo "AQ PASTI BISA..".
mlangkah kdepan dngan rasa percya diri, dan jgn sring2 mnoleh kblakag. anggap dan jdikanlah pngalaman kmren itu sbg guru kita. jngan tkut dan yakinlah...
Inget,.!! qm tdk sndri..ada ortu, sdra, klwrga, tmen serta org trdekt qm yng setia mnemani dan mnunggu qm untk bangkit kmbli. ingatlah mreka..!

Terpuruk itu hal yg wajar, tp ayolaaah..... kmi dsini mbutuhkanmu en qm psti bsa mperbaikinya.
FIGHTING...... !! 

sianau.blogspot.com





Minggu, 22 April 2012

Inheritance dan Polymorphism

Pemrograman Berorientasi Objek

Dalam pemrograman berorientasi objek ini terdapat 3 pilar yaitu enkapsulasi, inheritance, dan polymorphism. Akan tetapi disini Saya tidak akan membahas semua melainkan hanya inheritance dan polymorphism.

Inheritance (pewarisan) adalah penurunan fungsi dan attribute suatu class agar dapat digunakan berulang-ulang dengan menambahkan fungsionalitas.
Pewarisan (inheritance),
  • suatu class dapat diturunkan menjadi subclass yang lain untuk menambah fungsionalitas
  • semua attribute dan method dari superclass dapat diwarisi oleh subclass
  • subclass dapat menambahkan attribute dan method yang belum terdapat pada superclass.
contoh :
ada beberapa class, yaitu class pegawai, dosen, administrasi dan dekan.
class pegawai memiliki attribute (npp, nama), methodnya (absen, gajian),
class dosen memiliki attribute (jmlSks) dan methodnya (mengajar),
class administrasi memiliki attribute (unit), methodnya (mendaftarMhs),
class dekan tidak memiliki attribute, dan methodnya (memimpinFak).
disini kita bisa memasukan class dekan di class dosen, sedangkan class dosen dan administrasi di class pegawai. pokoknya sesuai dengan cara pewarisan diatas..

Polymorphism (banyak rupa) adalah pengimplementasian fungsi yang sama dengan cara yang berbeda pada subclass. Ada 2 prinsip didalamnya, yaitu overriding dan overloading.
1. Overriding
Sebuah subclass dapat mengimplementasikan kembali method yang sudah ada pada superclass, maksudnya mendeklarasikan lagi fungsi yang sudah ada pada superclass untuk mendapatkan hasil yang beda.
  •  nama method harus sama
  •  parameter harus sama, dan
  •  terdapat pada subclass.
2. Overloading
Dalam sebuah class diperbolehkan mempunyai method dengan nama yang sama, syaratnya parameter harus beda yaitu jumlah dan tipe datanya.
  • nama method harus sama
  • parameter harus beda
  • terdapat pada class yang sama.
contoh:
class mahasiswa
{
          public void inputData() {......}
          public void inputData (String nim) {.....}
          public void inputData (String nim, String nama) {......}
          public void inputData (int noDaftar) {......}
}


sianau.blogspot.com

Sabtu, 21 April 2012

Sinau PBO

Ini pertama kalinya Saya buat blog, itupun karena tugas. Tugas yang diberikan pada Saya adalah tentang PBO (Pemrograman Berorientasi Objek), dimana disini Saya dituntut untuk berfikir kreatif, menuangkan ide atau pikiran pa saja yang Saya punya untuk menulis artikel ini. Bingung se, tapi ku yakin pasti bisa!

key, pertama sama-sama kita cari tahu dulu apa itu PBO?
PBO atau Pemrograman berorientasi objek adalah pengembangan dari bahasa prosedural dimana beberapa intruksi dapat dikelompokan menjadi beberapa fungsi. Dan fungsi itu sendiri dikelompokan menjadi sebuah class/objek. Disini ada beberapa kata kunci dalam PBO diantaranya ada class, object, attribute, method, inheritance, dan interface. Yukk kita kupas satu-satu kata kuncinya..
Class yaitu kumpulan variabel (attribiute) dan fungsi (method) yang mempunyai tujuan yang relevan.
Attribute yaitu variabel yang ada pada sebuah class yang nilainya bisa ditentukan oleh objek.
Method yaitu fungsi dari sebuah class yang merupakan kumpulan dari beberapa intruksi.
Inheritance (pewarisan) yaitu penurunan fungsi dan atribut suatu class agar dapat digunakan berulang-ulang dengan menambahkan fungsionalitas.

Kadang Saya bertanya pada diri saya, kenapa Saya harus belajar PBO? dan mengapa harus berorientasi objek ???  ooh, ternyata PBO itu lain dari bahasa pemrograman yang lain itu memang iya, tapi disisi lain.. disini ternyata lebih mudah, dan dulu yang Saya tidak begitu suka dengan pemrograman karena buat Saya itu rumit, tapi sekarang tidak buat PBO. Didalam PBO, kita bisa menggunakan sebuah class berulang-ulang tanpa harus menulis kembali, dapat menambahi fitur pada sebuah class tanpa mengedit class asal, terus dapat juga menggunakan objek tanpa harus mengetahui teknis didalamnya. Itulah mengapa berorientasi objek...

Dalam PBO ini, Saya belajar menggunakan java. Tapi tidak hanya java saja, kalian bisa menggunakan Python, Ruby, C++, C#, .NET, PHP dan masih banyak lagi pemrograman modern yang menggunakan OOP. Jadi buruan mencoba dan jangan takut salah, karena dengan salah kita tahu dimana letak kesalahan itu dan memperbaikinya..