Site blog

Halaman: () 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ... 39 ()
Gambar dari NAHYA NUR 5116201035
by NAHYA NUR 5116201035 - Thursday, 22 December 2016, 12:20
Anyone in the world

Definisi

Prototyping perangkat lunak (software prototyping) atau siklus hidup menggunakan protoyping (life cycle using prototyping) adalah salah satu metode siklus hidup sistem yang didasarkan pada konsep model bekerja (working model). Tujuannya adalah mengembangkan model menjadi sistem final. Artinya sistem akan dikembangkan lebih cepat daripada metode tradisional dan biayanya menjadi lebih rendah. Ada banyak cara untuk memprotoyping, begitu pula dengan penggunaannya. Ciri khas dari metodologi adalah pengembang sistem (system developer), klien, dan pengguna dapat melihat dan melakukan eksperimen dengan bagian dari sistem komputer dari sejak awal proses pengembangan.

Dengan prototype yang terbuka, model sebuah sistem (atau bagiannya) dikembangkan secara cepat dan dipoles dalam diskusi yang berkali-kali dengan klien. Model tersebut menunjukkan kepada klien apa yang akan dilakukan oleh sistem, namun tidak didukung oleh rancangan desain struktur yang mendetil. Pada saat perancang dan klien melakukan percobaan dengan berbagai ide pada suatu model dan setuju dengan desain final, rancangan yang sesungguhnya dibuat tepat seperti model dengan kualitas yang lebih bagus.

Protoyping membantu dalam menemukan kebutuhan di tahap awal pengembangan, terutama jika klien tidak yakin dimana masalah berasal. Selain itu protoyping juga berguna sebagai alat untuk mendesain dan memperbaiki user interface – bagaimana sistem akan terlihat oleh orang-orang yang menggunakannya.

Tujuan konvensional prototipe adalah memungkinkan pengguna perangkat lunak untuk mengevaluasi pengembang ‘proposal untuk desain produk yang akhirnya dengan benar-benar mencoba mereka keluar, daripada harus menafsirkan dan mengevaluasi desain berdasarkan deskripsi. Prototyping juga dapat digunakan oleh pengguna akhir untuk menjelaskan dan membuktikan bahwa pengembang persyaratan tidak dianggap, jadi “mengendalikan prototipe” dapat menjadi faktor kunci dalam hubungan komersial antara penyedia solusi dan klien mereka.

 

Tahap

Setelah kebutuhan awal disetujui, lalu dianalisis dan dibagi menjadi area-area berbeda untuk menyediakan basis bagi prototipe awal dari berbagai bagian yang berbeda dari sistem; setiap prototipe didemonstrasikan kepada klien dan dipoles untuk memasukkan kebutuhan lebih banyak dan modifikasi. Siklus demonstrasi dan pemolesan berlanjut sampai klien dan pengembang merasa puas. Proses ini dilaksanakan untuk setiap bagian sistem. Prototipe final diintegrasikan dan sistem lengkap diuji dan akhirnya diserahkan kepada klien.

 

Jenis-jenis prototyping

Software prototipe memiliki banyak varian. Namun, semua metode-metode tersebut dalam beberapa cara yang didasarkan pada dua jenis utama prototyping:

  • throwaway Prototyping
  • Evolutionary Prototyping

 

Keunggulan prototyping :

  • Komunikasi akan terjalin baik antara pengembang dan pelanggan.
  • Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan setiap pelanggannya.
  • Pelanggan berperan aktif dalam proses pengembangan sistem.
  • Lebih menghemat waktu dalam pengembangan sistem.
  • Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya

Kelemahan prototyping :

  • Pelanggan kadang tidak melihat atau menyadari bahwa perangkat lunak yang ada belum mencantumkan kualitas perangkat lunak secara keseluruhan dan juga belum memikirkan kemampuan pemeliharaan untuk jangka waktu lama.
  • Pengembang biasanya ingin cepat menyelesaikan proyek sehingga menggunakan algoritma dan bahasa pemrograman yang sederhana untuk membuat prototyping lebih cepat selesai tanpa memikirkan lebih lanjut bahwa program tersebut hanya merupakan sebuah kerangka kerja(blueprint) dari sistem .
  • Hubungan pelanggan dengan komputer yang disediakan mungkin tidak mencerminkan teknik perancangan yang baik dan benar.

 

Referensi

https://id.wikipedia.org/wiki/Prototyping_perangkat_lunak

