teknik pemograman

of 217/217
Pertemuan ke- Pokok Bahasan Keterangan 1 Pengenalan Dasar Pemrograman 2 Konsep Dasar Pemrograman 3 Tahapan Pembuatan Program 4 Elemen-Elemen Bahasa Pemrograman 5 Analisa Struktur Program 6 Analisa Struktur Program Lanjutan 7 Review/Quis SILABUS 8 Ujian Tengah Semester (UTS) 9 Tipe Tabel Database 10 Organisasi dan Akses File 11 Aplikasi Pemrograman Bisnis 12 SDLC 13 Object Oriented Program 14 Implementasi OOP Pada Perangkat Lunak Pemrograman 15 Review/Quis 16 Ujian Akhir Semester (UAS)

Post on 10-Jul-2016

41 views

Category:

Documents

10 download

Embed Size (px)

TRANSCRIPT

  • Pertemuan ke- Pokok Bahasan Keterangan

    1 Pengenalan Dasar Pemrograman

    2 Konsep Dasar Pemrograman

    3 Tahapan Pembuatan Program

    4 Elemen-Elemen Bahasa Pemrograman

    5 Analisa Struktur Program

    6 Analisa Struktur Program Lanjutan7 Review/Quis

    SILABUS

    8 Ujian Tengah Semester (UTS)9 Tipe Tabel Database

    10 Organisasi dan Akses File

    11 Aplikasi Pemrograman Bisnis

    12 SDLC

    13 Object Oriented Program14 Implementasi OOP Pada Perangkat Lunak Pemrograman

    15 Review/Quis

    16 Ujian Akhir Semester (UAS)

  • Sumber Referensi:1. Binarto, Iwan. 2005. Konsep Bahasa Pemrograman. Yogyakarta:

    ANDI 2. Handayani, Dewi. 2001. Sistem Berkas. Yogyakarta: J&J Learning3. Indra, Yatini. 2001. Pemrograman Terstruktur. Yogyakarta: J&J

    Learning4. Jogiyanto HM. 2005. Sistem Teknologi Informasi. Edisi II, Yogyakarta:

    ANDI 5. Kadir, Abdul. 2002. Pemrograman C++. Yogyakarta: ANDI6. Kurniadi, Adi. 2002. Pemrograman Visual Basic 6. Jakarta: Elex 6. Kurniadi, Adi. 2002. Pemrograman Visual Basic 6. Jakarta: Elex

    Media Komputindo7. Nugroho, Adi. 2004. Pemrograman Berorientasi Objek. Bandung:

    Informatika8. Raharjo, Budi. 2009. Pemrograman C++. Bandung: Informatika9. Sutedjo, Budi. 2004. Algoritma & Teknik Pemrograman. Yogyakarta:

    ANDI 10. Sutopo, Ariesto Hadi. 2002. Analisis dan Desain Berorientasi Objek.

    Yogyakarta: J&J Learning

  • KONTRAK PERKULIAHAN Teknik Pemrograman merupakan mata kuliah teori yang

    dilakukan di kelas dengan tatap muka oleh dosen yangbersangkutan

    Pertemuan 1-14 dilakukan seperti biasanya dimana dosenmenyampaikan materi kepada mahasiswa

    Untuk Pertemuan 7 dan 15 diadakan QUIZ / review materi Pertemuan 8 diadakan UTS dimana materi diambil dari Pertemuan 8 diadakan UTS dimana materi diambil dari

    pertemuan 1-6, dan Pertemuan 16 diadakan UAS dimanamateri diambil dari pertemuan 9-15.

    Setelah UTS khususnya pada Pertemuan 11 mahasiswadiwajibkan membuat suatu tugas (proyek) yang dikerjakansecara berkelompok. Tugas tersebut berbentuk Laporanatau makalah dan CD.

    Format makalah tugas sesuai dengan aturan pada outlineTA terbaru.

  • Mampu menganalisa sistem yang akan diaplikasikan ke dalam bentuk program bisnis maupun science, dengan membuat Laporan dari hasil analisa tersebut secara berkelompok (tidak diwajibkan: riset dan membuat program).Isi dari Laporan tersebut antara lain:A. Program Aplikasi Bisnis (untuk Jurusan MI dan KA)

    Judul sistem harus jelas Normalisasi (optional)

    Capaian Pembelajaran adalah:

    Normalisasi (optional) Spesifikasi File dan Tabel yang digunakan Spesifikasi Program dan HIPO Flowchart

    B. Program Berbasis Science (untuk Jurusan TK) Judul program harus jelas Spesifikasi File dan Tabel yang digunakan Spesifikasi Program dan HIPO Flowchart

  • Pertemuan 1PENGENALAN DASAR PENGENALAN DASAR

    PEMROGRAMAN

  • ProgramPernyataan yang disusun menjadi satu kesatuanprosedur yang berupa urutan langkah yang disusunsecara logis dan sistematis untuk menyelesaikan masalah.

    PemrogramanProses mengimplementasikan urutan langkah untuk

    I. Pengertian

    Proses mengimplementasikan urutan langkah untukmenyelesaikan suatu masalah dengan menggunakanbahasa pemrograman.

    Bahasa PemrogramanProsedur penulisan program.

    ProgrammerOrang yang membuat sebuah program.

  • Terdapat 3 faktor penting dalam bahasa pemrograman:1. Sintaks : aturan penulisan bahasa tersebut (tata

    bahasanya).

    2. Semantik : arti/maksud yang terkandung di dalamstatemen tersebut.statemen tersebut.

    3. Kebenaran logika: berhubungan dengan benar tidaknyaurutan statemen.

  • Dalam membuat sebuah program harus memakai teknikpemrograman, diantaranya:

    1. Pemrograman ProseduralAlgoritma berisi urutan langkah-langkah penyelesaianmasalah. Ini berarti algoritma adalah proses yangprosedural.Contoh: Cobol, Basic, Pascal, Fortran dan C.Contoh: Cobol, Basic, Pascal, Fortran dan C.

    2. Pemrograman FunctionalMerupakan salah satu pemrograman yangmemperlakukan proses komputasi sebagai evaluasifungsi-fungsi matematika (kodenya berupa fungsi-fungsi).Contoh : Lisp, Scheme, ML, Haskell.

  • 3. Pemrograman Berbasis ModulProgram dipecah-pecah ke dalam modul-modul, dimanasetiap modul menunjukkan fungsi dan tugas tunggal.Pemrograman ini diterapkan dengan menggunakan sub-routine, yaitu sebuah kumpulan perintah yang melakukantugas pemrosesan yang terbatas. Pemrograman ini banyakdimanfaatkan oleh Bahasa Pemrograman Berbasis Obyek.

    4. Pemrograman TerstrukturPemrograman yang mendukung pembuatan programsebagai kumpulan prosedur yang dapat saling memanggildan dipanggil dari manapun dalam program dan dapatmengunakan parameter yang berbeda-beda untuk setiappemanggilan.Contoh: Pascal, Cobol, RPG, ADA, C.

  • 5. Pemrograman Berorientasi ObjekBahasa pemrograman yang mampu memanfaatkan objek-objek yang tersedia atau membuat suatu objek tertentudengan menggunakan bahasa pemrograman.Contoh: C++, SmallTalk, Java.

    6. Pemrograman GenericDalam pemrograman generik penulisan kode bisaDalam pemrograman generik penulisan kode bisadigunakan oleh berbagai macam tipe data.Program generik ditulis sekali dan dapat dipakai berkali-kaliuntuk data beragam tanpa harus mengubah inti darialgoritma sehingga dapat memberikan keleluasaan denganhanya menulis kode umum hanya sekali dan selanjutnyakode tersebut dapat dipakai ulang untuk tipe data berbedanamun memiliki karakteristik yang sama.Contoh: Java, C++

  • 7. Pemrograman DeklaratifSebuah paradigma pemrograman yang mengungkapkanlogika dari sebuah komputasi tanpa menggambarkan alirankontrol.Pemrograman deklaratif merupakan suatu seni membuatprogram dengan tidak menggunakan algoritma untukpemecahan masalahnya. Untuk membuat pemrogramanpemecahan masalahnya. Untuk membuat pemrogramandeklaratif dibutuhkan suatu bahasa deklaratif.Contoh: Prolog

  • Beberapa kriteria pemilihan sebuah bahasa pemrograman:1. Clarity, simplicity dan unity

    Kemudahan, kesederhanaan dan kesatuan merupakansuatu kombinasi yang membantu programermengembangkan suatu algoritma.

    II. Kriteria Bahasa Pemrograman

    mengembangkan suatu algoritma.

    2. OrthogonalityMerupakan suatu atribut yang dapat dikombinasikandengan beragam fitur bahasa pemrograman sehinggasetiap kombinasinya mempunyai arti dan dapatdigunakan.

  • 3. Kewajaran untuk aplikasiBahasa pemrograman harus mempunyai struktur data,operasi-operasi, struktur kontrol dan sintaks yang tepatuntuk memecahkan suatu masalah.

    4. Mendukung abstraksiAbstraksi merupakan suatu hal yang substansial bagiAbstraksi merupakan suatu hal yang substansial bagiprogramer untuk membuat suatu solusi dari masalahyang dihadapi.

    5. Kemudahan untuk verifikasi programDengan verifikasi data yang mudah, maka suatuprogram akan dengan mudah dibangun dandikembangkan

  • 6. Lingkungan PemrogramanLingkungan pemrograman dapat berarti editor yangdigunakan, dokumentasi yang baik, fasilitas debugging,user interface yang baik ataupun tools lain yang dapatdigunakan untuk memudahkan pekerjaan programer.

    7. Portabilitas programKemudahan program untuk dipakai di berbagai jenisKemudahan program untuk dipakai di berbagai jeniskomputer.

    8. Biaya Penggunaana. Biaya eksekusi programb. Biaya kompilasi programc. Biaya penciptaan, testing dan penggunaan programd. Biaya pemeliharaan program

  • Dalam pengolahan data dan pembuatan sebuah programdiperlukan beberapa aspek-aspek dasar yaitu:

    A. BrainwareTenaga pelaksana yang menjalankan serta mengawasipengoperasian sistem unit komputer di dalam proses

    III. Aspek Pemrograman

    pengoperasian sistem unit komputer di dalam prosespengolahan data untuk menghasilkan suatu informasi yangtepat waktu, tepat guna dan akurat.

    Contoh : Sistem Analis, Programmer, Technical Support,Operator, Data Entry, dll.

  • B. HardwareSerangkaian unsur-unsur yang terdiri dari beberapaperangkat keras komputer yang digunakan untukmembantu proses kerja manusia (Brainware).Contoh : CPU, Monitor, Keyboard, Harddisk, Disk drive,

    Printer, dll.

    C. SoftwareSerangkaian unsur-unsur yang terdiri dari beberapaperangkat lunak program komputer yang digunakanuntuk membantu proses kerja manusia (Brainware).Contoh : Sistem Software, Application Software, Package

    Software, Utility Software, dll.

  • IV. Bahasa Pemrograman Berdasarkan Perkembangan

    A. Bahasa Mesin (Machine Language)Bahasa Pemrograman yang hanya dapat dimengerti olehmesin (komputer) yang di dalamnya terdapat CPU yanghanya mengenal 2 (dua) keadaan yang berlawanan,hanya mengenal 2 (dua) keadaan yang berlawanan,yaitu:- Bila tejadi kontak (ada arus) bernilai 1- Bila kontak terputus (tidak ada arus) bernilai 0

  • B. Bahasa Tingkat Rendah (Low Level Language)Karena susahnya bahasa mesin, maka dibuatlah simbolyang mudah diingat yang disebut dengan Mnemonics(pembantu untuk mengingat).Contohnya : A : Untuk kata Add (menambahkan)A : Untuk kata Add (menambahkan)B : Untuk kata Substract (mengurangi)Mov : Untuk kata Move (memindahkan)

    Bahasa Pemrograman yang menterjemahkan Mnemonics adalah Assembler.

  • C. Bahasa Tingkat Menengah (Middle Level Language)Bahasa pemrograman yang menggunakan aturan-aturangramatikal dalam penulisan pernyataan, mudah untukdipahami dan memiliki instruksi-instruksi tertentu yangdapat langsung diakses oleh komputer.

    Contohnya adalah bahasa C.

  • D. Bahasa Tingkat Tinggi (High Level Language)Bahasa Pemrograman yang dalam penulisanpernyataannya mudah dipahami secara langsung.Bahasa pemrograman ini terbagi menjadi 2 yaitu :1. Procedure Oriented Language

    a. ScientificDigunakan untuk memecahkan persoalanmatematis/perhitunganmatematis/perhitunganMisal : Algol, Fortran, Pascal, Basic

    b. BussinesDigunakan untuk memecahkan persoalan dalambidang bisnis.Misal : Cobol, PL/1.

    2. Problem Oriented LanguageMisal : RPG (Report Program Generator).

  • E. Bahasa Berorientasi Objek (Object Oriented Language) Bahasa pemrograman yang berorientasi pada objek.Bahasa pemrograman ini mengandung fungsi-fungsiuntuk menyelesaikan suatu permasalahan danprogram tidak harus dituliskan secara detail semuapernyataannya, tetapi cukup memasukkan kriteria-pernyataannya, tetapi cukup memasukkan kriteria-kriteria yang dikehendaki saja

    Contohnya: Java, C++, VB .net, Visual C, PHP, dll.

  • V. Kerangka Dasar Pemrograman

  • PERTEMUAN 2Konsep Dasar PemrogramanKonsep Dasar Pemrograman

  • Ciri-ciri algoritma pemrograman yang baik adalah:1. Memiliki logika perhitungan/metode yang tepat dalam

    memecahkan masalah2. Menghasilkan output yang tepat dan benar dalam waktu

    yang singkat

    I. Algoritma Pemrograman Yang Baik

    yang singkat3. Ditulis dengan bahasa yang standar secara sistematis

    dan rapi sehingga tidak menimbulkan arti ganda.4. Ditulis dengan format yang mudah dipahami dan

    diimplementasikan ke dalam bahasa pemrograman.5. Semua operasi yang dibutuhkan terdefinisi dengan jelas.6. Semua proses harus berakhir setelah sejumlah langkah

    dilakukan.

  • Berikut ini contoh program yang mempunyai algoritmayang TIDAK BAIK karena mengandung kesalahanlogika.#include void main (){int i ;i = 0 ;i = 0 ;while (i
  • Berikut ini contoh program yang mempunyai algortitmayang BAIK karena mempunyai logika yang benar#include void main (){int i;i = 0;i = 0;while (i
  • II. Standar Program Yang BaikA. Standar Pemecahan masalah

    Teknik untuk dapat membantu memecahkan masalah:Top Down : program disusun dari yang paling umum

    (masalah yang komplek), kemudian dibagi menjadi masalah yang lebih kecil.

    Bottom Up : program disusun dari pemecahan masalah Bottom Up : program disusun dari pemecahan masalah yang kompleks, kemudian menggabungkan prosedur-prosedur yang ada menjadi satu kesatuan program sebagai penyelesaian masalah tersebut.

    Modular : program dipecah menjadi beberapa modul, dan setiap modul menunjukkan fungsi dan tugas tunggal.

  • B. Standar Penyusunan Program

    1. Kebenaran logika dan penulisan Program yang disusun harus memiliki logika dalam

    pemecahan masalah.

    Program yang dibuat harus memiliki ketepatan, Program yang dibuat harus memiliki ketepatan,ketelitian dan kebenaran sehingga menghasilkanprogram yang baik.

  • if (kondisi1){

    pernyataan_1;.

    }

    2. Waktu penulisan dan eksekusi program.a. Contoh Logika pengujian yang TIDAK BAIK karena

    pengujian yang berulang-ulang sehingga waktu eksekusi tidak efisien

    }if (kondisi2){

    pernyataan_2;.

    }if (kondisi3){

    pernyataan_3;.

    }

  • b. Logika pengujian yang BAIK sehingga waktu lebih efisien:

    if (kondisi_1){

    pernyataan_1;.

    elseif (kondisi_2)if (kondisi_2)

    pernyataan_2;.

    elseif (kondisi_3)

    pernyataan_3;.

    }

  • 3. Perawatan dan pengembangan program Penyusunan program harus mempunyai sifat kesederhanaan dan kejelasan dari program yang nantinya akan dikembangkan dan membantu dalam perawatan.

    4. PortabilitasBahasa pemrograman dan program yang disusun sebaiknya bisa dipakai pada berbagai tipe komputer sebaiknya bisa dipakai pada berbagai tipe komputer yang berbeda-beda dan berbagai jenis sistem operasi.

    5. User friendlyProgram harus memiliki fasilitas yang memberikan kemudahan bagi user untuk pengoperasian, seperti menu tampilan yang informatif, pesan-pesan, dan lain-lain.

  • C. Standar Perawatan Program1. Dokumentasi

    Merupakan catatan dari setiap langkah pekerjaan membuat program dari awal sampai akhir, dan biasanya digunakan untuk penelusuran kesalahan dan pengembangan program.

    2. Penulisan Instruksi a. Berikan keterangan untuk awal statemen atau

    instruksi yang tergabung dalam sekelompok statemen.

    b. Awal dan akhir statemen dari sekumpulan statemen ditulis pada kolom yang sama

    c. Gunakan sebaris atau beberapa baris kosong sebagai pemisah.

  • d. Hindari pernyataan untuk Percabangan(IF statement) yang sangat rumit dan Nested Loop(Loop di dalam Loop lain) yang berlebihan.

    e. Gunakan kurung buka dan tutup dalam menulis suatu ekspresi Aritmatika atau logika.

    f. Gunakan Spasi dalam menulis statemen atau instruksi.

  • III. Sifat Penulisan Programa. Program Oriented

    Penulisan program yang struktur programnya selaluberubah, apabila kondisi data yang diproses di dalamprogram tersebut bertambah volume datanya.Selain itu penulisan program ini bersifat statis dan tidakfleksibel.Contoh: Program AnimasiContoh: Program Animasi

    b. Data OrientedPenulisan program yang struktur programnya tidakselalu berubah, walaupun volume data yang diproses didalam program tersebut dalam jumlah besar. Selain itupula penulisan program ini bersifat dinamis danmempunyai tingkat fleksibilitas yang tinggi.Contoh : Program aplikasi

  • Program InteraktifPenulisan program yang terstruktur, dimanaprogramnya dapat dipergunakan oleh penggunasecara mudah dan dapat dimengerti tentang prosesyang sedang dilakukan oleh program tersebut sertadapat mengatur kebutuhan akan peranti masukan dankeluaran.keluaran.

  • Pertemuan 3

    Tahapan PembuatanTahapan PembuatanProgram

  • I. Tahapan-Tahapan Membuat Program

    A. Membuat Program Yang Kompleks Untuk membuat program yang besar dan kompleks, programmer membutuhkan tahapan-tahapan di bawah ini:

    1. Definisi Masalah1. Definisi MasalahUntuk mendapatkan pengertian atau pemahaman tentang masalah yang ada sehingga dapat ditentukan batasan masalahnya.

  • 2. Analisis KebutuhanUntuk menentukan spesifikasi fungsi, kemampuan danfasilitas dari program yang disusun sebagai dasarevaluasi.

    3. Desain Algoritma/Membuat Rumusan PemecahanMasalahDengan cara menulis langkah-langkah pemecahanDengan cara menulis langkah-langkah pemecahanmasalah, dengan tujuan untuk menyelesaikan masalah.Dapat disajikan dalam bentuk kata-kata (Pseudocode),Struktur Chart, HIPO, Flowchart.

  • 4. Pengkodeana. Dokumentasi Kodeb. Deklarasi Datac. Penyusunan Perintahd. Input /Output e. Efisiensi

    5. Bahasa PemrogramanSebagai sarana komunikasi manusia-komputer, danSebagai sarana komunikasi manusia-komputer, dansebagai media untuk membuat dan memahami program.Karakteristik pemilihan bahasa pemrograman:a. Bidang aplikasi yang dikerjakanb. Kompleksitas algoritma dan perhitunganc. Lingkungan dimana software diterapkand. Pengetahuan programmer/staffe. Ketersediaan compiler (objek program)

  • 6. TestingProses menguji program secara intensif untukmenemukan kesalahan (bebas error)DebuggingMengoreksi kesalahan sampai kesalahan diperbaiki,meliputi penetapan lokasi dan kode error

    7. Dokumentasi7. DokumentasiInformasi dan gambaran untuk memahami program ataukode yang diberikan.Tujuannya sebagai pedoman dan penjelasan bagi user.Tipe dokumen pemrograman:a. Dokumentasi Internalb. Dokumentasi Externalc. Dokumentasi Operator

  • 8. PemeliharaanMeliputi:a. Penambahan/peningkatan/perbaikan program, seperti

    penambahan fungsi baru, dan perbaikan tampilan.b. Adaptasi program dengan lingkungan mesin baruc. Perbaikan terhadap kesalahan yang timbul

    Pemeliharaan dibedakan menjadi:Pemeliharaan dibedakan menjadi:a. Correctiveb. Adaptivec. Preventived. Perfective

  • B. Membuat Program Sederhana

    Untuk membuat suatu program yang sederhana,programmer tidak perlu menggunakan delapanh tahapandi atas, tetapi cukup beberapa tahap saja, yaitu:

    1. Definisi Masalah

    2. Desain Algoritma3. Bahasa Pemrograman4. Testing and Debugging

  • II. Karakteristik Seorang Programmer

    1. Mampu menyusun algoritma dengan baik dan logis.

    2. Memiliki ketekunan dan ketelitian yang tinggi.

    3. Menguasai bahasa dan teknik penulisan program3. Menguasai bahasa dan teknik penulisan programdengan baik.

    4. Dapat bekerja sama dalam suatu tim.5. Dapat bekerja secara efisien dan tepat waktu

  • III. Menulis Program Interaktif 1. Program harus dapat melakukan validasi terhadap setiap

    data yang masuk (mencocokkan data).2. Program harus dapat mengecek setiap kemungkinan-

    kemungkinan yang penting, yang akan muncul pada datamasukan.

    3. Buatlah format masukan sesederhana mungkin3. Buatlah format masukan sesederhana mungkin4. Buatlah agar program dapat memberikan tanda bahwa

    data yang dikehendaki sudah terpenuhi.5. Berikan label atau keterangan pada setiap keluaran,

    termasuk bentuk pesan kesalahan apabila si pemakaisalah mengoperasikan program tersebut.

    6. Berikan pesan, apabila program sedang melakukansuatu proses yang memerlukan suatu waktu tunggu

  • PERTEMUAN 4

    ELEMEN-ELEMEN BAHASA ELEMEN-ELEMEN BAHASA PEMROGRAMAN

  • I. Elemen-Elemen Dalam Bahasa Pemrograman

    A. Aturan Leksikal

    1. TokenElemen tunggal pada bahasa pemrograman, dapatberupa keyword, operator, tanda bacaberupa keyword, operator, tanda baca

    2. Komentar Untuk memberikan suatu keterangan yang akan

    menjelaskan isi dari program secara singkat. Komentar hanya sebuah tulisan pada program dan

    tidak akan diproses oleh komputer. Bertindak sebagai dokumentasi

  • 3. Identifier (pengenal) Merupakan elemen nama yang dibuat sendiri oleh

    programmer. Digunakan dalam: tipe data buatan, label, variabel,

    konstanta, program, unit, field dari record, prosedur danfungsi.

    Aturan pemberian nama: Karakter pertama harus berupa huruf Karakter berikut dapat huruf/angka/under score Panjang boleh berapa saja, tetapi hanya 63 karakter

    pertama saja yang berarti Huruf kapital/kecil berbeda (untuk C++) Tidak boleh ada spasi

  • 4. Keywords (Reserved Words) Kata yang mempunyai makna khusus sebagai kata

    tercadang, dan sudah dikenal oleh komputer. Tidak boleh dipakai untuk nama label, tipe, variabel,

    konstanta, prosedur & fungsi, field dari record, programkonstanta, prosedur & fungsi, field dari record, program& unit.

    Contoh : CIN, GET, RECORD, RETURN, dll

  • 5. OperatorMerupakan simbol-simbol khusus yang digunakan untuk mengoperasikan suatu nilai data (operand).

    Operator yang digunakan dalam pemrograman:a. Arithmetic Operator b. Assignment Operatorb. Assignment Operatorc. Bitwise Operatord. Logical Operatore. Relational Operatorf. Pointer Operator

  • B. Tipe data

    Pada suatu bahasa pemrograman umumnya telahmenyediakan tipe-tipe data yang sederhana (simple)maupun yang Kompleks

  • 1. Tipe Data Sederhana

    a. Tipe integerTipe data yang nilainya tidak memiliki titik desimal.

    Type Batas nilai FormatType Batas nilai Format

    Int -32768 32767 Signed 16 bit

    Long -2147483648 2147483647 Signed 32 bit

  • b. Tipe Real/FloatTipe data yang nilainya merupakan pecahan (memiliki titik desimal).

    Type Batas nilai FormatType Batas nilai Format

    Float 3.4E-38 3.4E+38 unsigned 32 bit

    Double 1.7E-308 1.7E+308 unsigned 64 bitLong double 3.4E-4932 3.4E+4932 unsigned 80 bit

  • c. Boolean/LogicalTipe data yang hanya mempunyai 2 bentuk keluaran, yaitunilai True dan False yang dinyatakan dengan 0 dan 1,sehingga satuan data yang terpakai cukup satu bit saja.Operator yang digunakan adalah: And, Or, Not, Xor

  • Input NOT (!) AND (&&) OR (||)A B C !A !B !C A&&B&&C A||B||C0 0 0 1 1 1 0 00 0 1 1 1 0 0 10 1 0 1 0 1 0 10 1 1 1 0 0 0 10 1 1 1 0 0 0 11 0 0 0 1 1 0 11 0 1 0 1 0 0 11 1 0 0 0 1 0 11 1 1 0 0 0 1 1

  • d. CharacterTipe data yang terdiri dari aksara (simbol) yang meliputi digit numerik, character alfabetik dan spesial character.Untuk menuliskan tipe char, karakter perlu ditulis di dalam tanda petik tunggal ( ) Contoh :Contoh :A karakter berupa huruf A1 karakter berupa angka 1* karakter simbol *

  • II. Tipe Data MajemukStringmerupakan sekumpulan dari beberapa karakter, yangbanyaknya berubah-ubah sesuai kebutuhan, besarnya 1s/d 255 karakter.Pemberian nilai String diapit dengan tanda petik ganda ()Bentuk umum:Bentuk umum:

    tipe_data pengenal [panjang] ; pengenal = nama variabelpanjang = bilangan bulat yang menunjukkan jumlah

    karakterContoh: char nama[15] ;

  • Rumus yang terdiri dari operasi-operasi atau kombinasioperasi.

    Aturan pendahulu penulisan rumus: Operator pendahulu yang lebih tinggi dikerjakan lebih

    dulu

    C. Expression

    dulu Perhitungan dari kiri ke kanan Ekspresi dalam tanda kurung, dikerjakan lebih dulu

    Expression yang paling sederhana yaitu nama variable.Expression yang lebih kompleks akan melibatkan operator-operator, maupun pemanggilan fungsi atau prosedur.

  • D. Statement1. Simple Statement

    a. Assignment Statementb. Statement untuk pemanggilan fungsi/prosedurc. Jump Statement

    2. Compound Statement (kumpulan statement)adalah sekumpulan statement yang terdiri dariadalah sekumpulan statement yang terdiri daristatemen-statemen lain, termasuk juga iteration danselection statement.

    3. Iteration StatementDigunakan untuk melakukan perulangan sekumpulanstatement (compound statement).

  • E. Function dan Procedure

    Procedure dan Function disebut juga subroutine,merupakan blok statement yang dapat dipanggil darilokasi yang berbeda di dalam program.

    Yang membedakan antara function dan procedure Yang membedakan antara function dan procedureyaitu:suatu function jika dijalankan/dipanggil akanmengembalikan suatu nilai.

  • Ketika procedure atau function dipanggil, dapat melewatkansuatu nilai ke dalam function atau procedure tersebut. Nilaiyang dilewatkan disebut juga argumen atau parameter.Ada dua cara melewatkan nilai, yaitu:1. Passing by Value (Dilewatkan secara nilai)

    Jika di dalam pemanggilan suatu prosedur/fungsi,parameter tidak dimaksudkan untuk diubah olehprosedur/fungsi (nilai paramater fungsi program),sekalipun perubahan telah dilakukan di dalamsekalipun perubahan telah dilakukan di dalamprosedur/fungsi

    Berguna untuk melindungi parameter aktual dari efekperubahan harga yang tidak diinginkan.

    2. Passing by Reference (Dilewatkan secara alamat) Nilai paramater dalam fungsi = program Parameter harus dilewatkan dengan cara

    menambahkan tanda & di dalam deklarasiprosedur/fungsi

  • #include

    Using namespace std;

    void Kali2 (int X) {

    X = X * 2;

    cout

  • #include

    Using namespace std;

    void Kali2 (int& X) {

    X = X * 2;

    cout

  • Pertemuan 5ANALISA STRUKTUR

    PROGRAM

  • I. Flowchart

    Adalah metode untuk menggambarkan tahap-tahappemecahan masalah dengan menggambarkan simbol-simbol tertentu yang mudah dimengerti, mudahdigunakan dan standar.

  • Pedoman pembuatan flowchart:1. Sebaiknya digambarkan dari atas ke bawah2. Kegiatan-kegiatan harus ditunjukkan dengan jelas3. Harus ditunjukkan dari mana kegiatan dimulai dan

    dimana akan berakhir4. Masing-masing kegiatan sebaiknya menggunakan 1 kata4. Masing-masing kegiatan sebaiknya menggunakan 1 kata

    yang mewakili suatu pekerjaan5. Masing-masing kegiatan harus di dalam urutan yang

    semestinya6. Kegiatan yang terpotong ditunjukkan dengan simbol

    penghubung7. Gunakan simbol-simbol standar

  • Dalam penulisan flowchart dikenal 2 (dua) metode yaitu :A. Sistem Flowchart Diagram alir yang menggambarkan suatu sistem

    peralatan komputer yang digunakan dalam prosespengolahan data serta hubungan antar peralatantersebut.

    Memperlihatkan prosedur pemrosesan data dan cara- Memperlihatkan prosedur pemrosesan data dan cara-cara menata prosedur dalam urutan dan tidakmemperlihatkan urutan langkah untuk memecahkanmasalah

    Hanya untuk menggambarkan prosedur dalam sistemyang dibentuk

    Selain itu juga menggambarkan file yang dipakaisebagai input dan output

  • Simbol-Simbol Sistem Flowchart

    Pita Magnetik Keyboard Printer Paper Input/Output

    Magnetic Disk Process Off Line Storage Proses Sortir

    Manual Operation

    On Line Storage/ VDU

    Stored Data Flow

  • Contoh :

    Keyboard

    Process Stored Magnetik (CPU)Stored Data

    VDU

    Magnetik Disk

  • Contoh: Flowchart Sistem Ujian Masuk Kerja

  • Contoh: Flowchart Sistem Inventory

  • B. Program Flowchart Adalah diagram alir yang menggambarkan urutan logika

    dari suatu prosedur pemecahan masalah. Program Flowchart dihasilkan dari Sistem Flowchart. Flowchart Program merupakan keterangan yang lebih

    rinci tentang bagaimana setiap langkah program atauprosedur sesungguhnya akan dilaksanakan.prosedur sesungguhnya akan dilaksanakan.

    Programmer menggunakan Program Flowchart untukmenggambarkan urutan instruksi dari program komputer.

    Analis Sistem menggunakan Program Flowchart untukmenggambarkan urutan tugas-tugas pekerjaan dalamsuatu prosedur atau operasi.

  • Proses Input/Output Pengujian

    Di bawah ini adalah gambar simbol program flowchart:

    Konektor pada satu halaman

    Konektor pada halaman lain

    Subroutine/pemanggilan sub program dr main prog

    Awal/akhir program Arus/arah Pemberian nilai awal

  • Start

    Luas = 100

    Masukan pjg

    Contoh 1: Flowchart Program

    Flowchart untuk menghitung Lebar Persegi panjang jika diketahui adalah luasnya.

    Cetak Lebar

    Lebar = Luas/pjg

    End

    YCoba lagi?

    T

  • Start

    Bayar = HrgBrg*JmlBrg

    T

    Masukkan KdBrg,HrgBrg, JmlBrg

    Contoh 2: Flowchart ProgramFlowchart untuk menghitung Total pembayaran, dengan ketentuan jika

    Bayar >=100000

    Cetak TotalByr

    Disc = 0.1*Bayar

    End

    Y

    TDisc = 0

    TotalByr = Bayar - Disc

    ketentuan jika pembayaran 100000 ke atas mendapat diskon 10%, selain itu tidak mendapat diskon

  • Contoh 3: Flowchart Program Login

  • Pseudocode berasal dari kata pseudo yang berarti miripatau menyerupai dan code yang berarti program.Pseudocode adalah teknik tulisan untuk menggambarkanalgoritma menggunakan kode yang mirip dengan kodepemrograman yang sebenarnya.Aturan Penulisan:

    II. Pseudocode

    Aturan Penulisan:1. Satu statement satu baris2. Pisahkan modul dengan beberapa baris untuk

    mempermudah pembacaan3. Keywords/Reserved words ditulis dengan huruf

    KAPITAL/bold/garis bawah dan yang lain huruf kecil4. Berikan tabulasi yang berbeda untuk penulisan dengan

    loop/kondisi

  • Dengan Huruf Kapital:

    FOR x = 1 TO 10 DOBEGIN

    CETAK(x)END FOR

    Dengan Cetak Tebal:

    while x < 10 dobegin

    cetak(x)x = x + 1

    endwhile

    Contoh beberapa penulisan pseudocode

    endwhile

    a = 1Cetak(a)

    Dengan Garis Bawah:

    while x < 10 dobegin

    cetak(x)x = x + 1

    endwhile

  • Contoh Flowchart Program pada Menu Barang:

  • Studi Kasus:

    Setiap dosen memberikan tugas pembuatan flowchart secaraberkelompok dengan studi kasus sebagai berikut:

    1. Buat Flowchart untuk membuat deret bilangan ganjil yangdimulai dari 1 sampai 100 kemudian hitung jumlah daridimulai dari 1 sampai 100 kemudian hitung jumlah darisemua deret yang dihasilkan.

    2. Buat Flowchart untuk menentukan 10 buah deret2 4 8 16 32 dstkemudian hitung jumlah dari deret tsb.

  • ANALISA STRUKTUR ANALISA STRUKTUR PROGRAM LANJUTAN

  • I. Struktur ProgramA. Struktur Berurutan (Sequence Structure) Struktur ini terdiri dari sebuah instruksi atau blok dari

    instruksi yang tidak mempunyai perulangan ataukeputusan di dalamnya.

    Struktur ini disebut juga struktur urut sederhana (simplesequence structure).sequence structure).

    Setiap baris program akan dikerjakansecara urut dari atas ke bawah makahanya ada satu cara memulainya yaitudari bagian atas, dan cara untukkeluarnya yaitu dari bagian bawah.

  • Contoh Struktur Berurutan

  • Struktur seleksi untuk melakukan proses pengujianpada kondisi dalam mengambil suatu keputusan.

    Kondisi adalah suatu syarat yang mempunyai nilaiTrue dan False.

    B. Struktur Seleksi (Selection Structure)

    True dan False. Operator yang digunakan biasanya operator relational.

  • Ada beberapa macam struktur instruksi IF atau StrukturSeleksi yaitu:

    Struktur seleksi dengan IF1. Statement IF berguna untuk memilih satu dari dua

    kemungkinan yang ada. Terjadi apabila dihadapkankemungkinan yang ada. Terjadi apabila dihadapkanpada suatu Kondisi dengan dua pilihan BENAR/SALAH.

    Bentuk Umum:if (kondisi)

    pernyataan ;

  • 2. Statement IF ...... ELSE

    Bentuk umum :if (kondisi)

    pernyataan 1;pernyataan 1;else

    pernyataan 2;end-if

  • 3. Statement Nested IF Pernyataan IF yang berada dalam pernyataan IF yang lain.Bentuk umum :if (kondisi 1)

    pernyataan 1; else

    if (kondisi 2)pernyataan 2; pernyataan 2;

    else if (kondisi 3)

    pernyataan 3; else

    pernyataan 4;end-if

    end-ifend-if

  • Selain menggunakan instruksi IF, struktur seleksi jugadapat menggunakan instruksi Switch Case (SeleksiGanda).Untuk masalah tertentu instruksi Switch Case lebihmemberi kejelasan dibandingkan dengan instruksi IF.Bentuk Umum :switch (ekspresi integer atau karakter){ T{

    case konstanta1:perintah;break;

    case konstanta2:perintah;break;

    default :perintah;break;

    }

    T

    T

    TF

    F

    F

  • C. Struktur Perulangan (Looping Structure) Struktur perulangan akan melakukan proses

    berulang-ulang selama Kondisi bernilai True atauselama kondisi perulangan terpenuhi.

    Dan Kondisi akan berhenti jika hanya keadaan Dan Kondisi akan berhenti jika hanya keadaanberubah menjadi false atau kondisi perulangan tidakterpenuhi.

  • 1. Statement While2. Statement Do.....While3. Statement FOR

    a. Statement FOR Positif

    Struktur Perulangan terdiri dari :

    a. Statement FOR Positifb. Statement FOR Negatifc. Statement FOR bersarang (Nested For)

  • 1. Statement While

    Perulangan akan terus dilaksanakan selama syarat tersebut terpenuhi.

    Bentuk Umum : while (kondisi) Fpernyataan; T

  • 2. Statement Do.....WhilePerulangan akan dilaksanakan terlebih dahulu danpengujian perulangan dilakukan belakangan.Paling tidak 1 proses sudah dilakukan.

    Bentuk Umum: dodo

    pernyataan;while (kondisi);

    F

    T

  • 3. Statement ForBentuk Umum :For (inisialisasi; syarat pengulangan; pengubah nilai)Inisialisasi : pemberian nilai awalpengubah nilai : mengatur naik/turun

    Contoh :

    N=1Jml=0

    FContoh :Untuk perulangan positiffor (a =1; a=1; --a)

    N

  • Nested ForPerulangan for di dalam perulangan for lainnya.

    Bentuk Umum :For (inisialisasi; syarat pengulangan; pengubah nilai){{

    For (inisialisasi; syarat pengulangan; pengubah nilai){

    perintah ;}

    }

  • II. Compiller Dan Interpreter

    Source program yang telah ditulis dengan bahasapemrograman tingkat tinggi, tidak dimengerti olehkomputer karena komputer hanya mengerti bahasamesin. Oleh sebab itu source program harusditerjemahkan ke dalam bahasa mesin terlebih dahuluditerjemahkan ke dalam bahasa mesin terlebih dahulusebelum dijalankan

    PenterjemahSource Program Machine

  • Terdapat 2 (dua) jenis penterjemah yaitu:1. Compiller

    Compiller merupakan penterjemah bahasapemrograman yang menterjemahkan instruksi-instruksidalam satu kesatuan modul ke dalam bahasa mesinsehingga dihasilkan suatu file executable.

    2. Interpreter2. InterpreterInterpreter merupakan penterjemah bahasapemrograman yang menterjemahkan instruksi demiinstruksi pada saat eksekusi program.Interpreter tidak mampu mendeteksi kesalahan logika &hanya mampu mendeteksi kesalahan sintax dansemantik.

  • Perbedaan kedua penerjemah di atas adalah :

    Interpreter Compiller

    1. Menterjemahkan instruksi per instruksi

    1. Menterjemahkan secara keseluruhan sekaligus.instruksi per instruksi keseluruhan sekaligus.

    2. Source program tidak harus ditulis dengan lengkap

    2. Source program harus ditulis dengan lengkap.

  • 3. Bila terjadi kesalahan interpretasi, dapat langsung dibetulkan secara interaktif.

    3. Bila terjadi kesalahan kompilasi, source program harus diperbaiki dan proses kompilasi diulang kembali.

    4. Tidak menghasilkan objek program

    4. Dihasilkan objek program.

    5. Tidak menghasilkan executable program karena langsung dijalankan pada saat program diinterpretasikan

    5. Dihasilkan executable program, sehingga dapat dijalankan di keadaan prompt sistem

  • 6. Proses interpretasi terasa cepat, karena tiap-tiap instruksi langsung dikerjakan dan dapat dilihat hasilnya

    6. Proses kompilasi terasa lama, karena sekaligus menterjemahkan seluruh instruksi program.

    7. Source program terus 7. Source program sudah 7. Source program terus dipergunakan karena tidak dihasilkan executable program.

    7. Source program sudah tidak dipergunakan lagi untuk menjalankan program.

  • 8. Proses pengerjaan program lebih lambat, karena setiap instruksi yang dikerjakan harus diinterpretasikan ulang kembali.

    8. Proses pengerjaan program lebih cepat, karena executable program sudah dalam bahasa mesin

    kembali.9. Keamanan dari

    program kurang terjamin, karena yang selalu digunakan source program.

    9. Keamanan dari program lebih terjamin, karena yang dipergunakanexecutable program.

  • III. Debugging Dan Bentuk Kesalahan programDebugging adalah penghilangan semua kesalahan yangditemukan pada saat pengujian. Kesalahan bisa terjadikarena kecerobohan desain logika dan pengkodean.Adapun macam-macam bentuk kesalahan program yaitu:a. Syntax Errora. Syntax Error

    Bentuk kesalahan program yang disebabkan karenakesalahan dalam hal penulisan instruksi program.Contoh:

    - incude (dalam bahasa C++)- retur (dalam bahasa C++)- dan lain-lain

  • b. Run Time ErrorBentuk kesalahan program yang disebabkan karenaadanya proses arithmathic yang ILLEGAL / tidak bisadiproses.Contoh:

    - B = ( 3 / 0 )- Akar Minus- Akar Minus- dan lain-lain

  • c. Logic ErrorBentuk kesalahan program yang disebabkan karenaHUMAN-ERROR-LOGIC (kesalahan logika programyang dibuat oleh programmer).Contoh:

    - Hasil / output program yang tidak sesuai- Hasil / output program yang tidak sesuai- Kesalahan program yang tidak dapat dideteksi- tipe data yang tidak sesuai dengan operasi

    aritmatika- dan lain-lain

  • Pertemuan 10

    Tipe Tabel Database

  • Tipe dari Tabel

    1. Tabel MasterDi dalam aplikasi, file ini merupakan file yang penting.File ini tetap terus ada selama hidup dari sistem informasi.

    Database dibentuk dari kumpulan file. File di dalampemrosesan aplikasi dapat dikategorikan ke dalambeberapa tipe, sebagai berikut:

    File ini tetap terus ada selama hidup dari sistem informasi.A. Tabel Referensi

    Data yang tetap dimana pengolahan terhadapdata tersebut memerlukan waktu yang lama.

    Contoh: Tabel Mahasiswa, Tabel Karyawan

  • B. Tabel Dinamik

    Tabel Master yang nilai dari record-recordnya seringberubah atau sering dimutakhirkan (updated) sebagaiakibat dari suatu transaksi.

    Contoh: Tabel MataKuliah. Isi dari Tabel mata kuliahdapat diperbaiki (di-edit) jika kondisi yang ada dimasa depan meng-haruskan adanya pergantian matamasa depan meng-haruskan adanya pergantian matakuliah dengan nama mata kuliah yang baru dan sksyang juga baru, maka perbaikan data untuk isi Tabelmata kuliah mutlak dilakukan. Hal ini yang disebutdengan penyetaraan mata kuliah.

  • 2. Tabel Transaksi (Input Table) Berisi data masukan yang berupa data transaksi di

    mana data-data tersebut akan diolah komputer. Digunakan untuk memperbarui/meng-update tabel

    master dengan informasi yang baru Tabel transaksi akan senantiasa mengalami perubahan

    sesuai dengan periode waktu tertentusesuai dengan periode waktu tertentu Biasanya tabel transaksi memuat rekaman tanggal dari

    transaksinya yang menunjukkan kapan transaksitersebut terjadi

    Contoh: Tabel Ujian, Tabel Nilai

  • 3. Tabel Laporan (Output Table)

    Berisi informasi yang akan ditampilkan dalam sebuahlaporan.

    Isi dari laporan yang dihasilkan biasanya berasal daripenggabungan Tabel master dan Tabel transaksi,tetapi tidak semua isi dari tabel-tabel tersebuttetapi tidak semua isi dari tabel-tabel tersebutditampilkan, melainkan hanya informasi tertentu sajayang ditampilkan sesuai dengan laporan yangdiinginkan

    Isi dari Tabel laporan ini dapat dicetak di kertas,hanya ditampilkan saja di layar monitor, atau sesuaikebutuhan.

  • Disebut juga sebagai Tabel Arsip yaitu Tabel yang berisidata di masa lalu yang sudah tidak aktif lagi, dan dipakaisebagai bahan pengecekan & pencocokkan kevalidasiandata di masa mendatang.

    Tabel ini biasanya digunakan untuk periode waktutertentu (lama), sehingga beberapa informasi harusdikumpulkan pada tabel riwayat hidup yang akan jarang

    4. Tabel Sejarah (History Table)

    dikumpulkan pada tabel riwayat hidup yang akan jarangdiproses atau sebagai dokumentasi.

    Contoh: info tentang mahasiswa yang telah lulus(alumni). Record hanya dipindahkan pada tabel historysehingga tinggal berisi tabel mahasiswa yang sedangaktif kuliah atau mahasiswa cuti yang dijadwalkan akanaktif kembali. Data dalam tabel history ini berguna untukmenyusun laporan di kemudian hari atau validasi dataalumni.

  • 5. Tabel Pelindung (Backup Table) Berisi salinan data-data yang masih aktif di database

    pada suatu waktu tertentu. Tabel ini berisikan salinan (Copy) dari suatu tabel

    dapat berupa tabel master maupun tabel transaksi. Adapun isi (informasi) dari tabel backup ini sama

    persis dengan tabel aslinya. Jika ada yang diperbaikipersis dengan tabel aslinya. Jika ada yang diperbaikimaka hasil perbaikan data tersebut harus dibuatkankembali backup dari tabel yang diperbaiki.

    Frekuensi penggunaannya tergantung pada frekuensiperubahan isi tabel dan banyaknya rekaman transaksiyang digunakan untuk pembaharuan tabel.

    Digunakan sebagai pelindung atau cadangan apabilatabel master mengalami kerusakan atau hilang

  • 6. Tabel Kerja (Temporary Table/Work Table) Tabel ini dibuat oleh suatu proses program secara

    sementara karena memori komputer tidak mecukupiatau untuk menghemat pemakaian memori selamaproses dan akan dihapus bila proses telah selesai

    Berisi data-data hasil pemrosesan yang bersifatsementara (tidak permanen) dalam arti hanya numpangsementara (tidak permanen) dalam arti hanya numpanglewat saja.

    Datanya berupa record yang disusun sedemikian rupasehingga dapat dipakai oleh program lain sebagaiinput.

    Biasanya file ini dibuat pada waktu proses sortir

  • 7. Tabel Pustaka (Library Table) Berisi program-program aplikasi, utility program, dan

    program-program bantu. Berfungsi untuk mempercepat dan optimalisasi dari

    pengolahan data. Contoh: Tabel Gaji yang mempunyai keterhubungan

    dengan Tabel pendidikan pegawai (untuk mencaridengan Tabel pendidikan pegawai (untuk mencarijenjang pendidikan dari seorang pegawai). TabelAbsensi (untuk megetahui data kehadiran pegawai)dan Tabel Lembur (untuk mengetahui intensitaskelebihan jam kerja yang dimiliki oleh seorangpegawai).

  • Dosen diharapkan memberikan contoh tabel dari tipe-tipe tabel yang sudah dijelaskan kepada

    mahasiswa

  • Pertemuan 10

    ORGANISASI dan AKSES FILE

  • A. ORGANISASI FILE

    Organisasi File merupakan teknik yang digunakan untukmenggambarkan dan menyimpan record pada file.

    Organisasi file harus mempertimbangkan beberapa halOrganisasi file harus mempertimbangkan beberapa halpenting, yaitu:1. Kemudahan peremajaan (update/insert/delete)2. Kecepatan akses dalam pemgambilan data3. Kemudahan reorganisasi data4. Efisiensi penggunaan media penyimpanan (storage)

  • 2. Model Operasi File, ada 4 cara:

    Cara memilih organisasi file tidak terlepas dari 2 aspek utama, yaitu:1. Model penggunaannya

    a. Batch b. Interactive

    2. Model Operasi File, ada 4 cara:a. Creation b. Updatec. Retrievald. Maintenance

    Restructuring Reorganization

  • Secara umum dapat disimpulkan: Untuk master file (tabel master) dapat melakukan

    created, update, retrieval from dan maintenance. Untuk work file (Tabel kerja) dapat melakukan created,

    update dan retrieval from tapi tidak dapat dilakukanmaintenance.

    Untuk report file (tabel output) umumnya tidak di Untuk report file (tabel output) umumnya tidak diupdate, retrieve from atau maintenanced.

    Untuk transaction file (tabel input) umumnya hanyadapat di created dan digunakan untuk sekali proses.

  • A.1. SEQUENTIAL FILE Merupakan suatu cara/metode penyimpanan dan pembacaandata yang dilakukan secara berurutan.

    Metode ini mempunyai ciri-ciri sebagai berikut:a. Data akan disimpan sesuai dengan urutan masuknyab. Pembacaan data dilakukan secara berurutan, dimulai dari

    data paling awal dan dilanjutkan dengan data berikutnyasehingga data yang dimaksud bisa diketemukan

    c. Metode ini baik untuk digunakan apabila pengolahanterhadap basis data bersifat periodik dan menyeluruh, danseringkali digunakan pada tipe pengolahan data yangberorientasi batch

  • Gambar Sequential File

  • Keuntungan Sequential File:a. Merupakan organisasi file yang sederhana.b. Jarak setiap aplikasi yang tersimpan sangat jelas.c. Sangat efisien pada saat sebagian besar record harus

    diproses. Contoh: Payroll.d. Metode penyimpanan di dalam memory sangat

    sederhana, sehingga efisien untuk menyimpan recordyang besar.

    e. Dapat disimpan pada perangkat yang murah.Contoh: magnetic tape.

  • Kerugian Sequential File:a. Data yang tersimpan harus sudah urut (sorted).b. Seandainya diperlukan perubahan data, maka seluruh

    record yang tersimpan di dalam master file, harussemuanya diproses.

    c. Posisi data yang tersimpan sangat sulit untuk di-update,sebab master file hanya bisa berubah saat prosessebab master file hanya bisa berubah saat prosesselesai dilakukan.

    d. Tidak bisa dilkukan pembacaan secara langsung.

  • A.2. RANDOM (DIRECT) FILE Merupakan suatu cara/metode penyimpanan danpembacaan data yang dilakukan secara acak atau langsungtanpa mengakses seluruh record yang ada.

    Metode ini mempunyai ciri-ciri sebagai berikut: Data disimpan dengan menggunakan alamat Dalam hal ini, tempat penyimpanan data sudah diatur

    sedemikian rupa, sehingga setiap data akan tersimpan didalam tempat-tempat yang telah ditentukan sesuaidengan nomor data yang dimilikinya.

    Penyimpanan data menggunakan media penyimpananlangsung, seperti magnetic disk

  • Pemrosesan memerlukan file record, yang ditampilkanmenjadi 2 bagian yaitu field kunci dan record data.

    Akses data dilakukan dengan menggunakan nomorrecord (field kunci).

    Dalam metode ini kunci rekaman ditransformasikan kealamat penyimpanan dalam media fisik secara acak(random). Metode ini akan menimbulkan beberapamasalah, yaitu adanya alamat yang muncul lebih dari satumasalah, yaitu adanya alamat yang muncul lebih dari satukali, dan ada alamat yang tidak pernah muncul samasekali.

    Pemecahan masalah di atas dengan teknik overflowlocation, yaitu dengan menggunakan alamat yang ada disampingnya.

  • Gambar Random File

  • Keuntungan File Random:a. Pengaksesan data dilakukan secara langsung, tidak

    harus urut.b. Kecepatan pemrosesan record sangat cepat dalam hal

    pemanggilan data.c. Sangat sesuai untuk kebutuhan File Transaksi, sebab

    transaksi harus diproses saat kejadian berlangsungtransaksi harus diproses saat kejadian berlangsung(memperbarui secara online).

    d. Beberapa data yang tersimpan di dalam file dapatdiproses dalam waktu bersamaan (pemrosesankonkuren).

  • Kerugian File Random:a. Memerlukan hardware dan software yang lebih

    kompleks apabila dibandingkan dengan sequential file.b. Kapasitas media penyimpanan memory menjadi besar.c. Data yang tersimpan mempunyai potensi lebih cepat

    rusak.d. Memerlukan adanya cadangan (back-up) data. Sebabd. Memerlukan adanya cadangan (back-up) data. Sebab

    transaksi yang diperbaiki setiap saat bisamenghilangkan jejak data asal (masalah keamanandata).

  • Organisasi Index Sequential adalah berkas/file yangdisusun sedemikian rupa sehingga dapat diakses secarasequential maupun secara direct (langsung) ataukombinasi keduanya, direct dan sequential.

    Pada saat perekaman data pertama kali file dibentuk(create file) dengan cara sequential.

    A.3. INDEX SEQUENTIAL FILE

    (create file) dengan cara sequential.Untuk pembacaan data dan penulisan data setelah filedibentuk, dapat dilakukan secara sequential maupunrandom.

  • Metode ini mempunyai ciri-ciri sebagai berikut :a. Gabungan antara metode sequential dan random.b. Record disimpan secara berurutan dengan

    menggunakan kunci (indeks urutan).c. Penyimpanan data record menggunakan indeks yang

    isinya berupa bagian dari data yang sudah tersortir.d. Perlu penyimpanan tambahan, yaitu untuk file indeks

    yang lebih menekankan pada karakteristik fisik dariyang lebih menekankan pada karakteristik fisik daripenyimpanan.

    e. Index ini diakhiri dengan adanya suatu pointer yangbisa menunjukkan secara jelas posisi data yangselengkapnya.

    g. Index yang ada juga merupakan record-key (kuncirecord), sehingga jika record key ini dipanggil, makaseluruh data juga akan ikut terpanggil.

  • LEO

    Silinder 1:Tr 0 : ADI, tr1, ALI, tr 2, ANI, tr 3Tr 1 : ADI AFI AJITr 2 : ALI AMI AMRYTr 3 : ANI ANDI ANGGI

    Silinder 2:Tr 0 : BOY, tr1, DONI, tr 2, ENI, tr 3

    ANGGI FERI

    PRIME DATA FILEINDEX

    LEO

    UUT Tr 0 : BOY, tr1, DONI, tr 2, ENI, tr 3Tr 1 : BOY CICI CERI..

    .

    Silinder 6:Tr 0 : TATA, tr1, TEDI, tr 2, UMI, tr 3.

    .

    Tr 3 : UMI USI UUT

    FERI LEO MAY PARTO UUT

  • Keuntungan File Index Sequential:a. Pemanggilan data lebih cepat dibandingkan dengan

    Sequential File.b. Sangat cocok digunakan untuk menyimpan data secara

    batch ataupun individual data.

    Kerugian File Index Sequential:Kerugian File Index Sequential:a. Akses data tidak dapat dilakukan secara langsung.b. Memerlukan ruangan tambahan di dalam memory

    untuk menyimpan index data.c. Memerlukan hardware dan software yang lebih

    kompleks.

  • Organisasi File yang telah dibahas berbeda dalam carapengaksesannya, yaitu:

    1. Sequential Access

    B. AKSES FILE

    Suatu pengaksesan record yang didahului pengaksesanrecord-record di depannya atau sebelumnya.

    Contoh peralatan yang termasuk jenis ini adalahmagnetic tape yang juga dikenal sebagai Sequential Access Storage Device (SASD).

  • Ciri-ciri SASD:a. Proses pembacaan rekaman (access) harus berurutan.b. Tidak ada pengalamatan untuk data yang disimpan.c. Data disimpan dalam blok-blok secara sequential

    (berurutan).d. Proses tulis (write) hanya bisa dilakukan sekali saja.e. Kecepatan akses datanya, sangat tergantung pada:

    Kerapatan pitaKecepatan pita Kecepatan pita

    Lebar celah/gap antar blok (Inter Record Gap)

  • 2. Direct Access

    Suatu pengaksesan record secara langsung, tanpamengakses seluruh record yang ada.

    Contoh peralatan yang termasuk jenis ini adalah adalahcakram magnetic (magnetic disk), dan dikenal sebagaicakram magnetic (magnetic disk), dan dikenal sebagaiDirect Access Storage Device (DASD).

  • Ciri-ciri DASD:a. Pembacaan rekaman tidak harus urut.b. Mempunyai alamat untuk penyimpanan data.c. Data dapat disimpan dalam karakter atau blok.d. Proses tulis (write) dapat dilakukan beberapa kali.

  • Aplikasi Pemrograman Pertemuan 11

    Aplikasi Pemrograman Bisnis

  • Berikut ini akan dijelaskan beberapa teknik perancangan program di dalam sebuah pemrograman yang terstruktur untuk mendukung proses pembangunan/pengembangan sistem.

    I. TEKNIK PERANCANGAN PROGRAMBERORIENTASI BISNIS

    sistem. Teknik perancangan file/database dalam bentuk

    spesifikasi file Teknik perancangan program dalam bentuk spesifikasi

    program

  • Adapun mengenai langkah-langkah di dalam perancanganfile tersebut adalah sebagai berikut:1. Menentukan banyaknya jumlah kebutuhan file yang

    nanti akan digunakan di dalam program2. Menentukan Parameter dari file yang akan dibuat

    1. Teknik Perancangan File atau Database

    Contoh:Program Penggajian adalah sebuah aplikasi yangmelakukan proses penghitungan gaji pegawai, dengandasar input absen dan proses yang dilakukan secarabatch atau tunda (satu kali dalam sebulan).

  • Sekilas Analisa Program Penggajian

    Input: Data absen harian

    Proses: Penghitungan Gaji

    Parameter perhitungan Tunjangan pegawai (dari status pegawai) Gaji Pokok (dari golongan pegawai) Lembur (dari kehadiran pegawai) Potongan (jika pegawai mempunyai potongan

    yang dibebankan pada gaji)

    Output: Laporan Gaji Bulanan dan Slip Gaji untuk pegawai

  • No Elemen Data Akronim Tipe Panjang Ket1 No Induk Pegawai NIP Text 6 PK

    2 Nama Pegawai NaPeg Text 25

    Contoh Tabel Pegawai

    2 Nama Pegawai NaPeg Text 25

    3 Alamat Pegawai AlmPeg Text 50

    4 dst. .. . ..

    Jika dijumlahkan panjang record pegawai 180misal

  • Parameter File meliputi hal-hal sebagai berikut:a. NAMA FILE

    Nama yang dibuat untuk menunjukkan nama file yangdigunakan. Dituliskan di dalam source program.Contoh: File_Pegawai, File_Lembur, dll.

    b. AKRONIM FILENama yang dibuat untuk menunjukkan file disimpanNama yang dibuat untuk menunjukkan file disimpandalam tabel/database, dituliskan dengan extension-nya.Contoh: Pegawai.mdb, Lembur.dbf, Absensi.myd

    c. KODE FILENama yang dibuat pada saat file digambarkan dalambentuk diagram (Normalisasi)Contoh: Tabel Pegawai, Tabel Lembur, Tabel Absen

  • d. TYPE FILETipe dari tabel yang digunakan dalam program.Contoh: File Master, File Transaksi

    e. Panjang Record (RECORD-SIZE)Jumlah karakter yang digunakan dalam satu record.Contoh: 180 Characters

    f. ORGANISASI FILEOrganisasi yang digunakan pada saat menyimpan datake dalam tabel.Contoh: Index Sequential

    g. ACCESS FILECara mengakses data yang disimpan pada tabel.Contoh: Random

  • h. MEDIA FILE Media yang digunakan untuk menyimpan file (tabel)Contoh : Harddisk

    i. FIELD KEYKunci field yang dipakai dalam program pada saat program mengakses databasemengakses databaseContoh : Nomor Induk Pegawai (NIP)

    j. SOFTWARE yang digunakan untuk membuat tabel.Contoh : Microsoft Access 2007

  • Adapun mengenai langkah-langkah di dalam perancangan program adalah sebagai berikut:1. Menentukan banyaknya jumlah kebutuhan program yang

    nanti akan dibuat.2. Menentukan Parameter dari Program yang akan dibuat.

    2. Teknik Perancangan Program

    Parameter Program meliputi hal-hal sebagai berikut:a. NAMA PROGRAM

    Nama yang dibuat untuk menunjukkan identitas program Contoh: Program HitungGaji

    b. AKRONIM PROGRAMNama yang dibuat untuk menyimpan source programContoh: HitGaji.vbp

  • c. KODE PROGRAMNama yang dibuat pada saat file digambarkan dalam bentuk diagram (HIPO)Contoh: Gj01

    d. FUNGSI PROGRAMMenjelaskan fungsi atau kegunaan dari program yang Menjelaskan fungsi atau kegunaan dari program yang dibuatContoh: Untuk program Gaji, maka fungsi program

    dituliskan: Program untuk perhitungan gaji karyawan.

  • e. BAHASA PEMROGRAMANMenentukan bahasa pemrograman yang digunakan pada saat pembuatan souce program, biasanya berhubungan dengan point (b) untuk menyatakan extension file.Contoh: Visual Basic 6.0

    f. PROGRAM FLOWCHARTf. PROGRAM FLOWCHARTMenggambarkan logika atau proses program dalam bentuk flowchart.

    g. PROSES PROGRAMMenjelaskan secara rinci mengenai isi dan proses program, termasuk penjelasan dari command button apabila dijalankan.

  • Contoh Program Bisnis pada

    Sistem Perpustakaan

    Dosen menjelaskan tentang pembahasan program bisnis, dan untuk selanjutnya mengembangkan

    sendiri dari contoh yang diberikan.

  • Tabel pada Sistem Perpustakaan terbentuk, yaitu:1. Tabel Anggota2. Tabel Buku3. Tabel User 4. Status5. Tabel Peminjaman 6. Tabel Pengembalian dan 7. Tabel Detail Peminjaman 7. Tabel Detail Peminjaman

    Catatan: dalam pembahasan ini hanya 2 tabel yang akan dibahas.

  • a. Spesifikasi File/database

    1. Spesifikasi Tabel AnggotaNama File : Tabel AnggotaAkronim File : tbl_anggota.mydFungsi File : untuk menyimpan data anggota

    perpustakaanTipe File : File MasterOrganisasi File : Index SequentialAkses File : RandomMedia File : HarddiskPanjang Record : 160 karakterKunci Field : noangSoftware : MySQL

  • No Elemen Data Akronim Tipe Panjang Ket1 Nomor Anggota noang Text 10 PK2 Nama Anggota nama Text 203 Jenis Kelamin jk Text 14 Alamat alamat Text 50

    Tabel II.1 Tabel Anggota

    4 Alamat alamat Text 505 Pekerjaan pekerjaan Text 156 Telepon telp Text 157 Alamat Email email Text 258 Tanggal Daftar tgldaftar Date 89 Tanggal Berlaku tglberlaku Date 8

    10 Status status Text 9

  • 2. Spesifikasi Tabel BukuNama File : Tabel BukuAkronim File : tbl_buku.mydFungsi File : untuk menyimpan data buku

    perpustakaanTipe File : File MasterOrganisasi File : Index SequentialOrganisasi File : Index SequentialAkses File : RandomMedia File : HarddiskPanjang Record : 161 karakterKunci Field : kdbukuSoftware : MySQL

  • No Elemen Data Akronim Tipe Panjang Ket1 Kode Buku kdbuku Text 7 PK2 Judul Buku judul Text 803 Pengarang pengarang Text 204 Penerbit penerbit Text 25

    Tabel II.2Tabel Buku

    4 Penerbit penerbit Text 255 Tahun Terbit thnterbit Date 46 Kota Terbit kota Text 157 Stok stok Num 28 Tanggal Entri tgl_entri Date 8

  • b. Pengkodean

    X 9 9 9 9 9 9 9 9 9

    Kode yang dibuat dalam pengkodean adalah field-field yang dijadikan sebagai kunci primer (Primary Key/PK):

    1. Nomor Anggota

    X 9 9 9 9 9 9 9 9 9

    Kode Status

    Tanggal daftar (YYMMDD) Nomor Urut Anggota

  • X X X X 9 9 9

    Nomor Urut Buku

    2. Kode Buku

    Kode Pengarang

    Jenis buku

    Nomor Urut Buku

    Huruf awal Judul

  • c. Spesifikasi Program (Diagram HIPO)

    Catatan: Login tidak perlu digambarkan di dalam HIPO

  • d. Spesifikasi Program dalam perancangan program

    Berdasarkan HIPO, spesifikasi program diantaranya:1. Spesifikasi Program Menu Utama2. Spesifikasi Program Data Anggota3. Spesifikasi Program Data Buku4. Spesifikasi Program Data User5. Spesifikasi Program Transaksi Peminjaman6. Spesifikasi Program Transaksi Pengembalian6. Spesifikasi Program Transaksi Pengembalian7. Spesifikasi Program Laporan Data Anggota8. Spesifikasi Program Laporan Data Buku9. Spesifikasi Program Laporan Peminjaman10.Spesifikasi Program Laporan Pengembalian11.Spesifikasi Program Pencetakan Kartu Anggota12.Spesifikasi Program Pencetakan Laporan

    Catatan: hanya no.5 yang dijelaskan dalam pertemuan ini

  • 5. Spesifikasi Program Transaksi PeminjamanNama program : PeminjamanAkronim : Peminjaman.vbpFungsi : Untuk melakukan peminjaman bukuBahasa program : Visual Basic 6.0Bentuk tampilan : Lihat Lampiran C.6Proses Program :a. Klik Tambah untuk meminjam buku dan nomor peminjaman

    muncul otomatis. Isikan data anggota dan data buku yang dipinjam, jika peminjaman melebihi batas jumlah peminjaman maka muncul pesan peminjaman lebih dari 2 buku.

    b. Klik Simpan untuk menyimpan data peminjamanc. Klik Batal untuk pembatalan peminjamand. Klik Cetak untuk mencetak bukti transaksi peminjamane. Klik Tutup untuk keluar dari menu transaksi peminjaman

  • e. Program Flowchart

    Flowchart yang dibuat diantaranya:1. Flowchart Login2. Flowchart Menu Utama3. Flowchart Anggota4. Flowchart Buku5. Flowchart User6. Flowchart Peminjaman7. Flowchart Pengembalian8. Flowchart Laporan Peminjaman9. Flowchart Laporan Pengembalian

    Catatan: hanya no.2 yang dijelaskan dalam pertemuan ini, selebihnya Dosen mengembangkan sendiri bentuk flowchart di atas

  • 2. Flowchart Menu Utama

  • Pertemuan 12

    SDLCSDLC(System Development Life Cycle)

  • I. Konsep SDLC

    SDLC adalah serangkaian aktivitas yang dilaksanakanoleh profesional dan pemakai sistem informasi untukmengembangkan dan mengimplementasikan sisteminformasi.

    Setelah beberapa waktu, jenis dan macam informasi Setelah beberapa waktu, jenis dan macam informasiyang dibutuhkan oleh users berubah. Apabila kebutuhaninformasi berubah, sistem informasi harus memenuhikebutuhan baru. Pengembang sistem akan memodifikasisistem informasi yang terkini, atau membangun sisteminformasi yang keseluruhannya baru

  • Beberapa kegiatan dalam siklus pengembangan sistemmungkin dilakukan secara bersamaan/bertahap,tergantung dari jenis dan kompleksitas sisteminformasinya, panjang dari setiap kegiatan yang berbedaantara satu sistem dengan sistem lainnya.

    Pengembangan SDLC digunakan oleh analis sistemuntuk mengembangkan sistem informasi, dengan syarat,validasi, pelatihan, dan pengguna kepemilikan. Setiapvalidasi, pelatihan, dan pengguna kepemilikan. SetiapSDLC harus menghasilkan sistem berkualitas tinggi yangmemenuhi atau melampaui harapan pelanggan,penyelesaian yang tepat waktu dan perkiraan biaya yangtepat, bekerja secara efektif dan efisien dalaminfrastruktur teknologi saat ini dan biaya perawatan danpengembangan yang murah.

  • Kelebihan SDLC:a. Menyediakan tahapan yang dapat digunakan sebagai

    pedoman mengembangan sistemb. Akan memberikan hasil sistem yang lebih baik karena

    sistem dianalisis dan dirancang secara keseluruhansebelum diimplementasikan

    Kekurangan SDLC:

    II. Kelebihan dan Kekurangan SDLC

    Kekurangan SDLC:a. Hanya menyediakan tahapan-tahapan saja, tetapi tidak

    menyediakan metodologib. Hasil dari SDLC sangat tergantung dari hasil di tahap

    analisisc. Dibutuhkan waktu yang lama untuk mengembangkannyad. Dibutuhkan biaya yang relatif besare. Hasil dari sistem sukar dimodifikasi karena perlu analisis

    kembali

  • III. Tahapan dalam SDLCSecara sederhana SDLC dapat digambarkan:

  • Tahapan SDLC:1. Perencanaan (Planning)

    Perencanaan awal untuk mendefinisikan lingkup,tujuan yang akan dicapai, jadwal dan anggaran awalyang diperlukan untuk memecahkan masalah.

    Dibentuk suatu struktur kerja strategis yang luas danpandangan SI baru yang jelas yang akan memenuhipandangan SI baru yang jelas yang akan memenuhikebutuhan-kebutuhan pemakai informasi.

    Sistem dievaluasi dan dipisahkan berdasarkanprioritasnya, prioritas tertinggi akan dipilih untukpengembangan.

    Sumber daya baru direncanakan, dan danadisediakan untuk mendukung pengembangan sistem

  • 2. Analisis Sistem (Analysis)Kegiatan yang dilakukan:a. Studi Pendahuluanb. Studi Kelayakanc. Mengidentifikasikan permasalahan dan kebutuhan

    pemakaid. Memahami sistem yang adae. Menganalisis hasil penelitian

    Dilakukan proses penilaian, identifikasi dan evaluasikomponen dan hubungan timbal-balik yang terkaitdalam pengembangan sistem, definisi masalah, tujuan,kebutuhan, prioritas dan kendala-kendala sistem,ditambah identifikasi biaya, keuntungan dan estimasijadwal untuk solusi yang berpotensi.

  • 3. Perancangan Sistem (Design) Tujuannya untuk memberikan gambaran secara umum

    tentang kebutuhan informasi kepada pemakai sistemsecara logika

    Tujuan lainnya untuk memberikan gambaran yangjelas dan rancang bangun yang lengkap kepadapemrogram komputer dan ahli-ahli teknik yang lainnya

    Perancangan sistem untuk menerangkan secara luasbagaimana setiap komponen perancangan sistemtentang output, input, proses, kendali, database danbagaimana setiap komponen perancangan sistemtentang output, input, proses, kendali, database danteknologi akan dirancang, data yang akandimasukkan, dihitung atau disimpan, struktur file danmedia penyimpanan. Menjelaskan fitur yangdiinginkan user dan operasional secara detail,termasuk tata letak layar, aturan bisnis, diagramproses, pseudocode dan dokumentasi

    Prosedur-prosedur yang ditulis menjelaskanbagaimana data diproses untuk menghasilkan output.

  • 4. Implementasi (Implementation) Tahap meletakkan sistem supaya siap dioperasikan Kegiatan yang dilakukan pada tahap ini:

    Mempersiapkan rencana implementasi Melakukan kegiatan implementasi, yaitu memilih dan

    melatih personal, memilih dan mempersiapkanlokasi, mengetes sistem, konversi sistemlokasi, mengetes sistem, konversi sistem

    Menindaklanjuti implementasi Biasanya pada tahap ini kegiatan yang dilaksanakan

    pembuatan kode program (coding) dan basisdata,melakukan install dan menguji sistem. Pada tahapanini akan diperoleh program aplikasi dan dokumentasi.

  • 5. Pemeliharaan (Maintenance) Pemeliharaan bertujuan untuk memastikan bahwa

    sistem yang digunakan oleh pihak pengguna benar-benar telah stabil dan terbebas dari error dan bug

    Pemeliharaan dilakukan karena beberapa hal: Sistem mengandung kesalahan Sistem mengalami perubahan karena permintaan

    baru atau karena perubahan lingkungan luarbaru atau karena perubahan lingkungan luar Sistem perlu ditingkatkan

    Pada tahapan ini dilakukan perawatan sepertiperubahan, koreksi, penambahan, pindah ke platformkomputasi yang berbeda dan lain-lain. Ini langkahpaling penting dari semua tahapan yang menentukankeberhasilan implementasi sistem

  • IV. Model SDLCSystem Development Lyfe Cycle (SDLC) adalahkeseluruhan proses dalam membangun sistem melaluibeberapa langkah.Ada beberapa model SDLC:a. Model Waterfallb. Model Prototypingc. Model RADc. Model RADd. Model Incrementale. Model Spiral

  • III.1. Model Waterfall

    Model ini sering disebut dengan Linear SequentialModel atau classic life cycle.

    Model ini melakukan pendekatan secara sistematisdan urut mulai dari level kebutuhan sistem lalu menujuke tahap analysis, desain, coding, testing/verification,dan maintenance.

    Disebut dengan waterfall karena tahap demi tahap Disebut dengan waterfall karena tahap demi tahapyang dilalui harus menunggu selesainya tahapsebelumnya dan berjalan berurutan. Sebagai contohtahap desain harus menunggu selesainya tahapsebelumnya yaitu tahap requirement.

    Model ini biasanya untuk membangun sistem dimanarequirement sudah jelas sepenuhnya dan kurangadaptif terhadap perubahan requirement

  • Gambar Model Waterfall

  • III.2. Model Prototype Metode dalam pengembangan sistem yang

    menggunakan program/sistem contoh untuk segeradapat dievaluasi oleh pemakai dan secara bertahapdapat disesuaikan dengan kebutuhan sistem

    Membuat proses pengembangan SI menjadi lebihcepat dan lebih mudah, terutama pada keadaankebutuhan pemakai sulit untuk diidentifikasi

    Melibatkan pemakai secara intensif, sehinggapendefinisian kebutuhan pemakai menjadi lebih baik,meningkatkan kepuasan pemakai, dan mengurangirisiko tidak terpakainya sistem

    Memperkecil kesalahan disebabkan pada setiap versiprototipe, kesalahan segera terdeteksi oleh pemakai

  • Gambar Model Prototype

  • Merupakan model pengembangan sistem yangmelakukan beberapa penyesuaian terhadap SDLC padabeberapa bagian sehingga lebih cepat untuk sampai ketangan pengguna sistem

    RAD merupakan sebuah model proses perkembangansoftware sekuensial linier yang menekankan siklus

    III.3. Model Rapid Aplication Development (RAD)

    software sekuensial linier yang menekankan siklusperkembangan yang sangat pendek

    Melakukan tes berulang-ulang oleh user terhadapdesain yang diawali dengan prototipe

    Menggunakan kembali komponen perangkat lunak yangada

    Komunikasi yang tidak terlalu formal antar anggota tim Waktu pengembangan singkat

  • Gambar Model RAD

  • III.4. Model Incremental

    Merupakan model pengembangan sistem yangdipecah sehingga model pengembangannya secaraincrement/bertahap.

    Kebutuhan pengguna diprioritaskan dan prioritastertinggi dimasukkan dalam awal increment

    Model ini adalah inti dari siklus pengembangan Model ini adalah inti dari siklus pengembangansistem yang merespon terhadap kelemahan modelWaterfall

    Memberikan implementasi sebagai inisial proseskepada user untuk mendapatkan umpan balik

    Pengembangan dengan terus melakukan eksplorasi Untuk sistem dengan interaksi skala kecil dan

    medium, dan masa penggunaan pendek

  • Gambar Model Incremental

  • III.5. Model Spiral Model spiral adalah proses pengembangan perangkat

    lunak yang menggabungkan kedua unsur desain danprototyping dalam setiap tahap, dalam upaya untukmenggabungkan kelebihan dari konsep top-down danbottom-up

    Model yang mendefinisikan kebutuhan dengan detail Model spiral ini tidak merepresentasikan rangkaian Model spiral ini tidak merepresentasikan rangkaian

    tahapan dengan penelusuran balik (back-tracking), tidakada fase-fase tahapan yang tetap seperti spesifikasi atauperancangan. Setiap untaian pada pada spiralmenunjukkan fase software process

    Sistem dibuat berdasarkan prototipe yang dilakukanberulang-ulang dan memuaskan customer

    Ditujukan untuk proyek-proyek besar, mahal dan rumit

  • Gambar Model Spiral

  • OOP OOP (Object Oriented Programming)

  • I. PengertianOOP (Object Oriented Programming) atau PemrogramanBerorientasi Objek (PBO) adalah suatu cara baru dalamberfikir serta berlogika dalam menghadapi masalah-masalah yang akan dicoba-atasi dengan bantuankomputer.

    Tujuan utama dari pengembangan perangkat lunak atauprogram berorientasi objek, dapat dijelaskan sebagaiberikut:a. Mempersingkat waktu dan menurunkan biaya pengem-

    bangan rekayasa perangkat lunak.b. Menurunkan biaya perawatan perangkat lunak.c. Pemrograman berorientasi objek memberikan landasan

    yang sangat berguna untuk pembuatan prototype sistemsecara cepat.

  • Kelebihan OOP : Menyediakan struktur modular yang jelas untuk program

    sehingga bagus digunakan untuk mendefinisikan tipedata abstrak di mana detil implementasinya tersembunyi.

    Mempermudah dalam memelihara dan memodifikasikode yang sudah ada. Objek yang baru dapat dibuattanpa mengubah kode yang sudah ada.

    Menyediakan framework untuk library kode di manakomponen software yang tersedia dapat dengan mudahkomponen software yang tersedia dapat dengan mudahdiadaptasi dan dimodifikasi oleh programmer. Hal inisangat berguna untuk mengembangkan GUI.

    Resiko kesalahan relative kecil (lebih sedikit mengetik),sintaks juga tidak perlu dihafalkan, karena semuanyasudah disediakan.

    Waktu debugging lebih singkat, karena setiap objek tidakperlu di-debug setiap kali digunakan

  • Pemrograman Terstruktur PBOa. Penekanan pada urutan yang

    harus dikerjakan (algoritma pemecahan masalah)

    a. Pendekatan lebih pada data bukanya pada fungsi/prosedur

    b. Program berukuran besar b. Program besar dibagi ke

    Perbandingan antara Pemrograman Berorientasi Objek dengan Pemrograman Terstruktur

    b. Program berukuran besar dipecah-pecah menjadi program-program yang lebih kecil (Modular)

    b. Program besar dibagi ke dalam Objek-objek. Struktur data dirancang dan menjadi karakteristik dari objek-objek

    c. Kebanyakan fungsi/prosedur berbagi data global

    c. Fungsi-fungsi yang mengoperasikan data tergabung dalam suatu objek yang sama

  • Pemrograman Terstruktur PBOd. Data bergerak secara bebas

    dalam sistem, dari satu fungsi ke fungsi yang lain saling terkait

    d. Data tersembunyi dan terlindung dari fungsi/prosedur yang ada di luar

    e. Fungsi-fungsi mentransformasi data dari satu

    e. Objek-objek dapat saling berkomunikasi dengan saling mentransformasi data dari satu

    bentuk ke bentuk yang lainberkomunikasi dengan saling mengirim message satu sama lain

    f. Pendekatan adalah pendekatan top down (dari atas ke bawah)

    f. Pendekatanya adalah bottom up (dari bawah ke atas)

  • 1. Object Objek didefinisikan sebagai konsep, abstraksi atau

    benda dengan batasan dan arti untuk suatu masalah. Dapat digambarkan sebagai benda secara fisik atau

    konseptual (orang, hardware, software, pintu, kuda dll)yang mempunyai atribut dan metode.

    Semua objek mempunyai identitas yang berbeda dengan

    II. Istilah-Istilah dalam OOP

    Semua objek mempunyai identitas yang berbeda denganlainnya.

    2. Class Kumpulan dari objek-objek yang sejenis.

  • 3. Diagram Objek Untuk melengkapi notasi grafik pada pemodelan objek,

    kelas dan relasinya dengan yang lain. Bermanfaat untuk pemodelan abstrak dan membuat

    perancangan program. Digunakan dalam pengembangan sistem mulai dari fase

    analisa sampai implementasi.Contoh Diagram Objek:

    Nama objek

    atribut

    metode

    Contoh Diagram Objek:

  • 4. Atribut Menggambarkan data yang dapat memberikan

    informasi mengenai kelas atau objek di mana atributtersebut berada.

    5. Metode Suatu prosedur/fungsi yang disatukan dalam suatu

    objek dan dapat mengakses field-field data yangmenjadi bagian dari objek tersebut

    Merupakan apa yang dapat dilakukan oleh Objek Merupakan apa yang dapat dilakukan oleh Objek Di dalam objek, metode sebagai suatu header

    fungsi/prosedur yang bertindak sebagai metode Di luar objek, metode didefinisikan secara penuh,

    yaitu statemen-statemen apa saja yang akandikerjakan oleh metode tersebut

    Nama metode harus diletakkan setelah nama objekyang memiliki metode tersebut

  • Contoh sederhana atribut dan metode:

    Mhs

    NIMNamaJurusanJurusanInputEditDelete

  • 6. Message Cara untuk berhubungan antara satu objek dengan

    objek lain. Objek pengirim mengirimkan pesan kepada objek

    penerima melaksanakan supaya objek penerimamelaksanakan salah satu metode yang dimiliki.

    Contoh:

    message

  • III. Karakteristik dari ObjekAda 3 (tiga) karakteristik utama bahasa pemrogramanberorientasi objek yaitu:a. Enkapsulasi (pengkapsulan)

    Proses penggabungan antara data-data dan fungsi-fungsi yang berkaitan ke dalam sebuah objek.

    Hakikat dari enkapsulasi ini adalah memadukanlangkah program dengan data yang ada di dalamnya.

    Data dan prosedur atau fungsi dikemas bersama-sama dalam suatu objek, sehingga prosedur ataufungsi lain dari luar tidak dapat mengaksesnya.Hanya dengan interface objek maka kita dapatmengakses datanya.

  • b. Inheritance (penurunan sifat) Teknik yang menyatakan bahwa anak dari objek

    akan mewarisi data/atribut dan metode dariinduknya langsung.

    Karakteristik dari suatu objek diturunkan ke objekyang lain sehingga objek yang baru akan memilikikarakteristik yang sama dengan induknya.karakteristik yang sama dengan induknya.

    Penurunan ini diawali dengan mendefinisikan objekinduk, sehingga dengan menggunakan objek induktersebut, dapat membuat objek yang bertumpupada objek induknya. Sehingga akan terbentukobjek keturunan. Dimana setiap objek turunannyadapat mengakses semua data dan program yangdimiliki oleh objek induknya

  • Dengan polimorphism kita dapat membuatsebuah objek baru yang menunjukkan fungsi-fungsi yang sama dengan objek induknya, namunfungsi fungsi yang sama tersebut memilikioperasi yang berbeda-beda.

    c. Polimorphism (keanekaragaman)

    Objek yang masih di dalam suatu hirarki dapatmenyusun objek yang lainnya, sesuai dengankebutuhan dari objek tersebut, yang artinyapemrograman berorientasi objek ini mencakupkeanekaragaman objek yang menjaminterhimpunnya perpaduan keanekaragaman datadengan prosedur atau fungsi.

  • Analogi Polimorphism :Sebuah kendaraan secara umum baik mobil maupunsepeda motor memberi kemungkinan kepada kita untukmelakukan operasi maju, mundur, belok kanan/kiriatau berhenti. Namun keduanya tidak melakukan operasi-operasi tersebut dengan cara yang sama.

    Belok kanan

    Belok kiri

    Maju

  • Implementasi OOP Pada Implementasi OOP Pada Perangkat Lunak Pemrograman

  • I. Implementasi OOP menggunakan Bahasa Pemrograman Penulisan kode program merupakan kelanjutan dari

    proses perancangan

    Spesifikasi perangkat lunak:a. Struktur datab. Aliran dinamis dari kendalib. Aliran dinamis dari kendalic. Transformasi fungsional

    Beberapa bahasa pemrograman berorientasi objek:a. Smalltalkb. C++c. Java

  • a. Smalltalk

    Smalltalk adalah bahasa pemrograman berorientasi objek yang pertama kali populer.

    Smalltalk dikembangkan di Xerox PARC-Amerika Serikat.

    Ide dasar Smalltalk meliputi: Ide dasar Smalltalk meliputi:1. Semua adalah objek 2. Objek bisa saling berkomunikasi melalui messages

    atau berita3. Semua tersedia untuk dimodifikasi

  • C++ adalah salah satu bahasa pemrograman komputer.Dibuat pada tahun 1980an oleh Bell Labs sebagaipengembangan dari Bahasa Pemrograman C (yangdibuat oleh Brian W. Kernighan dan Denies M. Ricthiepada tahun 1972). Salah satu perbedaan yang palingmendasar dengan bahasa C adalah C++ medukungkonsep pemrograman berorientasi objek (ObjectOriented Language).

    b. C++

    Tahun 1980 seorang ahli yang bernama BjarneStroustrup mengembangkan beberapa hal dari bahasaC yang dinamakan C with Classes yang bergantinama pada tahun 1983 menjadi C++.

    C++ merupakan bahasa pemrograman yang casesensitive.

  • Java adalah bahasa pemrograman berorientasi objekyang dikembangkan oleh Sun Microsystems sejaktahun 1991.

    Bahasa Pemrograman Java pertama lahir dari TheGreen Project, yang berjalan selama 18 bulan, dariawal tahun 1991 hingga musim panas 1992. Proyektersebut belum menggunakan versi yang dinamakanOak. Proyek ini dimotori oleh Patrick Naughton, Mike

    c. Java

    Oak. Proyek ini dimotori oleh Patrick Naughton, MikeSheridan, James Gosling dan Bill Joy, beserta sembilanpemrogram lainnya dari Sun Microsystems. Salah satuhasil proyek ini adalah maskot Duke yang dibuat olehJoe Palrang.

    Java adalah bahasa pemrograman yang mirip denganC/C++

    Keunggulanya adalah Java dapat berjalan di banyakplatform perangkat keras (Multy-Platform).

  • Beberapa hal yang harus diperhatikan dalam menentukanObjek dalam suatu program

    1. Correctness and SufficiencyDalam mendesain program sebaiknya memperhatikanbahwa object-object yang didisain dapat menjaminkebenaran informasi dan juga kecukupan informasikebenaran informasi dan juga kecukupan informasiyang dibutuhkan

  • 2. Robustness (Ketahanan) Ketahanan adalah kemampuan sistem komputer

    untuk mengatasi kesalahan selama eksekusi ataukemampuan algoritma untuk terus beroperasimeskipun ada kelainan pada input, perhitungan,jenis pengujian yang melibatkan input tidak validatau tidak terduga.

    Object-object yang didisain sebaiknya dapatmembuat suatu program menjadi tangguh, dalam halini diharapkan program yang dibuat memiliki erroryang sedikit dan dapat bertahan dalam situasi yangsulit sekalipun.

  • 3. FlexibilityObject-object yang didisain sebaiknya mudah untukdiexpand atau dikembangkan (bersifat flexibel). Hal inidibutuhkan karena dalam pembuatan program seringkali harus merubah disain yang telah dibuatsebelumnya karena adanya perubahan disain yangdiinginkan oleh user/pengguna.

    4. Reusability4. ReusabilityKode-kode program yang telah dibuat, dapat digunakankembali. Hal ini haruslah terpenuhi dalam mendisainprogram yang baik. Karena ketika menggunakan pointini maka akan lebih mudah untuk me-manage programyang dibuat, apalagi disaat harus mengganti suatuinformasi dalam program yang dibuat.

  • 5. EfficiencyDesain yang dibuat sebaiknya efisien karena akanberkaitan dengan penggunaan resource hardware yangdigunakan. Baik itu dalam faktor kecepatan maupundalam faktor penyimpanan data/program.

    Beberapa hal di atas sangat penting untuk diterapkan agarprogram atau aplikasi yang dibangun lebih tangguh, sebabmenuliskan kode program tidak hanya sekadarmengetikkan perintah-perintah yang menginstruksikanaplikasi untuk mengerjakan sesuatu, tetapi dapat jugamerupakan seni membangun struktur kode programdengan kaidah tertentu.

  • II. Implementasi OOP dengan C++A. Implementasi Konsep Pengkapsulan (Encapsulation)

    dengan C++ Salah satu keistimewaan C++ adalah

    pengkapsulan Pengkapsulan adalah mengkombinasikan suatu

    struktur dengan fungsi yang memanipulasinyastruktur dengan fungsi yang memanipulasinyauntuk membentuk tipe data baru yaitu kelas (class)

    Kelas pada C++ ada 3, yaitu:1. Private2. Public3. Protected

  • 1. PrivateTingkat akses yang memberikan hak akses data hanyakepada kelas yang bersangkutan saja.

    2. PublicTingkat akses yang memberikan hak akses secaraumum kepada kelas-kelas turunannya maupun terhadaplingkungan luar di dalam program.

    Sifat class:

    lingkungan luar di dalam program.3. Protected

    Tingkat akses yang memberikan hak akses terhadapdata dalam suatu kelas sehingga data tersebut dapatdiakses oleh kelas turunannya, namun lingkungan luar didalam program masih tetap tidak diberi hak untukmengaksesnya.

  • Contoh program: Class#include Using namespace std;class MOTOR {char* merk;long tahun;char* nopol;char* warna;char* warna;public:void SetMotor() {

    merk = Honda;tahun = 2010;nopol = B 1234 ABCwarna = merah putih

    }

  • Contoh program: Class (lanjutan)void ShowInfoMotor() {

    cout

  • B. Implementasi Konsep Pewarisan (inheritance) dengan C++

    class nama_kelas_turunan : sifat_penurunan

    C++ memungkinkan untuk implementasi inheritanceContoh program :

    class nama_kelas_turunan : sifat_penurunan

    nama_kelas_dasar

    {

    .......// Implementasi kelas turunan

    }

  • Contoh program: Inheritance#include Using namespace std;class INDUK {int X;public:void SetX(int XX) { X = XX; }

    int GetX() { return X; }{ return X; }

    };class TURUNAN: public INDUK {int Y;public:void SetY(int YY) { Y = YY; }

    int GetY() { return Y; }

    };

  • Contoh program: Inheritance (lanjut)int main() {INDUK A; //instansiasi thdp kelas INDUKA.SetX(10);cout
  • C. Implementasi Konsep Polimorfisme dengan C++

    Polimorfisme merupakan fitur pemrogramanberorientasi objek yang penting setelahpengkapsulan dan pewarisan.

    Polimorfisme berasal dari bahasa Yunani, poly(banyak) dan morphos (bentuk).(banyak) dan morphos (bentuk).

    Polimorfisme menggambarkan kemampuan kodeC++ berperilaku berbeda tergantung situasi padawaktu program berjalan.

  • Contoh program: Polimorfismeclass MANUSIA {char* nama;int tinggi;int berat;public:void SetNama(char* nm) {

    nama = nm;}void SetTinggi(int tg) {void SetTinggi(int tg) {

    tinggi = tg;}void SetBerat(int br) {

    berat = br;}char* GetNama() {

    return nama;}

  • Contoh program: Polimorfisme (lanjut)int GetTinggi() {

    return tinggi;}int GetBerat() {

    return berat;}}//fungsi yg dpt didefinisikan ulang pd kelas turunannyaturunannya

    virtual void Berjalan() {cout

  • Soal Latihan Pertemuan 14

  • 1. Yang tidak termasuk dalam bahasa pemrograman berorientasi obyek adalah:a. Basic d. Smalltalk b. C++ e. VB dot net c. Java

    2. Bahasa pemrograman berorientasi objek yang dikembangkan oleh Sun Microsystems sejak 1991 adalah:a. Pascal d. Smalltalk b. C++ e. VB dot netc. Java

  • 3. Bahasa pemrograman yang dikembangkan oleh Xerox PARC-Amerika serikat adalah:a. Pascal d. Smalltalk b. C++ e. VB dot netc. Java

    4. Suatu fungsi yang hanya dapat diakses oleh kelas-kelas turunan disebut dengan:a. Public d. Overloadingb. Private e. Polymorphismc. Protected

  • 5. Fungsi yang dapat dibaca dan diakses oleh siapapun disebut dengan :a. Public d. Overloadingb. Private e. Polymorphismc. Protected