Jumat, 19 Oktober 2018

Critical Path

Critical Path Method / CPM adalah suatu rangkaian item pekerjaan dalam suatu proyek yang menjadi bagian kritis atas terselesainya proyek secara keseluruhan. Ini artinya, tidak terselesaikannya tepat watu suatu pekerjaan yang masuk dalam pekerjaan kritis akan menyebabkan proyek akan mengalami keterlambatan karena waktu finish proyek akan menjadi mundur atau delay. CPM dibangun atas suatu network yang dihitung dengan cara tertentu dan dapat pula dengan software sehingga menghasilkan suatu rangkaian pekerjaan yang kritis.

Teknik Menghitung critical path method:

 1. Hitungan Maju (Forward Pass)
Dimulai dari Start (initial event) menuju Finish (terminal event) untuk menghitung waktu penyelesaian tercepat suatu kegiatan (EF), waktu tercepat terjadinya kegiatan (ES) dan saat paling cepat dimulainya suatu peristiwa (E).
Aturan Hitungan Maju (Forward Pass)
  • Kecuali kegiatan awal, maka suatu kegiatan baru dapat dimulai bila kegiatan yang mendahuluinya (predecessor) telah selesai.
  • Waktu selesai paling awal suatu kegiatan sama dengan waktu mulai paling awal, ditambah dengan kurun waktu kegiatan yang mendahuluinya.
    EF(i-j) = ES(i-j) + t (i-j)
  • Bila suatu kegiatan memiliki dua atau lebih kegiatan-kegiatan terdahulu yang menggabung, maka waktu mulai paling awal (ES) kegiatan tersebut adalah sama dengan waktu selesai paling awal (EF) yang terbesar dari kegiatan terdahulu.
2. Hitungan Mundur (Backward Pass)
Dimulai dari Finish menuju Start untuk mengidentifikasi saat paling lambat terjadinya suatu kegiatan (LF), waktu paling lambat terjadinya suatu kegiatan (LS) dan saat paling lambat suatu peristiwa terjadi (L).
Aturan Hitungan Mundur (Backward Pass)
  • Waktu mulai paling akhir suatu kegiatan sama dengan waktu selesai paling akhir dikurangi kurun waktu berlangsungnya kegiatan yang bersangkutan.
    LS(i-j) = LF(i-j) t
  • Apabila suatu kegiatan terpecah menjadi 2 kegiatan atau lebih, maka waktu paling akhir (LF) kegiatan tersebut sama dengan waktu mulai paling akhir (LS) kegiatan berikutnya yang terkecil.
Apabila kedua perhitungan tersebut telah selesai maka dapat diperoleh nilai Slack atau Float yang merupakan sejumlah kelonggaran waktu dan elastisitas dalam sebuah jaringan kerja.

Rabu, 03 Oktober 2018

pengertian spiral model, dan tahap tahap spiral model


SPIRAL MODEL
  Spiral Model adalah suatu model tentang tahapan pembuatan suatu perangkat lunak, spiral model ini adalah salah satu dari model revolusioner, model spiral merangkai sifat interatif yaitu sifat yang ditandai yang memungkinkan untuk mengembangkan versi dari suatu perangkat lunak secara bertahap untuk menghasilkan perangkat lunak yang lebih lengkap atau lebih sempurna dan terkontrol. Perangkat lunak dikembangkan dalam deretan pertambahan. Selama awal iterasi, rilis ikremantal bisa berupa model/prototype kertas, kemudian sedikit demi sedikit dihasilkan versi sistem yang lebih lengkap.
tahap-tahap model spirac
1. ustomer communication
Aktivitas yang dibutuhkan untuk membangun komunikasi yang efektif antara developer dengan user / customer terutama mengenai kebutuhan dari customer
2.Planning
Aktivitas perencanaan ini dibutuhkan untuk menentukan sumberdaya, perkiraan waktu pengerjaan, dan informasi lainnya yang dibutuhkan untuk pengembangan software.
3. Analysis Risk
Aktivitas analisis resiko ini dijalankan untuk menganalisis baik resiko secara teknikal.

