Tahap Metode Iconix Process

TEJA KUSUMA
INFIDEA
Published in
6 min readJun 23, 2021

(Metode Pengembangan Perangkat Lunak Berorientasi Objek)

Hai smart reader, apakah kalian mengetahui tentang metode pengembangan perangkat lunak? Pernahkan kalian mendengar waterfall? agile? scrum? atau sejenisnya? Hmm mungkin sudah ya, karena metode pengembangan perangkat lunak tersebut sudah sering digunakan. Nah, kali ini aku mau share ke kalian tentang salah satu metode pengembangan perangkat lunak yang sering digunakan tetapi sedikit orang yang mengetahuinya yaitu Metode Iconix Process. Tanpa banyak tanya, kita langsung saja ke pembahasan. Let’s Go!
**Bagi kalian yang tertarik, baca sampai habis ya dan kalian dipastikan dapat ilmu baru

Tunggu dulu! Sebelum ke pembahasan, kalian harus mengerti terlebih dahulu tentang apa itu SDLC (Software Development Life Cycle).

Sumber : Wikipeda

Jadi, SDLC adalah kerangka kerja konseptual yang menggambarkan semua aktivitas dalam pengembangan perangkat lunak mulai dari perencanaan hingga pemeliharaan. Proses ini memiliki tahapan masing-masing yang mencakup berbagai tugas dan aktivitas yang berbeda. Berikut tahapan-tahapan dalam SDLC :

  1. Requirement Analysis (Analisis Kebutuhan)
    Analisis kebutuhan adalah tahap awal dalam SDLC. Dalam fase ini umumnya dilakukan oleh anggota senior tim pengembang beserta dengan pelanggan (client). Pada fase ini bertujuan untuk mendapatkan kebutuhan fungsional yang kemudian dituliskan kedalam sebuah dokumen yang disebut dengan SRS (Software Requirements Specification). Dokumen SRS ini menjadi acuan selama proses pengembangan perangkat lunak tersebut berlangsung.
  2. Design (Desain)
    Fase ini bertujuan untuk membuat desain berdasarkan dokumen SRS yang telah ditetapkan pada fase requirement. Dalam membuat desain biasanya dapat menggunakan beberapa diagram seperti DFD (Data Flow Diagram), robustness analisis, atau sequence diagram dan lain lain. Hasil desain tersebut biasanya didokumentasikan dalam DDS (Design Document Specification).
  3. Implementation (Implementasi)
    Pada fase implementasi bertujuan untuk mengubah desain yang telah dihasilkan pada fase sebelumnya ke dalam code. Dalam fase ini programmer berusaha untuk menghasilkan sebuah perangkat lunak yang sesuai dengan kebutuhan fungsionalitas dalam dokumen SRS. Bahasa pemrograman yang dipilih juga relevan dengan jenis perangkat lunak yang dikembangkan.
  4. Testing (Pengujian)
    Fase pengujian bertujuan untuk memastikan bahwa perangkat lunak yang dihasilkan sesuai dengan kebutuhan fungsionalitas yang telah ditetapkan sebelumnya. Beberapa contoh pengujian seperti black box testing, white box testing, dll. Apabila dalam tahap ini ditemukan kebutuhan yang tidak sesuai (bug, error, dst), maka ketidaksesuaian tersebut dituliskan ke dalam sebuah dokumen pengujian, kemudian dicari, diperbaiki, dan diuji ulang kembali hingga perangkat lunak yang dihasilkan mencapai standar kualitas yang ditetapkan dalam SRS.
  5. Evolution
    Setelah perangkat lunak diuji dan sesuai dengan standar kualitas yang ditetapkan, hasil perangkat lunak tersebut kemudian digunakan oleh pengguna. Dalam fase ini bertujuan untuk melakukan perawatan apabila pengguna menemukan bug, error atau mungkin pengguna ingin menambahkan fitur-fitur baru kedalam perangkat lunak tersebut. Siklus SDLC ini akan terus berulang ketika terdapat perubahan atau penambahan fungsionalitas baru oleh pengguna.

