Analisis dan Design PL

Proses rekayasa perangkat lunak memerlukan analisis yang dilakukan untuk mengetahui permasalahan sistem & solusi yang dibutuhkan serta desain yang digunakan untuk mengembangkan perangkat lunak agar sesuai dan terarah. Dalam pengerjaannya, dibutuhkan metodologi untuk menunjang kinerja tim pengembang agar lebih terencana tanpa menghilangkan poin penting di dalamnya. Terdapat dua metode yang dikenal luas dan sering digunakan, yaitu SSAD (Structured Analysis and Design) dan OOAD (Object-Oriented Analysis and Design).

SSAD (Structured Analysis and Design)

SSAD didefinisikan sebagai notasi diagram yang di design untuk membantu orang agar mengerti terhadap sistem yang sedang dirancang. Tujuan utama dari SSAD ini adalah untuk meningkatkan kualitas dan mengurangi risiko kesalahan sistem. Desain ini akan menjadi spesifikasi dan dokumentasi yang konkret.  

SSAD merupakan metodologi yang diperkenalkan sejak tahun 1970. Metode ini memiliki dasar prinsip pengembangan terstruktur di mana pentingnya pemecahan sistem perangkat lunak menjadi komponen-komponen kecil dan mudah diatur menjadi hal yang ditekankan pada metode ini.

Proses SSAD ini memiliki dua tahapan, meliputi analisis terstruktur dan desain terstruktur. Tahapan analisis terstruktur akan memecah masalah menjadi analisis dan persyaratan yang dibutuhkan perangkat lunak. Selanjutnya, pada tahapan desain terstruktur akan dilakukan perancangan yang didasari oleh analisis dan persyaratan yang telah dikumpulkan pada tahap analisis terstruktur.

SSAD memiliki dua tahapan, yaitu tahap analisis dan tahap desain. Tahap analisis digunakan untuk diagram data flow, kamus data, diagram state transition dan ER diagram. Sedangkan, tahap desain dilakukan untuk membuat chart struktur dan kode pseudo.

Adapun beberapa langkah penting yang tercakup dalam metologi SSAD ini, yaitu:

1. Pengumpulan Requirements, yaitu langkah pertama dalam proses SSAD untuk mengumpulkan requirements dari stackholders, termasuk pengguna atau klien.

2. Analisis Terstruktur, yaitu requirements yang telah dianalisis dan identifikasi komponen utamanya bagi sistem, hubungan antarkomponen, dan data flow tanpa sistem.

3. Pemodelan Data, yaitu langkah yang dilakukan untuk menyajikan ulang data yang digunakan sistem dan hubungan antar elemen data.

4. Pemodelan Proses, yaitu proses pemodelan menggunakan flowcharts dan diagram flow.

5. Desain I/O, yaitu langkah dimana input dan output dari sistem akan didesain termasuk hingga interface user dan reports.

6. Desain Terstruktur, yaitu langkah di mana sistem didesain berdasarkan requirements yang telah dikumpulkan dan dianalisis pada analisis terstruktur. 

7. Implementasi dan Pengujian, setelah dilakukan desain yang komplit, sistem akan dibangun, diimplementasikan, dan diuji apakah sistem yang dibangun telah sesuai dengan harapan klien dan memperbaikinya jika ditemukan adanya kesalahan pada sistem.

Pendekatan SSAD biasanya didasarkan pada Data Flow Diagram (DFD) yang dapat mempermudah untuk memahami SSAD yang berfokus pada batasan sistem yang telah terdefinisi dengan baik. SSAD yang digabung menjadi SAD memiliki fokus pada tiga poin penting, yaitu sistem, proses, dan teknologi.

Kelebihan SSAD

  • Menggunakan pendekatan visual sehingga mudah untuk dimengerti oleh pengguna atau programmer
  • Umum diketahui dan digunakan oleh berbagai industri
  • Telah diterapkan sejak lama sehingga metode ini matang dan layak digunakan
  • Memungkinkan dilakukannya validasi antarberbagai kebutuhan yang relatif simpel dan mudah dimengerti

Kekurangan SSAD

  • Berorietasi pada proses sehingga mengabaikan kebutuhan non-fungsional
  • Memiliki prinsip pengembangan non-iterative (waterfall) yang kurang efektif digunakan karena kebutuhan terkadang akan berubah-ubah seiring berjalannya proses
  • Interaksi antara analisis dengan pengguna yang kurang komprehensif sehingga tidak adaptif terhadap perubahan
  • Sulit dilakukannya evaluari oleh pengguna atau klien

