Kamis, 28 April 2016

Pengenalan Rekayasa Perangkat Lunak (RPL)

 Apa itu Rekayasa Perangkat Lunak?


Rekayasa atau teknik merupakan penerapan ilmu dan teknologi untuk menyelesaikan permasalahan manusia. Hal ni diselesaikan lewat pengetahuan, matematika, dan pengalaman praktis yang diterapkan untuk mendesain objek atau proses yang berguna. Para praktisi teknik professional disebut perekayasa.
            
Rekayasa perangkat lunak atau Software engineering dalam bahasa inggris merupakan bidang ilmu yang mempelajari tentang segala aspek perangkat lunak, seperti  cara-cara pengembangan, pemeliharaan , pembuatan, serta manajemen kualitas perangkat lunak.
     
Rekayasa perangkat lunak jugamerupakan disiplin rekayasa dengan perangkat lunak yang dikembangkan. Biasanya proses melibatkan penemuan pada keinginan klien, menyusunnya didalam daftar kebutuhan, merangcang arsitektur yang mampu mendukung semua kebutuhan, perancangan, pengodean, pengujian, dan pengintegrasian bagian yang terpisah, menguju keseluruhan, penyebaran, dan pemeliharaan perangkat lunak.  


1. Konsep Dasar Pada Software Engineering

Software engineering didefinisikan oleh Fritz Bauer sebagai: penerapan dan penggunaan prinsip-prinsip engineering yang baik dalam rangka menghasilkan software yang ekonomis, reliable, dan bekerja secara efisien pada komputer sungguhan. Software engineering is the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.
Sementara itu IEEE mendefinisikan software engineering sebagai: Aplikasi yang sistematis, tertata, mampu untuk dikembangkan, dioperasikan, dirawat dan diperbaiki, itulah sebuah aplikasi software engenering.dan mempelajarinya
Komponen Software Engenering :
Komponen adalah pokok bahasan yang sangat menarik jika kita membicarakan masalah reuse. Membangun software yang bersifat reusable akan sangat sulit dikarenakan desain komponen yang tidak baik. Hal ini dapat mengakibatkan komponen yang satu dengan yang lain sulit untuk dipisahkan. Di dalam membangun dan memelihara komponen dibutuhkan kejelasan pengertian dari dan antar komponen. Suatu komponen dapat saja memiliki hubungan external atau ketergantungan antar komponen (komponen dependence). Untuk itu diperlukan sebuah tools yang dapat melihat komponen dependence.
Metode software engineering memberikan tehnik-tehnik bagaimana membentuk software. Metode ini terdiri dari serangkaian tugas:
  • Perencanaan & estimasi proyek
  • Analisis kebutuhan sistem dan software
  • Desain struktur data
  • Arsitektur program dan prosedur algoritma
  • Coding
  • Testing dan pemeliharaan2. Peralatan Software Engineering
Peralatan software engineering memberikan dukungan atau semiautomasi untuk metode. Contohnya :
  • CASE (Case Aided Software Engineering), yaitu suatu software yang menggabungkan software, hard­ware, dan database software engineering untuk menghasilkan suatu lingkungan software engineering.
  • Database Software Engineering, adalah sebuah struktur data yang berisi informasi penting tentang analisis, desain, kode dan testing.
  • Analogi dengan CASE pada hardware adalah : CAD, CAM, CAE
  1. Prosedur Software Engineering
Terdiri dari :
  • urut-urutan di mana metode tersebut diterapkan
  • dokumen
  • laporan-laporan
  • formulir-formulir yang diperlukan
  • mengontrol kualitas software
  • mengkoordinasi perubahan yang terjadi pada software

  2. Tanggung Jawab dan Profesi Etika dalam RPL