https://itcompro.wordpress.com/2009/09/09/software-prototyping/

http://hardlogicom.blog.widyatama.ac.id/2015/02/15/proses-rekayasa-perangkat-lunak-menggunakan-model-prototype/

Associated Kursus: KI142303BKI142303B
 
Gambar dari NAHYA NUR 5116201035
by NAHYA NUR 5116201035 - Thursday, 22 December 2016, 12:18
Anyone in the world

Kelebihan dan kekurangan beberapa model proses dalam rekayasa perangkat lunak

A. Waterfalll model

Kelebihan Waterfall Model:

  1. Mudah diaplikasikan.
  2. Memberikan template tentang metode analisis, desain, pengkodean, pengujian, dan pemeliharaan.
  3. Cocok digunakan untuk produk software yang sudah jelas kebutuhannya di awal, sehingga minim kesalahannya.

 

Kekurangan Waterfall model:

  1. Waterfall model bersifat kaku sehingga Penanganan perubahan pada saat proses sedang berlangsung menjadi lebih sulit.
  2. Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses.
  3. Customer harus sabar untuk menanti produk selesai, karena dikerjakan tahap per tahap,menyelesaikan tahap awal baru bisa ke tahap selanjutnya.
  4. Perubahan ditengah-tengah pengerjaan produk akan membuat bingung team work yang sedang membuat produk.
  5. Adanya waktu menganggur bagi pengembang, karena harus menunggu anggota tim proyek lainnya menuntaskan pekerjaannya.
  6. Semua kebutuhan sudah terefenisi sejak awal dan Software yang diberikan adalah versi terakhir dari setiap tahap,

 

B. RUP

Kelebihan dari RUP

  1. Menyediakan akses yang mudah terhadap pengetahuan dasar bagi anggota tim.
  2. Menyediakan petunjuk bagaimana menggunakan UML secara efektif.
  3. Mendukung proses pengulangan dalam pengembangan software.
  4. Memungkinkan adanya penambahan-penambahan pada proses.
  5. Memungkinkan untuk secara sistematis mengontrol perubahan- perubahan yang terjadi pada software selama proses pengembangannya.

 

Kekurangan dari RUP

  1. Metodologi ini hanya dapat digunakan pada pengembangan perangkat lunak yang berorientasi objek dengan berfokus pada UML (Unified Modeling Language).
  2. Membutuhkan waktu yang cukup lama dibandingkan XP dan Scrum.

 

C. Agile

Kelebihan dari agile

  1. Meningkatkan kepuasan kepada klien.
  2. Dapat melakukan review pelanggan mengenai software yang dibuat lebih awal.
  3. Pembangunan system dibuat lebih cepat.
  4. Mengurangi resiko kegagalan implementasi software dari segi non-teknis.
  5. Jika pada saat pembangunan system terjadi kegagalan kerugian dari segi materi relatif kecil.

 

Kekurangan dari agile

  1. Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.
  2. Agile tidak akan berjalan dengan baik jika komitmen tim kurang.
  3. Tidak cocok dalam skala tim yang besar (>20 orang).
  4. Perkiraan waktu release dan harga perangkat lunak sulit ditentukan.

 

D. Spiral

Kelebihan model Spiral:

  1. Setiap tahap pengerjaan dibuat prototyping sehingga kekurangan dan apa yang diharapkan oleh client dapat diperjelas dan juga dapat menjadi acuan untuk client dalam mencari kekurangan kebutuhan.
  2. Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar.
  3. Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer.
  4. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses.
  5. Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi produk.
  6. Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja iteratif.
  7. Membutuhkan pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum menjadi permaslahan yang serius.

 

Kekurangan model Spiral:

  1. Banyak konsumen (Client) tidak percaya bahwa pendekatan secara evolusioner dapat dikontrol oleh kedua pihak. Model spiral mempunyai resiko yang harus dipertimbangkan ulang oleh konsumen dan developer.
  2. Memerlukan tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses.
  3. Belum terbukti apakah metode ini cukup efisien karena usianya yang relatif baru.
  4. Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
  5. Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute.

 

Sumber:

http://www.markijar.com/2015/04/kelebihan-dan-kekurangan-model-proses.html

http://dennis-louis.blogspot.co.id/2014/01/kelebihan-dan-kekurangan-agile.html

Associated Kursus: KI142303BKI142303B
 
