Pengertian Rekayasa Perangkat Lunak, Ruang LIngkup By IlmuKita

 

A. Pengertian  Rekayasa Perangkat Lunak

Konsep dasar rekayasa perangkat lunak mempunyai dua hal pokok yaitu perangkat lunak (software) dan komponen perekayasa. Menurut IEEE definisi perangkat lunak (software) merupakan program komputer, prosedur, data dan semua dokumentasi yang berhubungan operasi pada sistem komputer.

jadi bisa disimpulkan bahwa software merupakan kumpulan dari object membentuk konfigurasi yang didalamnya termasuk program, dokumen, dan data. Sedangkan Perekayasa software bertugas mengembangkan produk perangkat lunak, yang secara produk dapat dikategorikan menjadi 2 tipe yaitu :

a.       Produk generik

Sistem stand-alone, produk shrink-wrapped

b.      Produk pesanan

Produk custemisasi, terdapat proses interaksi antara pemesan dan pembuat.

Rekayasa perangkat lunak dapat didefinisikan sebagai disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Rekayasa perangkat lunak tidak hanya berhubungan dengan proses teknis dari pengembangan perangkat lunak tetapi juga mencakup kegiatan manajemen proyek perangkat lunak dan pengembangan alat bantu, metode dan teori untuk mendukung produksi perangkat lunak. Secara umum rekayasa perangkat lunak memakai pendekatan yang sistematis dan terorganisir dengan menggunakan metode tertentu.

     Perangkat lunak adalah seluruh perintah yang digunakan untuk memproses informasi.Perangkat lunak dapat berupa program atau prosedur.Progra adalah kumpulan perintah yang dimengerti oleh komputer,sedankan prosedur adalah perintah yang dibutuhkan oleh pennguna dalam memproses informasi.

 

B.  Ruang Lingkup Rekayasa Perangkat Lunak

Sesuai definisi yang sudah disampaikan sebelumnya,maka ruang lingkup RPL  dapat digambarkan sebagai berikut :


  • SoftwarerequirementsberhSoftware requirements berhubungan dengan spefisikasi kebutuhan dan persyaratan perangkat lunak.
  • Software design mencakup rposes penentuan arsitektur,komponen,antar muka, dan karakteristik lain dari perangkat lounak.
  • Software construction berhubungan dengan detil pengembangan perangkat lunak,termasuk algoritma.pengkodean,pengujian,dan pencarian kesalahan.
  • Software testing meliputi penhujian pada keseluruhan perilaku perangkat lunak.
  • Software maintenance mencakup upay-upaya perawatan ketika perangkat lunak telah dioperasikan.
  • Software configuration management berhubungan dengan usaha perubahan konfigurasi perngkat lunak untuk memenuhi kebutuhan tertentu.
  • Software engineering management berkaitan dengan pengelolaan dan pengukuran RPL termasuk perencaan proyek perangkat lunak.
  • Software engineering toolos and methods mencakupkajian teoritis tentang alat bantu dan metode RPL.
  • Software engineering proses berhubungan dengan definisi,implementasi,pengukuran,pengelolaan,perubahan dan perbaikan proses RPL.
  • Software quality menitik beratkan pada kualitas dan daur hidup perangkat lunak. 

C.      Proses dan Metode Rekayasa Perangkat Lunak

       Proses perangkat lunak adalah seri aktivitas yang harus dilaksanakan selama siklus hidup perangkat lunak, yaitu periode waktu yang dimulai saat produk perangkat lunak disusun dan berakhir saat produk tersebut tidak dapat digunakan lagi. Mengacu pada IEEE/EIA 12207 Standard for Information Technology, ada tiga kelompok besar proses perangkat lunak, yaitu:

1.      proses utama (primary processes)

2.      proses pendukung (supporting processes)

3.      proses organisasi (organizational processes)

Setiap proses yang ada pada masing-masing kelompok proses terdiri dari beberapa aktivitas, dan setiap aktivitas dibagi menjadi beberapa pekerjaan. Setiap pekerjaan mengacu pada produk perangkat lunak atau dokumen yang tertentu yang harus dibuat.

Proses perangkat lunak merupakan serangkaian kegiatan dan hasil hasil relevannya yang menghasilkan perangkat lunak. Kegiatan ini sebagian besar dilakukan oleh perekayasa perangkat lunak. Terdapat empat kegiatan proses dasar, meliputi :

