Friday, October 20, 2017

State Chart Diagram

State Chart Diagram menggambarkan aliran kontrol dari satu keadaan ke keadaan lain. State didefinisikan sebagai kondisi di mana suatu benda ada dan berubah saat beberapa peristiwa dipicu. Tujuan terpenting diagram Statechart adalah memodelkan lifetime sebuah aktifitas dari awal hingga akhir. Biasanya State Chart Diagram digunakan untuk memodelkan sifat dinamik suatu sistem. Mereka mendefinisikan keadaan objek yang berbeda selama masa hidupnya dan keadaan ini diubah oleh peristiwa.

Simbol - simbol umum yang ada pada State Chart Diagram : 

 

Status, Event, dan Transisi
Objek pada sistem mengubah statusnya untuk merespon event/kejadian dan waktu. Secara umum, pendeteksian sebuah kejadian dapat menyebabkan sebuah objek bergerak dari satu status ke status yang lain. Keadaaan ini disebut transisi.

Notasi - notasi yang dikenal dalam State Chart :
  1. State :
    Digambarkan berbentuk segi empat dengan sudut membulat dan memiliki nama sesuai kondisinya saat itu.

  2. Titik awal (start) :
    Digunakan untuk menggambarkan awal dari kejadian dalam suatu diagram statechart

  3. Titik akhir (end) :
    Digunakan untuk menggambarkan akhir dari kejadian dalam suatu diagram statechart

  4. Guard : 
    Merupakan syarat terjadinya transisi yang bersangkutan

  5. Point / Event :
    Suatu kejadian yang dapat membuat state dari object berubah digunakan untuk menggambarkan apakah akan masuk (entry point) ke dalam state atau akan keluar (exit point)

  6. Event Transition :
    Suatu kejadian yang dapat membuat state dari object berubah

  7. Event Iteration :
    Event berulang pada state yang sama
 Sekian sedikit penjelesan mengenai State Chart Diagram terimakasih.

Class Diagram

Class adalah kumpulan objek-objek  yang mempunyai struktur umum, behavior umum, relasi umum, dan semantic/kata yang umum. Class-class ditentukan/ditemukan dengan cara memeriksa objek-objek dalam sequence diagram dan collaboration diagram. Nama dari sebuah class menggunakan kata benda sesuai dengan domain/bagian/kelompoknya.

Class diagram adalah model statis yang menggambarkan struktur dan deskripsi class serta hubungannya antara class. Class diagram mirip ER-Diagram pada perancangan database, bedanya pada ER-diagram tidak terdapat operasi/metode tapi hanya atribut. Class terdiri dari nama kelas, atribut dan operasi/methode. Kelas memiliki 3 bagian utama yaitu attribute, operation, dan name. Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-fungsi sesuai dengan kebutuhan sistem. Sususan struktur kelas yang baik pada class diagram sebaiknya memiliki jenis-jenis kelas berikut :
  • Class Main. Yaitu kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan.
  • Class Interface. Kelas yang mendefinisikan dan mengatur tampilan ke pemakai. Biasanya juga disebut kelas boundaries.
  • Class yang diambil dari pendefinisian usecase. Merupakan kelas yang menangani fungsi-fungsi yang harus ada dan diambil dari pendefinisian usecase.
  • Class Entitas, merupakan kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data.
Contoh Class Diagram :
Hasil gambar untuk contoh class diagram

Elemen-Elemen Class Diagram
Digambarkan dengan bujur sangkar yang memiliki tiga ruangan yaitu:
  1. Nama (dan stereotype)
  2. Atribut
  3. Method/Operation


 Jenis-Jenis Class
  1.  Entity Class
    Segala sesuatu (concrete, conceptual, event, and state) dapat dijadikan entity dalam Class.
  2. Control Class
    Control Class merupakan suatu class yang difungsikan untuk mengatur Entity Class dan Interfaces Class.
  3.  Boundary / Interfaces Class
    Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki method. Interface tidak dapat langsung diinstansiasi, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface pendukung resolusi method pada saat run-time.
     
     
     
 

Thursday, October 12, 2017

User Case