Gambar dari NAHYA NUR 5116201035
by NAHYA NUR 5116201035 - Thursday, 22 December 2016, 12:15
Anyone in the world

Picture1RPL.png

Software Development Life Cycle (SDLC) merupakan pendekatan bertahap untuk melakukan analisa dan membangun rancangan sistem dengan menggunakan siklus yang spesifik terhadap kegiatan pengguna. Beberapa metode SDLC diantaranya waterfall, spiral, RUP, agile, dan sebagainya.

 

 Tahapan-tahapan yang terdapat pada proses SDLC

  1.  Requirement specification
  2. Design
  3. Coding
  4. Testing
  5. Deploy

 

 

Software Operation Life Cycle (SOLC) merupakan proses untuk memindahkan perangkat dari lingkungan development ke operation. Pada tahapan operation dan pada penggunaannya terdapat masalah, maka akan diambil tindakan berdasarkan klasifikasi masalah yang ada

 

  • Minor, Contohnya apabila terdapat bug pada perangkat lunak maka tindakan yang diambil adalah proses maintenance.
  • Mayor, Contohnya apabila terjadi perubahan proses bisnis, maka tindakan yang diambil adalah fisibility study. Fisibility study dilakukan untuk menentukan apakah perlu dilakukan proses development ulang terhadap perangkat lunak atau tetap menggunakan perangkat lunak yang ada. Jika perangkat lunak yang telah ada sudah cukup efektif dan tidak menimbulkan kerugian yang berarti maka perangkat lunak tersebut tetap digunakan (Not Go). Tetapi jika sebaliknya, artinya dengan mengubah perangkat lunak akan lebih menguntungkan dan memudahkan, maka perangkat lunak akan dikembalikan ke proses Development (Go).
Associated Kursus: KI142303BKI142303B
[ Mengubah: Thursday, 22 December 2016, 12:15 ]
 
Gambar dari NAHYA NUR 5116201035
by NAHYA NUR 5116201035 - Thursday, 22 December 2016, 10:44
Anyone in the world

Picture1RPL.png

Software Development Life Cycle (SDLC) merupakan pendekatan bertahap untuk melakukan analisa dan membangun rancangan sistem dengan menggunakan siklus yang spesifik terhadap kegiatan pengguna. Beberapa metode SDLC diantaranya waterfall, spiral, RUP, agile, dan sebagainya.

 

 Tahapan-tahapan yang terdapat pada proses SDLC

  1.  Requirement specification
  2. Design
  3. Coding
  4. Testing
  5. Deploy

 

 

Software Operation Life Cycle (SOLC) merupakan proses untuk memindahkan perangkat dari lingkungan development ke operation. Pada tahapan operation dan pada penggunaannya terdapat masalah, maka akan diambil tindakan berdasarkan klasifikasi masalah yang ada

  • Minor, Contohnya apabila terdapat bug pada perangkat lunak maka tindakan yang diambil adalah proses maintenance.
  • Mayor, Contohnya apabila terjadi perubahan proses bisnis, maka tindakan yang diambil adalah fisibility study. Fisibility study dilakukan untuk menentukan apakah perlu dilakukan proses development ulang terhadap perangkat lunak atau tetap menggunakan perangkat lunak yang ada. Jika perangkat lunak yang telah ada sudah cukup efektif dan tidak menimbulkan kerugian yang berarti maka perangkat lunak tersebut tetap digunakan (Not Go). Tetapi jika sebaliknya, artinya dengan mengubah perangkat lunak akan lebih menguntungkan dan memudahkan, maka perangkat lunak akan dikembalikan ke proses Development (Go).
 
Gambar dari DIAN SEPTIANI SANTOSO 5116201029
by DIAN SEPTIANI SANTOSO 5116201029 - Thursday, 22 December 2016, 09:07
Anyone in the world

Dalam pengembangan system menggunakan SDLC ada beberapa cara untuk mengimplementasinya dengan metodologi yaitu waterfall model, prototype model, RAD(Rapid Application Development) model, ASD(Agile Software Development) model. Diantara keempat model tersebut waterfall, dan prototype adalah model yang paling sering digunakan dalam pengembangan system.

