ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
BAB 1 Paradigma Berorientasi Objek 1.1 Pengantar Berorientasi objek atau Object oriented merupkan paradigma baru dalam rekayasa perangkat lunak. Paradigma ini memandang sistem sebagai kumpulan objek-objek diskrit yang saling berinteraksi satu sama lain. Berorientasi objek juga bisa bermakna kegiatan mengorganisasikan perangkat lunak sebagai kumpulan objek-objek diskrit yang bekerja antara informasi (atau struktur data) dan perilaku (behavior) yang mengaturnya. Objek adalah segala sesuatu yang ada disekitar kita. Objek lah yang menyusun dunia ini, misalkan mobil, motor, becak, sepeda adalah contoh –contoh objek kendaraan, kucing, harimau singa, ayam adalah objek-objek binatang. Pada paradigma berorientasi objek, setiap objek mempunyai 2 pengenal yaitu informasi tentang objek tersebut dan perilaku yang mengaturnya. Informasi tentang objek tersebut disebut atribut, sedangkan operasi-operasi pengatur objek tersebut adalah operasi. Misalkan Objek Mobil, maka atribut dari mobil adalah no. Polisi, warna, tahun, jenis, no rangka. Sedangkan operasi adalah belok kanan, belok kiri, mundur, naikkan kecepatan, mengerem dll. Objek-objek yang mempunyai atribut dan operasi yang sama dapat dikelompokkan dalm sebuah katagori. Misalkan objek mobil, motor, becak, sepeda dapat dikelompokan dalam sebuah katagori yaitu “Kendaraan”. Sebuah makna katagori sebuah kelas, bergantung kepada semesta pembicaraan. Paradigma berorientasi objek mempunyai bidang aplikasi yang sanga luas, dalam bidang rekayasa perangkat lunak, antara lain pemrograman, permodelan sistem informasi, maajemen proyek, perangkat keras, dan pengujian (testing) perangkat lunak. Pada bidang pemrograman, berorientasi obejek didefinisikan sebagai suatu cara membuat program dengan memandang bahwa persoalan yang diprogramkan adalah kumpulan objek yang saling berinteraksi satu sama lain. 1.2 Mengapa berorientasi Objek Sebelum paradigma berorientasi obejk berkembang, pemrograman terstruktur telah menjadi arus utama (mainstream) didalam rekayasa perangkat lunak. Seorang programer pemrograman terstrutur memulai pekerjaannya dengan membuat sebuah kode program untuk melakukan operasi teretntu, misalkan : operasi input, pencetakan, kemudian menyisispkan kode yang telah dibuat tersebut kedalam aplikasi yang ia kehendaki. Hal ini mempersulit jika ada perubahan blok kode diwaktu yang akan datang. Untuk mengatasi kekurangan pada pemrogram terstruktur diberikan pendekatan baru yaitu berorientai objek. Dalam pendekatan ini, pemrograman berorientasi objek membuat satu blok kode yang disebut objek. Objek kemudian digunakan oleh beberapa aplikasi
1 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
yang dikendaki, jika salah satu objek memerlukan modifikasi, pengembang hanya membuat perubahan hanya sekali yang digunakan untuk beberapa aplikasi yang ia kehendaki. Misalkan kita akan membuat sebuah form dengan sebuah list box. Pada pemrograman terstruktur : kita perlu menuliskan beberapa kode, yaitu kode untuk menciptakan form, kode untuk membuat dan mengisi list box dan kode untuk menciptakan tombol. Pada pemrogram berorientasi objek : kita hanya perlu menggunaan tiga objek, yaitu form, list box, dan tombol OK. Apakah objek tersebut harus dibuat dari awal, tidak perlu tetapi hanya menyalin dari objek-objek yang sudah ada (yang telah kita buat sebelumnya). Keuntungan paradigma berorintasi objek adalah kemampuannya untuk membangun komponen sekali saja, kemudian menggunakannya beruang-ulang. 1.3 Abstraksi Abstraksi merupakan kemampuan manusia untuk mengenali sesuatu yang komplek dengan mengabaikan sesuatu yang tidak penting dan hanya berkonsentrasi pada sesuatu yang signifikan saja. Misalkan objek Motor atributnya adalah no. Polisi, warna, tahun, jenis, no rangka, tanggal dibeli, ukuran ban, pemilik sepeda, apakah semua datanya benar-benar perlu ? Tidak, tergantung untuk apa informasi itu dibutuhkan. Proses yang diperukan untuk mengambil atribut dan opearsi apa saja yang diperlukan dan membuang informasi yang tidak perlu disebut Abstraksi. 1.4 Pewaris Objek adalah anggota (member) satu kelas, atau sebaliknya, kelas adalah sebuah kategori atribut dan operasi yang sama. Dengan demikian objek mempunyai semua karakteristik dari suatu kelas. Jenis Pewaris pertama : antara kelas dan anggota kelas atau objek-objeknya. Atribut dan operasi yang ditentukan dalam kelas dapat diwariskan ke masing-masing objek dalam kelas tersebut. Misalnya kelas Mahasiswa memiliki atribut : NIM, nama, Jurusan, jadwal Kuliah, jadwal Ujian, Mendapatkan KHS dll. Konsekuensinya Aziz adalah mahasiswa jurusan Sistem Informasi UIN, jika Aziz adalah mahasiswa Jurusan Sistem informasi UIGM maka Aziz anggota dari kelas Mahasiswa. Aziz mempunyai atribut : NIM, nama, alamat, tanggal lahir sebagaimana yang dimiliki oleh Kelas Mahasiswa. Objek Aziz juga memiliki operasi : mengisi KRS, Kuliah, Ujian, Mendapatkan KHS dll. Jenis Pewaris ke Dua : antara kelas dengan kelas lainnya. Kelas dapat mewariskan sifat-sifatnya kedalam kelas lainnya. Mesin cuci, refrigenerator, microwave oven, radio, televisi dan sebaginya adalah kelas peralatan Listrik, mereka mewarisi atribut dari Kelas peralatan Listrik, misalnya : Tipe, warna dan merek. Juga mewarisi operasi misalnya turn-on dan turn-off. Dengan kata lain mesin cuci, refrigenerator, microwave oven, radio, televisi merupakan sub kelas dari kelas peralatan Listrik. Kelas peralatan listrik Listrik mewariskan beberapa atribut beberapa operasi ke kelas-kelas dibawahnya. Pada terminologi berorientasi objek, kelas yang mewariskan sifat-sifatnya ke sub kelas disebut super kelas. 2 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
Pewaris tidak berhenti sampai disitu, kelas peralatan Listrik itu sendirinya hanyalah sub kelas dari kelas Peralatan. Kelas peralatan mempunyai beberapa sub kelas antara lain : Peralatan Listrik, Furniture, Peralatan dapur, dan sebagainya Dari contoh diatas, maka pewaris dapat dibuat bertingkat. Kelas televisi mewarisi sifat kelas peralatan Listrik, kemudian kelas peralatan Listrik mewarisi sifat kelas peralatan. Sampai beberapa tinngkat proses pewarisan dapat dibuat, tergantung sampai sejauh mana diperlukan pewaris seperti diatas disebut pewaris bertingkat (multilevel inheritance). Pada kontak lain, pewaris juga dapat dilakukan dengan banyak induk ke satu sub kleas (multiple inheritence). Misalkan kelas kapal bisa mewarisi kelas kendaraan bermotor dan kelas kendaraan Air sekaligus, sehingga kelas kapal mempunyai dua induk (super kelas) yaitu kendaraan bermotor dan kendaraan air. 1.5 Polymorfism (banyak bentuk) Kadang sebuah operasi mempunyai nama yang sama pada kelas yang berbeda ketika kelas-kelas tersebut memiliki kelas induk (Super kelas) yang sama. Misalkan kata “membuka” bisa bermakna lain bila di berikan pada obejek yang berbeda : misalkan membuka pintu, membuka berkas, membuka surat khabar dll. Konsep tersebut dikenal dengan istilah banyak bentuk (Polimorfism), yaitu suatu operasi dengan nama yang sama, tetapi jika diberikan pada objek yang berbeda akan mengakibatkan operasi yang berbeda. 1.6 Encapsulation (Pengkapsulan) Ketika seseorang menonton TV, seseorang tersebut tidak memperdulikan kompleksitas rangkaian elektronika yang ada didalamnya. Mereka tidak memperdulikan bagaimana rangkaian elektronika tersebut bekerja. Mereka hanya memperhatikan tombol-tombol apa saja yang bisa digunakan untuk mengoperasikannya. Konsep ini dikenal dengan istilah pengkapsulan, yaitu menyembunyikan kompleksitas dari luar dan hanya membuka operasi-operasi yang diperlukan saja terhadap objek-objek lain. Dengan kata lain, pengkapsulan dapat dikatankan memisahkan aspek-aspek eksternal objek yang dapat diakses objek-objek lain dari rincian implementasi internal objek itu sendiri. 1.7 Pengiriman pesan Bagaimana objek-objek dalam sistem bekerja sama. Mereka melakukannya dengan mengirim pesan dari satu objek ke objek lainnya. Suatu objek melakukan pengiriman pesan dari satu objek – ke objek lainnya untuk melakukan sebuah operasi. 1.8 Asosiasi Pada saat seseorang melakukan turn on pada sebuah televisi maka menurut terminologi berorientasi objek, seseorang tersebut sedang berasosialisasi dengan televisi. Hubungan antar dua buah proyek untuk menjalankan sebuah aktivitas tertentu adalah asosiasi. 1.9 Agregasi Agregasi adalah bentuk khusus dari asosiasi dengan hubungan lebih kuat, ketika asosiasi yang terjadi adalah “Part-off” antara objek yang satu dengan beberapa objek lainnya, atau asosiasi antara “keseluruhan” dengan bagian. Misalkan : komputer terdiri dari kotak CPU, papan tombol (keyboard), mouse, monitor, CD Rom drive, hardisk, modem dll. Hubungan antar objek kotak CPU dan komponen-komponen tersebut adalah agregasi. 3 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
4 | Universitas Islam Negeri Raden Patah
Terttiaavini, S.Kom.,M.Kom
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
BAB 3 Permodelan Bisnis 3.1. Pengantar Kata permodelan Bisnis diterjemahkan dari kata Businnes Modeling sehingga diterjemah kan menjadi “Permodelan Kegiatan”. Kegiatan pada konteks ini adalah kegiatan didalam organisasi. Dengan kata lain Permodelan Bisnis adalah Studi tentang organisasi dan Aktivitasnya. Ketika kita sedang menguji struktur Organisasi, kegiatan organisas, peran didalam organisasi, dan bagaimana mereka terhubung satu dengan lainnya. Tentu saja juga menguji workflow dalam organisasi, proses utama, bagaimana mereka bekerja, seberapa efektif dan efisien cara kerja bekerja, entitas yang ada didalam dan diluar organisasi, termasuk individu atau perusahaan lain yang terhubung terhadap kegiatan organisasi. 3.2. Mengapa membuat permodelan Bisnis Ada beberapa pertimbangan kita membuat permodelan Bisnis, yaitu a. Untuk memperoleh pemahaman yang lebih baik tentang visi, misi, tujuan Organisasi, dan sistem perangkat lunaknya. Lalu apa hubungannya dengan perangkat lunak ? bukankah penerapan TI/SI merupakan investasi, sedangkan investasi tersebut mahal. sehingga sebuah investasi harus menghasilkan manfaat yang signifikan bagi organiasi atau dikenal dengan istilah Return On Investment (ROI). Manfaat investasi bisa terlihat secara langsung (tangible) atau tidak langsung (intangible). Manfaat yang terlihat langsung anatara lain : penghematan biaya operasional, peningkatan penjualan, peningkatan profit atau lainnya. Sedangkan manfaat yang tidak terlihat langsung (intangible) seperti kepuasan pegawai, kepuasan pelanggan atau peningkatan citra Oeganisasi. b. Sebagai sarana melakukan Rekayasa ulang (rengineering) proses bisnis organiasai, jika dirasakan perlu adanya perbaikan untuk mendapatkan proses bisnis yang lebih efektif dan efisien. Dokumentasi model bisnis juga sangat penting digunakan sebagai media analisis untuk perbaikan berkelanjutan (continuously improvement). Untuk melakukan rekayasa ulang proses bisnis tim perekayasa ulang memulainya dengan mendokumentaskan proses yang saat ini sedang digunakan kedalam workflow. Mereka kemudian mencermati dan meneliti diagram ini untuk mencari hal-hal yang tidak efektif dan efisien didalam workflow. Dari yg tidak efektif dan efisien tersebut, tim akan mencari solusi potensial untuk memungkinkan pengembangan workflow yang baru sebagai langkah perbaikan. Dengan merancang sejumlah proses potensial, tim akan menjadi lebih mampu memandang dan mendiskusikan kelebihan dan kelemahan tiap-tiap pendekatan yang digunakan untuk memilih proses baru yang paling sesuai untuk organisasi. c. Sebagai sarana pelatihan tentang proses bisnis organiasasi . hal ini terutama digunakan untuk karyawan baru didalam organisasi. Adanya proses bisnis yang terdokumentasi dengan baik akan mempermudah karyawan baru tersebut mendapatkan pemahaman tentang bagaimana kegiatan organisasi tersebut dilakukan. Model bisnis biasanya dibuat dalam bentuk workflow untuk menggambarkan aktivitas apa saja yang dilakukan, siapa saja yang terlibat dan apa daja peralatan yang 5 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
dibutuhkan. Sebagai sarana pelatihan, dokumen model bisnis membantu memastikan bahwa orang-orang dalam organisai mempunyai pemahaman yang sama tentang proses bisnis yang dilakukan organiasasi. d. sebagai konteks solusi perangkat lunak. Saat hendak membangun perangkat lunak, model bisnis dapat membantu memahami konteks sistem yang akan dibangun. Kedengarannya sepele, tetapi mempunyai konsekuensi serius pada kesuskesan atau kegagalan pengembangan perangkat lunak. Jika gagaal memahami proses bisnis, maka akan didapatkan penafsiran yang salah tentang kebutuhan perangkat lunak. 3.3. Kapan Permodelan Bisnis dibuat Membuat permodelan bisnis sebulum pengembangan perangkat lunak bukan merupakan kewajiban. beberapa pertmbangan untuk membuat permodelan bisnis, antara lain 1. Tim pengembang yang membutuhkan model bisnis adalah baru di dalam organiasasi. 2. Orang / organiasasi yang sedang melakukan rekayasa ulang proses bisnisnya. 3. Pengembangan akan membangun perangkat lunak yang akan digunakan pada porsi signifikan dalam organisasi. Ukuran signifikan dapat dicontoh kan sebagai berikut : Pertama : kita akan mengembangkan perangkat lunak untuk bagian pemasaran dan hanyaa digunakan di bagian pemasaran saja. Kedua : kita akan membangun perangkat lunak untuk penyeleksian order yang akan digunakan bersama-sama antara bagian pemasaran, keuangan, kredit dan produksi. Untuk kasus pertama tidak memerlukan permodelan bisnis, tetapi untuk yang kedua, perlu di lakukan permodelan bisnis. Ini berarti semakin banyak bagian yang terlibat pada pengembangan organisasi maka ukuran signifikannya semakin besar. 4. Adanya alur kerja yang kompleks dan besar didalam organiasasi yang belum di dokumentasikan sebelumnya. Tentu saja workflow yang kompleks perlu dimodelkan untuk mempermudah pemahaman. 5. Tim adalah konsultan organisasi, ketika sebelumnya belum pernah berkerja di tempat itu. 3.4. Permodelan Bisnis dan siklus pengembangan Sistem Informasi Sebelum mendiskusikan beberapa keuntungann dan kerugian tiap-tiap pendekatan dalam permodelan bisnis, ada baiknya kita mengetahui langkah-langkah lainnya didalam siklus pengembangan sistem Informasi. Menurut (Boggs,2002:62) urutan langkah-langkah tersebut adalah 1. Permodelan Bisnis 1.1. Diagram use case bisnis 1.2. Diagram aktivitas (sebagai workflow) 1.3. Diagram kelas level analisis (bisnis entitas) 2. Permodelan uses case sistem 2.1. Aktor 2.2. Use case 2.3. Diagram Usecase 3. Analisis 3.1. Flow of events dalam use case 3.2. Spesifikasi tambahan 6 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
4.
5. 6. 7.
Terttiaavini, S.Kom.,M.Kom
3.3. Diagram sekuensial dan diagram kolaborasi level analisis 3.4. Diagram kelas level analisis Desain 4.1. Diagram sekuensial dan diagram kolaborasi level desain 4.2. Diagram kelas level desain 4.3. Diagram statechart (jika dibutuhkan) 4.4. Diagram Komponen 4.5. Diagram deployment Pengkodean Pengujian Implementasi dan distribusi
Seperti terlihat diatas, permodelan bisnis adalah langkah pertama dalam prose pengembangan sistem informasi. Jika diputuskan untuk membuat permodelan bisnis dalam proses Pengembangan perangkat,a ada dua pendekatan yaitu 1. Dengan melengkapi semua permodelan bisnis didepan, kemudian secara iteratif melewati tahap analisis, desain, pengkodean, pengujian dan deploy. Permodelan Bisnis
Analisis
Pengujian
Pengkodean
Disain
Dsistribusi
Gambar 3.4.1. Permodelan Bisnis terpisah dengan Proses Interasi Keuntungannya adalah lebih memberikan pemahaman secara penuh tentang proses bisnis organisisasi sebelum kelingkup sistem secara keseluruhan. Dengan pendekatan ini dapat ditentukan dari awal aktivitas mana saja dalam workflow yang perlu diotomatisasikan. Kerugiannya adalah jika proyek pengembangan sistem informasi mempunyai waktu pendek, mengunakan pendekatan ini tidaklah realistik. Bagaiman mungkin harus menyelesaikan permodelan bisnis sampai selesai lebih dahulu sebelum melangkah ke fase berikutnya, sementara tim pengembang dibatasi waktu yang singkat. 2. Dapat dengan memasukkan permodelan bisnis didalam proses interasi. Dilakukan dengan melengkapi permodelan bisnis sebagai bagian proses interaktif yang dilakukan bersamaan antara permodelan bisnis permodelan perangkat lunak.
7 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
Keuntungannya adalah pengembang dapat melakukan pembelajaran proses bisnis organisasi tanpa harus menunda kegiatan membangun perangkat Lunak sistem, keduanya dapat dilakukan secara bersamaan. Kekurangannya adalah beresiko terjadinya kesalah pahaman dalam menemukan kebutuhan sistem secara menyeluruh. Analisis
Permodelan Bisnis
Desain
Distribusi
Pengkodean
Pengujian
Gambar 3.4.2. Permodelan bagian dari proses iteratif 3.5. Elemen-elemen permodelan Bisnis Diagram use case Bisnis digunakan untuk mendefenisikan bisnis apa saja yang dilakukakan organisasi dalam rangka menjalankan visi organisasi. Sedangkan diagram aktivitas digunakan untuk mendokumentasikan workflow yang menguraikan bagaima bisnis dijalankan. Elemen –elemen dalam permodelan Bisnis, yaitu 1. Aktor bisnis 2. Pekerja bisnis 3. Use case bisnis 4. Relasi asosiasi dan generalisasi 5. Entitas bisnis 6. Diagram use case bisnis Aktor bisnis Aktor bisnis adalah seseorang atau sesuatu yang ada di luar organiasai. Ia berinteraksi dengan organisasi dan terlibat dalam bisnis organisasi. Posisi mereka diluar organisasi tetapi terlibat dalam kegiatan organisasi. Contoh : Pelanggan, Kreditor, investor, pemasok dll. Aktor bisnis dimodelkan dengan menggunakan ikon berikut ini :
Gambar 3.5a. Notasi aktor Bisnis dalam UML Pekerja bisnis (Business Worker) 8 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
Pekerja bisnis adalah suatu peran(role) didalam organisasi, bukan posisi atau jabatan. Misalkan seorang kepala Dept. Pemasaran mempunyai posisi (jabatn) yaitu Kepala Departemen Pemasaran, tetapi ia dapat memainkan peran yang berbeda dalam waktu yang berbeda. Misalkan menjadi pelayan tiket saat pelayan tiket tidak di tempat. Memodelkan pekerja bisnis digunakan untuk memahami peran di dalam aktivitas bisnis organisasi dan bagaiman peran tersebut berinterasi dengan proses bisnis. Pekerja Bisnis dimodelkan dengan menggunakan ikon berikut ini :
Gambar 3.5b. NotasiPekerja Bisnis dalam UML Use case Bisnis Use case bisnis adalah model yang digunakan untuk menggamarkan proses bisnis pada organisasi. Penamaan pada use case bisnis menggunakan kata kerja, contoh “memberi harga Produk”. Setiap usecase bisnis dapat diberi penjelasan tambahan untuk menjelaskan secara rinci apa yang terjadi dalam use case bisnis. Untuk hal tersebut didokumentasikan secara spesifik didalam workflow. Use case Bisnis dimodelkan dengan menggunakan ikon berikut ini :
Gambar 3.5b. NotasiPekerja Bisnis dalam UML Relasi Asosiasi Relasi Asosiasi adalah relasi antara aktor bisnis / pekerja bisnis dan use case bisnis. Relasi asosiasi mengidentifikasikan bahwa aktor binis tertentu berkomunikasi terhadap fungsionalitas yang disediakan dalam use case bisnis. Sebagai contoh gambar 3.5.c menyatakan seorang sales melakukan Re-stock persediaan. Arah panah mengidentifikasikan siapa yang mengawali komunikasi. Sales menginisialisasi kegiatan transaksi “Re stock persediaan”. Dapat juga dikatakan kegiatan bisnis “Re stock persediaan diawali sepenuhnya oleh seorang sales.
Gambar 3.5c. NotasiPekerja Bisnis dengan use case Kondisi lain dicontohkan pada gambar 3.5d, karyawanmenginisialisas use case bisnis “Memberi harga produk”, seorang manajer terlibat dalam use case tersebut. Karyawan mengawali kegiatan “memberi harga Produk’ dan dalam proses tersebut juga melibatkan manager untuk memberikan persetujuan. Karyawan dan manager dalam hal ini adalah pekerja bisnis.
Gambar 3.5d. Relasi Asosiasi dengan dua pekerja Bisnis
9 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
Relasi Generalisasi Relasi generalisasi digunakan ketika ada dua atau lebih aktor bisnis, pekerja bisnis atau use case bisnis yang sangat serupa. Misalkan ada dua kelompok berbeda menjadi anggota perpustakaan, yaitu anggota dari kalangan dosen dan anggota dari kalangan Mahasiswa. Kedua anggota memiliki kesamaan sebagai anggota perpustakaan, tetapi memiliki tanggung jawab berbeda. Pada UML situasi tersebut dimodelkan menggunakan relasi Generalisasi.
Gambar 3.5e. Relasi Generalisasi aktor anggota Perpustakaan dengan Aktor Dosen dan Aktor Mahasiswa Entitas bisnis Entitias bisnis adalah objek yang digunakan atau yang dihasilkan oleh organisasi saat melakukan Aktvitas bisnis. Nama entitas bisnis berbentuk kata benda atau frase kata benda. Gambar entitas bisnis dapat dilihat pada gambar 3.5f.
Diagram use case bisnis Diagram use case bisnis menunjukkan interaksi antar aktor dan use case dalam sebuah organisasi. Diagram Gambar 3.5g, ini menggambarkan model bisnis lengkap tentang apa yang perusahaan lakukan, siapa yang ada didalam organisasi, dan siapa yang ada di luar organisasi. Hal ini menggambarkan ruang lingkup organisasi, sehingga dapat dilihat apa/siapa saja yang ada diluar organisasi dan sampai mana batasannya. Sebagai contoh, diagram use case dapat dilihat pada gambar 3.5g. Tanda panah dari aktor ke use case menyatakan bahwa bisnis mengawali komunikasi dengan use case tertentu. Pada gambar tersebut karyawan memulai proses untuk “Memberi Harga Produk”.
10 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Gambar 3.5g. Diagram Use case Bisnis
Pengantar Ke UML 2.1 Permodelan visual 11 | Universitas Islam Negeri Raden Patah
Terttiaavini, S.Kom.,M.Kom
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
Menurut Quatrani (1998:1) mendefenisikan bahwa permodelan visual adalah suatu cara berfikir tentang persoalan menggunakan model-model yang diorganisasikan seputar dunia nyata. Tujuan permodelan visual adalah untuk memungkinkan adanya komunikasi yang lebih berkualitas antara pengguna, pengembang, penganalisis, tester, manajer, dan siapa pun yang teribat. Ibarat membangun rumah, maka seorang arsitek memerlukan pandanga dari berbagai sisi rumah. Banyaknya pandangan yang dibuat pada permodelan visual, akan memberikan pemahaman yang lebih baik bagi para pengembang dan pengguna dll.
2.2 Sekilas tentang Diagram-diagram UML UML menyediakan beberapa diagram visual yang menunjukkan berbagai aspek dalam sistem yaitu 1. Diagram use case bisnis (business use case diagram) 2. Diagram use case (Use case diagram) 3. Diagram Ativitas (activity diagram) 4. Diagram sekuensial (Sequence Diagram) 5. Diagram kolaborasi (collaboration diagram) 6. Diagram klas (class diagram) 7. Diagram statechart (statechart diagram) 8. Diagram komponen (component diagram) 9. Diagram Deployment (Deployment diagram) 2.2.1
Diagram use case bisnis Digunakan untuk mempresentasikan bisnis yang dilakukan organisasi. Diagram ini menjawab pertanyaan “ Apa yang bisnis lakukan ?” dan mengapa kita membangun sistem untuk itu ?”. Diagram use case bisnis digunakan untuk memodelkan aktivitas bisnis organisasi sebagai landasan pembuatan use case sistem. Diagram use case bisnis digambarkan menurut perspektif organisasi. Ia tidak membedakan apakah aktivitas tersebut dilakukan secara manual atau otomatis menggunakan perangkat lunak (komputerisasi) Diagram use case bisnis menunjukkan interaksi antara use case bisnis dan aktor bisnis. Use case bisnis mempresentasikan proses bisnis yang dilakukan, sedangkan aktor bisnis mempresentasikan peranan (roles) yang dimainkan pada aktivitas bisnis.
12 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
Gambar_1. Diagram Use case untuk institusi Finansial
Contoh : gambar diatas menyajikan diagram use case bisnis yang telah disederhanakan untuk institusi finansial. Pada gambar tersebut aktor bisnis yang beriteraksi dengan bisnis organisasi, yaitu Nasabah. Nasabah berada di luar organisasi, sehingga ia disebut aktor bisnis. Peran yang ada di dalam organisasi disebut pekerja bisnis. Ada 3 pekerja bisnis, yaitu Teller, Manager Kredit dan manager Investasi. Mereka menjalankan proses bisnis organiasi seperti pada gambar_1. arah panah menunjukkan siapa yang mengawali komunikasi. Jika pada pada gambar terlihat Teller mengawali nasabah untuk menjalankan use case bisnis “Mengelolah rekening Nasabah”, maka teller yang menginisialisasi proses bisnis tersebut. Sedangkan nasabah terlibat dalam proses, tetapi bukan mengawali proses, karena arah panah berasal dari use case bisnis ke nasabah.
2.2.2
Diagram use case Diagram use case menyajikan interaksi antar use case dan aktor dalam sistem yang akan dikembangkan. Usecsase sendiri adalah fungsionalitas atau persyaratan-persyaratan sistem yang harus dipenuhi oleh sistem yang akan dikembangkan tersebut menurut pandangan pemakai sistem. Sedangkan aktor berupa orang, peralatan, atau sistem lain yang berinteraksi terhadap sistem yang akan dibangun. Perhatikan gambar_2 dibawah ini :
13 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
Gambar_2. Diagram Use case untuk Sistem ATM
Pada gambar_2, menunjukkan interaksi antar use case dan aktor untuk sistem ATM. Pada contoh ini, aktor customer melakukan beberapa use case, antara lain : menarik uang, mendepositokan dana, mentransfer uang, mengecek saldo, membayar kredit dan menggantikan PIN. Use case menggatikan PIN dapat dijalankan oleh Customer dan petugas Bank. Petugas Bank dapat menjalankan use case menggantikan PIN dalam kondisi khusus atau tentu saja dalam permintaan Customer. Arah panah antar Use case membayar kredit ke aktor berarti sistem kredit menunjukkan bahwa sistem kredit menerima informasi dari sistem ATM. Aktor sistem Kredit berupa sistem lain yang beriteraksi dengan sistem ATM.
Berbeda dengan diagram use case bisnis yang tidak memperdulikan apakah proses dilakukan secara manual atau otomatis menggunakan perangat lunak. Pada diagram use case hanya fokus pada proses-proses yang dilakukan secara otomatis. Tidak ada keharusan terjadi pemetaan satu ke satu antara use case bisnis dan use case. Satu use case bisnis mungkin memiliki 10 sampai 20 use case. Jika satu aktivitas bisnis diotomatisasi, maka mungkin menjadi beberapa use case. Sebaliknya jka proses bisnis dibiarkan sebagai prosedur manual, maka use case bisnis tersebut tidak akan menjadi use case sama sekali (tidak digambarkan didalam diagram use case).
2.2.3 Diagram Aktivasi Diagram aktivasi menggambarkan aliran fungsionalitas sistem. Ada dua kegunaan diagram aktvitas dalam permodelan dengan UML. Yaitu 1. Pada tahap permodelan Bisnis, diagram aktivitas dapat digunakan untuk menunjukkan alur kerja bisnis (business workflow) 2. Pada tahap permodelan sistem, diagram aktivitas dapat digunakan untuk menjelaskan aktivitas yang terjadi didalam sebuah use case. Diagram aktivitas mendefenisikan dari mana workflow itu dimulai dan berakhir, aktivitas apa saja yang terjadi di dalam workflow, dan apa saja yang dilakukan saat sebuah aktvitas terjadi.
14 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
Gambar_3. Contoh workflow dengan diagram Aktivitas
2.2.4
Diagram Sekuensial Diagram sekuensial (Sequence diagram) digunakan untuk menunjukkan alur (flows) fungsionalitas yang melalui sebuah use case yang disusun dalam urutan waktu. Perhatikan skenario dibawah ini : 1. Penarikan uang secara normal yaitu menarik uang di ATM dengan sukses. Kemungkinan ini adalah skenario yang sering terjadi. Skenario sukses. 2. Penarikan uang, tetapi saldo tidak cukup. Bisa saja terjadi kan ?, misal mau menarik uang Rp. 50rb tetapi saldo di rekening tinggal Rp. 45 rb. Barangkali pemilik ATM lupa bahwa saldo tidak cukup untuk penarkan minimal dengan ATM. 3. Penarikan uang dengan menggunakan PIN yang salah. Bisa saja pelanggan lupa PIN ATM nya, atau bisa juga dilakukan oleh orang yang tidak berhak. 4. Penarikan uang, tetapi kartu ATM tidak dapat dibaca oleh mesin ATM. 5. Penarikan uang , tetapi tiba-tiba jaringan ATM mengalami kerusakan. 6. Kemunginan – kemungkinan yang lain.
2.2.5 Diagram Kolaborasi 2.2.6 Diagram Kelas 2.2.7 Diagram Statechart 2.2.8 Diagram komponen 2.2.9 Diagram Deployment 2.3 Proses pembangunan Perangat Lunak dengan permodelan Visual
15 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
import java.util.Scanner; class Mhs { int data, i; String[] nama=new String[5]; int[] uts=new int[5]; int[] uas=new int[5]; int[] tugas=new int[5]; double[] nilai=new double[5]; void IsiData() { Scanner sc= new Scanner(System.in); System.out.print("Masukkan jumlah data : ");data = sc.nextInt(); System.out.println(" INPUT DATA : "); System.out.println("=========================================== "); for (i=1; i<=data; i++) { System.out.println("DATA KE : " +i); System.out.print("Masukkan nama : ");nama[i] =sc.next(); System.out.print("Masukkan uts : ");uts[i] = sc.nextInt(); System.out.print("Masukkan uas : ");uas[i] = sc.nextInt(); System.out.print("Masukkan tugas : ");tugas[i] = sc.nextInt(); } System.out.println("=========================================== "); } void Hitung() { for (i=1; i<=data; i++) { nilai[i]=(uts[i]*0.35)+(uas[i]*0.35)+(tugas[i]*0.3); } } void CetakIP() { System.out.println(" "); System.out.println(" "); System.out.println("
DAFTAR NILAI MAHASISWA");
System.out.println("============================================== === "); System.out.println("NAMA
UTS
UAS
TUGAS NILAI");
System.out.println("============================================== === "); 16 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
Terttiaavini, S.Kom.,M.Kom
for (i=1; i<=data; i++) {
"+tugas[i]+"
System.out.println(nama[i]+" "+nilai[i]); }
"+uts[i]+"
"+uas[i]+"
System.out.println("============================================== === "); } } class LatClass2 { public static void main(String[] args) { Mhs M = new Mhs(); M.IsiData(); M.Hitung(); M.CetakIP(); } }
17 | Universitas Islam Negeri Raden Patah
ANALISA PEMROGRAMAN BERORIENTASI OBJEK
18 | Universitas Islam Negeri Raden Patah
Terttiaavini, S.Kom.,M.Kom