Konsep Model Pengembangan Spiral
Perbedaan penting antara model spiral dan model perangkat lunak lainnya adalah dilakukannya pertimbangan resiko secara eksplisit pada model spiral. Secara informal, resiko adalah sesuatu yang bisa berjalan salah. Sebagai contoh, jika tujuannya adalah menggunakan bahasa pemrograman yang baru, resikonya ialah bahwa compiler yang tersedia tidak dapat diandalkan. Resiko mengakibatkan masalah proyek, seperti terlampauinya jadwal dan biaya, sehingga minimasi resiko merupakan kegiatan manajemen proyek yang sangat penting
Pada model spiral tidak adal fase-fase yang tetap seperti spesifikasi atau perancangan. Model spiral mencakup model proses yang lain. Misal prototipe dapat digunakan pada satu spiral, lalu tahap ini bisa diikuti dengan pengembangan air terjun konvensional, dan seterusnya.
bagan / gambar










jam mengelilingi spiral. Lintasan pertama putaran menghasilkan perDari gambar tersebut, proses dimulai dari inti bergerak searah dengan jarum kembangan spesifikasi produk. Putaran selanjutnya digunakan untuk mengembangkan sebuah prototype, dan secara progresif mengembangkan versi perangkat lunak yang lebih canggih. Masing-masing lintasan yang melalui daerah perencanaan menghasilkan penyesuaian pada rencana proyek. Biaya dan jadwal disesuaikan berdasarkan umpan balik yang disimpulakan dari evaluasi pelanggan. Manajer proyek akan menambah jumlah iterasi sesuai dengan yang dibutuhkan.
penerapan
 Model spiral biasanya diterapkan/digunakan pada perusahaan-perusahaan berskala besar.Contoh penerapan umum metode pengembangan perangkat lunak dengan menggunakan metode spiral adalah sebagai berikut :
1.Concept Development Project (Proyek Pengembangan Konsep)
2.New Product Development Project (Proyek Pengembangan Produk Baru)
3.Product Enhancement Project (Proyek Peningkatan Produk)
4.Product Maintenance Project (Proyek Pemeliharaan Produk).

PROTOTYPING METODE

PROTOTYPING METODE
Prototyping merupakan salah satu metode pengembangan perangat lunak yang banyak digunakan. 
Dengan metode prototyping ini pengembang dan pelanggan dapatsaling berinteraksi selama proses pembuatan sistem, Sering terjadi seorang pelangganhanya mendefinisikan secara umum apa yang dikehendakinya tanpa menyebutkan secaradetal output apa saja yang dibutuhkan, pemrosesan dan data-data apa saja yangdibutuhkan. 
Sebaliknya disisi pengembang kurang memperhatikan efesiensi algoritma,kemampuan sistem operasi dan interface yang menghubungkan manusia dan komputer
Penjelasan Proses pada model prototyping :
  1. perdan klien bertemu dan menentukan tujuan umum, kebutuhan yang diketahui dangambaranbagian-bagian yang akandibutuhkan   berikutnya. Detil kebutuhan mungkin tidak dibicarakan     disini, pada   awal pengumpulan kebutuhan
  2. Perancangan:
  3. perancangan dilakukan cepat dan rancangan mewakili semua aspek software yang diketahui, dan rancangan ini   menjadi dasar pembuatan prototype.
  4. valuasi prototype
  5. klien mengevaluasi prototype yang dibuat dan digunakan untuk memperjelas kebutuhan software.

Terdapat 3 pendekatan utama prototyping, yaitu:

1. Throw-Away

    Prototype ini dibuat dan dites, Pengalaman yang diperoleh   dari pembuatan prototype digunakan        untuk membuat produk akhir (final).

2. Incremental
    Produk finalnya dibuat sebagai komponen-komponen   yang terpisah.
3. Evolutionary
   Pada metode ini, prototipenya tidak dibuang tetapi   digunakan untuk iterasi desain berikutnya.
  
 Tahapan Metode Prototyping Prototyping