1.      Waterfall Model
Merupakan model yang paling banyak dipakai didalam Software Engineering (SE). Model ini melakukan pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing / verification, dan maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Roger S. Pressman memecah model ini menjadi 6 tahapan, yaitu :
a. Sistem modeling                                                              d.  Coding
b. Analisis kebutuhan software                                           e.  Testing
c. Desain                                                                             f.  Maintenance
Keuntungan menggunakan teknik waterfall:
- Proses menjadi teratur
- Jadwal menjadi lebih menentu
Kelemahan menggunakan teknik waterfall:
- Membutuhkan daftar kebutuhan yang lengkap di awal, tapi jarang konsumen bisa memberikan             kebutuhan secara lengkap diawal
 
2.      Prototype
Prototyping adalah salah satu pendekatan dalam rekayasa perangkat lunak yang secara langsung mendemonstrasikan bagaimana sebuah perangkat lunak atau komponen-komponen perangkat lunak akan bekerja dalam lingkungannya sebelum tahapan konstruksi aktual dilakukan (Howard, 1997). Beberapa model prototype adalah sebagai berikut :
- Reusable prototype : Prototype yang akan ditransformasikan menjadi produk final.
- Throwaway prototype : Prototype yang akan dibuang begitu selesai menjalankan maksudnya.
- Input/output prototype : Prototype yang terbatas pada antar muka pengguna (user interface).
- Processing prototype : Prototype yang meliputi perawatan file dasar dan proses-proses transaksi
- System prototype : Prototype yang berupa model lengkap dari perangkat lunak.
 
Proses pada model prototyping adalah sebagai berikut :
- Pengumpulan kebutuhan
- Perancangan
- Evaluasi prototype
 
 Keuntungan menggunakan prototype model, yaitu :
    - Prototyping adalah model aktif, tidak pasif, sehingga end user dapat melihat, merasakan, dan                      mengalaminya.
    - Kesalahan yang terjadi dalam prototyping dapat dideteksi lebih dini.
 Kekurangan menggunakan prototype model, yaitu :
     - Prototyping tidak menolak kebutuhan dari fase analisis sistem. Prototype hanya dapat memecahkan           masalah yang salah dan memberi kesempatan sebagai sistem pengembangan konvensional.
     - Prototyping dapat mengurangi kreatifitas perancangan.
 
3.      RAD (Rapid Application Development)
Rapid application development (RAD) atau rapid prototyping adalah model proses pembangunan perangkat lunak yang tergolong dalam teknik incremental (bertingkat). RAD menekankan pada siklus pembangunan pendek, singkat, dan cepat. Waktu yang singkat adalah batasan yang penting untuk model ini. Rapid application development menggunakan metode iteratif (berulang) dalam mengembangkan sistem dimana working model (model bekerja) sistem dikonstruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan (requirement) user. RAD mengadopsi model waterfall dan pembangunan dalam waktu singkat dicapai dengan menerapkan component based construction.
 
4.      Agile Software Development
Agile merupakan adalah jenis pegembangan sistem jangka pendek yang memerlukan adaptasi cepat dan pengembang terhadap perubahan dalam bentuk apapun. Dalam Agile Software Development interaksi dan personel lebih penting dari pada proses dan alat, software yang berfungsi lebih penting daripada dokumentasi yang lengkap, kolaborasi dengan klien lebih penting dari pada negosiasi kontrak, dan sikap tanggap terhadap perubahan lebih penting daripada mengikuti rencana. Agile juga dapat diartikan sebagai sekelompok metodologi pengembangan software yang didasarkan pada prinsip-prinsip yang sama atau pengembangan system jangka pendek yang memerlukan adaptasi cepat dari pengembang terhadap perubahan dalam bentuk apapun.
 
sumber :
http://glhmlyn.blogspot.co.id/2014/09/apa-itu-sdlc_25.html
 
Associated Kursus: KI142303KI142303
 
Gambar dari DIAN SEPTIANI SANTOSO 5116201029
by DIAN SEPTIANI SANTOSO 5116201029 - Thursday, 22 December 2016, 09:06
Anyone in the world

Menurut sommerville[1] requirement adalah spesifikasi dari apa yang harus diimplementasikan, deskripsi bagaimana sistem harusnya berkerja atau bagian-bagian yang ada didalam sistem, bisa juga dijadikan batasan dalam proses pengembangan sistem.

Ada beberapa macam requirement menurut sommerville [1] yaitu:

a.       User Requirement (kebutuhan pengguna)

Pernyataan tentang layanan yang disediakan sistem dan tentang batasan-batasan  perasionalnya. Pernyataan ini dapat dilengkapi dengan gambar/diagram yang dapat dimengerti dengan mudah.

