0394m - ln - week 4

Upload: adhi-r-saputra

Post on 04-Nov-2015

74 views

Category:

Documents


4 download

DESCRIPTION

lecture note mengenai use case

TRANSCRIPT

  • 0394MAnalisadanPerancanganSistemInformasi

    LECTURE NOTES

    Use Case Diagram

  • 0394MAnalisadanPerancanganSistemInformasi

    LEARNING OUTCOMES

    1. Draw the User Business Process Using Use Case Diagram

    OUTLINE MATERI :

    1. Use Cases and User Goals

    2. Use Cases and Event Decomposition

    3. Use Cases and CRUD

    4. Use Case Diagram

  • 0394MAnalisadanPerancanganSistemInformasi

    Use Case Diagram

    Sebuah use case merepresentasikan sebuah aktivitas yang dilakukan oleh sistem, yang

    biasanya merupakan respon berdasarkan permintaan seorang user. Dua (2) teknik yang

    direkomendasikan untuk mengidentifikasi use cases adalah user goal technique dan juga

    event decomposition technique. Teknik tambahan yang juga bisa digunakan adalah CRUD

    technique, yang sering digunakan untuk memvalidasi serta memperkaya use cases list yang

    sudah ada. Teknik-teknik ini akan dijelaskan lebih lanjut pada pembahasan berikut.

    Use Cases and User Goals

    Salah satu pendekatan untuk mengidentifikasi uses cases adalah user goal techniques, yang

    dilaksanakan dengan bertanya kepada users guna mendeskripsikan tujuan mereka masing-

    masing dalam menggunakan sistem yang baru. Atau dengan kata lain, user goal technique

    adalah sebuah technique untuk mengidentifikasi use cases dengan menentukan tujuan

    spesifik yang harus diselesaikan oleh user pada saat menggunakan sistem yang baru.

    Untuk memulainya, analysts pertama kali harus mengidentifikasi semua users yang

    akan menggunakan sistem baru. Setelah itu, analysts harus melaksanakan kegiatan

    wawancara yang terstruktur dengan setiap user. Dengan berfokus pada satu jenis user saja

    pada satu waktu, analyst dapat melemparkan pertanyaan-pertanyaan yang lebih terkonsentrasi

    untuk mengidentifikasi use cases. Selama interview, analyst harus memandu user untuk

    mengidentifikasi secara spesifik perihal bagaimana sistem komputer yang baru dapat

    membantu user di dalam mengerjakan pekerjaan mereka. Tujuan dari kegiatan ini adalah

    untuk mengidentifikasi bagaimana sistem dapat meningkatkan kinerja dan produktivitas user.

    Walaupun users adalah sumber informasi untuk kegiatan ini, tetapi tidak jarang mereka

    masih memerlukan panduan dari analyst agar dapat berpikir out-of-the-box terhadap

    pendekatan penyelesaian pekerjaan mereka.

    User goal technique guna mengidentifikasi use cases meliputi langkah-langkah

    berikut:

    1. Identifikasi semua potential users untuk sistem baru ini.

  • 0394MAnalisadanPerancanganSistemInformasi

    2. Klasifikasikan potential users berdasarkan functional role (misalnya bagian

    marketing, sales, keuangan, etc.).

    3. Lebih lanjut, klasifikasikan potential users berdasarkan organizational level

    (misalnya operational, management, executive, etc.).

    4. Lakukan wawancara per jenis user. Wawancara ini harus menghasilkan daftar tujuan

    apa saja yang sekiranya mereka inginkan saat nanti menggunakan sistem baru. Minta

    kepada mereka untuk menuliskan setiap tujuannya dengan bentuk kata kerja + kata

    benda, misalkan add customer, update order, dan produce month end report.

    5. Buat daftar use cases awal berdasarkan setiap jenis user.

    6. Lihat dan lakukan koreksi apabila ada duplikasi atau ada nama-nama use cases yang

    serupa.

    7. Identifikasi perihal mengapa dan kapan jenis-jenis users yang berbeda dapat

    membutuhkan use cases yang sama.

    8. Ulas kembali daftar yang telah lengkap dengan setiap jenis users serta stakeholders

    terkait.

    Use Cases and Event Decomposition

    Salah satu teknik yang dapat diandalkan untuk mengidentifikasi use cases adalah dengan

    menggunakan event decomposition techniques. Event decomposition technique merupakan

    sebuah teknik untuk mengidentifikasi use cases dengan menentukan external business events

    apa saja yang terjadi dan bagaimana sistem harus meresponnya. Event decomposition

    technique dimulai dengan mengidentifikasi semua business events yang dapat mengakibatkan

    sistem informasi merespon terhadapnya, dimana nantinya setiap event akan berujung pada

    sebuah use case.

    Memulai dengan business events membantu analyst untuk mendefinisikan use case

    pada tingkat yang cukup detil. Perhatikan contoh berikut. Seorang system analyst yang

    pertama dapat mengidentifikasi sebuah use case sebagai typing in a customer name on a

    form. Analyst yang kedua dapat mengidentifikasi sebuah use cases sebagai sebuah

    keseluruhan proses untuk adding a new customer. Sementara itu, analyst yang ketiga dapat

  • 0394MAnalisadanPerancanganSistemInformasi

    saja mendefinisikan sebuah use case sebagai segala sesuatu transaksi menyangkut customers,

    seperti adding new customers, updating customer records, deleting customers,

    following up on late-paying customers, atau contacting former customers. Contoh yang

    dilakukan oleh analyst

    Level detil yang tepat untuk mengidentifikasi use cases berfokus pada elementary

    business processes (EBPs). Sebuah EBP adalah sebuah task yang harus dikerjakan oleh satu

    orang pada satu tempat sebagai respon terhadap sebuah business event, dimana pada saat

    mengerjakannya terjadi penambahan measurable business value dan pada saat keluar dari

    sistem, sistem berikut data berada pada stable dan consistent state. Atau dengan kata lain

    EBPs merupakan fundamental tasks dari sebuah proses bisnis, yang memposisikan sistem dan

    data pada state yang tidak berubah, yang biasanya dilakukan oleh satu orang yang merespon

    sebuah business event.

    Setiap EBP (dan setiap use case) terjadi sebagai respon dari sebuah business event.

    Sebuah event terjadi pada satu waktu dan tempat, yang dapat diidentifikasikan, dan dapat

    terekam oleh sistem. Events memacu semua proses yang dilakukan oleh sistem, jadi dengan

    mendata semua events dan menganalisanya akan dapat diidentifikasikan use cases yang

    mencerminkan system requirements.

    Ada tiga (3) jenis event yang perlu diketahui, yaitu external event, temporal event,

    dan state event (disebut juga internal events). Analyst akan memulai dengan mengidentifikasi

    dan mendata sebanyak mungkin events, untuk kemudian dievaluasi kembali dengan system

    users. Berikut adalah penjelasan singkat untuk masing-masing jenis event:

    1. External event, merupakan sebuah event yang terjadi karena dipicu atau diinisiasi oleh

    external agent atau actor. External agent sendiri merupakan pihak atau orang yang

    berada di luar lingkup organisasi, contohnya untuk kegiatan penjualan barang maka

    external agent-nya adalah para pelanggan. Berikut adalah beberapa checklist yang

    perlu diperhatikan dalam menentukan external event:

    a. External agent menginginkan sesuatu yang berakibat pada terciptanya sebuah

    transaksi.

    b. External agent menginginkan beberapa informasi.

    c. Kebutuhan untuk update dan perubahan data.

    d. Management menginginkan beberapa informasi

  • 0394MAnalisadanPerancanganSistemInformasi

    2. Temporal event, merupakan sebuah event yang terjadi sebagai akibat dari

    terpenuhinya kondisi waktu. Misalnya sebuah sistem HRD akan menambahkan jatah

    cuti tahunan untuk para karyawannya setiap awal tahun (per 1 Januari). Berikut

    adalah beberapa checklist yang perlu diperhatikan dalam menentukan temporal event:

    a. Untuk keperluan internal outputs:

    i. Management reports (summary atau exception)

    ii. Operational reports (detailed transactions)

    iii. Internal statements dan documents (termasuk penggajian)

    b. Untuk keperluan external outputs:

    i. Statements, status reports, bills, reminders

    3. State event, merupakan sebuah event yang dipicu dari suatu terpenuhinya kondisi di

    dalam sistem, yang mengakibatkan sistem melakukan pemrosesan terhadap suatu

    transaksi. Contohnya untuk sebuah sistem persediaan barang, dimana sistem secara

    ototmatis akan menampilkan reminder kepada bagian purchasing saat stok barang

    mencapai ROP (reorder point, titik pemesanan kembali).

    Dalam melakukan identifikasi terhadap events dapat diperhatikan beberapa panduan

    berikut:

    1. Event versus prior conditions and responses, dimana untuk setiap event yang ada

    perlu dikaji lebih dalam terkait hal-hal atau kondisi apa saja yang dapat memicu

    terjadinya event tersebut, serta respon seperti apa yang harus dilakukan oleh sistem

    yang akan dibangun.

    2. The sequence of events: tracing a transactions life cycle, dimana perlu untuk melihat

    sekuensial ataupun urutan kejadian dari events yang saling terkait, sehingga dapat

    diperoleh satu gambaran besar terhadap siklus hidup dari sebuah transaksi, event apa

    yang memulai transaksi hingga event apa yang akan mengakhiri kejadian transaksi

    tersebut.

    3. Technology-dependent events and system control, dimana perlu diketahui bahwa

    events yang teridentifikasi hendaknya selalu melibatkan penggunaan sistem di dalam

    eksekusinya (technology-dependent). Kebanyakan dari events ini juga melibatkan

    system controls, yang berupa pengecekan atau prosedur keamanan guna memproteksi

    integritas sistem dan data. Terkadang ada juga events yang harus dilaksanakan pada

  • 0394MAnalisadanPerancanganSistemInformasi

    kondisi teknologi yang sempurna. Perfect technology assumption menyatakan bahwa

    sistem harus nerjalan dengan kondisi operasi dan teknologi yang sempurna pada saat

    merespon events.

    Berikut adalah rangkuman langkah-langkah daripada event decomposition technique

    guna mengidentifikasi use cases:

    1. Buatlah list untuk setiap external events. Perhatikan checklist yang sudah dituliskan di

    atas.

    2. Identifikasi dan buatlah nama use case untuk setiap external event, yang sekiranya

    memerlukan respon dari sistem.

    3. Buatlah list untuk temporal events. Perhatikan checklist yang sudah dituliskan di atas.

    4. Identifikasi dan buatlah nama use case untuk setiap temporal event, kemudian

    tentukan juga perihal kapan saja waktu yang memicu use case.

    5. Buatlah list untuk state events.

    6. Identifikasi dan buatlah nama use case untuk setiap state event yang membutuhkan

    sistem untuk melakukan perubahan status.

    7. Ketika events dan use cases didefinisikan, cek apakah ada events yang menggunakan

    perfect technology assumption. Jangan ikut sertakan events yang termasuk system

    controls, seperti login, logout, change password, backup database, restore database,

    etc.

    Use Cases and CRUD

    Teknik penting lainnya yang dapat digunakan untuk memvalidasi dan mengevaluasi use

    cases adalah CRUD technique. CRUD merupakan singkatan dari Create, Read or Report,

    Update, dan Delete, yang biasanya berhubungan dengan database management. Analyst akan

    memulai dengan melihat jenis data yang akan disimpan di dalam sistem, yang biasanya

    dimodelkan dengan entitas data atau domain classes. Untuk memvalidasi dan mengevaluasi

    use cases, analyst akan melihat setiap jenis data tersebut dan melakukan verifikasi bahwa use

  • 0394MAnalisadanPerancanganSistemInformasi

    cases tersebut harus terdiri dari create the data, read or report on the data, update the data,

    dan delete (atau archive) the data.

    Langkah-langkah untuk memvalidasi dan mengevaluasi use cases dengan

    menggunakan CRUD technique adalah sebagai berikut:

    1. Identifikasi semua entitas data atau domain classes yang terlibat di dalam

    pengembangan sistem baru.

    2. Untuk setiap tipe data (entitas data atau domain class), verifikasi bahwa sebuah use

    case telah diidentifikasi dapat melakukan creates, update, reads (atau reports), dan

    deletes (atau archives) data.

    3. Jika ada penambahan use case yang baru, identifikasikan siapa saja stakeholders yang

    terlibat dan evaluasi dengan mereka.

    4. Pastikan bahwa jelas perihal siapa yang bertanggung jawab untuk melakukan use

    cases tersebut.

    Use Case Diagrams

    Gambar 1. Notasi Use Case Diagram

    Use case diagram merupakan model UML yang digunakan untuk menggambarkan use cases

    serta relationships-nya dengan actors. Gambar 1 menunjukkan notas-notasi yang digunakan

    di dalam penggambaran use case diagram. Use case sendiri direpresentasikan dengan

  • 0394MAnalisadanPerancanganSistemInformasi

    menggunakan notasi berbentuk elips. Lalu automation boundary, yang merupakan batasan

    antara bagian terkomputerisasi dengan pengguna yang akan mengoperasikan aplikasi,

    direpresentasikan dengan menggunakan notasi berbentuk persegi panjang. Lebih lanjut,

    automation boundary hendaknya diberi nama sehingga pembaca use case diagram Anda

    dapat paham mengenai ruang lingkup sistem yang sedang dibahas oleh use case diagram

    tersebut (Contoh Gambar 2, dimana nama boundary-nya adalah Customer Account

    Subsystem untuk All Actors).

    Gambar 2. Contoh Use Case Diagram

    Seringkali selama pengembangan dari use case diagram, diketahui bahwa satu use

    case dapat juga menggunakan services yang ada di use case lainnya. Pada Gambar 3, disana

    digambarkan use case Fill shopping cart juga mengikutsertakan use cases Search for

    item, View product comments and ratings, dan View accessory combinations. Hal ini

    berarti bahwa Customer dapat melihat comments pada saat melakukan fill shopping cart.

    Hubungan untuk relationship ini digambarkan dengan menggunakan garis putus-putus

    dengan panah yang menunjuk ke use case yang diikutsertakan. Salah satu relationship pada

  • 0394MAnalisadanPerancanganSistemInformasi

    Gambar 3 dapat dibaca sebagai fill shopping cart includes search for item. Terkadang

    relationship ini dikenal sebagai relationship atau relationship.

    Gambar 3. Use Case Diagram dengan Relationship

    Berikut adalah langkah-langkah yang dapat digunakan untuk membangun use case

    diagrams:

    1. Identifikasi semua stakeholders dan users yang akan berhubungan dengan use cases

    diagram.

    2. Tentukan stakeholder atau user mana saja yang perlu me-review use case diagram.

    Khususnya perihal kebutuhan terhadap use case diagram untuk subsystem, jenis user

    apa saja yang terlibat, use cases apa saja yang ada relationship, dan use

    case penting apa saja yang harus diberikan perhatian lebih.

    3. Buatlah hubungan di antara actors dengan use cases yang ada di use case diagram.

    Anda dapat menggunakan software packages yang tersedia untuk menggambarnya.

    4. Berilah nama untuk setiap use case diagram yang dibuat.

  • 0394MAnalisadanPerancanganSistemInformasi

    SIMPULAN

    Di samping pembahasan yang sudah terpaparkan di atas, ada beberapa hal yang perlu digaris-

    bawahi untuk topik ini, yaitu:

    1. Perlu diingat bahwa use case diagram merupakan tools yang sangat berguna untuk

    menggambarkan atau mendokumentasikan fungsi-fungsi apa yang harus dimiliki oleh

    sistem yang akan dikembangkan (functional requirements).

    2. Untuk dapat menggunakan teknik-teknik mengidentifikasi use case di atas, mohon

    agar kiranya Anda dapat membaca dan memahami terlebih dahulu perihal langkah-

    langkah apa saja yang diperlukan untuk melakukan masing-masing teknik.

    3. Use case diagram dapat Anda buat untuk satu buah sistem secara keseluruhan atau

    per subsistem. Lebih lanjut, Anda juga dapat membuatnya per actor atau keseluruhan

    actors, sesuai kebutuhan. Akan tetapi dalam penggambaran use case diagram-nya,

    Anda tidak boleh lupa untuk memberikan penamaan terhadap automation boundary-

    nya.

  • 0394MAnalisadanPerancanganSistemInformasi

    DAFTAR PUSTAKA

    John W. Satzinger, Robert B. Jackson,Stephen D. Burd. (2012). Introduction to Systems

    Analysis and Design: An Agile, Iterative Approach. 06. Course Technology. Canada. ISBN:

    9781111972264