1.      Requirement Gathering 

PENJELASANYA 

  Pada tahapan prototyping atau phase ini adalah menjelaskan bahwasan-Nya user dan analis melakukan pertemuan lalu kemudian melakukan conversation antara kedua-Nya, 

user mendeskripsikan mengenai spesifikasi kebutuhan dari aktivitas yang user lakukan seperti dalam pekerjaan-Nya atau aktivitas lain-Nya, kemudian analis harus berusaha memahami apa maksud dari deskripsi user yang diajukan-Nya tersebut. 

2.      Formal Language Representation.

   pada tahapan atau phase ini program dibuat berdasarkan prototype yang telah diajukan dan disetujui bersama

(Team analis), kemudian pada tahap ini juga sebuag program di uji coba oleh analis dan tentu-Nya user, kemudia user menilai apakah program tersebut dapat di terima atau tidak. 

  Jika sebuah program tersebut user menolak maka analis harus kembali pada phase atau tahapan sebelum-Nya untuk memperbaiki kesalahan, kekurangan dan ketidak sesuaian program tersebut dengan spesifikasi user.
5.      Complete Software 
Pada tahapan ini program telah disetujui (berhasil memenuhi spesifikasi yang diajukan) oleh user dan selanjut-Nya user dapat menggunakan program pesanan-nya dengan sukses, tentu-Nya pada tahapan ini program telah diserahkan kepada user.
Kekurangan dan Kelebihan Metode Prototyping

Kelebihan Metode Prototyping

1.      Adanya komunikasi yang baik antara pengembang dan      pelanggan.
2.      Pengembang dapat bekerja lebih baik dalam menentukan   kebutuhan pelanggan.
3.      Pelanggan berperan aktif dalam pengembangan sistem.
4.      Lebih menghemat waktu dalam pengembangan sistem.
5.      Penerapan menjadi lebih  mudah karena pemakai   mengetahui apa yang diharapkannya
Kekuarangan Metode Prototyping

1. Pelanggan yang melihat working version dari model yang   dimintanya tidak menyadari, bahwa          mungkin saja   prototype dibuat terburu-buru dan rancangan   tidak tersusun dengan baik
2.Pengembang biasanya ingin cepat menyelesaikan proyek   sehingga menggunakan algoritma dan          bahasa   pemrograman sederhana.
3.Pengembang kadang-kadang membuat implementasi   sembarang, karena ingin working version         bekerja dengan   cepat


Mengenal Component Assembly Model


Component Assembly Model (CAM) adalah suatu model Metodologi Penelitian RPL yang merupakan gabungan dari berbagai model lain karena terdapat beberapa kesamaan dari Model RPL PrototypeSpiral Boehm dan RAD.
Sifat karakteristik dari CAM yaitu yang seperti saya sebutkan tadi Model Spiral Boehm dan sangat erat keterikatannya dengan model RAD (Rapid Application Development), model karena model CAM ini menggunakan peralatan-peralatan dan GUI (Graphic User Interface) untuk membangun software.
Dengan kata lain pembuatan aplikasinya dibuat dari paket perangkat lunak yang berisi serangkaian komponen yang telah ada sebelumnya. Namun, waktu yang dibutuhkan dapat disesuaikan atau lebih efektif daripada harus mengerjakan program dari awal.
Component Assembly Model (CAM) adalah suatu model Metodologi Penelitian RPL yang merupakan gabungan dari berbagai model lain karena terdapat beberapa kesamaan dari Model RPL PrototypeSpiral Boehm dan RAD.
Sifat karakteristik dari CAM yaitu yang seperti saya sebutkan tadi Model Spiral Boehm dan sangat erat keterikatannya dengan model RAD (Rapid Application Development), model karena model CAM ini menggunakan peralatan-peralatan dan GUI (Graphic User Interface) untuk membangun software.
Dengan kata lain pembuatan aplikasinya dibuat dari paket perangkat lunak yang berisi serangkaian komponen yang telah ada sebelumnya. Namun, waktu yang dibutuhkan dapat disesuaikan atau lebih efektif daripada harus mengerjakan program dari awal.