·         Spesifikasi perangkat lunak. Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefinisikan.

·         Pengembangan perangkat lunak. Pengembangan terhadap produk perangkat lunak yang memenuhi spesifikasi perangkat lunak.

·         Validasi perangkat lunak.

·         Perangkat lunak harus divalidasi untuk menjamin bahwa perangkau lunak melakukan apa yang diinginkan oleh user.

·         Evolusi rangkat lunak. Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan yang berubah ubah.

 

a.       Metodologi Rekayasa Perangkat Lunak

Terdapat beberapa metodologi dalam rekayasa perangkat lunak, antara lain:

1.      System Development Methodologies

o   Metodologi yang mengacu pada pendekatan implementasi SDLC.

o   Metodologi akan berubah-ubah tergantung pada kepentingan dan kegunaan software itu sendiri.

2.      Process-centered Methodologies

o   Fokus pada penentuan aktifitas yang berhubungan dengan sistem.

o   Menyajikan konsep sistem sebagai serangkaian proses yang mengalir masuk dan keluar.

3.      Data-centered Methodologies

o   Fokus pada penentuan isi dari data penyimpanan dan bagaimana mereka terorganisasi.

o   Data-centered methodologies menggunakan data models sebagai inti dari konsep sistem.

4.      Object-oriented Methodologies

o   Metodologi ini berhasil menyeimbangkan fokus antara proses dan data.

o   The Unified Modeling Language (UML) digunakan untuk mendeskripsikan konsep sistem sebagai koleksi dari object melengkapi data dan proses.

D.Jenis-jenis Perangkat Lunak

Jenis-jenis perangkat lunak dilihat dari fungsinya, perangkat lunak dapat dikelompokkan menjadi:

1.      Perangkat Lunak Sistem

Perangkat lunak yang kegunaannya lebih banyak ditujukan untuk operasional komputer atau perangkat lunak lain. Perangkat lunak yang termasuk dalam kelompok ini adalah:

o   sistem operasi

o   penerjemah bahasa pemrograman (compiler/interpreter)

o   utility software

2.      Perangkat lunak aplikasi

Perangkat lunak yang kegunaannya lebih banyak ditujukan untuk membantu menyelesaikan masalah-masalah yang dihadapi oleh pemakai. Perangkat lunak aplikasi dapat dibedakan menjadi:

o   program paket yang sudah jadi (package program)

o   program aplikasi buatan sendiri (tailor made)

Sedangkan jika dilihat dari bentuk aplikasinya, perangkat lunak dibedakan menjadi:

1.      Perangkat lunak sistem (system software)

Sekumpulan program yang ditulis untuk mendukung operasional komputer atau kepentingan program lain, seperti:

o   sistem operasi

o   compiler/interpreter

o   utility software

2.      Perangkat lunak waktu nyata (real-time software)

Perangkat lunak yang memonitor, menganalisis, atau mengendalikan kejadian-kejadian dunia nyata berdasarkan kejadian (event) yangditerimanya dengan  kendala waktu yang ketat (teliti), seperti:

o   perangkat lunak untuk mengatur mekanisme kerja lift

o   ATCS (Automatic Traffic Control System)

3.      Perangkat lunak bisnis (business software)

Perangkat lunak yang memberikan fasilitas operasi untuk bisnis ataufasilitas pengambilan keputusan manajemen, seperti:

o   aplikasi untuk sistem informasi, misalnya sistem persediaan,akuntansi, produksi, dan lain-lain.

o   sistem pendukung keputusan

o   Enterprise Resources Planning (ERP)

4.       Perangkat lunak rekayasa dan ilmu pengetahuan (engineering andscientific software)

Perangkat lunak jenis ini biasanya berhubungan dengan komputasidata numerik, CAD (Computer Aided Design), simulasi sistem, danlain-lain, seperti:

o   aplikasi statistika (misalnya SPSS), matematika (Math Lab)

o   aplikasi untuk merancang lengkung sayap pesawat terbang

5.       Embedded Software

          Perangkat lunak yang menyatu (terintegrasi) dengan perangkattertentu yang digunakan untuk mengontrol produk atau sistem, baikuntuk konsumen atau pasar industri, seperti :

o   aplikasi programmable logic circuit (PLC)