Nah sekarang kalian sudah mengerti apa itu SDLC! Mayoritas metode pengembangan perangkat lunak yang lain memiliki fase-fase yang sama seperti SDLC. Sekarang, mari kita masuk ke pembahasan utama yaitu Metode Iconix Process.

Sumber : Buku “Use Case Driven Object Modeling with UML”

Metode Iconix Process adalah sebuah metode pengembangan perangkat lunak yang berorientasi objek. Metode ini memiliki alur pengembangan dimulai dari fase requirement, fase desain, fase analisis, hingga fase implementasi. Metode ini memiliki 2 model yaitu model dinamis dan model statis. Model dinamis merupakan sekumpulan diagram yang menunjukkan interaksi antara pengguna dengan sistem, sedangkan model statis merupakan pemodelan statis yang diperbaharui secara terus-menerus selama siklus hidup pengembangan perangkat lunak. Berikut fase-fase dalam Metode Iconix Process :

  1. Fase Requirement
    Fase ini bertujuan untuk mendapatkan kebutuhan fungsional perangkat lunak yang dikembangkan, menganalisis fungsionalitas tersebut, memperkirakan objek-objek yang muncul pada sistem, dan meninjau ulang diagram yang dihasilkan agar sesuai dengan kebutuhan fungsional yang telah ditetapkan. Berikut aktivitas dalam fase requirement:
    a. Functional Requirements
    Kebutuhan fungsional sangat penting karena menjadi acuan utama dalam proses mengembangkan sebuah sistem. Dalam mendapatkan kebutuhan fungsional tersebut, tim ikut terlibat dalam proses pembuatannya atau persyaratan langsung ditentukan oleh pelanggan maupun tim analis bisnis.
    b. Domain Modeling
    Memodelkan domain merupakan sebuah tahapan yang dilakukan untuk memperkirakan objek-objek yang digunakan di dalam sistem. Memodelkan domain didapat dari analisis kebutuhan fungsional yang dihasilkan pada tahapan sebelumnya. Model domain tersebut selalu diperbarui dan disempurnakan selama proses pengembangan berlangsung.
    c. Behavioral Requirements
    Persyaratan perilaku adalah sebuah tahapan yang menggambarkan bagaimana pengguna dan sistem berinteraksi. Dalam tahapan ini, dimulai dengan perancangan GUI (Storyboarding GUI) dan mengidentifikasi semua use case yang akan diimplementasikan ke dalam sistem.
    d. Milestone 1: Requirement Review
    Tahap ini bertujuan untuk memastikan apakah use case yang dihasilkan sesuai dengan kebutuhan fungsional sistem yang telah didapatkan pada aktivitas sebelumnya. Hal tersebut dilakukan dengan alasan agar tidak terjadi perubahan besar pada fase selanjutnya yang menyebabkan proses pengembangan sistem terhambat.
  2. Fase Analisis
    Pada fase ini dihasilkan 2 diagram yaitu robustness diagram dan pembaharuan domain model berdasarkan hasil robustness diagram. Kemudian di akhir fase analisis dilakukan PDR (Preliminary Design Review) untuk memastikan hasil pada fase analisis sudah sesuai dengan fase requirement. Berikut aktivitas dalam fase analisis:
    a. Robustness Diagram
    Robustness diagram merupakan sebuah diagram yang menggambarkan proses-proses yang terjadi di setiap use case. Pembuatan robustness diagram dilatarbelakangi oleh adanya celah yang terlalu jauh antara use case (fase requirement) dengan sequence diagram (fase desain).
    b. Update Domain Model
    Update domain model merupakan pembaharuan model domain dari fase requirement. Atribut dapat ditemukan dari teks use case, perancangan tampilan atau persyaratan fungsional dari sistem yang dikembangkan. Hasil model domain ini diperbarui kembali pada fase desain menjadi class diagram.
    c. Milestone 2: Preliminary Design Review (PDR)
    Kegiatan yang dilakukan adalah meninjau alur di dalam robustness diagram apakah sudah sesuai dengan use case serta memastikan apakah objek baru yang ditemukan sudah ditambahkan ke dalam diagram update domain model.
  3. Fase Desain
    Fase desain merupakan fase terakhir dalam proses perancangan sistem yang dikembangkan. Pada fase ini dihasilkan 2 diagram yaitu sequence diagram dan class diagram. Berikut aktivitas dalam fase desain:
    a. Sequence diagram
    Sequence diagram adalah suatu diagram yang menggambarkan siklus hidup sebuah use case. Diagram ini berfungsi untuk menunjukkan perilaku antar objek dengan objek lainnya. Dalam tahapan ini satu use case digambarkan dalam satu sequence diagram.
    b. Class diagram
    Class diagram merupakan hasil pembaharuan domain model dari fase analisis dan hasil akhir dari tahapan perancangan dalam metode Iconix Process. Class diagram tersebut berisikan kelas-kelas yang memiliki hubungan satu dengan yang lainnya dan setiap kelas dilengkapi atribut dan method.
    c. Milestone 3: Critical Design Review (CDR)
    CDR bertujuan seperti Preliminary Design Review (PDR) pada fase analisis. Kegiatan ini bertujuan untuk memastikan bahwa semua atribut dan method sudah dituliskan di setiap class pada class diagram. Hal ini dilakukan untuk menghindari ketidaksesuaian sistem yang dihasilkan dengan use case yang ditetapkan di awal pengembangan.
  4. Fase Implementasi
    Fase implementasi adalah sebuah tahapan yang bertujuan untuk mengubah class diagram yang dihasilkan pada fase desain menjadi code dan menghasilkan sebuah perangkat lunak yang sesuai dengan kebutuhan fungsionalitas yang telah ditetapkan di awal pengembangan. Setelah perangkat lunak selesai dalam proses pengkodean, maka kemudian dilakukan pengujian. Serangkaian pengujian dilakukan untuk menemukan error atau bug di dalam perangkat lunak yang dikembangkan dan memastikan bahwa perangkat lunak yang dihasilkan sesuai dengan permintaan pelanggan. Berikut aktivitas dalam fase implementasi:
    a. Menulis code dan melakukan unit testing
    Menulis code bertujuan untuk mengubah hasil perancangan sebelumnya menjadi sebuah perangkat lunak yang sesuai dengan kebutuhan fungsionalitas. Salah satu panduan dalam menulis kode yaitu menjaga agar code sesuai dengan perancangan desain sebelumnya. Jika kode keluar dari desain maka langkah yang harus dilakukan adalah berhenti sejenak, kemudian melakukan peninjauan ulang dari desain sebelumnya. Setelah menulis kode selesai, salah satu hal yang tidak dapat dipisahkan adalah pengujian unit yang bertujuan untuk mencari error atau bug di dalam setiap method.
    b. Integration dan skenario testing
    Integration dan skenario testing bertujuan untuk menguji perangkat lunak yang dihasilkan apakah sudah sesuai dengan kebutuhan fungsionalitas yang telah ditetapkan sebelumnya. Pembuatan skenario testing dilakukan sebelum pengujian dimulai. Skenario testing berisikan daftar unit test yang dibuat sebagai acuan untuk melakukan pengujian. Pengujian selesai ketika semua unit test sudah dijalankan dan perangkat lunak yang dikembangkan telah sesuai dengan apa yang diharapkan oleh pelanggan. Apabila terjadi error pada salah satu unit test, maka hal yang dilakukan adalah melakukan perbaikan code dan melakukan testing kembali pada unit tersebut.

Nah bagaimana smart reader penjelasannya tentang tahap-tahap dalam fase Metode Iconix Process, sudah jelaskan? Apa masih kurang? Huehehe. Oke buat artikel selanjutnya aku mau share tentang diagram-diagram UML yang digunakan dalam metode tersebut. Jadi ditunggu aja ya, doakan semoga bisa punya banyak waktu untuk menulis. Sekian dari aku semoga bermanfaat bagi kalian. Salam smart reader! Happy coding!

Reference :
Buku Use Case Driven Object Modeling with UML. (Penulis : Rosenberg, D., & Stephens, M. )

--

--