Software dan Software Engineering


Dalam bidang teknologi informasi sering kita mendengar kata software. Sebenarnya apa sih software itu? Pernah ada yang mengatakan kalau tanpa software, maka suatu komputer tidak dapat dioperasikan maupun digunakan. Sebuah software itu dibangun dan dirancang oleh software engineer, untuk mengetahui pengertian dan ulasan dari software dan software engineering yang detail, mari simak sedikit penjelasannya di bawah ini : 

Pengertian Software adalah sekumpulan data elektronik yang disimpan dan diatur oleh komputer, data elektronik yang disimpan oleh komputer itu dapat berupa program atau instruksi yang akan menjalankan suatu perintah. Melalui sofware atau perangkat lunak inilah suatu komputer dapat menjalankan suatu perintah.

Penjelasan software lainnya dari buku "Software Engineering A Practitioners Approach 7th Edition" yaitu : 
  • Suatu instruksi (program komputer) yang ketika dijalankan menyediakan fitur, fungsi, dan kinerja yang diinginkan.
  • Data terstruktur  yang memungkinkan program untuk memanipulasi informasi yang memadai.
  • Deskriptif informatif dalam bentuk hard copy dan virtual yang menggambarkan suatu operasi dan penggunaan program

Beberapa pertanyaan-pertanyaan yang sering diajukan mengenai software engineer :
  1. Mengapa begitu lama waktu untuk menyelesaiakan software?
  2. Mengapa biaya pengembangan software begitu tinggi?
  3. Mengapa kita tidak bisa menemukan semua kesalahan sebelum kita memberikan software untuk costumer kita?
  4. Mengapa kita menghabiskan begitu banyak waktu dan usaha untuk maintaining program yang sudah ada?
  5. Mengapa kita terus mengalami kesulitan dalam mengukur progress sebagai software yang sedang dikembangkan dan maintained?
Karakteristik sebuah Software :
  1. Software dikembangkan atau direkayasa, tidak diproduksi dalam pengertian klasik.
  2. Software tidak aus, tetapi tidak memburuk.
  3. Meskipun industri bergerak menuju berbasis komponen konstruksi, sebagian besar software terus menjadi built-kustom.

Berikut macam-macam dari domain software aplikasi :

1. System Software  
Suatu kumpulan program yang ditulis untuk melayani program lain. Contoh: compiler,  editor,  dan  file management utility, dan lain-lain.
2. Software aplikasi
Suatu  program yang berdiri sendiri yang digunakan untuk memecahkan kebutuhan yang spesifik. Contoh : point proses penjualan transaksi, real-time manufaktur proses kontrol.
3. Engineering/scientific software
Software yang digunakan untuk keperluan ilmiah yang berkisar dari ilmu astronomi sampai ilmu vulkanologi, dari analisis tegangan otomotif untuk ruang orbit, dan dari biologi molekuler untuk manufaktur otomatis.
4. Embedded Software
Suatu sistem yang digunakan untuk melaksanakan dan mengendalikan fitur dan fungsi bagi end user dan untuk sistem itu sendiri. Contoh : key pad control untuk microwave oven. 
5. Product – line software
Software yang dirancang untuk memberikan kemampuan khusus yang digunakan oleh banyak pelanggan yang berbeda. Contoh : Pengolah kata, spreadsheet, komputer grafis multimedia, hiburan, manajemen database,dan lain-lain. 
6. Web applications
Software ini sering disebut WebApps yang merupakan software yang berbasis web dan jaringan. 
7. Artificial intelligence software
Suatu software yang menggunakan algoritma non numerik untuk memecahkan masalah yang lebih kompleks. Aplikasi dalam area ini termasuk robotika, sistem pakar, pengenalan pola (gambar dan suara), jaringan saraf tiruan, teorema pembuktian, dan permainan game.

Tantangan Software baru :

1. Computing ada dimana – mana
Membuat software untuk menyediakan mesin semua ukuran untuk berkomunikasi satu sama lain melalui jaringan yang luas. 
2. Netsourcing
Arsitekturnya sederhana dan aplikasinya canggih yang kemanfaatan ditargetkan untuk pasar end user di seluruh dunia. 
3. Open source
Menyebarkan source code untuk aplikasi komputasi sehingga costumer dapat membuat modifikasi lokal dengan mudah dan terpercaya.

Masing-masing tantangan baru niscaya akan dipatuhi hukum dan memiliki efek (untuk pengusaha, software  engineers, dan end user) yang tidak bisa diprediksi saat ini. Namun, software  engineers dapat mempersiapkan diri dengan proses  instant yang lincah untuk mengakomodasi perubahan dramatis dalam teknologi dan aturan bisnis yang pasti akan datang pada dekade berikutnya.