b.      System requirement (kebutuhan system)

Sekumpulan layanan/kemampuan sistem dan batasan-batasannya yang ditulis secara detil. System requirement document sering disebut functional specification (spesifikasi fungsional), harus menjelaskan dengan tepat dan detil. Ini bisa berlaku sebagai kontrak antara klien dan pembangun.

c.       Software design specification ( spesifikasi rancangan perangkat lunak)

Gambaran abstrak dari rancangan software yang menjadi dasar bagi perancangan dan implementasi yang lebih detil.

Tujuan dari fase analisis adalah memahami dengan sebenar-benarnya kebutuhan dari sistem baru dan mengembangkan sebuah sistem yang mewadahi requirement tersebut-atau memutuskan bahwa sebenarnya pengembangan sistem baru tidak dibutuhkan. Penentuan kebutuhan sistem merupakan langkah yang paling crucial dalam tahapan SDLC. Kebutuhan Sistem bisa diartikan sebagai berikut: a. Pernyataan tentang apa yang harus dikerjakan oleh sistem b. Pernyataan tentang karakteristik yang harus dimiliki sistem.

Tipe-tipe Kebutuhan Sistem Untuk mempermudah system analis menentukan keseluruhan requirement secara lengkap, maka analis membagi kebutuhan sistem ke dalam 2 jenis yaitu :

A. Kebutuhan Fungsional (Functional requirement) : Kebutuhan fungsional adalah jenis kebutuhan yang berisi proses-proses apa saja yang nantinya dilakukan oleh system. Kebutuhan fungsional juga berisi informasi-informasi apa saja yang harus ada dan dihasilkan oleh sistem.

B. Kebutuhan Non fungsional(Nonfunctional Requirements) :Requirement jenis ini adalah tipe requirement yang berisi properti perilaku yang dimiliki oleh sistem, meliputi:

  • Operasional Pada bagian ini harus dijelaskan teknis bagaimana system baru akan beroperasi.
  • Platform sistem yang dipakai didefinisikan, apakah menggunakan windows atau Linux misalnya.
  • Software untuk mengembangkan sistem juga ditentukan.
  • Hardware spesifik yang diperlukan juga ditentukan.
  • Arsitektur sistem juga dijelaskan apakah 2-tier, 3 –tier atau yang lainnya

 

sumber :

http://indrakharisma.blog.unair.ac.id/2008/09/17/system-requirement/

http://free-materi.blogspot.co.id/2010/10/system-requirement-kebutuhan-sistem.html

Associated Kursus: KI142303KI142303
 
Gambar dari DIAN SEPTIANI SANTOSO 5116201029
by DIAN SEPTIANI SANTOSO 5116201029 - Thursday, 22 December 2016, 09:06
Anyone in the world

Perawatan perangkat lunak (software maintenance) adalah aktivitas yang dimulai sejak perangkat lunak mulai digunakan (after delivery) hingga akhirnya perangkat lunak tersebut tidak dapat digunakan lagi (retired). Tujuannya adalah untuk memperbaiki kesalahan (to correct), meningkatkan kinerja/ fungsionalitas (to improve), menyesuaikan dengan lingkungan (to adapt), atau untuk mencegah terjadinya kesalahan (to prevent). Perubahan mungkin berupa perubahan sederhana untuk membetulkan error koding atau perubahan yg lebih ekstensif untuk membetulkan error perancangan/perbaikan signifikan untuk membetulkan error spesifikasi/akomodasi persyaratan baru.

kategotri pemeliharaan software yaitu :

  1. Corrective Maintenance, perubahan yang dilakukan guna memperbaiki kesalahan.
  2. Adaptive Maintenance, perawatan berdasarkan perubahan lingkungan.
  3. Perfective Maintenance, perubahan untuk meningkatkan kualitas sistem tanpamerubah fungsinya.
  4. Preventive Maintenance, Meningkatkan reliability, future maintainability, future enhancement  (reverse engineering dan re-engineering)

Siklus Hidup Pemeliharaan Sistem (SMLC)

Tahapan SMLC :

  • Memahami Permintaan Pemeliharaan
  • Mentransformasi permintaan pemeliharaan menjadi pengubahan
  • Menspesifikasi perubahan
  • Mengembangkan perubahan
  • Menguji perubahan
  • Melatih pengguna dan melakukan test penerimaan
  • Pengkonversian dan meluncurkan operasi
  • Mengupdate Dokumen
  • Melakukan pemeriksaan Pasca implementasi

 