Seperti yang sudah saya sebutkan tadi CAM ini mirip dengan prototype model karena dalam pengembangannya di haruskan membuat prototype sesuai dengan kebutuhan customer agar lebih pasti perancangannya dan sesuai keinginan, dengan langkah ini artinya dapat menghemat dari segi efesiensi waktu dalam pengerjaanya.
Tahapan-tahapan CAM yaitu sebagai berikut :
  1.  Tahap identifikasi 1calon-calon komponen (Kelas Objek)
  2. Tahap melihat komponen-komponen dalam pustaka
  3. Tahap mengekstrak komponen
  4. Tahap membangun komponen
  5. Tahap menyimpan komponen baru pada pustaka
  6. Tahap mengkonstruksi iterasi ke-N dari sistem.

Kelebihan CAM adalah tinggal mencaplok atau menggunakan program atau komponen yang sudah ada dan menyusunnya menjadi sebuah program yang lebih kompleks dan berkembang sesuai dengan kebutuhan user/pengguna sehingga dapat mengefisienkan penggunaan waktu dan tenagaSelain itu, model ini juga menyediakan kemampuan untuk memvisualisasikan hasil rakitan dengan kesanggupan untuk mengukur, menganalisa, merancang dan merancang ulang program.
Kekurangan CAM adalah seringnya program atau komponen-komponen terdahulu tidak kompatibel atau sejalan dengan model perakitan komponen ini sehingga untuk perusahaan berskala kecil akan kesulitan menemukan komponen yang sesuai untuk dirakit.
 Component Assembly Model (CAM) sangat sesuai digunakan oleh perusahaan besar yang sudah berpengalaman mengembangkan software, mereka dapat memanfaatkan software-software yang telah umum dikembangkan sebelumnya menjadi bentuk baru dari software yang ingin dikomersilkan dan para pengembang hanya perlu mengetahui kebutuhan pelanggan, mencari komponen yang berguna yang berguna untuk menjawab kebutuhan pelanggan dan akhirnya menempatkan mereka bersama-sama untuk membangun sebuah program baru yang bermanfaat.



pengertian fourth generation technigues (4GT)


Fourth Generation Techniques (4GT)
  • Cakupan Aktifitas 4GT
Menggunakan perangkat bantu yang akan membuat kode sumber secara otomatis berdasarkan spesifikasi dari pengembang perangkat lunak. Hanya digunakan untuk mengembangkan perangkat lunak yang menggunakan bentuk bahasa khusus atau notasi grafik yang diselesaikan dengan syarat yang dimengerti pemakai. Cakupan aktivitas 4GT:
Pengumpulan kebutuhan.
Translasi kebutuhan menjadi prototype operasional, atau langsung melakukan implementasi secara langsung dengan menggunakan bahasa generasi keempat (4GL) jika aplikasi relatif kecil.
Untuk aplikasi yang cukup besar, dibutuhkan strategi perancangan sistem walaupun 4GL akan digunakan.
Pengujian.
Membuat dokumentasi.
Melaksanakan seluruh aktivitas untuk mengintegrasikan solusi-solusi yang membutuhkan paradigma rekayasa perangkat lunak lainnya.
  • Penggunaan 4GT
Metode Pengembangan Perangkat Lunak Fourth Generation Techniques (4GT)
Istilahnya metode pengembangan perangkat lunak generasi keempat, mengarah ke perangkat lunak yang umum yaitu tiap pengembang perangkat lunak menentukan beberapa karakteristik perangkat lunak pada level tinggi. Saat ini pengembangan perangkat lunak yang mendukung 4GT, berisi tool-tool berikut:

  1. Bahasa non prosedural untuk query basis data;
  2. Report generation;
  3. Data manipulation ;
  4. Interaksi layar ;
  5. Kemampuan grafik level tinggi ;
  6. Kemampuan spreadsheet .