- Konfedensialitas
konfidensialitas adalah kewajiban untuk menyimpan informasi yang sifatnya sangat rahasia. Setiap karyawan di dalam perusahaan, terutama yang memiliki akses ke rahasia perusahaan seperti akuntan, bagian operasi, manajer, dan lain lain memiliki konsekuensi untuk tidak membuka rahasia perusahaan kepada khalayak umum. Kewajiban ini tidak hanya dipegang oleh karyawan tersebut selama ia masih bekerja disana, tetapi juga setelah karyawan tersebut tidak bekerja di tempat itu lagi. Sangatlah tidak etis apabila seorang karyawan pindah ke perusahaan baru dengan membawa rahasia perusahaannya yang lama agar ia mendapat gaji yang lebih besar.

- Kompetensi
Kompetensi adalah suatu kemampuan untuk melaksanakan atau melakukan suatu pekerjaan atau tugas yang dilandasi  atas ketrampilan dan pengetahuan serta didukung oleh sikap kerja yang dituntut oleh pekerjaan tersebut .

- Hak property dan intelektual

Hak kekayaan materi semakin terbatas akibat dari tekanan sosial dan budaya yang dilaksanakan sesuai dengan norma-norma sosial, dengan tujuan ke arah manfaat etis. Intelektual properti (IP) masih dinyatakan secara pasti, melalui Trade Related Aspects of Intellectual Property Rights (TRIPS) Agreement, bagian dari WTO / GATT Uruguay Round Agreements, dengan cara yang umum. Kontribusi ini berharap pada penggunaan hak kekayaan intelektual, memberikan perbedaan mendasar dengan hak harta benda, menimbulkan kesempatan untuk berlebihan seperti sewa-mencari kesalahan alokasi yang mungkin telah dibuat dan terus dilakukan, sehingga persepsi ketidakadilan fundamental intelektual hak milik seperti yang dilakukan di luar nilai-nilai sosial, yaitu, dalam secara etika tidak bermanfaat .
 

3. SDLC (Systems Development Life Cycle, Siklus Hidup Pengembangan Sistem) 

Pengertian SDLC
SDLC adalah proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer atau informasi. Terdapat 3 jenis metode siklus hidup sistem yang paling banyak digunakan, yakni: siklus hidup sistem tradisional (traditional system life cycle), siklus hidup menggunakan protoyping (life cycle using prototyping), dan siklus hidup sistem orientasi objek (object-oriented system life cycle). SDLC (Software Development Life Cycle) berarti sebuah siklus hidup pemngembangan perangkat lunak yang terdiri dari beberapa tahapan-tahapan yang sangat penting dalam keberadaan perangkat lunak yang dilihat dari segi pengembangannya.

