Senin, 19 Desember 2011

CLASS DIAGRAM

Diagram kelas adalah diagram UML yang menggambarkan kelas-kelas dalam sebuah sistem dan hubungannya antara satu dengan yang lain, serta dimasukkan pula atribut dan operasi.

[sunting] Tahap

  • Mengidentifikasi objek dan mendapatkan kelas-kelasnya.
  • Mengidentifikasi atribut kelas-kelas.
  • Mulai mengkonstruksikan kamus data.
  • Mengidentifikasi operasi pada kelas-kelas.
  • Menggunakan teknik kartu CRC untuk memperlihatkan pertanggungjawaban dan kolaborasi.
  • Mengidentifikasikan hubungan antar kelas dengan menggunakan asosiasi, agregasi dan inheritance.
  • Iterate dan memoles model.

USECASE DIAGRAM

Diagram Use Case adalah diagram yang menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem tersebut berinteraksi dengan dunia luar dan menjelaskan sistem secara fungsional yang terlihat user. Biasanya dibuat pada awal pengembangan. Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan system untuk melakukan pekerjaan-pekerjaan tertentu. Use case diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada sistem. Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain.
Use case diagram adalah gambaran graphical dari beberapa atau semua actor, use case, dan interaksi diantara komponen-komponen tersebut yang memperkenalkan suatu sistem yang akan dibangun. Use case diagram menjelaskan manfaat suatu sistem jika dilihat menurut pandangan orang yang berada di luar sistem. Diagram ini menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem tersebut berinteraksi dengan dunia luar.
Use case diagram dapat digunakan selama proses analisis untuk menangkap requirements sistem dan untuk memahami bagaimana sistem seharusnya bekerja. Selama tahap desain, use case diagram berperan untuk menetapkan perilaku (behavior) sistem saat diimplementasikan. Dalam sebuah model mungkin terdapat satu atau beberapa use case diagram. Kebutuhan atau requirements sistem adalah fungsionalitas apa yang harus disediakan oleh sistem kemudian didokumentasikan pada model use case yang menggambarkan fungsi sistem yang diharapkan (use case), dan yang mengelilinginya (actor), serta hubungan antara actor dengan use case (use case diagram) itu sendiri.
Notasi Gambar Yang Diapakai Use Case
  1. Actor
    Seorang / sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu.
    Actor
  2. Case
    Menggambarkan deskripsi yang melibatkan actor.
    Case
    Contoh Case - Actor:
    Contoh Case - Actor
  3. Extend
    Relasi yang digunakan jika use case yang satu mirip dengan use case yang lain.
  4. Include
    Relasi jika terdapat perilaku yang mirip dengan beberapa use case.
Cara Menemukan Use Case
  • Pola perilaku perangkat lunak aplikasi.
  • Gambaran tugas dari sebuah actor.
  • Sistem atau “benda” yang memberikan sesuatu yang bernilai kepada actor.
  • Apa yang dikerjakan oleh suatu perangkat lunak (bukan bagaimana cara mengerjakannya).
Komponen Pembentuk Use Case
Actor
Pada dasarnya actor bukanlah bagian dari use case diagram, namun untuk dapat terciptanya suatu use case diagram diperlukan beberapa actor. Actor tersebut mempresentasikan seseorang atau sesuatu (seperti perangkat, sistem lain) yang berinteraksi dengan sistem. Sebuah actor mungkin hanya memberikan informasi inputan pada sistem, hanya menerima informasi dari sistem atau keduanya menerima, dan memberi informasi pada sistem. Actor hanya berinteraksi dengan use case, tetapi tidak memiliki kontrol atas use case. Actor digambarkan dengan stick man. Actor dapat digambarkan secara secara umum atau spesifik, dimana untuk membedakannya kita dapat menggunakan relationship.
Contoh:
Ada beberapa kemungkinan yang menyebabkan actor tersebut terkait dengan sistem, antara lain:
  • Yang berkepentingan terhadap sistem dimana adanya arus informasi, baik yang diterimanya maupun yang dia inputkan ke sistem.
  • Orang ataupun pihak yang akan mengelola sistem tersebut.
  • External resource yang digunakan oleh sistem.
  • Sistem lain yang berinteraksi dengan sistem yang akan dibuat.
Use Case
Use case adalah gambaran fungsionalitas dari suatu sistem, sehingga customer atau pengguna sistem paham dan mengerti mengenai kegunaan sistem yang akan dibangun.
Catatan : Use case diagram adalah penggambaran sistem dari sudut pandang pengguna sistem tersebut (user), sehingga pembuatan use case lebih dititikberatkan pada fungsionalitas yang ada pada sistem, bukan berdasarkan alur atau urutan kejadian.
Cara menentukan Use Case dalam suatu sistem:
  • Pola perilaku peringkat lunak aplikasi
  • Gambaran tugas dari sebuah actor
  • Sistem atau “benda” yang memberikan sesuatu yang bernilai kepada actor
  • Apa yang dikerjakan oleh suatu perangkat lunak (bukan bagaimana cara mengerjakannya)