informasi yang diinginkan atau tanpa memberikan, menyatakan suatau cara atau prosedur untuk memperoBahasa Query Non-Prosedural
user mendeskripsikan leh data atau informasi tersebut, Contoh: kalkulus relasional tuple.

  • Report generation
adalah cara membuat hasil survey menjawab secara langsung dan memberikan informasi yang berarti bagi pihak yang memerlukannya. Report generation terdiri atas dua fase:
Fase komposisi instrumen: pertanyaan-pertanyaan, penskalaan, dan kuesioner dibuat, materi disusun dalam suatu urutan tertentu yang memberikan arti bagi responden dan memungkinkan materi menggunakan teknik penskalaan untuk dikelompokkan.
Fase pelaporan (reporting): isi dari survey harus disusun kembali berdasarkan kebutuhan informasi. Penyusunan harus mulai dari informasi yang paling penting dan paling prinsip, dan berikutnya adalah informasi-informasi yang kurang penting dibandingkan informasi sebelumnya.Data manipulatio
DML atau Data Manipulation Language adalah kumpulan perintah query yang digunakan untuk memanipulasi data dalam tabel, seperti menambah, merubah atau menghapus data. Perintah ini tidak terkait dengan struktur dan metadata dari objek-objek yang berada pada tabel-tabel database.
  • Interaksi dengan layar
Interaksi merupakan suatu jenis tindakan atau aksi yang terjadi suatu dua atau lebih objek mempengaruhi atau memiliki efek satu sama lain. Sedangkan manusia merupakan mahluk hidup yang dilengkapi otak berkemampuan tinggi dan komputer itu sendiri yaitu alat yang digunakan untuk mengolah dan menurut prosedur yang telah dirumuskan

  • Tahapan-tahapan model 4GT antara lain sebagai berikut :
  1.  Tahap pengumpulan kebutuhan
  2.  Tahap ini merupakan tahap pengumpulan serangkaian kebutuhan. Customer menjelaskan   kebutuhan-kebutuhan kemudian akan diterjemahkan ke dalam prototype. Tetapi jika customer   merasa tidak yakin dengan apa yang diperlukan, maka prototype tidak akan dikerjakan oleh   4GT. 
  3.  Tahap Merancang Strategi
  4.  Tahap ini dibutuhkan untuk proyek besar yakni dengan menterjemahkan kebutuhan menjadi     prototype operasional agar tidak timbul masalah yang sama jika dibuat dengan model     konvensional.
  5.  Tahap Implementasi
  6.  Tahap ini memungkinkan pengembang software menjelaskan hasil yang diinginkan, kemudian   selanjutnya diterjemahkan dalam bentuk source code dan object code secara otomatis.
  7.  Tahap produksi
  8.  Tahap terakhir ini adalah mengubah implementasi 4GT ke dalam hasil akhir berupa produk.
  • Kelebihan Dan Kekurangan Metode Pengembangan Perangkat Lunak 4GL
(Kelebihan)
Kelebihan dari metode pengembangan perangkat lunak ini diantaranya :
Pengurangan waktu dan peningkatan produktivitas secara besar
Karena 4GT menggunakan 4GL yang merupakan bahasa pemrograman yang khusus dirancang dengan tujuan tertentu (spesifik), maka untuk permasalahan yang tertentu dengan 4GL tertentu pula sangat tepat menggunakan 4GT.
Tool yang menggunakan metode pengembangan perangkat lunak 4GL bisa meng-generate sistem dari output yang dihasilkan oleh CASE tools.

(Kekurangan)
Kekurangan metode pengembangan perangkat lunak ini
Penggunaan perangkat bantu (tools) dibandingkan dengan bahasa pemrograman, dan juga kode sumber yang dihasilkannya tidak efisien.
Untuk usaha yang besar, dibutuhkan pengembangan strategi desain untuk sistem, walau digunakan bahasa 4GL.
Penggunaan 4GT tanpa perencanaan matang (untuk proyek besar) akan menyebabkan kesulitan yang sama (kualitas dan pemeliharaan yang jelek, ketidakpuasan pelanggan) seperti dengan metode konvensional.
4GL tidak selalu berhasil menghasilkan sistem yang diinginkan