Use Case merupakan sebuah teknik yang digunakan dalam pengembangan sebuah software atau sistem informasi untuk menangkap kebutuhan fungsional dari sistem yang bersangkutan, Use Case menjelaskan interaksi yang terjadi antara ‘aktor’ — inisiator dari interaksi sistem itu sendiri dengan sistem yang ada, sebuah Use Case direpresentasikan dengan urutan langkah yang sederhana.


Komponen dalam Use Case adalah sebagai berikut :
  1. Actor, merupakan gambaran seseorang yang sedang berinteraksi dengan sistem yang hanya dapat menginputkan informasi dengan menerima informasi dari sistem namun, tidak memegang kendalipada use case
  2. Use case, merupakan gambaran fusngsional sistem yang aka dibuat, sehingga pengguna lebih mengerti pada penggunaan sistem

Relasi Dalam Use Case merupakan pedoman-pedoman namun dalam pembuatan software dan hanya difokuskan pada analisa pembuatan dari software. Berikut beberapa relasi dalam Use case
  1. Association, menghubungkan antar link elemen
  2. Generalization merupakan sebuah elemen yang menjadi spesialisasi dari elemen yang lain
  3. Dependency merupakan sebuah elemen yang bergantung beberapa cara kepada elemen lainnya.
  4. Aggregtion merupakan bentuk association yang mana sebuah elemen berisi elemen lainnya.

Karakteristik dari Use Case adalah sebagai berikut :
  • Use cases merupakan interaksi atau dialog antara sistem dan actor, termasuk pertukaran pesan dan tindakan yang dilakukan oleh sistem
  • Use cases digunakan oleh actor dan mungkin melibatkan peran actor lain. Use cases harus menyediakan nilai minimal kepada satu actor.
  • Use cases dapat memiliki perluasan yang mendefinisikan tindakan khusus dalam interaksi atau use case lain mungkin disisipkan.
  • Use case class  dapat memiliki objek use case yang disebut skenario. Skenario menyatakan urutan pesan dan tindakan tunggal.

Manfaat dari Use Case adalah sebagai berikut  :
  • Use Case dapat digunakan untuk melakukan komunikasi dengan end user dan domain expert.
  • Adanya  pemahaman yang tepat tentang requirement / kebutuhan sistem.   
  • Dapat digunakan untuk mengidentifikasi siapa yang berinteraksi dengan sistem dan apa yang harus dilakukan sistem.
  • Adanya interface yang harus dimiliki sistem.
  • Dapat digunakan untuk melakukan verifikasi.

Tuesday, October 3, 2017

Activity Diagram

A. Pengertian Activity Diagram
  • Activity merupakan diagram yang menggambarkan worlflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. 
  • Sesuatu yang menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir.
B. Komponen-komponen dalam activity diagram adalah sebagai berikut :
  • Activity atau state : Menunjukan aktivitas yang dilakukan. Initial activity atau initial state : Menunjukan awal aktivitas dimulai. 
  • Final Activity atau final state : Menunjukan bagian akhir dari aktivitas. 
  • Decission : Digunakan untuk menggambarkan test kondisi untuk memastikan bahwa control flow atau object flow mengalir lebih ke satu jalur. Jumlah jalur sesuai yang diinginkan.
  •  Merge : Berfungsi menggabungkan flow yang dipecah oleh decission. 
  • Synchronization : Dibagi menjadi 2 yaitu fork dan join. Fork digunakan untuk memecah behaviour menjadi activity atau action yang paralel, sedangkan join untuk menggabungkan kembali activity atau action yang paralel. 
  • Swimlanes : Memecah activity diagram menjadi baris dan kolom untuk membagi tangung jawab obyek-obyek yang melakukan aktivitas. 
  • Transition : Menunjukan aktivitas selanjutnya setelah aktivitas sebelumnya
C. Gambar/Notasi dari Activity Diagram :
Image result for activity diagram adalah
D. Berikut contoh gambar activity diagram :
  • Pengelolaan Pustaka
  • Gambar Activity Online

Sunday, September 24, 2017

Rational Unified Prosess & Unified Modeling Language

Rational Unified Process 

