www.astonfreddy.com
PENGANTAR Revisi RPS
Deskripsi Singkat :
• Mata Kuliah Analisan dan Perancangan Sistem Informasi merupakan mata kuliah yang membekali pengetahuan dan
keterampilan mahasiswa untuk lebih mampu menjelaskan urutan dalam perancangan suatu kebutuhan sebuah sistem
informasi dan bagaimana merancang aplikasi sistem informasi tersebut.
• Topik utama dalam mata kuliah ini yaitu,
1. Pendahuluan - pengertian sistem dan analisis system 9. Perancangan sistem terstruktur
2. Sistem Informasi 10. Perancangan sistem terinci (1)
3. Analisa Sistem (2) 11. Pernacangan system terinci (2)
4. Disain Sistem (1) 12. Pendekatan perancangan Database terinci
5. Disain Sistem (2) 13. Perancangan sistem berorientasi objek
6. Flowchart 14. Perancangan sistem berorientasi UML
7. Review Tugas kelompok - PRESENTASI 15. Review Tugas Kelompok – PRESENTASI
8. UJIAN TENGAH SEMESTER 16. Ujian Akhir Semester
2
OBJECT ORIENTATION
3
METODOLOGI
• Metodologi adalah cara sistematis untuk mengerjakan analisis dan desain. Penggunaan
metodologi memudahkan tim pengembang untuk merencanakan dan mengembangkan
sistem, menghilangkan perbedaan notasi untuk hal yang sama.
• Metodologi :
• Coad Yourdon -OOAD- (Peter Coad dan Edward Yourdon)
• Object Modeling Technique -OMT- (James Rumbaugh)
• Object Oriented Software Engineering –OOSE- (Ivar Jacobson)
4
PENDEKATAN TERSTRUKTUR VS PENDEKATAN OBJEK :
• Pendekatan Terstruktur :
Dekomposisi permasalahan dilakukan
berdasarkan fungsi atau proses
secara hirarki, mulai dari konteks
sampai dengan proses yang paling
kecil
• Pendekatan Objek :
Dekomposisi permasalahan dilakukan
berdasarkan objek - objek yang ada
dalam sistem.
5
KONSEP OOD (Object Oriented Analysis Design)
• Metodologi berorientasi objek adalah suatu strategi pembangunan perangkat lunak sebagai kumpulan objek yang berisi data dan
operasi yang diberlakukan terhadapanya.
• Analisis dan disain berorientasi objek adalah cara baru dalam memikirkan suatu masalah dengan menggunakan model yang dibuat
menurut konsep sekitar dunia nyata. Dasar pembuatan adalah objek, yang merupakan kombinasi antara struktur data dan perilaku
dalam satu entitas.
• OOD adalah metode untuk mengarahkan arsitektur software yang didasarkan pada manipulasi objek-objek sistem atau subsistem.
• OOA mempelajari permasalahan dengan menspesifikasikannya atau mengobservasi permasalahn tersebut dengan menggunakan
metode berorientasi objek. Biasanya analisa sistem dimulai dengan adanya dokumen permintaan (requirement) yang diperoleh dari
semua pihak yang berkepentingan. (Misal: klien,developer, pakar, dan lain-lain).
• Dokumen permintaan memiliki 2 fungsi yaitu : memformulasikan kebutuhan klien dan membuat suatu daftar tugas. Analisis
berorientasi obyek (OOA) melihat pada domain masalah, dengan tujuan untuk memproduksi sebuah model konseptual informasi
yang ada di daerah yang sedang dianalisis. Model analisis tidak mempertimbangkan kendala-kendala pelaksanaan apapun yang
mungkin ada, seperti konkurensi, distribusi, ketekunan, atau bagaimana sistem harus dibangun. Kendala pelaksanaan ditangani
selama desain berorientasi objek (OOD).
6
KARAKTERISTIK
1. Objek
• Objek adalah benda secara fisik dan konseptual yang ada di sekitar kita. Sebuah objek memiliki keadaan sesaat yang disebut state.
• Objek dapat kongkrit, seperti halnya arsip dalam sistem, atau konseptual seperti kebijakan penjadwalan dalam multiprocessing pada
sistem operasi.
• Dua objek dapat berbeda walaupun bila semua nilai atributnya identik.
2. Kelas Objek
• Kelas merupakan gambaran sekumpulan Objek yang terbagi dalam atribut, operasi, metode, hubungan, dan makna yang sama.
• Suatu kegiatan mengumpulkan data (atribut) dan perilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup.
• Kelas Objek merupakan wadah bagi Objek. Dapat digunakan untuk menciptakan Objek.
• Objek mewakili fakta/keterangan dari sebuah kelas.
• Istilah-istilah Objek
Atribut : Data item yang menegaskan Objek.
Operasi : Fungsi di dalam kelas yang dikombinasikan ke bentuk tingkah laku kelas.
Metode : Pelaksanaan prosedur (badan dari kode yang mengeksekusi respon terhadap permintaan objek lain di dalam sistem).
7
CLASS vs OBJECT
Object
Class
Data
Member
Methods
8
KARAKTERITIK METODOLOGI BERORIENTASI OBJEK
1. Encapsulation (Pengkapsulan)
a. Encapsulation merupakan dasar untuk pembatasan ruang lingkup program terhadap data yang diproses.
b. Data dan prosedur atau fungsi dikemas bersama-sama dalam suatu objek, sehingga prosedur atau fungsi lain dari luar tidak dapat
mengaksesnya.
c. Data terlindung dari prosedur atau objek lain, kecuali prosedur yang berada dalam objek itu sendiri.
d. Contoh : Data Nasabah Bank
2. Inheritance (Pewarisan)
a. Inheritance adalah teknik yang menyatakan bahwa anak dari objek akan mewarisi data/atribut dan metode dari induknya langsung.
b. Atribut dan metode dari objek dari objek induk diturunkan kepada anak objek, demikian seterusnya.
c. Inheritance mempunyai arti bahwa atribut dan operasi yang dimiliki bersama di anatara kelas yang mempunyai hubungan secara
hirarki.
d. Suatu kelas dapat ditentukan secara umum, kemudian ditentukan spesifik menjadi subkelas. Setiap subkelas mempunyai hubungan
atau mewarisi semua sifat yang dimiliki oleh kelas induknya, dan ditambah dengan sifat unik yang dimilikinya.
e. Kelas Objek dapat didefinisikan atribut dan service dari kelas Objek lainnya.
f. Inheritance menggambarkan generalisasi sebuah kelas..
9
CONTOH
• Encapsulation (Pengkapsulan)
• Syarat Encapsulation
Untuk mengimplementasikan sebuah konsep encapsulation,
dibutuhkan syarat sebagai berikut:
• Data dan fungsi yang disembunyikan harus berlabel private atau
protected(jika dibutuhkan untuk hubungan antar class), agar tidak bisa
diakses secara sembarang dan disalahgunakan.
• Data dan fungsi yang digunakan untuk antarmuka harus berlabel public
10
CONTOH
Inheritance (Pewarisan)
11
KARAKTERITIK METODOLOGI BERORIENTASI OBJEK
3. Polymorphism (Polimorfisme)
a. Polimorfisme yaitu konsep yang menyatakan bahwa seuatu yang sama dapat mempunyai bentuk dan perilaku berbeda.
b. Polimorfisme mempunyai arti bahwa operasi yang sama mungkin mempunyai perbedaan dalam kelas yang berbeda.
c. Kemampuan objek-objek yang berbeda untuk melakukan metode yang pantas dalam merespon message yang sama.
d. Seleksi dari metode yang sesuai bergantung pada kelas yang seharusnya menciptakan Objek.
e. Terdapat :
1. Static Polymorphism (Polimorfisme statis); menggunakan method overloading
2. Dynamic Polymorphism (Polimorfisme dinamis); menggunakan method overriding
f. Contoh Polymorphism:
implementasikan ilustrasi 2disamping sebagai contoh Polymorphism
Terdapat 3 kelas yang dibutuhkan yaitu Manusia, Laki_Laki, dan Perempuan
Pada kelas Manusia memiliki method Hitung Berat Badan Ideal (HtgBBI())
bertipe fungsi dengan nilai balik bernilai double
Pada kelas Laki_Laki dan Perempuan memiliki:
Atribut TinggiBadan bertipe double
Method Setter/Getter
Method HitungBeratBadanIdeal() bertipe fungsi dengan nilai balik bernilai double
12
CONTOH
13
CONTOH
15
PEMODELAN BERORIENTASI OBJEK
16
PEMODELAN BERORIENTASI OBJEK
2. Kelas
• Suatu object class menggambarkan kumpulan dari objek yang mempunyai sifat (atribut), perilaku umum (operasi), relasi umum
dengan objek lain dan semantik umum.
• Contoh : Orang, perusahaan , binatang, proses adalah objek.
• Setiap orang mempunyai umur, IQ, dan mungkin pekerjaan. Setiap proses mempunyai pemilik, prioritas, list dari sumber daya
yang dibutuhkan.
• Objek dan object class sering sama sebagai benda dalam deskripsi masalah.
2. Diagram Objek
• Diagram objek melengkapi notasi grafik untuk pemodelan objek, kelas dan relasinya dengan yang lain. Diagram
objek bermanfaat untuk pemodelan abstrak dan membuat perancangan program.
1. Kelas dan Objek
• Konsep fundamental dalam analisis berorientasi objek adalah objek itu sendiri. Sebuah objek adalah sebuah entitas yang mencakup data dan
metode.
• Kelas merupakan satu atau lebih objek dengan persamaan atribut dan metode, sedangkan kelas-&-objek adalah kelas dengan satu atau lebih
objek di dalamnya. Nama kelas adalah kata benda tunggal, atau kata sifat dan kata benda. Nama dari kelas-&-objek harus dapat menjelaskan
objek tunggal dari suatu kelas.
17
PEMODELAN BERORIENTASI OBJEK
18
19
20
PEMODELAN BERORIENTASI OBJEK
21
PEMODELAN BERORIENTASI OBJEK
22
PEMODELAN BERORIENTASI OBJEK
• Atribut • Metode
Atribut menggambarkan data yang dapat memberikan Metode (method) disebut juga service atau operator adalah
informasi mengenai kelas atau objek dimana atribut prosedur atau fungsi seperti yang terdapat dalam bahasa Pascal
tersebut berada. pada umumnya, tetapi cara kerjanya agak berlainan. Metode
adalah subprogram yang tergabung dalam objek bersama-sama
dengan atribut. Metode dipergunakan untuk pengaksesan
terhadap data yang terdapat dalam objek tersebu
23
PEMODELAN BERORIENTASI OBJEK
• Pesan (Message)
Message merupakan cara untuk berhubungan antara satu objek dengan objek lain. Suatu pesan dikirimkan oleh suatu objek kepada objek
tertentu dapat digambarkan dengan anak panah.
24
PEMODELAN BERORIENTASI OBJEK
25
JENIS UML
26
JENIS UML
2. Class Diagram
• Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari
pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem,
sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class diagram
menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti
containment , pewarisan, asosiasi, dan lain-lain.
• Class memiliki tiga area pokok :
1. Nama (dan stereotype)
2. Atribut
3. Metoda
• Atribut dan metoda dapat memiliki salah satu sifat berikut :
1. Private , tidak dapat dipanggil dari luar class yang bersangkutan
2. Protected , hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya
3. Public , dapat dipanggil oleh siapa saja
27
JENIS UML
Class dapat merupakan implementasi dari sebuah interface , yaitu class abstrak yang hanya memiliki metoda. Interface tidak dapat
langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi
metoda pada saat run-time .
Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package . Kita juga dapat membuat diagram yang terdiri
atas package.
28
JENIS UML
3. Statechart diagram
• Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek
pada sistem sebagai akibat dari stimuli yang diterima.
• Pada umumnya statechart diagram menggambarkan class tertentu (satu class dapat memiliki lebih dari satu
statechart diagram ). Dalam UML, state digambarkan berbentuk segiempat dengan sudut membulat dan memiliki nama
sesuai kondisinya saat itu.
• Transisi antar state umumnya memiliki kondisi guard yang merupakan syarat terjadinya transisi yang bersangkutan,
dituliskan dalam kurung siku. Action yang dilakukan sebagai akibat dari event tertentu dituliskan dengan diawali garis
miring. Titik awal dan akhir digambarkan berbentuk lingkaran berwarna penuh dan berwarna setengah.
29
JENIS UML
4. Activity Diagram
• Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-
masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat
menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state
diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di- trigger oleh selesainya
state sebelumnya ( internal processing ). Oleh karena itu activity diagram tidak menggambarkan behaviour internal
sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-
jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih.
Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan
sistem untuk melakukan aktivitas. Sama seperti state , standar UML menggunakan segiempat dengan sudut membulat
untuk menggambarkan aktivitas. Decision digunakan untuk menggambarkan behaviour pada kondisi tertentu. Untuk
mengilustrasikan proses-proses paralel ( fork dan join ) digunakan titik sinkronisasi yang dapat berupa titik, garis
horizontal atau vertikal. Activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan
objek mana yang bertanggung jawab untuk aktivitas tertentu.
30
JENIS UML
5. Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display , dan
sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu)
dan dimensi horizontal (objek-objek yang terkait). Sequence diagram biasa digunakan untuk menggambarkan skenario atau
rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali
dari apa yang men- trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa
yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis
berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi/metoda
dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah
message.
Untuk objek-objek yang memiliki sifat khusus, standar UML mendefinisikan icon khusus untuk objek boundary, controller dan
persistent entity .
31
JENIS UML
6. Collaboration Diagram
Collaboration diagram juga menggambarkan interaksi antar objek seperti sequence diagram , tetapi lebih menekankan pada
peran masing-masing objek dan bukan pada waktu penyampaian message . Setiap message memiliki sequence number , di
mana message dari level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki prefiks yang sama.
7. Component Diagram
Component diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan ( dependency ) di
antaranya. Komponen piranti lunak adalah modul berisi code , baik berisi source code maupun binary code , baik library maupun
executable , baik yang muncul pada compile time, link time , maupun run time . Umumnya komponen terbentuk dari beberapa class
dan/atau package , tapi dapat juga dari komponen-komponen yang lebih kecil. Komponen dapat juga berupa interface , yaitu kumpulan
layanan yang disediakan sebuah komponen untuk komponen lain.
32
JENIS UML
8. Deployment Diagram
Deployment/physical diagram menggambarkan detail bagaimana komponen di- deploy dalam infrastruktur sistem, di mana
komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut,
spesifikasi server, dan hal-hal lain yang bersifat fisikal Sebuah node adalah server, workstation , atau piranti keras lain
yang digunakan untuk men- deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan
requirement dapat juga didefinisikan dalam diagram ini.
Langkah-Langkah Penggunaan UML
Berikut ini adalah tips pengembangan piranti lunak dengan menggunakan UML:
a. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul.
b. Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat fungsionalitas yang harus
disediakan oleh sistem. Kemudian perhalus use case diagram dan lengkapi dengan requirement, constraints dan
catatan-catatan lain.
c. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.
d. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga harus disediakan oleh sistem.
33
JENIS UML
34
JENIS UML
35
TOOLS UML
36
TUGAS 13 - KELOMPOK
Buatlah rancangan untuk Pemodelannya dari sistim yang kalian buat berdasarkan sistem yang kalian bangun, dan
penjelasannya.
1. Diagram Objecknya termasuk Diagram use casenya
Disubmit tanggal 29 November 2020 pukul 23:59 dengan format yang standar
Walau tugas kelompok, proposal di submit ke sistem e-learning oleh semua anggota
37
+62 811 9500 111 Aston.Freddy@yahoo.com
38