Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
+Makan +Berpindah_alamat
-Nama -Usia
Manusia
+Geserin Delta : bool +Pilihin Point : object : bool
-Warna -Posisi
-Jari-jari
Lingkaran
Gambar 2.3 Operasi
2.4.3 Hubungan Relationship
Ketika menggambarkan kelas-kelas dan objek-objek, akan terlihat bahwa kebanyakan kelas dan objek adalah berdiri sendiri. Pada kenyataannya, hampir semua kelas dan
objek saling bekerja sama satu sama lain sehingga pada pemodelan kelas dan objek, setelah kelas dan objek didefinisikan, juga dimodelkan bagaimana kelas-kelas dan
objek-objek saling berhubungan.
2.5 UML Unified Modelling Language
UML adalah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang
dibangun menggunakan pemrograman berorientasi objek Fowler, 2005: 1. UML merupakan standar yang relatif terbuka yang dikontrol oleh Object Management
Group OMG, yang terdiri dari banyak perusahaan. UML lahir dari penggabungan banyak bahasa pemodelan grafis berorientasi objek antara lain metode Booch oleh
Graddy Booch, metode Object Modelling Technique OMT oleh DR. James Rumbaugh dan metode Object Oriented Software Engineering OOSE oleh Ivar
Jacobson.
Dengan UML, dapat dibuat model untuk perangkat lunak, dimana perangkat lunak tersebut dapat berjalan pada perangkat keras, sistem operasi dan jaringa n
apapun, serta ditulis dalam bahasa pemrograman apapun. Namun, karena UML juga menggunakan kelas dan operasi dalam konsep dasarnya, maka UML lebih cocok
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
untuk pemodelan perangkat lunak dalam bahasa berorientasi objek seperti C++, Java, C atau VB.NET.
2.5.1 Analisis Persyaratan dengan UML
Analisis persyaratan meliputi usaha untuk mengetahui apa kemampuan sebuah sistem yang diinginkan pengguna dan pelanggan dari sebuah pengembangan perangkat lunak.
Beberapa diagram yang digunakan dalam analisis persyaratan yaitu: 1.
Use case diagram yang digunakan untuk menggambarkan bagaimana orang-orang berinteraksi dengan sistem tersebut.
2. Activity diagram yang berfungsi menunjukkan aliran kerja organisasi tersebut
yang dapat menunjukkan bagaimana aktivitas interaksi antara perangkat lunak dan manusia. Activity diagram dapat menunjukkan konteks use case dan juga rincian
bagaimana sebuah use case berjalan. 3.
Class diagram yang diambil dari sudut pandang konseptual, dapat berfungsi untuk membangun kosakata yang besar mengenai domain tersebut.
4. Package diagram untuk mengelompokkan kelas-kelas.
2.5.2 Desain dengan UML
Beberapa diagram yang digunakan dalam mendesain sistem yaitu: 1.
Use case diagram yang digunakan untuk menggambarkan bagaimana orang-orang berinteraksi dengan sistem tersebut.
2. Sequence diagram untuk mengetahui apa yang terjadi dalam perangkat lunak.
3. Class diagram dari sudut perangkat lunak. Diagram ini menunjukkan kelas yang
terdapat di dalam perangkat lunak dan bagaimana mereka saling berhubungan. 4.
Package diagram untuk menunjukkan organisasi berskala besar perangkat lunak tersebut.
5. Penggunaan deployment diagram untuk menunjukkan susunan fisik perangkat
lunak tersebut.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
2.5.3 Teknik Analisis dan Desain Sistem dengan UML
Teknik yang digunakan dalam pemodelan analisis dan desain sistem menggunakan UML di antaranya:
1. Pengidentifikasian fungsionalitas sistem dengan penggunaan use case diagram.
2. Pengidentifikasian skenario sistem berdasarkan use case diagram dengan
penggunaan activity diagram. 3.
Pengidentifikasian kelas-kelas yang terdapat dalam sistem dengan penggunaan class diagram.
4. Pengidentifikasian hubungan inheritance antara kelas.
5. Pengidentifikasian atribut-atribut yang dimiliki setiap kelas.
6. Pengelompokan kelas-kelas dalam package-package tertentu dengan penggunaan
package diagram. 7.
Pada setiap use case, dilakukan pengidentifikasian operasi-operasi yang dimiliki setiap kelas yang terlibat dalam use case tersebut.
8. Pengidentifikasian objek-objek, serta penggunaan sequence diagram untuk
mendeskripsikan aliran komunikasi antara objek-objek pada setiap use case. 9.
Desain antarmuka sistem dan spesifikasi detail dari bagian-bagian antarmuka yang berhubungan dengan fungsi sistem.
10. Pengidentifikasian arsitektur fisik sistem dan kebutuhan sistem dengan
penggunaan deployment diagram.
Teknik yang digunakan tidak terbatas pada teori yang diperoleh, namun berdasarkan kebutuhan pada saat analisis dan desain sistem. Dalam pembangunan
suatu sistem, jenis diagram yang digunakan disesuaikan dengan kebutuhannya.
2.5.4 Diagram-Diagram dalam UML
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
Dalam UML, dikenal diagram-diagram yang digunakan untuk membantu dalam analisis dan desain sistem. Dalam Tugas Akhir ini, ada beberapa diagram yang
digunakan, yaitu use case diagram, activity diagram, class diagram, sequence diagram, package diagram, dan deployment diagram.
2.5.4.1 Use Case Diagram
Use case diagram mendeskripsikan interaksi tipikal antara para pengguna sistem dengan sistem itu sendiri, dengan memberi sebuah narasi tentang bagaimana sistem
tersebut digunakan Fowler, 2005: 50. Use case diagram menampilkan aktor, use case, dan hubungan diantara mereka yang dijabarkan sebagai berikut:
1. Aktor
Aktor adalah seseorang atau sesuatu yang berinteraksi dengan sistem yang sedang dikembangkan. Aktor bersifat eksternal, yaitu berada di luar lingkup sistem yang
sedang dikembangkan Nugroho, 2005: 56. Pengguna sistem merupakan aktor yang umum di setiap sistem. Aktor disimbolkan dengan:
Gambar 2.4 Aktor
Setiap use case diagram memiliki aktor utama yang meminta sistem untuk memberi sebuah layanan. Aktor utama adalah aktor dengan tujuan yang akan
dipenuhi oleh use case diagram. Aktor selain aktor utama dikenal sebagai aktor sekunder.
2. Use Case
Use case menggambarkan bagaimana seseorang akan mengunakan atau memanfaatkan sistem. Use case dapat membantu untuk berfokus pada apa yang
penting, yaitu menentukan apa yang dibutuhkan serta harapan pengguna terhadap
Aktor
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
sistem yang dikembangkan. Pengidentifikasian use case dapat dilakukan dengan melakukan identifikasi pekerjaan-pekerjaan dan fungsi-fungsi apa yang dilakukan
aktor untuk sistem. Use case disimbolkan dengan:
Us e cas e
Gambar 2.5 Use Case
3. Hubungan relationship
Aktor dan use case masing-masing tidak berdiri sendiri, melainkan saling terhubung dengan apa yang dinamakan hubungan. Ada beberapa hubungan yang
dikenal dalam use case diagram, yaitu: a.
Hubungan asosiasi association relationship Hubungan asosiasi merupakan hubungan yang biasa terjadi antara aktor dan
use case yang menggambarkan bahwa aktor melakukan apa yang dinyatakan dalam use case. Hubungan disimbolkan dengan:
Aktor Use case
Gambar 2.6 Hubungan Asosiasi
b. Hubungan cakupan include relationship
Hubungan cakupan memungkinkan suatu use case untuk menggunakan fungsionalitas yang disediakan oleh use case lainnya. Hubungan ini dapat
membantu dalam beberapa kasus seperti pada kasus dimana dua atau lebih use case memiliki sejumlah besar fungsi yang identik, maka fungsi-fungsi yang
sama dapat dipisahkan menjadi suatu use case tersendiri, sehingga use case lain dapat memiliki hubungan cakupan dengan use case yang baru. Hubungan
cakupan disimbolkan dengan:
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
NewUseCase1 NewUseCase2
incl ude
Gambar 2.7 Hubungan Cakupan
c. Hubungan perluasan extends relationship
Hubungan perluasan memungkinkan suatu use case memiliki kemungkinan untuk memperluas fungsionalitas yang disediakan use case lainnya. Hubungan
perluasan disimbolkan dengan:
NewUseCase1 NewUseCase2
extend
Gambar 2.8 Hubungan Perluasan
d. Hubungan generalisasi generalization relationship
Hubungan generalisasi digunakan untuk memperlihatkan bahwa beberapa aktor atau use case memiliki sesuatu hal yang bersifat umum. Generalisasi
berguna untuk mengelompokkan sifat-sifat yang umum dari sejumlah aktor atau use case menjadi aktor atau use case tunggal, kemudian bisa mewariskan
sifat-sifat umum tadi ke sejumlah aktor atau use case yang lain. Hubungan generalisasi disimbolkan dengan:
Gambar 2.9 Hubungan generalisasi
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
2.5.4.2 Activity Diagram
Activity diagram secara sepintas mirip dengan diagram alir flowchart yang memperlihatkan aliran kendali dari suatu activity ke activity lainnya. Activity diagram
juga dapat digunakan untuk memodelkan langkah-langkah dalam sebuah use case.
Dalam membangun activity diagram dikenal beberapa komponen, yaitu: 1.
Awal dan akhir activity Simbol yang digunakan untuk awal activity yaitu:
Gambar 2.10 Simbol Awal Activity
Mirip dengan simbol awal activity, simbol yang digunakan untuk menandakan akhir dari activity diagram yaitu:
Gambar 2.11 Simbol Akhir Activity
2. Action state dan Activity state
Action state merupakan langkah-langkah dalam activity diagram, dimana state mencerminkan eksekusi dari suatu aksi pada objek. Misalnya pemanggilan operasi
pada sebuah objek, menciptakan objek, atau menghancurkan objek. Pekerjaan suatu action state secara umum dipertimbangkan mengambil waktu eksekusi yang
tidak signifikan. Action state pada umumnya bersifat atomik, pekerjaannya tidak dapat didekomposisi lebih lanjut. Action state pada activity diagram disimbolkan
dengan:
X = X + 1
Gambar 2.12 Action State
Mulai
Selesai
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
Activity state dapat didekomposisi lebih lanjut, activity state dapat ditampilkan dengan activity diagram yang lain. Activity state tidak bersifat atomik,
yang secara umum berarti membutuhkan beberapa waktu untuk terselesaikan dengan tuntas. Activity state pada activity diagram disimbolkan dengan:
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
2.5.4.3 Class Diagram
Class diagram mendeskripsikan jenis-jenis objek dalam sistem dan berbagai macam hubungan yang terdapat diantara mereka. Class diagram juga menunjukkan properti
dan operasi sebuah kelas dan batasan-batasan yang terdapat dalam hubungan- hubungan objek tersebut. Atribut mewakili fitur-fitur struktural dari suatu kelas.
Ada beberapa elemen yang diperlukan dalam membangun sebuah class diagram, yaitu:
1. Kelas, Atribut, dan Operasi
Kelas merupakan pendeskripsian sekumpulan objek-objek yang memiliki, atribut, operasi, hubungan, serta behavior yang mirip. Atribut merupakan informasi-
informasi atau ciri-ciri yang dimiliki oleh kelas, sedangkan operasi berhubungan dengan perilaku yang berhubungan dengan suatu kelas. Operasi merupakan suatu
kegiatan yang dimengerti sebuah kelas untuk dilakukan Fowler, 2005: 67.
Gambar 2.17 Kelas, Atribut, dan Operasi
2. Hubungan
Hubungan memiliki beberapa bentuk, yaitu: a.
Hubungan Asosiasi Asosiasi merupakan hubungan antara dua atau lebih kelas yang
menspesifikasikan hubungan antara bagian-bagian mereka. Hubungan antara dua buah kelas mengindikasikan bahwa objek pada kelas yang satu
“mengenali” objek pada kelas yang lain dan dapat mengirimkan pesan kepada objek tersebut. Asosiasi memiliki multiplisitas yang memberi petunjuk tentang
banyaknya instansi dari suatu kelas berhubungan dengan satu instansi kelas
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
yang lain pada satu waktu tertentu. Dalam UML, notasi-notasi multiplisitas yang dapat digunakan yaitu:
Tabel 2.1 Multiplisitas
Multiplisitas Arti
Satu 1
Nol atau banyak tak terbatas 0..
Satu atau banyak 1..
Nol atau satu asosiasi pilihan 0..1
Jangkauan tertentu 2..4
Multiple, jangkauan disjoint 2, 4..6, 8
Asosiasi biasanya diberi nama untuk menggambarkan artinya. Asosiasi juga memiliki role, yaitu ujung dari suatu asosiasi yang terhubung ke kelas.
Gambar 2.18 Hubungan Asosiasi
b. Hubungan Agregasi dan Komposisi
Agregasi merupakan bentuk hubungan antara suatu keseluruhan ke bagian- bagiannya.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
Gambar 2.19 Hubungan Agregasi
Komposisi adalah bentuk yang lebih kuat dari agregasi. Bagiannya merupakan milik satu-satunya dari keseluruhan.
Gambar 2.20 Hubungan Komposisi
c. Hubungan Generalisasi
Generalisasi diperlukan untuk memperlihatkan hubungan pewarisan inheritance antarunsur dalam class diagram. Pewarisan memungkinkan suatu
kelas mewarisi semua atau sebagian atribut, operasi, hubungan, serta semantik dari kelas yang berada di atasnya dalam hierarki pewarisan.
Gambar 2.21 Hubungan Generalisasi
d. Hubungan Dependency
Dependency menghubungkan dua kelas atau lebih dimana jika terdapat perubahan pada kelas yang satu, maka akan memaksa terjadinya perubahan
pada kelas yang lainnya walaupun tidak terdapat asosiasi yang jelas diantara mereka.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
e. Hubungan Realisasi
Hubungan realisasi digunakan untuk memperlihatkan hubungan antara suatu kelas dengan interface-nya, antara package dengan interface-nya, antara
komponen dengan interface-nya, atau antara use case dengan realisasi use case yang bersangkutan.
Gambar 2.22 Hubungan Realisasi
3. Constraint dan Notes
Constraint dan notes memberikan keterangan pada bagian-bagian seperti asosiasi, atribut, operasi, dan kelas. Constraint merupakan batasan semantik yang ditandai
dengan ekspresi boolean.
Gambar 2.23 Constraint dan Notes
4. Stereotype
Kelas mempunyai stereotype, yang menyediakan kemampuan untuk membuat
elemen pemodelan yang baru. Beberapa stereotype yang umum untuk suatu kelas
adalah: entiti, boundary, dan control.
Kelas entiti merefleksikan entiti dunia nyata. Kelas entiti biasanya independent dari sekitarnya, dan tidak tahu bagaimana cara sekitarnya
berkomunikasi dengan sistem. Aplikasinya independent, artinya bisa digunakan
untuk lebih dari satu aplikasi. Kelas entiti disebut dengan kelas domain karena berhubungan dengan abstraksi entiti dunia nyata. Kelas boundary menangani
komunikasi antara lingkungan sistem dan yang ada di dalam sistem, menyediakan
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
interface bagi user atau sistem lain misalnya interface ke aktor. Kelas control memodelkan urutan behavior spesifik terhadap satu atau lebih use case. Kelas
control mengkoordinasi event yang diperlukan untuk merealisasikan behavior spesifik dalam use case. Kelas control biasanya merupakan kelas yang tergantung
pada aplikasi. Kelas control bertanggung jawab terhadap arus event dalam use case.
2.5.4.4 Sequence Diagram
Sequence diagram digunakan untuk melihat behavior beberapa objek di dalam use case tunggal. Sequence diagram baik untuk memperlihatkan kolaborasi antarobjek.
Masing-masing sequence diagram menggambarkan aliran-aliran pada suatu use case. Sequence diagram dapat dibaca dengan melihat kepada objek-objek dan
pesan-pesan message. Objek-objek yang berperan dalam aliran diperlihatkan pada kotak empat persegi panjang yang melintas pada bagian atas diagram. Setiap objek
memiliki garis hidup lifeline, yang digambarkan sebagai garis vertikal di bawah nama suatu objek. Garis hidup dimulai pada saat objek terbentuk. Pesan-pesan
digambarkan di antara garis hidup yang dimiliki dua objek untuk memperlihatkan bagaimana objek-objek itu saling berkomunikasi.
: Aktor
objek1:Class1 objek2:Class2
Gambar 2.24 Sequence Diagram
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
2.5.4.5 Package Diagram
Kelas menunjukkan bentuk dasar penyusunan sebuah sistem borerientasi objek. Meskipun kelas berguna, dibutuhkan sesuatu yang lebih untuk menyusun sistem-
sistem yang lebih besar. Sebuah package adalah sebuah bentuk pengelompokan yang memungkinkan untuk mengambil setiap bentuk di UML dan mengelompokkan
elemen-elemennya dalam tingkatan unit yang lebih tinggi. Kegunaan package yang umum adalah mengelompokkan kelas. Sebuah package dapat terdiri dari sub package
dan kelas. Setiap kelas harus memiliki nama unik di dalam packagenya. Dalam diagram, package disimbolkan dengan sebuah folder berlabel:
NewPackage
Gambar 2.25 Package Diagram
2.5.4.6 Deployment Diagram
Deployment diagram menunjukkan susunan fisik sebuah sistem, menunjukkan bagian perangkat lunak mana yang berjalan pada perangkat keras yang mana. Deployment
diagram menggambarkan simpul node yang saling berhubungan. Simpul adalah elemen fisik yang ada saat aplikasi dijalankan dan mencerminkan suatu sumber daya
komputasi, secara umum menggunakan kapasitas memori dan kemampuan pemrosesan. Diagram dengan simpul umum digunakan pada pemodelan client server
dimana komponen-komponen suatu aplikasi disebarkan pada tiap-tiap server dengan tujuan mencapai kinerja yang optimum. Simpul disimbolkan dengan kubus. Hubungan
antarsimpul dilambangkan dengan garis lurus.
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
Processor Device
Gambar 2.26 Simpul-Simpul pada Deployment Diagram
Processor Device
Gambar 2.27 Hubungan Antarsimpul pada Deployment Diagram
Shafira Guslina : Perancangan Perangkat Lunak Prediksi Pergerakan Harga Saham Dengan Metode Relative Strength Index RSI, 2009.
BAB 3
ANALISIS DAN PERANCANGAN
3.1 Analisis