Relasi dalam Use Case
Ada beberapa relasi yang terdapat pada use case diagram:
  1. Association, menghubungkan link antar element.
  2. Generalization, disebut juga inheritance (pewarisan), sebuah elemen dapat merupakan spesialisasi dari elemen lainnya.
  3. Dependency, sebuah element bergantung dalam beberapa cara ke element lainnya.
  4. Aggregation, bentuk assosiation dimana sebuah elemen berisi elemen lainnya.
Tipe relasi / stereotype yang mungkin terjadi pada Use Case diagram:
  1. <<include>>, yaitu kelakuan yang harus terpenuhi agar sebuah event dapat terjadi, dimana pada kondisi ini sebuah use case adalah bagian dari use case lainnya.
  2. <<extends>>, kelakuan yang hanya berjalan di bawah kondisi tertentu seperti menggerakkan alarm.
  3. <<communicates>>, mungkin ditambahkan untuk asosiasi yang menunjukkan asosiasinya adalah communicates association . Ini merupakan pilihan selama asosiasi hanya tipe relationship yang dibolehkan antara actor dan use case.
Contoh Use Case Diagram
Contoh Use Case Diagram
Use Case Specification
  • Nama
  • Deskripsi Singkat
  • Aliran event (flow of event)
  • Relationship
  • Activity Diagram
  • Kebutuhan khusus (special requirement)
  • Pre-Condition
  • Post-Condition
Use Case Specification

Use Case Specification Table
Activity Diagram
Aliran Event Use Case
  • Memiliki sebuah flow normal dan dasar
  • Beberapa flow alternatif
    • Regular variant
    • Kasus-kasus ganjil
    • Exceptional flows, penanganan error
      Aliran Event Use Case
  • Scenario adalah sebuah instance dari sebuah use case
    Aliran Event Use Case
  • Activity diagram didalam model use case dapat digunakan untuk meng-capture aktifitas-aktifitas dalam sebuah use case
  • Sebenarnya merupakan flowchart, yang menunjukkan aliran kontrol activity ke activity

DIAGRAM SEQUENSE


Definisi:
    Sequence diagram adalah suatu diagram yang menggambarkan interaksi antar obyek dan mengindikasikan komunikasi diantara obyek-obyek tersebut. Diagram ini juga menunjukkan serangkaian pesan yang dipertukarkan oleh obyek-obyek yang melakukan suatu tugas atau aksi tertentu. Obyek-obyek tersebut kemudian diurutkan dari kiri ke kanan, aktor yang menginisiasi interaksi biasanya ditaruh di paling kiri dari diagram.Pada diagram ini, dimensi vertikal merepresentasikan waktu. Bagian paling atas dari diagram menjadi titik awal dan waktu berjalan ke bawah sampai dengan bagian dasar dari diagram. Garis Vertical, disebut  lifeline,  dilekatkan pada setiap obyek atau aktor. Kemudian, lifeline tersebut digambarkan menjadi kotak ketika obyek melakukan suatu operasi , kotak tersebut disebut activation box. Obyek dikatakan mempunyai live activation pada saat tersebut.Pesan yang dipertukarkan antar obyek digambarkan sebagai sebuah anak panah antara activation box pengirim dan penerima. Kemudian diatasnya diberikan  label  pesan.

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.

DIAGRAM DALAM UML

Diagram-Diagram yang ada dalam UML