o   permainan (game) pada mobile phone

6.      Perangkat lunak pribadi (personal software)

Perangkat lunak yang banyak digunakan pada aplikasi-aplikasi yang bersifat perorangan, Seperti :

o   pengolah kata (word processor), lembar kerja elektronik(spreadsheet), organizer

o   aplikasi keuangan pribadi

7.      Perangkat lunak intelegensia buatan (artificial inteligent software)

Perangkat lunak yang dibuat dengan menggunakan teknik algoritmanon-numerik untuk memecahkan masalah yang kompleks, Seperti:

o   sistem pakar (expert system)

o   pemrosesan bahasa alami (natural language)

o   permainan catur

o    

E. Tahapan Rekayasa Perangkat Lunak

Meskipun dalam pendekatan berbeda-beda, namun model-model pendekatan memiliki kesamaan, yaitu menggunaka pola tahapan analysis – design – coding(construction) – testing – maintenance.

1.      Analisis sistem

adalah sebuah teknik pemecahan masalah yang menguraikan sebuah sistem menjadi komponen-komponennya dengan tujuan mempelajari seberapa bagus komponen-komponen tersebut bekerja dan berinteraksi untuk meraih tujuan mereka.

Analisis mungkin adalah bagian terpenting dari proses rekayasa perangkat lunak.  Karena semua proses lanjutan akan sangat bergantung pada baik tidaknya hasil analisis. Ada satu bagian penting yang biasanya dilakukan dalam tahapan analisis yaitu pemodelan proses bisnis.

2.      Model proses

adalah model yang memfokuskan pada seluruh proses di dalam sistem  yang mentransformasikan data menjadi informasi (Harris, 2003).  Model proses juga menunjukkan aliran data yang masuk dan keluar pada suatu proses.  Biasanya model ini digambarkan dalam bentuk Diagram Arus Data (Data Flow Diagram / DFD).  DFD meyajikan gambaran apa yang manusia, proses dan prosedur lakukan untuk mentransformasi data menjadi informasi.

 

3.      Disain perangkat lunak

adalah tugas, tahapan atau aktivitas yang difokuskan pada spesifikasi detil dari solusi berbasis computer (Whitten et al, 2004).

Disain perangkat lunak sering juga disebut sebagai physical design.  Jika tahapan analisis sistem menekankan pada masalah bisnis (business rule), maka sebaliknya disain perangkat lunak fokus pada sisi teknis dan implementasi sebuah perangkat lunak (Whitten et al, 2004).

Output utama dari tahapan disain  perangkat lunak adalah spesifikasi disain.  Spesifikasi ini meliputi spesifikasi disain umum yang akan disampaikan kepada stakeholder sistem dan spesifikasi disain rinci yang akan digunakan pada tahap implementasi.  Spesifikasi disain umum hanya berisi gambaran umum agar stakeholder sistem mengerti akan seperti apa perangkat lunak yang akan dibangun.

Spesifikasi disain rinci atau kadang disebut disain arsitektur rinci perangkat lunak diperlukan untuk merancang sistem sehingga memiliki konstruksi yang baik, proses pengolahan data yang tepat dan akurat, bernilai, memiliki aspek user friendly dan memiliki dasar-dasar untuk pengembangan selanjutnya.

Desain arsitektur ini terdiri dari desain database, desain proses, desain user interface  yang mencakup desain  input,  output form dan report, desain hardware, software dan jaringan.  Desain proses merupakan kelanjutan dari pemodelan proses yang dilakukan pada tahapan analisis.

4.      Konstruksi

adalah tahapan menerjemahkan hasil disain logis dan fisik ke dalam kode-kode program komputer.


5.      Pengujian

sistem melibatkan semua  kelompok pengguna yang telah direncanakan pada tahap sebelumnya. Pengujian tingkat penerimaan terhadap perangkat lunak akan berakhir ketika dirasa semua kelompok pengguna menyatakan bisa menerima perangkat  lunak tersebut berdasarkan kriteria-kriteria yang telah ditetapkan.

 

6.      Perawatan dan Konfigurasi

          Ketika sebuah perangkat lunak telah dianggap layak untuk dijalankan, maka tahapan baru menjadi muncul yaitu perawatan perangkat lunak. 

 

Post a Comment

Previous Post Next Post

Contact Form