Sejarah SDLC
Siklus Hidup Sistem(SLC)  adalah metodologi yang digunakan untuk menggambarkan proses untuk membangun sistem informasi , dimaksudkan untuk mengembangkan sistem informasi dalam cara yang sangat disengaja, terstruktur dan teratur, mengulangi setiap tahap siklus hidup . Pengembangan sistem siklus hidup, menurut Elliott & Strachan & Radford (2004), “berasal pada tahun 1960, untuk mengembangkan skala besar fungsional sistem bisnis di zaman skala besar konglomerat bisnis . Sistem informasi kegiatan berkisar berat pengolahan data dan angka-angka rutinitas “.
Beberapa kerangka kerja pengembangan sistem telah sebagian didasarkan pada SDLC, seperti analisis sistem terstruktur dan metode desain (SSADM) diproduksi untuk pemerintah Inggris Kantor Pemerintah Commerce pada 1980-an. Sejak saat itu, menurut Elliott (2004), “pendekatan siklus kehidupan tradisional untuk pengembangan sistem telah semakin digantikan dengan alternatif pendekatan dan kerangka kerja, yang berusaha mengatasi beberapa kekurangan yang melekat pada SDLC tradisional”.
SDLC adalah proses yang digunakan oleh analis sistem untuk mengembangkan sistem informasi , termasuk persyaratan, validasi kepemilikan (stakeholder), pelatihan, dan pengguna. Setiap SDLC harus menghasilkan sistem berkualitas tinggi yang memenuhi atau melebihi harapan pelanggan, mencapai selesai dalam waktu dan perkiraan biaya, bekerja secara efektif dan efisien di saat ini dan direncanakan Teknologi Informasi infrastruktur , dan murah untuk mempertahankan dan biaya-efektif untuk meningkatkan. sistem komputer yang kompleks dan sering (terutama dengan munculnya baru-baru arsitektur berorientasi layanan ) link beberapa sistem tradisional berpotensi disediakan oleh vendor perangkat lunak yang berbeda. Untuk mengelola tingkat kompleksitas, sejumlah model SDLC atau metodologi telah diciptakan, seperti “ air terjun ”;” spiral ”;” Agile pengembangan perangkat lunak ”;” prototipe cepat ”;” incremental ”; dan” sinkronisasi dan menstabilkan “.
Model SDLC dapat dijelaskan sepanjang spektrum gesit untuk iteratif untuk berurut. metodologi Agile , seperti XP dan scrum , fokus pada proses ringan yang memungkinkan untuk perubahan yang cepat di sepanjang siklus pengembangan. Iteratif metodologi, seperti kesatuan proses rasional dan dinamis pengembangan sistem metode , fokus pada lingkup proyek terbatas dan memperluas atau memperbaiki produk oleh beberapa iterasi. Sequential atau besar-desain-up-depan (BDUF) model, seperti Air Terjun , fokus pada perencanaan lengkap dan benar untuk membimbing proyek-proyek besar dan risiko untuk hasil yang sukses dan dapat diprediks. Model-model lain, seperti Pembangunan Anamorphic , cenderung fokus pada bentuk pembangunan yang dipandu oleh ruang lingkup proyek dan iterasi pengembangan fitur adaptif.
Dalam manajemen proyek proyek dapat didefinisikan baik dengan siklus hidup proyek (PLC) dan SDLC, selama kegiatan yang sedikit berbeda terjadi. Menurut Taylor (2004) “siklus hidup proyek mencakup semua kegiatan proyek , sedangkan siklus hidup pengembangan sistem berfokus pada produk menyadari persyaratan ”.

Tahapan SDLC

Proses pengembangan sistem melewati beberapa tahapan dari mulai sistem itu direncanakan sampai sistem tersebut diterapkan.
Di dalam System Development Live Cycle (SDLC) terdapat 6 jenis tahapan pekerjaan yang dilakukan oleh analis sistem dan programmer dalam membangun sistem informasi.  Langkah yang digunakan meliputi:
 1. Perencanaan sistem, yaitu  mempelajari konsep sistem dan permasalahan yang hendak diselesaikan. apakah sistem baru tersebut realistis dalam masalah pembiayaan, waktu, serta perbedaan dengan sistem yang ada sekarang.

 2. Analisis system adalah sebuah proses investigasi terhadap sistem yang sedang berjalan dengan tujuan untuk mendapatkan jawaban mengenai pengguna sistem, cara kerja sistem dan waktu penggunaan sistem. Dari proses analisa ini akan didapatkan cara untuk membangun sistem baru.

 3. Desain sistem merupakan proses penentuan cara kerja sistem dalam hal architechture design, interface design, database dan spesifikasi file, dan program design. Hasil dari proses perancangan ini akan didapatkan spesifikasi sistem.

 4. Seleksi sistem yaitu Tahap untuk  memilih perangkat keras & perangkat lunak yang dibutuhkan

 5. Implementasi sistem adalah proses pembangunan dan pengujian sistem, instalasi sistem, dan rencana dukungan sistem.

 6. Pemeliharaan sistem yaitu sistem yang telah diimplemantasikan serta dapat mengikuti perkembangan dan perubahan apapun yang terjadi guna meraih tujuan penggunaannya.


Siklus SDLC dijalankan secara berurutan, mulai dari langkah pertama hingga langkah terakhir. Setiap langkah yang telah selesai harus dikaji ulang, kadang-kadang bersama expert user, terutama dalam langkah spesifikasi kebutuhan dan perancangan sistem untuk memastikan bahwa langkah telah dikerjakan dengan benar dan sesuai harapan. Jika tidak maka langkah tersebut perlu diulangi lagi atau kembali ke langkah sebelumnya.

 

0 komentar:

Posting Komentar