Maintainability (Kemampuan pemeliharaan sistem)

Maintainability adalah usaha yang diperlukan untuk menemukan dan memperbaiki kesalahan dalam softwareMaintanability juga disebut sebagai pemeliharaan system. Dimana setelah sebuah softwareberhasil dikembangkan dan diimplementasikan, akan terdapat berbagai hal yang perlu diperbaiki berdasarkan hasil uji coba maupun evaluasi. Sebuah software yang dirancang dan dikembangkan dengan baik, akan dengan mudah dapat direvisi jika diperlukan. Seberapa jauh software tersebut dapat diperbaiki merupakan faktor lain yang harus diperhatikan.

Unsur maintainability dalam pengembangan software termasuk dalam Product Operations yaitu kemampuan software dalam menjalani perubahan. Setelah sebuah software berhasil dikembangkan dan diimplementasikan, akan terdapat berbagai hal yang perlu diperbaiki berdasarkan hasil uji coba maupun evaluasi. Sebuah software yang dirancang dan dikembangkan dengan baik, akan dengan mudah dapat direvisi jika diperlukan. Seberapa jauh software tersebut dapat diperbaiki merupakan faktor lain yang harus diperhatikan. Salah satu faktor yang berkaitan dengan kemampuan softwareuntuk menjalani perubahan adalah Maintainability.

Ada 3 alasan yang mendasari pentingnya pemeliharaan sistem atau maintenance system, yaitu sebagai berikut.

a.        Memperbaiki Kesalahan (Correcting Errors)

Maintenance dilakukan untuk mengatasi kegagalan dan permasalahan yang muncul saat sistem dioperasikan. Sebagai contoh, maintenace dapat digunakan untuk mengungkapkan kesalahan pemrograman (bugs) atau kelemahan selama proses pengembangan yang tidak terdeteksi dalam pengujian sistem, sehingga kesalahan tersebut dapat diperbaiki.

b.        Menjamin dan Meningkatkan Kinerja Sistem (Feedback Mechanism)

Kajian pasca implementasi sistem merupakan salah satu aktivitas maintenance yang meliputi tinjauan sistem secara periodik. Tinjauan periodik atau audit sistem dilakukan untuk menjamin sistem berjalan dengan baik, dengan cara memonitor sistem secara terus-menerus terhadap potensi masalah atau perlunya perubahan terhadap sistem. Sebagai contoh, saat user menemukan errors pada saat sistem digunakan, maka user dapat memberi umpan balik atau feedback kepada spesialis informasi guna meningkatkan kinerja sistem. Hal ini yang menjadikan system maintenance perlu dilakukan secara berkala, karena system maintenance akan senantiasa memastikan sistem baru yang di implementasikan berjalan dengan baik dan sesuai dengan tujuan penggunaanya melalui mekanisme umpan balik.

c.         Menjaga Kemutakhiran Sistem (System Update)

Selain sebagai proses perbaikan kesalahan dan kajian pasca implementasi, system maintenance juga meliputi proses modifikasi terhadap sistem yang telah dibangun karena adanya perubahan dalam organisasi atau lingkungan bisnis. Sehingga, system maintenance menjaga kemutakhiran sistem (system update) melalui modifikasi-modifikasi sistem yang dilakukan.

 

Prosedur untuk peningkatan maintainability :

  • Menerapkan SDLC dan SWDLC
  • Menspesifikasi definisi data standar
  • Menggunakan bahasa pemrograman standart
  • Merancang modul-modul yang terstruktur dengan baik
  • Mempekerjakan modul yang dapat digunakan kembali
  • Mempersiapkan dokumentasi yang jelas, terbaru dan komprehensif
  • Menginstall perangkat lunak, dokumentasi dan soal-soal test di dalam sentral repositor sistem CASE atau CMS (change management system)

Manfaat pemeliharaan perangkat lunak
• Memastikan kesesuaian dengan kebutuhan fungsionalitas teknis software.
• Memastikan kesesuaian kebutuhan pihak manajerial mengenai jadwal dan budget.
• Dapat meningkatkan efisiensi software berikut juga aktifitas pemeliharaannya.

sumber :

https://yaniwid.wordpress.com/2008/09/26/software-maintenance/