Rabu, 26 September 2018

incremental model

Incremental model adalah model pengembangan sistem pada software engineering berdasarkan requirement software yang dipecah menjadi beberapa fungsi atau bagian sehingga model pengembangannya secara bertahap. dilain pihak ada mengartikan model incremental sebagai perbaikan dari model waterfall dan sebagai standar pendekatan topdown. Layaknya Model Waterfall, model ini pun juga memiliki tahapan tahapan untuk perancangan perangkat lunaknya, yaitu: Requirement , Requirment adalah proses tahapan awal yang dilakukan pada incremental model adalah penentuan kebutuhan atau analisis kebutuhan. Specification, Specification adalah proses spesifikasi dimana menggunakan analisis kebutuhan sebagai acuannya. Architecture Design, adalah tahap selanjutnya, perancangan software yang terbuka agar dapat diterapkan sistem pembangunan per-bagian pada tahapan selanjutnya. Code setelah melakukan proses desain selanjutnya ada pengkodean. Test merupakan tahap pengujian dalam model ini. Tahapan-tahapan tersebut dilakukan secara berurutan. Setiap bagian yang sudah selesai dilakukan testing, dikirim ke pemakai untuk langsung dapat digunakan. Pada incremental model, tiga tahapan awal harus diselesaikan terlebih dahulu sebelum sebelum tahap membangun tiap increment. Untuk mengantisipasi kondisi yang terjadi pada incremental model, diperkenalkan model More Risky Incremental Model. Model ini menerapkan sistem kerja yang paralel. Setelah daftar kebutuhan didapatkan dari pemakai, tim spesifikasi membuat spesifikasi untuk modul pertama. Setelah spesifikasi pertama selesai, tim desain menindak lanjuti. Tim spesifikasi sebelumnya juga langsung membuat spesifikasi untuk model kedua, dan seterusnya. Jadi, tidak harus menunggu modul pertama selesai hingga dikirim ke user. Beberapa Kelebihan Dari Mode Incremental atara lain : Merupakan model dengan manajemen yang sederhana Pengguna tidak perlu menunggu sampai seluruh sistem dikirim untuk mengambil keuntungan dari sistem tersebut. Increment yang pertama sudah memenuhi persyaratan mereka yang paling kritis, sehingga perangkat lunak dapat segera digunakan. Resiko untuk kegagalan proyek secara keseluruhan lebih rendah. Walaupun masalah masih dapat ditemukan pada beberapa increment. Karena layanan dengan prioritas tertinggi diserahkan pertama dan increment berikutnya diintegrasikan dengannya, sangatlah penting bahwa layanan sistem yang paling penting mengalami pengujian yang ketat. Ini berarti bahwa pengguna akan memiliki kemungkinan kecil untuk memenuhi kegagalan perangkat lunak pada increment sistem yang paling bawah. Nilai penggunaan dapat ditentukan pada setiap increment sehingga fungsionalitas sistem disediakan lebih awal. Memiliki risiko lebih rendah terhadap keseluruhan pengembagan sistem, Prioritas tertinggi pada pelayanan sistem adalah yang paling diuji Kelemahannya adalah : kemungkinan tiap bagian tidak dapat diintegrasikan Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat perubahan selama proses rekayasa berlangsung Harus Open Architecture Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment.

Minggu, 16 September 2018

Tugas RPL

Pengertian Rekayasa Perangkat Lunak

Istilah Rekayasa Perangkat Lunak atau Software Engineering mulai dipopulerkan pada tahun 1968 saat Konferensi Rekayasa Perangkat Lunak yang diselenggarakan oleh NATO. Sebagian orang mengartikan Rekayasa Perangkat Lunak hanya sebatas pada bagaimana cara membuat suatu program komputer. Padahal terdapat sebuah perbedaan yang mendasar antara program komputer dan perangkat lunak (software).