Dalam kesempatan ini saya akan membagikan informasi mengenai Diagram-Diagram yang ada dalam UML.
Diagram-diagram yang ada dalam UML dapat dikelompokan menjadi 2 kelompok, yaitu diagram yang menggambarkan model struktur statis dari sistem (model statis) dan digram yang menggambarkan struktur dinamis dari sistem (model dinamis) (Arlow Jim, dan Ila Neustadt, 2002, “UML and The Unified Process”). Penjelasan lebih rinci silahkan lihat dibawah ini :
1. Model statis
Model statis adalah model yang menangkap bagian-bagian dari sistem dan struktur hubungan antar bagian dari sistem perangkat lunak. Diagram UML yang termasuk model statis yaitu:
a. Class diagram : menggambarkan kelas-kelas, interface dan kolaborasi serta hubungan diantaranya.
b. Object diagram : menggambarkan objek-objek yang ada dan hubungan diantaranya.
c. Component diagram : menggambarkan enkapsulasi kelas dan interface-nya, ports dan struktur internal yang terdiri atas komponen bersarang dan konektor.
d. Deployment diagram : menggambarkan konfigurasi node pada saat proses run-time dan komponen-komponennya.
e. Package diagram : menggambarkan dekomposisi dari sistem menjadi unit-unit dan hubungan ketergantungannya.
2.Model dinamis
Model dinamis menitikberatkan bagaimana bagian-bagian sistem saling berinteraksi untuk menghasilkan perilaku dari sistem perangkat lunak. Diagram UML yang termasuk model dinamis yaitu:
a. Use case diagram : menggambarkan hubungan antara aktor-aktor yang berhubungan dengan sistem dengan fitur (use case) yang ada.
b. Sequence diagram : memfokuskan pada identifikasi interaksi antar objek setiap waktu.
c. Communication diagram : memfokuskan pada komunikasi yang berhubungan dengan struktur dari objek yang terlibat dalam suatu tugas. Communication diagram bersama dengan sequence diagram adalah termasuk dalam diagram interaksi.
d. State diagram : menggambarkan status dari mesin yang terdiri atas status, transisi, event, dan aktivitas.
e. Activity diagram : menunjukkan struktur proses atau perhitungan lain sebagai aliran kontrol dan data dari langkah ke langkah dalam perhitungan.
f. Timing diagram : menyediakan perubahan statis yang menekankan pada waktu sebenarnya.
g. Interaction overview diagram : menunjukan layout dari activity diagram untuk memodelkan alur dari logic dalam sekumpulan interaksi.
Demikian pembahasan Diagram-Diagram yang ada dalam UML.
Diagram-Diagram yang ada dalam UML
Tag : pengertian activity diagram , pengertian statechart diagram , diagram pada UML , diagram dalam uml , definisi uml , penjelasan UML , communication diagram adalah , definisi activity diagram , pengertian diagram uml , penjelasan tentang diagram interaksi dalam uml

PENGERTIAN UML

UML (Unified Modeling Language) adalah sebuah bahasa untuk menetukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari system perangkat lunak, seperti pada pemodelan bisnis dan system non perangkat lunak lainnya.
UML merupakan suatu kumpulan teknik terbaik yang telah terbukti sukses dalam memodelkan system yang besar dan kompleks. UML tidak hanya digunakan dalam proses pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan.
BAGIAN-BAGIAN UML
Bagian-bagian utama dari UML adalah view, diagram, model element, dan general mechanism.
a. View
View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi yang berisi sejumlah diagram.
Beberapa jenis view dalam UML antara lain: use case view, logical view, component view, concurrency view,dan deployment view.
b. Use case view
Mendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkan external actors. Actor yang berinteraksi dengan sistem dapat berupa user atau sistem lainnya.
View ini digambarkan dalam use case diagramsdan kadang-kadang dengan activity diagrams. Viewini digunakan terutama untuk pelanggan, perancang (designer), pengembang (developer), dan penguji sistem (tester).
c. Logical view
Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object,danrelationship ) dan kolaborasi dinamis yang terjadi ketika object mengirim pesan ke object lain dalam suatu fungsi tertentu.
View ini digambarkan dalam class diagrams untuk struktur statis dan dalam state, sequence, collaboration, dan activity diagram untuk model dinamisnya. View ini digunakan untuk perancang (designer) dan pengembang (developer).
d. Component view
Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya dari code module diperlihatkan dengan struktur dan ketergantungannya juga alokasi sumber daya komponen dan informasi administrative lainnya.
View ini digambarkan dalam component view dan digunakan untuk pengembang (developer).
e. Concurrency view
Membagi sistem ke dalam proses dan prosesor.View ini digambarkan dalam diagram dinamis (state, sequence, collaboration, dan activity diagrams) dan diagram implementasi (component dan deployment diagrams) serta digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).
f. Deployment view
Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan lainnya.
View ini digambarkan dalam deployment diagramsdan digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).
g. Diagram
Diagram berbentuk grafik yang menunjukkan simbol elemen model yang disusun untuk mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah diagram merupakan bagian dari suatu view tertentu dan ketika digambarkan biasanya dialokasikan untuk view tertentu. Adapun jenis diagram antara lain :
1. Use Case Diagram
Use case adalah abstraksi dari interaksi antara system dan actor. Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah system dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah system dipakai. Use casemerupakan konstruksi untuk mendeskripsikan bagaimana system akan terlihat di mata user. Sedangkan use case diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client.
2Class Diagram
Class adalah dekripsi kelompok obyek-obyek dengan property, perilaku (operasi) dan relasi yang sama. Sehingga dengan adanya class diagram dapat memberikan pandangan global atas sebuah system. Hal tersebut tercermin dari class- class yang ada dan relasinya satu dengan yang lainnya. Sebuah sistem biasanya mempunyai beberapa class diagram. Class diagram sangat membantu dalam visualisasi struktur kelas dari suatu system.
3. Component Diagram
Component software merupakan bagian fisik dari sebuah system, karena menetap di komputer tidak berada di benak para analis. Komponent merupakan implementasi software dari sebuah atau lebih class. Komponent dapat berupa source code, komponent biner, atau executable component. Sebuah komponent berisi informasi tentang logic class atau class yang diimplementasikan sehingga membuat pemetaan dari logical view ke component view.Sehingga component diagram merepresentasikan dunia riil yaitu component software yang mengandung component, interface dan relationship.
4. Deployment Diagram
Menggambarkan tata letak sebuah system secara fisik, menampakkan bagian-bagian software yang berjalan pada bagian-bagian hardware, menunjukkan hubungan komputer dengan perangkat (nodes) satu sama lain dan jenis hubungannya. Di dalam nodes,executeable component dan object yang dialokasikan untuk memperlihatkan unit perangkat lunak yang dieksekusi oleh node tertentu dan ketergantungan komponen.
5. State Diagram
Menggambarkan semua state (kondisi) yang dimiliki oleh suatu object dari suatu class dan keadaan yang menyebabkan state berubah. Kejadian dapat berupa object lain yang mengirim pesan. State class tidak digambarkan untuk semua class, hanya yang mempunyai sejumlah state yang terdefinisi dengan baik dan kondisi class berubah oleh stateyang berbeda.
6. Sequence Diagram
Sequence Diagram digunakan untuk menggambarkan perilaku pada sebuah scenario. Kegunaannya untuk menunjukkan rangkaian pesan yang dikirim antara object juga interaksi antaraobject, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem.
7. Collaboration Diagram
Menggambarkan kolaborasi dinamis sepertisequence diagrams. Dalam menunjukkan pertukaran pesan, collaboration diagrams menggambarkan objectdan hubungannya (mengacu ke konteks). Jika penekannya pada waktu atau urutan gunakansequencediagrams, tapi jika penekanannya pada konteks gunakan collaboration diagram.
8. Activity Diagram
Menggambarkan rangkaian aliran dari aktivitas, digunakan untuk mendeskripsikan aktifitas y
Tujuan Penggunaan UML
  1. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa.
  2. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.
  3. Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.
  4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap dan detail. Dengan cetak biru ini maka akan bias diketahui informasi secara detail tentang coding program atau bahkan membaca program dan menginterpretasikan kembali ke dalam bentuk diagram (reserve enginering).
