Definisi Software Engineering

 Apa yang dimaksud dengan Software Engineering ?

Software Engineering merupakan studi rinci tentang rekayasa untuk desain, pengembangan, dan pemeliharaan pada perangkat lunak. Software Engineering diperkenalkan pada kalangan bisnis untuk mengatasi masalah proyek perangkata lunak berkualitas rendah. Masalah yang akan muncul ketika sebuah perangkat lunak umumnya melebihi jadwal, anggaran dan mengurangi tingkat kualitas software tersebut. Ini akan memastikan bahwa aplikasi yang dibangun secara konsisten, benar, tepat waktu, sesuai anggaran serta sesuai persyaratan yang diminta. Permintaan Software Engineering juga muncul untuk memenuhi tingkat perubahan yang sangat besar dalam pengguna dan lingkungan tempat aplikasi yang seharusnya bekerja.

Mendekripsikan sebuah produk perangkat lunak dinilai dari seberapa mudahnya dapat digunakan oleh pengguna akhir serta fitur-fitur yang ditawarkannya kepada pengguna. Sebuah aplikasi harulah mendapatkan nilai lebih pada sektor-sektor berikut ini :

  • Operasional : Ingin memberi tahu seberapa baik sebuah perangkat lunak bekerja pada operasi yang mencakup semua anggaran, kegunaan, efisiensi, ketepatan, fungsionalitas, ketergantungan, keamanan serta kenyamanan pengguna.
  • Tranisional : Transisional merupakan hal terpenting ketika aplikasi dipindahkan dari satu platfom ke platform lainnya, jadi potabilitas dalam hal ini dapat digunakan kembali dan kemampuan beradaptasi masuk kedalam area ini.
  • Pemeliharaan : Ini juga menentukan seberapa baik sebuah perangkat lunak bekerja di lingkungan yang sering berubah-ubah. Modularitas, pemeliharaan, fleksibilitas dan skalabilitas masuk kedalam bagian pemeliharaan.
Dalam hal ini Software Development Lifecycle atau SDLC merupakan serangkaian tahapan dalam rekayasa perangkat lunak untuk mengembangkan aplikasi perangkat lunak yang diusulkan, seperti :
  1. Komunikasi
  2. Pengumpulan Kebutuhan
  3. Studi Kelayakan
  4. Analisis Kelayakan
  5. Desain Perangkat Lunak
  6. Pengkodean
  7. Pengujian
  8. Impelementasi
  9. Operasi dan Pemeliharaan
  10. dan Disposisi


Software Engineering umumnya dimulai dengan langkah pertama sebagai inisiasi permintaan pengguna untuk tugas tertentu atau output. Mereka mengajukan kebutuhannya kepada organisasi penyedia layanan. Tim pengembang perangkat lunak memisahkan kebutuhan penggunanya, kebutuhan sistemnya dan kebutuhan fungsionalnya. Persyaratan dikumpulkan dengan melakukan wawancara kepada pengguna, mengacu kepada database, mempelajari sistem yang ada. Setelah pengumpulan persyarata, tim menganalisis apakah perangkat lunal dapat dibuat untuk memenuhi semua persyaratan pengguna. Pengembang kemudian memutuskan roadmap rencananya.

Analisis sistem juga mencakup pemahaman tentang keterbatasan produk perangkat lunak sesuai kebutuhan dan analisis, desain perangkat lunak dibuat. Implementasi desain perangkat lunak dimulai dalam hal penulisan kode program dalam bahasa pemrograman yang sesuai permintaan. Pengujian perangkat lunak dilakukan saat pengkodean oleh pengembang dan pengujian menyeluruh dilakukan olehpara ahli pengujian diberbagai tingkatan kode seperti pengujuan modul, pengujian program, pengujian produk, pengujian ini-house dan pengujian produk pada keterlibatan umpan balik pengguna.