OOAD (Object-Oriented Analysis and Design)

Analisis dan desain berorientasi objek merupakan metode untuk menganalisis dan mendesain sistem menggunakan konsep berorientasi objek yang pengembangannya menggunakan sistem grafik model selama siklus hidup pengembangan software tersebut.

Dalam tahap analisis pengembang bekerja sama dengan pengguna dan ahli untuk mendefinisikan atau menganalisis bagaimana sistem harusnya bekerja. Detail implementasi pada tahap ini biasanya diabaikan. Tahapan analisis ini bertujuan untuk menciptakan model sistem yang terlepas dari segala kendala.

Fase desain merupakan fase penyempurnaan dari model analisis yang telah dirancang dan menerapkan teknologi yang dibutuhkan untuk mengatasi kendala dan pengimplementasiannya. Tahap desain ini berfokuskan pada deskripsi objek, atribut, perilaku, serta interaksinya. Segala detail pada model desain diperlukan untuk implementasi sehingga pemrogram dapat mengimplementasikan desain menjadi baris kode perintah.

Kelebihan OOAD

  • Metode OOAD lebih mudah digunakan dalam pembangunan sistemnya dibandingkan dengan SSAD
  • Waktu pengembangan, level organisasi, ketangguhan, dan penggunaan kembali program lebih tinggi dibandingkan dengan SSAD
  • Komunikasi antara user dengan developer lebih tinggi karen tidak adanya pemisah antara fase desain dan analisis
  • Relasi objek dengan entitas umumnya disesuaikan dengan kondisi pada dunia nyata sehingga mempermudah dalam memahami sistem

Kekurangan OOAD

  • Tidak terlalu menekankan kinerja team
  • Sistem yang dibuat sangat simple sehingga tidak mudah untuk mendefinisikan kelas dan objek yang dibutuhkan sistem
  • Tidak berbasis pada fungsional sistem
  • Belum lama dikenal sehingga perlu waktu bagi team developer untuk beralih dari SSAD ke OOAD
  • Lebih berfokus pada pengembangan kode perintah


Kesimpulan

  • SSAD  adalah notasi diagram yang di design untuk membantu orang agar mengerti terhadap sistem yang sedang dirancang dengan tujuan meningkatkan kualitas dan mengurangi risiko kesalahan sistem.
  • SSAD memiliki dua tahapan, yaitu tahap analisis dan tahap desain. Tahap analisis digunakan untuk diagram data flow, kamus data, diagram state transition dan ER diagram. Sedangkan, tahap desain dilakukan untuk membuat chart struktur dan kode pseudo.
  • Kelebihan SSAD adalah mudah untuk dimengerti karena menggunakan pendekatan visual, umum digunakan dan telah lama dikenal oleh industri serta relatif simple.
  • Kekurangan SSAD adalah terlalu berorientasi pada proses sehingga kerap mengabaikan kebutuhan non-fungsional, menggunakan prinsip non-iterativ (waterfall) yang kurang efektif untuk digunakan, serta sulit dilakukan evaluasi terhadap hasil kerja.
  • OOAD merupakan metode untuk menganalisis dan mendesain sistem menggunakan konsep berorientasi objek yang pengembangannya menggunakan sistem grafik model selama siklus hidup pengembangan software tersebut.
  • Kelebihan OOAD adalah lebih mudah digunakan dalam pembangunan sistem, komunikasi antar user dan developer yang tinggi, dan penyesuaiannya terhadap objek di dunia nyata mempermudah dalam memahami sistem.
  • Kekurangan OOAD adalah terlalu berfokus pada codingan, terlalu condong ke arah kebutuhan non-fungsional, belum lama dikenal sehingga diperlukan waktu penyesuaian untuk beralih dari SSAD ke OOAD.

Referensi

https://andevelez.blogspot.com/2018/05/perbedaan-ssad-dan-ooad.html

https://www.geeksforgeeks.org/structured-analysis-and-structured-design-sa-sd/

https://www.geeksforgeeks.org/object-oriented-analysis-and-design/

https://medium.com/omarelgabrys-blog/object-oriented-analysis-and-design-introduction-part-1-a93b0ca69d36

http://haritaningdhean.blogspot.com/2018/05/1.html

Komentar

Postingan populer dari blog ini

Siklus Pengembangan Perangkat Lunak atau Software Development Life Cycle (SDLC)