Menurut (O’Brien, 1999) Program merupakan kumpulan perintah yang dimengerti oleh komputer sedangkan Perangkat lunak (Software) merupakan seluruh perintah yang digunakan untuk memproses suatu informasi. Perangkat lunak bisa berupa prosedur atau program.

Sedangkan Pengertian dari Rekayasa Perangkat Lunak, biasanya merujuk pada pengertian Rekayasa Perangkat Lunak menurut Wikipedia dan IEEE Computer Society, berikut pengertiannya:
Pengertian Rekayasa Perangkat Lunak
Pengertian Rekayasa Perangkat Lunak


Pengertian Rekayasa Perangkat Lunak menurut Wikipedia
Rekayasa perangkat lunak / Software Engineering (SE) adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, manajemen organisasi pengembanganan perangkat lunak, pemeliharaan serta manajemen kualitas.


Pengertian Rekayasa Perangkat Lunak menurut IEEE Computer Society
Rekayasa perangkat lunak adalah penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi terhadap pengembangan, penggunaan, pemeliharaan perangkat lunak, dan studi atas pendekatan-pendekatan tersebut, yaitu penerapan pendekatan engineering terhadap perangkat lunak.

Jadi Rekayasa perangkat lunak merupakan pengubahan perangkat lunak itu sendiri guna mengembangkan, memelihara, dan membangun kembali dengan menggunakan prinsip-prinsip rekayasa untuk menghasilkan perangkat lunak yang dapat bekerja lebih efektif dan efisien untuk pengguna nya.

Menurut Rosa A.S. dan M. Shalahuddin, dalam bukunya berjudul Rekayasa Perangkat Lunak (hlm 5 ISBN 978-602-8759-13-7), terddapat 5 Prinsip atau kriteria yang sering digunakan sebagai acuan dalam Rekayasa perangkat lunak:
  • Dapat mengikuti keinginan pengguna (robust)
  • Dapat terus dirawat dan dipelihara (maintainability)
  • Dapat memenuhi kebutuhan yang diinginkan (usability)
  • Efisien dan efektif dalam menggunakan energi dan penggunaannya
  • Dapat mengikuti perkembangan teknologi (dependability)

Ruang Lingkup Rekayasa Perangkat Lunak

Rekayasa Perangkat sendiri mempunyai ruang lingkup kerjanya Sebagai berikut:
Pengertian, Tujuan dan Ruang Lingkup Rekayasa Perangkat Lunak
Ruang Lingkup Rekayasa Perangkat Lunak

Software Requirements
berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak. 

Software Design
meliputi proses penampilan arsitektur, komponen, antar muka, dan karakteristik lain dari perangkat lunak

Software Construction
berhubungan dengan detil pengembangan perangkat lunak, termasuk algoritma, pengkodean, pencarian kesalahan dan pengujian.


Software Testing
meliputi pengujian pada kinerja perangkat lunak secara keseluruhan

Software Maintenance
mencakup upaya-upaya perawatan ketika perangkat lunak telah dioperasikan. 

Software Configuration Management
berhubungan dengan usaha perubahan konfigurasi perangkat lunak untuk memenuhi kebutuhan tertentu.

Software Engineering Management
berkaitan dengan pengelolaan dan pengukuran RPL, termasuk perencanaan proyek perangkat lunak.

Software Engineering Tools and Methods
mencakup kajian teoritis tentang alat bantu dan metode RPL. 

Software Quality
menitikberatkan pada kualitas dan daur hidup perangkat lunak.

Software Engineering Process
berhubungan dengan implementasi, definisi, pengukuran, pengelolaan, perubahan dan perbaikan proses Rekayasa Perangkat Lunak.

 Apa saja fungsi dan juga tujuan dari rekayasa perangkat lunak?

Tentu saja RPL atau rekayasa perangkat lunak ini memiliki banyak sekali fungsi dan juga tujuan utama. Berikut ini adalah beberapa fungsi dan juga tujuan dari rekayasa perangkat lunak:
  1. Agar seseorang dapat mengembangkan perangkat lunak yang bermanfaat bagi user
