Di artikel kali ini,kita akan membahas mengenai alasan mengapa menjadi software engineering itu penting. Mungkin dalam beberapa kondisi, anda bisa saja berpikir bahwa anda tidak membutuhkan pendekatan software engineering dalam membangun sebuah sistem dan mengasumsikan bahwa anda dapat membuat perangkat lunak dengan sangat mudah dalam waktu yang sangat singkat.
Dalam beberapa mini-program pendekatan seperti ini mungkin sah-sah saja bahkan dalam beberapa kondisi, hal ini dapat membuat biaya produksi lebih minim dan waktu pengerjaan lebih singkat.
Namun bagaimana jika suatu ketika anda mendapatkan sebuah projek yang harus dibangun dengan berjuta-juta kode program dan memiliki fitur yang begitu banyak. Apakah pendekatan-pendekatan engineering non-software engineering masih bisa menghandlenya? Jikapun mungkin, apakah pendekatan-pendekatan itu cukup reliable?
Yuk kita coba lihat dalam contoh yang lebih sederhana.
Bayangkan kalau anda adalah seorang kontraktor dinas perhubungan regional daerah, dimana anda mendapatkan projek untuk membangun sebuah jalan tol yang menghubungkan dua kota sejauh 100Km. Tentunya terdapat banyak aspek yang harus anda penuhi dalam mensukseskan projek tersebut baik secara teknis maupun non-teknis.
Tentunya anda tidak mungkin langsung membeli aspal, bahan-bahan lainnya lalu langsung membuat jalan bukan? Hal pertama yang harus anda lakukan adalah melakukan perencanaan, berkoordinasi dengan stakeholder dan tim serta menguji hasil pekerjaan tersebut untuk menjamin tercapainya standar kualitas yang berlaku.
Konsep pemikiran ini sama halnya dengan membuat sebuah perangkat lunak. Bagi para raksasa IT seperti Google, Microsoft, Facebook dan IBM, tentunya dalam membuat perangkat lunak anda harus membuat perencanaan yang matang, koordinasi antar tim dan stakeholder, menguji dan merawat perangkat lunak.Â
Semua hal ini mungkin sekali dapat dilakukan dengan penerapan software engineering dalam setiap pekerjaan pengembangan. Jika anda terbiasa dengan pemikiran ini, maka membuat software baik skala kecil, menengah dan besar bukanlah suatu permasalahan untuk anda. Karena jika dikerjakan dengan teliti dan terstruktur perangkat besar pun akan dengan sangat mudah bisa diselesaikan.
Marco Maiocchi dari University of Milan dalam jurnal Future Generation Computer Systems volume 7, menjelaskan bahwa setidaknya terdapat beberapa alasan mengapa software engineering itu sangat penting, diantaranya adalah:
1. Mengurangi Kompleksitas
Software dengan skala besar dan kompleks sangat sulit untuk dikembangkan. Untuk mengatasi hal ini, Software Engineering dapat diterapkan sebagai sebuah solusi untuk mengurangi kompleksitas dari setiap projek dengan cara membagi sekumpulan masalah besar menjadi beberapa masalah yang lebih kecil. Dengan demikian, masalah-masalah dapat diselesaikan dengan solusi-solusi yang dikerjakan satu persatu. Dengan teknik ini setiap permasalahan kecil dapat diselesaikan secara independen satu sama lain.Â