http://rangkuman-pengetahuan.blogspot.co.id/2013/02/pemeliharaan-perangkat-lunak-software.html

http://sukhud52.blog.widyatama.ac.id/pemeliharaan-perangkat-lunak-software-maintenance/

Associated Kursus: KI142303KI142303
 
Gambar dari DIAN SEPTIANI SANTOSO 5116201029
by DIAN SEPTIANI SANTOSO 5116201029 - Thursday, 22 December 2016, 09:05
Anyone in the world

Definisi

Definisi klasik menurut Myers (1979),

Pengujian adalah proses menjalankan program dengan maksud menemukan kesalahan.

Definisi tersebut menyangkut kegiatan mulai dari cek kode yang dilakukan oleh seorang pemimpin tim untuk menjalankan percobaan dari perangkat lunak yang dilakukan oleh seorang rekan, serta tes yang dilakukan oleh suatu unit pengujian, semua bisa dianggap kegiatan pengujian.

Definisi lain menurut IEEE

  1. Proses mengoperasikan sistem atau komponen dalam kondisi tertentu, mengamati atau merekam hasil, dan membuat evaluasi terhadap beberapa aspek dari sistem atau komponen.
  2. Proses analisis item perangkat lunak untuk mendeteksi perbedaan antara yang ada dan kondisi yang diperlukan (yaitu  bug) dan mengevaluasi fitur-fitur dari item perangkat lunak

 

Definisi menurut Galin :

Pengujian perangkat lunak adalah proses formal yang dilakukan oleh tim khusus  pengujian di mana suatu unit perangkat lunak, beberapa unit perangkat lunak yang terintegrasi atau paket perangkat lunak yang diperiksa secara keseluruhan dengan menjalankan program pada komputer.

Semua pengujian yang berkaitan dilakukan menurut prosedur uji yang disetujui pada kasus uji yang disetujui.

Tujuan Pengujian Perangkat Lunak

Tujuan Langsung :

  • Untuk mengidentifikasi dan mengungkapkan sebagai kesalahan sebanyak mungkin  dalam perangkat lunak yang diuji.
  • Untuk membawa perangkat lunak diuji, setelah memperbaiki kesalahan yang diidentifikasi dan melakukan pengujian ulang, pada tingkat kualitas yang memadai.
  • Untuk melakukan tes yang diperlukan secara efisien dan efektif, dalam keterbatasan anggaran dan penjadwalan.

Tujuan Tidak Langsung :

  • Untuk menyusun catatan kesalahan perangkat lunak untuk digunakan dalam pencegahan kesalahan (dengan tindakan perbaikan dan pencegahan).

Beberapa tahapan testing yang umum dilalui oleh aplikasi adalah sebagai berikut:
1.Unit/ComponentTesting.

Terbagi atas testing terhadap unit dan component. Unit testing merupakan proses testing, di mana Anda melakukan testing pada bagian basic dari kode program. Contohnya adalah memeriksa kode program pada event, procedure, dan function. Unit Testing meyakinkan bahwa masing-masing unit tersebut berjalan sebagaimana mestinya.Pada Unit Testing, Anda memeriksa bagian kode program secara terpisah dari bagian yang lain. Anda dapat langsung melakukan Unit Testing setiap kali sebuah kode unit (event, procedure, function) selesai dibuat. Anda dapat memeriksa kode unit dengan menjalankannya baris per baris untuk memastikan bahwa proses yang dilakukan berjalan sebagaimana yangAndainginkan.

2.IntegrationTesting.
Setelah Anda melakukan Unit/Component Testing, langkah berikutnya adalah memeriksa bagaimana unit-unit tersebut bekerja sebagai suatu kombinasi, bukan lagi sebagai suatu unit yang individual. Sebagai contoh, Anda memiliki sebuah proses yang dikerjakan oleh dua function, di mana satu function menggunakan hasil output dari function yang lainnya. Kedua function ini telah berjalan dengan baik secara individu pada Unit Testing. Pada tahap Integration Testing, Anda memeriksa hasil dari interaksi kedua function tersebut, apakah bekerja sesuai dengan hasil yang diharapkan. Anda juga harus memastikan bahwa seluruh kondisi yang mungkin terjadi dari hasil interaksi antarunit tersebut menghasilkanoutputyangdiharapkan.

3.SystemTesting.