Perangkat lunak yang mendukung pembuatan diagaram UML

Kamis, 08 Desember 2011

KOMPUTASI AWAN

Komputasi awan

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Diagram konsepsual dari Komputasi awan
Komputasi awan (bahasa Inggris: cloud computing) adalah gabungan pemanfaatan teknologi komputer ('komputasi') dan pengembangan berbasis Internet ('awan'). Awan (cloud) adalah metefora dari internet, sebagaimana awan yang sering digambarkan di diagram jaringan komputer. Sebagaimana awan dalam diagram jaringan komputer tersebut, awan (cloud) dalam Cloud Computing juga merupakan abstraksi dari infrastruktur kompleks yang disembunyikannya.[1] Ia adalah suatu metoda komputasi di mana kapabilitas terkait teknologi informasi disajikan sebagai suatu layanan (as a service), [2] sehingga pengguna dapat mengaksesnya lewat Internet ("di dalam awan") [3] tanpa mengetahui apa yang ada didalamnya, ahli dengannya, atau memiliki kendali terhadap infrastruktur teknologi yang membantunya.[4] Menurut sebuah makalah tahun 2008 yang dipublikasi IEEE Internet Computing "Cloud Computing adalah suatu paradigma di mana informasi secara permanen tersimpan di server di internet dan tersimpan secara sementara di komputer pengguna (client) termasuk di dalamnya adalah desktop, komputer tablet, notebook, komputer tembok, handheld, sensor-sensor, monitor dan lain-lain."[5]
Komputasi awan adalah suatu konsep umum yang mencakup SaaS, Web 2.0, dan tren teknologi terbaru lain yang dikenal luas, dengan tema umum berupa ketergantungan terhadap Internet untuk memberikan kebutuhan komputasi pengguna. Sebagai contoh, Google Apps menyediakan aplikasi bisnis umum secara daring yang diakses melalui suatu penjelajah web dengan perangkat lunak dan data yang tersimpan di server. Komputasi awan saat ini merupakan trend teknologi terbaru, dan contoh bentuk pengembangan dari teknologi Cloud Computing ini adalah iCloud [6]

[sunting] Referensi

[sunting] Pranala luar

iCloud Pengembangan dari CLoud Computing