Macam Legacy software:
  • Software harus disesuaikan untuk memenuhi kebutuhan lingkungan teknologi baru.
  • Software harus ditingkatkan untuk mengimplementasikan kebutuhan bisnis baru.
  • Software harus diperluas untuk membuatnya dapat bertukar informasi dengan banyak system modern atau database lainnya.
  • Software harus dapat di arsitektur ulang untuk membuatnya layak dalam lingkungan jaringan.

Pengertian Software engineering :

  • Menurut Roger S Pressman adalah:

  1. Pendekatan yang sistematis, berisi Perangkat  Lunak dan dapat dikuantifikasi untuk dikuantifikasi untuk pengembangan, pengoperasian, dan pemeliharaan perangkat lunak, yaitu penerapan rekayasa terhadap perangkat lunak.
  2. Studi terhadap pendekatan 1.

  • Menurut IEEE (Institute of Electrical and Electronics Engineers) adalah aplikasi sistematik, disiplin, pendekatan kuantitatif untuk pengembangan, operasi dan pemeliharaan dari software atau dapat disimpulkan sebagai teknik aplikasi untuk perangkat lunak. Intinya Software engineering berkaitan dengan pembangunan produk program.

Jika disimpulkan berdasarkan pengertian di atas , software engineering adalah suatu sistem untuk menciptakan, mengembangkan, mengoperasikan , dan memelihara perangkat lunak.

Proses framework dari software engineering terdiri dari 5 aktifitas, yaitu :

1. Communication
Sebelum memulai mengerjakan sebuah proyek, sebaiknya berkomunikasi dan berkolaborasi dengan costumer dan user. Tujuan untuk mengetahui  fitur dan fungsi software yang akan dikerjakan.
2. Planning
Mendeskripsikan kerja software engineering dengan menulis tugas yang akan dilakukan seperti resiko yang mungkin terjadi, sumber daya yang dibutuhkan, hasil produknya, jadwal kerja.
3. Modeling
Software engineering  membuat model untuk membantu developer dan costumer mengerti kebutuhan dan desain software.
4. Construction
Pembuatan code dan testing code yang dibuat tersebut.
5. Deployment
Software yang telah jadi dikirim ke costumer.

Umbrella activities software engineering :

1. Software project tracking and control
Memungkinkan tim untuk menilai kemajuan dan pengkoreksian untuk mempertahankan jadwal yang telah disusun. 
2. Manajemen resiko
Menilai risiko yang dapat mempengaruhi hasil atau kualitas proyek. 
3. Asuransi kualitas software
Aktivitas yang dibutuhkan untuk menjaga kualitas software. 
4. Review teksnis
Menilai produk kerja untuk mengungkap dan menghapus kesalahan sebelum menuju ke aktivitas berikutnya. 
5. Pengukuran
Mendefinisikan dan mengumpulkan proses, proyek, dan langkah-langkah produk untuk membantu tim dalam pertemuan dengan customer. 
6. Manajemen konfigurasi software
Memanage efek perubahan software. 
7. Usabilitas Manajemen
Mendefinisikan kriteria produk kerja untuk digunakan kembali  dan membentuk mekanisme untuk mencapai penggunaan kembali komponen.
8. Produksi dan persiapan produk kerja
Aktivitas untuk membuat model, dokumen, log, bentuk, daftar, dll.

Seringkali kita mendengar Mitos Software, namun customer percaya mitos  tersebut karena manajer dan praktisi software melakukan perbaikan informasi yang keliru. Mitos menyebabkan harapan palsu oleh customer dan pada akhirnya ketidakpuasan dengan develope.

Itulah pengertian dan ulasan mengenai Software dan Software Engineering, semoga memberikan tambahan ilmu dan manfaat bagi para pembaca sekalian. Amin, Thanks before,,, ^_^


Note : Sebelum keluar dari situs ini,tolong blog ini di follow dan berikan komentar untuk blog ini serta juga Untuk para blogger alangkah bagusnya bila kita saling bertukar informasi,demi kemajuan blog kita berdua...

Trim's... ^_^

5 komentar:

Andra mengatakan...

Terima kasih atas infonya!!

Anonim mengatakan...

woyyyyy !!! kaga lengkap coy
kalo buat blog yang lengkap coo!!!!

Unknown mengatakan...

good artikel

My blog

Unknown mengatakan...

Terimakasih.. tulisannya sangat bermanfaat..
My blog

Unknown mengatakan...

Terimakasih.. artikel ini sangat membantu..

My blog

Posting Komentar

 
Powered by Blogger