Mencakup testing aplikasi yang telah selesai didevelop. Karena itu, aplikasi harus terlihat dan berfungsi sebagaimana mestinya terhadap end-user atau pengguna akhir. Untuk itu, testing dilakukan dengan menggunakan data yang menggambarkan data yang digunakan oleh pengguna sesungguhnya terhadap aplikasi. Jika aplikasi Anda di-develop untuk lingkungan yang besar,
Anda dapat melakukan testing pada dua komputer yang berbeda. Komputer yang Anda gunakan sebagai komputer testing harus terlebih dahulu dikonfigurasi hanya dengan:

a. Operating system yang dibutuhkan.
b. Driver yang diperlukan oleh aplikasi.
c. Aplikasi yang dites.

Dengan menggunakan konfi gurasi yang paling minimal dan sederhana, maka dapat membantu Anda untuk memastikan bahwa permasalahan yang timbul selama testing berlangsung adalah merupakan kesalahan aplikasi, dan bukan kesalahan yang berasal dari aplikasi atau software lain.

4.AcceptanceTesting.

Seperti Integration Testing, Acceptance Testing juga meliputi testing keseluruhan aplikasi. Perbedaannya terletak pada siapa yang melakukan testing. Pada tahap ini, end-user yang terpilih melakukan testing terhadap fungsi-fungsi aplikasi dan melaporkan permasalahan yang ditemukan. Testing yang dilakukan merupakan simulasi penggunaan nyata dari aplikasi pada lingkungan yang sebenarnya. Proses ini merupakan salah satu tahap final sebelum pengguna menyetujui dan menerima penerapan sistem aplikasi yang baru. Karena itu pada tahap ini sudah tidak difokuskan untuk mengangkat permasalahan kecil seperti kesalahan pengetikan, ataupun kosmetik aplikasi. Hal-hal minor seperti di atas sudah seharusnya ditangani selama Unit/Component Testing dan Integration Testing.

5.RegressionTesting.
Merupakan bagian penting dari masing-masing tahap proses testing. Regression Testing mencakup pengujian ulang terhadap unit, component, proses, atau keseluruhan aplikasi setelah perbaikan suatu kesalahan dilakukan.Regression Testing memastikan permasalahan yang terjadi telah ditanggulangi, dan tidak terdapat permasalahan baru yang timbul sebagai efek perbaikan tersebut. Selain itu, tahap ini tidak hanya berguna untuk melakukan pengujian aplikasi, tetapi dapat juga digunakan untuk melakukan pemantauan kualitas dari output yang dihasilkan. Sebagai contoh, Regression Testing memantau ukuran file, waktu yang dibutuhkan untuk melakukan suatu tes, waktu yangdibutuhkanuntukmelakukankompilasi,danlainsebagainya.

Associated Kursus: KI142303KI142303
 
Anyone in the world

Pelanggaran yang sering terjadi adalah ketidaksesuaian antara dokumen hasil tahap desain dengan implementasi / koding. Hal ini biasanya terjadi karena perangkat lunak yang sedang dibangun bukan merupakan keahlian dari system analist. Sehingga ada beberapa desain yang tidak cocok jika diimplementasikan untuk membangun perangkat lunak yang hendak dibangun.

Associated Kursus: KI142303BKI142303B
 
Gambar dari MOHAMMAD NAZIR ARIFIN 5116201014
by MOHAMMAD NAZIR ARIFIN 5116201014 - Wednesday, 21 December 2016, 21:46
Anyone in the world

AntiPatterns, like their design pattern counterparts, define an industry vocabulary for the common defective processes and implementations within organizations. A higher-level vocabulary simplifies communication between software practitioners and enables concise description of higher-level concepts.

An AntiPattern is a literary form that describes a commonly occurring solution to a problem that generates decidedly negative consequences. The AntiPattern may be the result of a manager or developer not knowing any better, not having sufficient knowledge or experience in solving a particular type of problem, or having applied a perfectly good pattern in the wrong context.

AntiPatterns provide real-world experience in recognizing recurring problems in the software industry and provide a detailed remedy for the most common predicaments. AntiPatterns highlight the most common problems that face the software industry and provide the tools to enable you to recognize these problems and to determine their underlying causes.

Furthermore, AntiPatterns present a detailed plan for reversing these underlying causes and implementing productive solutions. AntiPatterns effectively describe the measures that can be taken at several levels to improve the developing of applications, the designing of software systems, and the effective management of software projects.

 

 
 
Halaman: () 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ... 39 ()