Beberapa bahasa pemrograman paling populer yang sering digunakan oleh para ahli Software Engineering meliputi :
  • Java : Bahasa pemrograman ini menghasilkan perangkat lunak pada berbagai platform tanpa perlu kompilasi ulang. Kode ini sering digunakan hampir semua sistem operasi termasuk Mac Os atau Windows. Java ini menggunakan sintaks dari pemrograman C dan C++. Program yang dioperasikan oleh browser yang memfasilitasi GUI dan Interaksi pada objek penggunanya.
  • JavaScript : Bahasa pemrograman skrip ini memungkinkan penggunanya untuk melakukan tugas-tugas yang lebih kompleks. Kebanyakan halaman web ditulis dalam Javascript, bahasa ini memungkinkan penggunanya untuk memperbaharui konten, menghidupkan gambar, mengoperasikan multimedia dan menyimpan variabel, Javascript merupakan salah satu dari tiga teknologi utama web.
  • SQL : istilahnya dikenal sebagai Structured Query Language, SQL melakukan query, update, memodifikasi, menghapus dan menyisipkan data, untuk mencapai hal ini SQL menggunakan sejumlah perintah. Bahasa kompuer ini adalah standar untuk manipulasi data dan manajemen basis data relasional. Para profesional menggunakan SQL untuk mengelola data terstruktur dimana terdapat hubungan antara variabel dan entitas.
  • C++ : Dianggap sebagai bahasa pemrograman tujuan umum yang berorientasi objek, C++ menggunakan bahasa tingkat rendah dan tinggi. Karena hampir semua komputer berisi C++, insinyur perangkat lunak harus memahami bahasa ini. C++ mencakup sebagian besar program C tanpa mengganti baris kode sumber. C++ terutama memanipulasi teks, angka, dan tugas-tugas lain yang dapat dilakukan komputer.
  • C# : Awalnya dikembangkan untuk Microsoft, bahasa program yang sangat ekspresif ini lebih sederhana daripada bahasa lain, namun mencakup komponen C++ dan Java. Tipe dan metode generik memberikan keamanan tambahan dan peningkatan kinerja. C# juga memungkinkan para profesional untuk mendefinisikan perilaku iterasi sambil mendukung enkapsulasi, polimorfisme, dan pewarisan.
  • Python : Bahasa pemrograman tingkat tinggi ini mengandung semantik dinamis, struktur, pengetikan, dan pengikatan yang menghubungkan komponen-komponen yang ada; namun, sintaks Python mudah dipelajari tanpa melibatkan tahap kompilasi, mengurangi pemeliharaan program dan meningkatkan produktivitas. Python juga mendukung penggunaan modul dan paket, yang memungkinkan para insinyur untuk menggunakan bahasa untuk berbagai proyek.
Sebagai ahli Software Engineering, anda akan bekerja dilingkungan yang terus berkembang, karena kemajuan teknologi dan arah strategis organisasi tempat anda bekerja. Anda akan membuat, memelihara, mengaudit serta meningkatkan sistem untuk memenuhi kebutuhan tertentu, seringkali seperti yang disarankan oleh analisis atau pengujian sistem perangkat lunak untuk mendiagnosis dan menyelesaikan kesalahan sistem. Peran ini juga mencakup penulisan program diagnostik dan merancang serta menulis kode untuk sistem operasi dan perangkat lunak untuk memastikan efisiensi. Jika diperlukan, anda akan membuat rekomendasi untuk pengembangan dimasa depan.
Judul dan deskripsi pekerjaan dibidang IT tidak standar, alih-alih para ahli Software Engineering, anda mungkin disebut programmer sistem/ perangkat lunak/ database/ web, ahli atau pengembang tergantung pada sistem yang anda kembangkan atau bahasa pemrograman yang anda gunakan dapat menjadi bagian dari judul anda, seperti pengembang Java atau C#. 

Next Post Previous Post
No Comment
Add Comment
comment url
close