apa-itu-software-engineering

Kalau berbicara tentang komputer, pasti kalian kenal dengan istilah software engineering. Atau, justru kalian masih awam kah dengan istilah software engineering ini? Kalau mendalami IT terutama pada bagian software developer, ya pastinya tidak asing dengan istilah tersebut. Oke deh, bagi yang belum tahu nih, yuk baca Mengenal Apa Itu Software Engineering?

Apa Itu Software Engineering?

Dikutip dari Institute of Electrical and Electronics Engineers/IEEE (1993), pengertian software engineering adalah suatu pendekatan teknologi secara sistematis, terstruktur, dan disiplin. Meski pada dasarnya merupakan salah satu cabang ilmu komputer guna mengetahui sesuatu yang salah terhadap sebuah software, kini fungsinya makin lebih luas lagi.

Secara umum, pengertian software engineering adalah penerapan beberapa prinsip dalam pengembangan software. Software engineering digunakan dalam pembuatan aplikasi yang lebih kompleks dan besar, umumnya digunakan pada pengembangan software untuk kebutuhan bisnis, organisasi, dan perusahaan skala besar.

Hal-Hal Penting dalam Software Engineering

Software engineering akan memperlihatkan bagaimana sebuah aplikasi produk atau jasa, bisa mempermudah penggunaan oleh end-user dan apa saja fitur-fitur yang ditawarkan kepada penggunanya. Berikut ini merupakan hal-hal yang harus diperhatikan:

Pengoperasian

Setelah proses analisis dilakukan, kalian akan mengetahui apakah sebuah aplikasi bekerja sebagaimana mestinya, mulai dari budget, efisiensi, ketepatan, fungsi, ketergantungan, dan keamanan.

Transisi

Transisi penting ketika suatu aplikasi digeser dari satu platform ke platform lainnya sehingga portabilitas, kegunaan, dan adaptabilitas ada di area ini.

Pemeliharaan

Pemeliharaan berfungsi untuk mengetahui bagaimana sebuah aplikasi bekerja setelah adanya pemutakhiran atau pembaruan (update). Aspek-aspek penting yang perlu diperhatikan pasca analisis adalah modularitas, perawatan, fleksibilitas, dan skalabilitas.

Elemen Software Engineering

Dalam prosesnya, software engineering memiliki 3 elemen penting yang menjadi kunci kesuksesan, yaitu:

Metode

Ada beberapa serangkaian tugas yang harus dilakukan, seperti:

  • Analisis tentang kebutuhan software dan sistem
  • Proses perencanaan dan estimasi proyek
  • Arsitektur program yang akan dibuat
  • Prosedur algoritma yang dipakai
  • Melakukan desain struktur data
  • Pemeliharaan program
  • Coding program
  • Testing program

Peralatan

Peralatan software engineering memiliki fungsi untuk memberikan dukungan untuk metode, contohnya sebagai berikut:

  • CASE yaitu suatu software yang memiliki fungsi untuk menggabungkan antara software, hardware dan database software engineering untuk bisa menghasilkan software engineering yang baik.
  • Database software engineering adalah suatu struktur data yang isinya mengenai informasi penting tentang analisis program, desain program, kode program dan testing program.
  • CAD (Computer Aided Design)
  • CAE (Computer Aided Engineering)
  • CAM (Computer Aided Manufacturing)

Prosedur

Dalam prosedur software engineering, terdiri dari:

  • Pengurutan metode yang digunakan
  • Dokumen, formulir, dan laporan yang diperlukan
  • Kontrol kualitas software
  • Melakukan koordinasi perubahan pada software

Model Pengembangan Software Engineering

Proses pengembangan software (Software Development Process) adalah penerapan struktur pada pengembangan software yang memiliki tujuan sebagai panduan untuk mensukseskan dalam pengembangan software dengan melewati beberapa tahapan tertentu.

Dalam proses pengembangannya terdapat beberapa paradigma model pengembangan sistem yang bisa digunakan, antara lain sebagai berikut:

Waterfall

apa-itu-software-engineering-1

Model ini sudah ada paling lama jika dibandingkan model lain dan penggunanya paling banyak. Sistem waterfall ini menggunakan pendekatan pengembangan software yang sistematik dan sekuensial, dimulai dari tahapan awal, seperti melakukan analisis kebutuhan, melakukan desain sistem, coding, pengujian, dan penerapan program.