Atau yang lebih kita kenal dengan RUP adalah suatu kerangka kerja proses pengembangan perangkat lunak (Proses pengembangan perangkat lunak). Proses ini memiliki beberapa model yang masing-masing menjelaskan pendekatan terhadap berbagai tugas atau aktivitas yang terjadi selama proses. Contoh model proses pengembangan perangkat lunak antara lain adalah proses iteratif, Extreme Programming, serta proses waterfall yang akan memilih elemen proses sesuai dengan kebutuhan mereka.

Ada pendapat yang menyebutkan bahwa cara kerja RUP itu didasarkan pada 6 kunci prinsip bagi perkembangan bisnis yang terkendali yaitu :
  1. Mengadaptasi proses
  2. Menyeimbangkan prioritas dari para stakeholders
  3. Melakukan kolaborasi antar tim
  4. Mendemonstrasikan hasil-hasil yang ada secara berulang-ulang
  5. Menaikkan level abtraksi dari sebuah software
  6. Memfokuskan pada kualitas secara terus-menerus
RUP menggunakan konsep object oriented, dengan aktifitas yang berfokus pada pengembangan model dengan menggunakan Unified Model Language (UML). Melalui gambar dibawah dapat dilihat bahwa RUP memiliki, yaitu:
  • Dimensi pertama digambarkan secara horizontal. Dimensi ini mewakili aspek-aspek dinamis dari pengembangan perangkat lunak. Aspek ini dijabarkan dalam tahapan pengembangan atau fase. Setiap fase akan memiliki suatu major milestone yang menandakan akhir dari awal dari phase selanjutnya. Setiap phase dapat berdiri dari satu beberapa iterasi. Dimensi ini terdiri atas Inception, Elaboration, Construction, dan Transition.
  • Dimensi kedua digambarkan secara vertikal. Dimensi ini mewakili aspek-aspek statis dari proses pengembangan perangkat lunak yang dikelompokkan ke dalam beberapa disiplin. Proses pengembangan perangkat lunak yang dijelaskan kedalam beberapa disiplin terdiri dari empat elemen penting, yakni who is doing, what, how dan when. Dimensi ini terdiri atas

    • Business Modeling
      Mengidentifikasi kemampuan sistem yang akan dibuat dan keinginan user.
    • Requirment
      Narasi tujuan bersama tentang kebutuhan fungsional dan kebutuhan dan fungsional.
    • Analysis dan Design
      Gambaran tentang bagaimana sistem akan dibuat pada tahap implementasi.
    • Implementation
      Proses coding dengan hasil berupa exe.
    • Test
      Verifikasi sistem secara menyeluruh.
    • Deployment
      Pemasangan sistem dan training user.
Berikut contoh gambar proses pembangunan suatu software :














Unified Modeling Language 

Atau yang lebih dikenal dengan UML memiliki fungsi untuk memodelkan suatu sistem (tidak hanya perangkat lunak) yang menggunakan konsep berorientasi object. Dan juga untuk menciptakan suatu bahasa pemodelan yang dapat digunakan baik oleh manusia maupun mesin.

UML adalah bahasa untuk menspesifikasi,memvisualisasi, membangun dan mendokumentasikan artifacts (bagian dari informasi yang digunakan untuk dihasilkan oleh proses pembuatan perangkat lunak, artifact tersebut dapat berupa model, deskripsi atau perangkat lunak)dari sistem perangkat lunak,seperti pada pemodelan bisnis dan sistem non perangkat lunak lainnya. 

Selain itu UML adalah bahasa pemodelan yang menggunakan konsep orientasi object.UML dibuat oleh Grady Booch, James Rumbaugh, dan Ivar Jacobson di bawah bendera Rational Software Corps. UML menyediakan notasi-notasi yang membantu memodelkan sistem dari berbagai prespetktif. UML tidak hanya digunakan dalam 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. View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda. Beberapa Jenis view dalam UML antara lain : use case view,logical view,component view,concurrency view, dan deployment view.
  • 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 diagrams dan kadang-kadang dengan activity diagrams. View ini digunakan terutama untuk pelanggan,perancang (designer), pengembang(developer), dan penguji sistem(tester).
  • Logical View
    Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object, dan relationship ) 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).
  • 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).
  • 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).
  • Deployment View
    Mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan lainnya. View ini digambarkan dalam deployment diagrams dan digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).
     
 Sekian dari saya untuk RUP dan UML kali ini terimakasih.