Tujuan dan juga fungsi yang pertama adalah agar seseorang yang mempelajari rekayasa perangkat lunak ini mampu mengembangkan sebuah perangkat lunak yang berguna dan juga bermanfaat bagi usernya. Sebuah perangkat lunak tentu saja tidak akan digunakan oleh user apabila tidak memiliki fungsi yang spesifik.
Karena itu dengan mempelajari rekayasa perangkat lunak, akan membuat seseorang menjadi lebih paham mengenai pengembangan perangkat lunak yang fungsional. Contohnya, perangkat lunak yang digunakan dalam mengkoneksikan komputer pada internet.
  1. Agar seseorang mampu mengembangkan perangkat lunak yang sudah ada menjadi lebih baik lagi
Perangkat lunak yang sudah ada terkadang membutuhkan pembaruan, karena fungsinya yang mungkin sudah berkurang. Karena itu, dengan mempelajari rekayasa perangkat lunak seseorang akan mampu mengembangkan perangkat lunak yang sudah ada sebelumnya agar kemudian menjadi sebuah sistem perangkat lunak yang dapat berguna dan menjadi lebih baik lagi di kalangan user.
  1. Menciptakan sebuah perangkat lunak yang ramah dan user friendly
Sistem perangkat lunak yang user friendly adalah sebuah sistem yang didambakan oleh setiap user. Paling tidak, sebauh sistem perangkat lunak yang user friendly membutuhkan tampilan atau interface yang menarik, fungsionalitas, hingga kemudahan dalam penggunaannya.
Mereka yang mempelajari sistem rekayasa perangkat lunak ini tentu saja paham betul dengan hal ini, sehingga dapat membantu mereka mengembangkan sebuah sistem perangkat lunak yang user friendly, dan pastinya mudah untuk digunakan oleh banyak kalangan user.
  1. Agar sebuah sistem perangkat lunak bisa diintegrasikan dengan peralatan mekanikal yang ada, sehingga menjadi lebih bermanfaat
Beberapa peralatan mekanikal, seperti robotic membutuhkan integrasi dengan perangkat lunak agar bisa bekerja dengan baik dan juga optimal. Mereka yang mempelajari mengenai rekayasa peangkat lunak tentu saja sudah sangat paham dengan hal ini. Dengan kemampuan yang dipelajari dalam rekayasa perangkat lunak, maka sebuah sistem perangkat lunak dapat diintegrasikan ke dalam sebuah peralatan mekanikal, sehingga dapat mendukung kegiatan operasional dari peralatan tersebut.
  1. Agar seseorang mampu untuk melakukan perawatan dan maintanence dari perangkat lunak yang sudah ada
Funsi dari mereka yang mempelajari rekayasa perangkat lunak tidak hanya terpaku pada pembuatan dan juga pengembangan dari sistem perangkat lunak yang ada, namun juga berada pada level maintenance atau perawatan dari sebuah perangkat lunak yang ada. Setiap perangkat lunak tentu saja membutuhkan maintenance, terutam aketika perangkat lunak tersebut mengalami suatu gangguan atau kendala. Karena itu, pembelajaran mengenai rekayasa perangkat lunak sangatlah dibutuhkan, untuk kepentingan perawatan dan juga maintenance dari perangkat lunak tersebut.


Sekian Artikel mengenai Pengertian tujuan Ruang Lingkup Rekayasa Perangkat Lunak, Semoga artikel tersebut dapat menambah wawasan dan pengetahuan sobat markijar, baik itu mengetahui Pengertian Rekayasa Perangkat Lunak, Tujuan Rekayasa Perangkat Lunak maupun Ruang Lingkup Rekayasa Perangkat Luna.

Critical Path

Critical Path Method / CPM  adalah suatu rangkaian item pekerjaan dalam suatu proyek yang menjadi bagian kritis atas terselesainya proyek se...