Model waterfall ini bisa dipilih ketika semuanya sudah jelas dan sudah terstruktur dengan rapi. Hal ini dikarenakan jika ada satu proses yang terhenti maka proses selanjutnya tidak bisa berjalan sehingga target waktu bisa tidak sesuai dengan planning. Model waterfall ini tidak cocok untuk development software yang membutuhkan waktu lama dalam pengembangannya.

Prototype

apa-itu-software-engineering-2

Model prototype merupakan evolusi dari waterfall, prosesnya lebih simple dan cocok untuk diterapkan saat ini. Ada 3 alur kerja dalam model prototype ini, yaitu:

  • Mendengar dari kebutuhan konsumen
  • Build prototype/mock-up
  • Presentasi kepada konsumen

Setelah melakukan presentasi kepada konsumen, biasanya akan ada masukan baru mengenai kebutuhan konsumen. Jika sudah dikerjakan maka akan diulang kembali perputarannya sampai konsumen merasa puas. 

Model Rapid Application Development (RAD)

apa-itu-software-engineering-3

RAD merupakan model pengembangan software linear yang sangat pendek, kira-kira 60-90 hari saja. Model RAD ini mengadaptasi kecepatan tinggi dengan pendekatan konstruksi berbasis komponen. 

RAD lebih efektif dibandingkan model waterfall dan cocok untuk keperluan sistem yang mendesak. Namun RAD memiliki kekurangan, yakni tidak semua software cocok menggunakan RAD, salah satunya sistem yang memiliki resiko tinggi dan membutuhkan tenaga kerja yang banyak.

Incremental

apa-itu-software-engineering-4

Incremental merupakan kombinasi dari beberapa elemen waterfall yang diaplikasikan secara berulang dengan model prototype. Element tersebut terus dikerjakan sampai menghasilkan sistem yang dibutuhkan oleh konsumen. 

Kelebihan dari incremental model ini adalah personil bisa bekerja dengan optimal dan mampu mengakomodasi kebutuhan perusahaan yang fleksibel. Konsumen bisa menggunakan terlebih dahulu sistem yang sudah jadi sambil menunggu fitur yang belum tersedia. Sedangkan kekurangan incremental adalah tidak cocok diterapkan untuk proyek yang besar lebih dari 200.000 ribu baris coding.

Spiral

Spiral model ini mengadopsi dari dua model sebelumnya, yaitu prototyping dengan perulangan dan model waterfall. Model spiral atau bisa juga disebut Spiral Boehm, bekerja dengan beberapa tahapan sebagai berikut:

  • Liaison, tahan untuk melakukan komunikasi yang baik dengan user langsung.
  • Planning, menentukan sumber informasi, batasan waktu dan informasi tentang proyek yang akan dijalankan.
  • Analisis resiko, mencari segala resiko yang akan terjadi baik masalah teknis atau manajemen.
  • Rekayasa, proses dalam pembuatan prototype sistem.
  • Konstruksi dan pelepasan,  tahap pembangunan sistem dari prototype lalu dilakukan pengujian, install, dan diberikan masukan untuk keberhasilan sistem yang dibuat.
  • Evaluasi, menerima masukan terhadap proyek yang sudah dijalankan.

Kekurangan dari sistem spiral ini adalah membutuhkan waktu yang panjang dan biaya yang besar. Sedangkan kelebihannya adalah sangat mempertimbangkan risiko munculnya permasalahan sehingga bisa digunakan untuk pembuatan sistem dengan skala yang besar.

Nah Guys, engineering software saat ini memang penting untuk dipelajari, apalagi sekarang semua serba menggunakan software kan. Anyway, kalau kalian mau sharing terkait engineering software, langsung sampaikan di kolom komentar ya 🙂

Bagi kalian yang masih bingung bagaimana cara membuat website, tenang saja. Kami punya solusinya. Kalian bisa langsung cek ke Jetorbit guna memenuhi kebutuhan pembuatan website kalian. Selain itu, kami juga menyediakan VPS dan bisa kalian cek di sini.

Stay safe & always be alert!

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rata rata rating 5 / 5. Jumlah rate 1

Yuk Rate 5 Artikel Ini!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Bagikan:

Leave a Comment