Dec 202010
 

Tulisan ini dibuat karena ada seorang teman yang mempertanyakan hal ini. Banyak sebenarnya penjelasan yang lebih formal bisa di cari di internet. Tapi teman saya ini ingin dijelaskan menurut kata-kata saya.
Saya mengerti bedanya tapi ternyata untuk menjelaskan secara sederhana ternyata bukan hal yang mudah. Apalagi teman saya ini tidak memiliki latar belakang pendidikan komputer.

Dalam bahasa Inggris, ilmu komputer dikenal sebagai computer science atau informatique, sedangkan Rekayasa perangkat lunak dikenal sebagai software engineering. Orang yang mengerti ilmu komputer belum tentu mengerti rekayasa perangkat lunak, demikian juga sebaliknya. Walau untuk mempelajari bidang ini membutuhkan tingkat pemahaman yang sama diawal.

Bidang ilmu komputer dan rekayasa perangkat lunak sama-sama mencari solusi untuk penyelesaian suatu masalah dengan komputer. Tapi domain masalah yang diselesaikan tentunya berbeda. Ilmu komputer lebih menekankan pada pengembangan-pengembangan ilmu yang terkait dengan penyelesaian masalah yang menuntut optimasi solusi dengan menggunakan logika. Rekayasa perangkat lunak menekankan pada proses penyelesaian masalah. Jadi fokusnya terkait dengan aktivitas untuk pengembangan perangkat lunak, dan tentunya berhubungan dengan perencanaan sumber daya manusia, waktu dan biaya.

Misalnya saja, kita ingin dibuatkan program yang bisa bermain catur. Program ini diharapkan bisa melawan seorang pemain catur manusia.

Seorang ahli ilmu komputer akan tertarik menyelesaikan masalah bagaimana menemukan program yang cepat dan efisien untuk memberikan solusi dari game catur ini. Jadi program menekankan pada bagaimana game itu bisa ‘berpikir’ seperti manusia.

Tapi seorang perekayasa perangkat lunak lebih tertarik untuk mencari tahu bagaimana game itu akan dibuat. Ia akan tertarik untuk menghitung berapa orang yang dibutuhkan untuk membuat game itu. Termasuk tentunya perhitungan waktu dan biaya yang dibutuhkan. Biaya ini termasuk biaya perangkat keras yang diperlukan untuk pengembangan, dan juga perangkat lunak bantu yang dibutuhkan. Dan juga biaya untuk membayar orang-orang yang diperlukan untuk pengembangan game itu. Termasuk juga perhitungan waktu yang dibutuhkan. Selanjutnya juga diperlukan perhitungan yang optimal antara biaya dan waktu.

Seorang perekayasa perangkat lunak juga akan memperhatikan seberapa jauh game itu sudah selesai dibuat. Sudah selesai dibuat artinya game itu sudah selesai diuji. Pengujian harus melihat apakah solusi yang ditawarkan dari algoritma sudah memenuhi keinginan pengguna game, termasuk juga analisa apakah game itu cukup ‘enak’ dimainkan sehingga bisa membuat orang tertarik untuk memainkan game ini.

Seorang ahli komputer lebih mempedulikan bagaimana solusi yang optimal dari sisi algoritma ini. Dan tentunya solusi ini menyangkut  cepat atau tidaknya solusi program yang ditawarkan. Berbagai teknik program bisa di terapkan mulai dari yang bersifat mencoba setiap kemungkinan ataupun menggunakan teknik-teknik di intelegensia buatan.

Jadi secara umum untuk penyelesaian program game catur ini akan dibutuhkan seorang perekayasa perangkat lunak yang akan mengembangkan program ini, dan juga seorang ahli ilmu komputer yang bisa mencari solusi optimal untuk pengembangan program.

Dari contoh di atas, tentunya seorang ahli rekayasa perangkat lunak lebih diperlukan untuk pengembangan proyek perangkat lunak, sedangkan ahli ilmu komputer diperlukan untuk pencarian solusi optimal.  Tapi tentunya ada saja orang yang cukup ahli di kedua bidang tersebut.

Dengan penjelasan ini teman saya cukup puas, tapi kalau masih ada yang ingin di diskusikan, saya juga masih ingin tahu.

Share

  7 Responses to “Apa beda ilmu komputer dengan rekayasa perangkat lunak?”

  1. Bedanya klo menurut saya adalah, ilmu komputer lebih mempelajari secara detail tentang komputer, baik dari perangkat keras maupun lunaknya dan bagimana kedua perangkat itu bekerja. Sedangkan perangkat lunak lebih kepada rekayasa penggunaan komputer itu sendiri

    • Terimakasih pendapatnya, tapi nampaknya pendapat anda berbeda dengan ungkapan yang di atas. Terutama bagian “perangkat lunak lebih kepada rekayasa penggunaan komputer itu sendiri”. Bisa disebutkan sumbernya mas? soalnya dulu yang saya pelajari tidak seperti itu.

  2. ilmu komputer adalah ilmu yang mamiliki makna luas,karena pada tersebut dipelajari berbagai macam tentang komputer,mali dari perakitan,installasi,troubleshoting,manajemen,jaringan,dan lain²…namun biasanya ilmu tersebut terpisah untuk di pelajari..sedangkan rekayasa perangkat lunak adalah pembelajaran yang fokus dengan 1 topik yaitu perangkat lunak….

    • Yang saya tahu banyak topik di rekayasa perangkat lunak. Tiap topik bisa jadi satu matakuliah sendiri untuk satu/dua semester (software modelling, software design, software evolution, software process, software quality, software management, software testing, dll)

      Perakitan, instalasi, troubleshooting setahu saya malah tidak diajari di computer science.

  3. Saya mahasiswi ilmu komputer, setuju dg yg ditulis oleh penulis. kami mempelajari berbagai macam algoritma dan mana yang efektif untuk diimplementasikan pada kondisi tertentu. kami tidak mempelajari instalasi, troubleshoot dan sebagainya,itu di luar konteks perkuliahan. Hari-hari kami ditemani dengan logika, perhitungan, analisa, intinya adalah kami ditekankan pada “scientiest”, algoritma ditelusuri dengan detail, begitu juga dengan teori peluang, matematika, dan kawan-kawannya. Sedangkan untuk RPL mungkin lebih ke pembuatan aplikasi, seperti permodelan berorientasi objek, dan sejenisnya.
    Demikian yang saya ketahui, mohon maaf bila ada kesalahan.

  4. ya,saya setuju dengan anda..penjelasan yang cukup mudah dimengerti..

  5. Rekayasa perangkat lunak merupakan salahsatu cabang dari ilmu komputer

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)