Menu Bar

Sunday, 2 December 2012

Performance Testing

Definisi 
      Performance Testing merupakan proses menentukan kecepatan atau efektivitas, jaringan program computer, perangkat lunak atau perangkat. Proses ini dapat melibatkan test kuantitatif yang dilakukan di laboratorium, seperti mengukur waktu respon atau jumlah MIPS (Millions of Intructions per Second) pada fungsi sistem. Atribut kualitatif seperti kehandalan, skalabilitas dan interoperabilitas juga dapat dievaluasi. Performance Testing sering dilakukan dalam hubungannya dengan stress testing.
Performance Testing dapat memverifikasi bahwa sistem memenuhi spesifikasi diklaim oleh produsen atau vendor. Proses ini dapat membandingkan dua atau lebih perangkat atau program dalam hal parameter seperti kecepatan, kecepatan transfer data, bandwidth, throughput, efisiensi atau keandalan. 
Performance Testing juga dapat digunakan sebagai alat bantu diagnostik dalam menemukan kemacetan komunikasi. Seringkali sistem akan bekerja jauh lebih baik jika masalah ini diselesaikan di satu titik atau dalam komponen tunggal. Misalnya, bahkan komputer tercepat akan berfungsi buruk di Web hari ini jika koneksi terjadi di hanya 40 sampai 50 Kbps (kilobit per detik). Lambatnya kecepatan transfer mungkin dapat juga disebabkan pada hardware, tetapi juga dapat berhubungan dengan masalah perangkat lunak, seperti : 
  • Terlalu banyak aplikasi yang berjalan pada waktu yang sama 
  • Sebuah file yang rusak pada WEB browser 
  • Adanya eksploitasi keamanan 
  • Perangkat lunak Anti-virus 
  • Adanya malware aktif pada harddisk 
Performance Testing yang efektif dapat dengan cepat mengidentifikasi masalah kinerja perangkat lunak yang terkait.

Metode 
Pada performance testing ada dua metode yang digunakan, diantaranya : 
1. Plannig Session 
  • Pentingnya user (pengguna), tasks dan lingkungan yang ada untuk mewakili pengujian dari konteks penggunaan yang dimaksudkan. 
  • Memilih tugas yang terpenting dan kelompok pengguna yang akan di uji (misalnya yang sering dan yang peling penting). 
  • Memilih pengguna yang dapat mewakili masing-masing kelompok pengguna. 3 – 5 pengguna yang cukup untuk mengidentifikasi masalah. 8 atau lebih pengguna masing-masing tipe yang diperlukan untuk pengukuran kehandalan. 
  • Dari planning tersebut maka dapat menghasilkan scenario tugas dan input data serta petunjuk penulisan bagi pengguna (yang memberitahu pengguna apa yang harus dicapai, bukan bagaimana melakukannya). 
  • Dengan adanya planning session dapat memungkinkan adanya waktu untuk memeberikan instruksi, menjalankan test, menjawab kuisioner dan wawancara pasca test. 
  • Mengundang depelover untuk mengamati sesi jika memang memungkinkan. Alternatifnya untuk merekam sesi dan depelover dapat menunjukan masalah yang ada pada users. 
  • Dua administrator biasanya dibutuhkan untuk berbagi kegitan mengajar dan wawancara pengguna, peralatan video operas(jika memang digunakan), mencatat masalah, dan berbicara kepada setiap pengamat. 
  • Bila memungkinkan dapat menggunakan satu ruangan untuk pengujian, dihubungkan oleh video ke ruangan lain untuk observasi. 
  • Jika langkah-langkah kebutuhan diperlukan, amati user tanpa harus membuat komentar. 
  • Jika langkah ini tidak diperlukan, user akan meminta untuk menjelaskan interpretasi mereka dari masing-masing isi layar dan mereka akan meminta untuk membuat pilihan. 
2. Running Session 
  • Bersifat ramah kepada user, dan memberikan intruksi tugas yang jelas. 
  • Jangan memberikan petunjuk atau bantuan kecuali jika user tudak dapat menyelesaikan tugasnya. 
  • Amati setiap interaksi dan mencatat permasalahan yang dihadapi. 
  • Mengatur waktu penugasan 
  • Pada akhir sesi meminta user untuk mengisi kuisoner berapa puasnya mereka. 
  • Mewawancara user untuk mengkonfirmasi mereka adalah wakil dari kelompok pengguna yang dituju untuk mendapatkan pendapat umum, dan untuk bertanya tentang masalah-masalah spesifik yang dihadapi. 
  • Menilai hasil dari tugas untuk akurasi dan kelengkapan. 
Types
  1. Load Testing (pengujian beban) merupakan bentuk sederhana dari performance testing. Load testing biasanya dilakukan untuk memahami perilaku sistem agar sesuai dengan yang diharapkan. Pada load testing dapat menjadi patokan yang diharapkan user pada aplikasi untuk melakukan transaksi tertentu dalam suatu set durasi waktu. Test ini akan memberikan waktu respon dari semua transaksi bisnis yang penting. Jika umumnya database, server dan lain-lain juga dipantau maka test sederhana ini dapat menuju kearah aplikasi perangkat lunak yang macet dengan sendirinya. 
  2. Stress Testing biasanya digunakan untuk memahami batas kapasitas dalam sistem. Jenis test ini dilakukan untuk mengetahui ketahanan sistem dalam beban yang ekstrim dan membantu administrator untuk menentukan apakah sistem akan berjalan dengan baik jika arus beban diatas maksimum yang diharapkan. 
  3. Endurance Testing (soak testing / pengujian daya tahan) biasanya dilakukan untuk menentukan apakah sistem dapat dipertahankan dari beban secara terus menerus. Selama test daya tahan,penggunaan memori dipantau untuk mendeteksi kebocoran potensial. Namun sering sekali penurunan kinerja tidak diperhatikan. Artinya untuk memastikan waktu respon yang baik adalah saat kegiatan berlangsung daripada di awal pengujian. Yang pada dasarnya melibatkan penerapan beban yang signifikan terhadap kinerja sistem untuk jangka panjang. Tujuannya adalah untuk menemukan bagaimana sistem berprilaku pada saat penggunaan berkelanjutan.  
  4. Spike Testing dilakukan secara tiba-tiba meningkatkan jumlah atau beban yang dihasilkan oleh user dengan jumlah yang sangat besar dan mengamati perilaku sistem. Tujuannya adalah menentukan apakah kinerja akan rusak, sistem akan gagal, atau akan mampu menangani perubahan dramatis pada beban. 
  5. Configuration Testing dilakukan untuk menentukan dampak dari perubahan konfigurasi untuk komponen kinerja dan perilaku sistem. Contoh umum dalam bereksperimen dengan metode yang berbeda dari load- balancing.  
  6. Isolation Testing merupakan test yang tidak unik untuk suatu pengujian kinerja, tetapi melibatkan pengulangan dalam pelaksanaan test yang mengakibatkan masalah sistem. Sehingga Isolation testing sering digunakan untuk mengisolasi dan mengkonfirmasi kesalahan domain. 
Output 
Performance Testing menghasilkan daftar masalah users, yang dikategorikan sangat penting untuk memilih peramsalahan yang ada (use post-it-notes to sort the problems), dan gambaran tentang jenis masalah yang dihadapi. Mengatur pertemuan dengan Project Manager dan Depelover untuk membahas apakah dan bagaimana setiap masalah bisa diperbaiki. Jika langkah-langkah telah diambil, maka saatnya untuk merangkum kuisioner kepuasan user, pembagian waktu tugas dan efektifitas (akurasi kelengkapan) tindakan. Jika yang diperlukan sudah lengkap, Common Industry Format menyediakan struktur yang baik.  

Benefits 
Masalah utama user yang mungkin di identifikasi dan kurang di ungkapkan pada saat pengujian formal, missal masalah yang berkaitan dengan keterampilan khusus dan harapan users. Tidakan dapat di peroleh untuk efektivitas users dan kepuasan users. 

Kesimpulan 
Performance Testing merupakan evaluasi users dengan sistem yang ketat dibawah kondisi yang sangat realistis, untuk mengidentifikasi permasalahan user dan membandingkan langkah-langkah seperti tingkat keberhasilan, waktu penugasan dan kepuasan user dengan persyaratan.

Sumber : 
http://www.onestoptesting.com/performance-testing/
http://en.wikipedia.org/wiki/software_performance_testing/

Tuesday, 13 November 2012

Model Bisnis Umum E-Commerce

Didalam bisnis E-Commerce terdapat beberapa Model Bisnis Umum, diantaranya :
  1.             Direct to customer, yaitu melakukan penjualan melalui hubungan yang terjalin secara langsung antara perusahaan dengan pelanggannya
  2.             Full-service Provider, yaitu menyediakan berbagai fasilitas dan jasa (sumber daya) yang dibutuhkan oleh perusahaan lain dalam menjalankan operasi bisnisnya
  3.            Whole of Enteprise, yaitu menawarkan fasilitas satu pintu (single point of contact) kepada pelanggan yang membutuhkan pelayanan tertentu yang melibatkan banyak pihak (perusahaan)
  4.             Intermediaries, yaitu menjadi perantara (broker) dari berbagai jenis keperluan (berdasarkan data, informasi, segemen industri, komunitas, dsb)
  5.             Shared Infrastructure, yaitu menawarkan penyewaan terhadap berbagai infrastruktur teknologi informasi, meliputi database, aplikasi, perangkat keras, dan jaringan
  6.          Virtual Community, yaitu memanfaatkan komunitas yang ada di dunia maya untuk berbagai keperluan seperti penawaran berbagai produk dan jasa digital
  7.          Value Net Integrator, yaitu mengintegrasikan berbagai entiti atau sumber daya yang ada di internet agar produk-produk atau jasa-jasa baru yang belum pernah ada sebelumnya dapat ditawarkan kepada padar dan calon pelanggan
  8.          Content Provider, yaitu menawarkan pelayanan pembentukan dan distribusi data, informasi, knowledge(content) yang bernilai tinggi kepada pelanggan
  9.          InfoMediary, yaitu kemampuan dalam menyampaikan dan mendapatkan informasi secara cepat dengan adanya virtual community
  10.          Procurement, yaitu menawarkan jasa dalam mengurangi cost diantaranya yang berkaitan dengan biaya penyimpanan barang(inventory cost) dan biaya administrasi (overhead)
  11.          Lelang (Auction), yaitu penawaran barang dalam model lelang yang jika si penawar tertinggi yang bisa mendapatkan produk yang diinginkan
  12.          Brokerage, yaitu menawarkan jasa perantara dalam menghubungkan calon pembeli (customer) dengan pedagang (merchants)
  13.          Affiliate marketing, pengaturan dimana sebuah mitra pemasaran (perusahaan, organisasi atau individu) yang merujuk konsumen pada Web Site tertentu
  14.          Viral marketing, pemasaran mulut ke mulut dimana konsumen mempromosikan sebuah produk atau jasa kepada teman atau orang lain melalui internet.

Adapun pihak-pihak yang terlibat dalam E-Commerce, yaitu :

  1.          Members, yang merupakan domain calon konsumen maupun pelanggan tetap dari perusahaan
  2.          Content Partners, yang merupakan domain perusahaan yang memasok berbagai informasi berharga (valuable contents) yang secara langsusng maupuan tidak langsung berpengaruh terhadap proses peciptaan produk atau jasa di dunia maya
  3.          Merchants, yang merupakan domain pedagang, pemilik, atau pemasok produk atau jasa yang ditawarkan oleh perusahaan
  4.          Advertiser, yang merupakan domain entitas yang ingin memanfaatkan situs perusahaan sebagai sarana untuk pemasaran (marketing). 

Friday, 9 November 2012

System Development

Many failed systems were abandoned because analysts tried to build wonderful systems without understanding the organization. The primarily goal is to create value for the organization. The systems analyst is a key person analyzing the business, identifying opportunities for improvement,and designing information systems to implement these ideas. It is important to understand and develop through practice the skills needed to successfully design and implement new information systems.
Systems Development Life Cycle
  • Planning (Why build the system? How should the team go about building it?)
  • Analysis (Who uses system, what will it do, where and when will the system be used?)
  • Design (How will the system work?)
  • Implementation (System delivery)
-------------------------------------------------------------------------------------------------------------------
Planning
  • Identifying business value
  • Analyze feasibility
  • Develop work plan
  • Staff the project
  • Control and direct project
Analysis
  • Analysis strategy
  • Gathering business requirements
  • Requirements definition use cases
  • Process modeling
  • Data modeling
Design 
  • Design selection
  • Architecture design
  • Interface design
  • Data storage design
  • Program design
Implementation
  • Construction
         - Program Building
         - Program and system testing
  • Installation
         - Conversion strategy
         - Training plan
         - Support plan

Processes and Deliverables

Tuesday, 6 November 2012

"Sulit itu ketika kita tidak mampu belajar untuk ikhlas dan tidak belajar untuk bersyukur dalam keadaan apapun"
Rêveur
"Selalu ada alasan untuk mencintaimu, sebab mencintaimu tidak butuh alasan"
Rêveur
"Semua akan terasa lebih mudah jika kita mensyukurinya, dan terasa lebih berwarna jika menikmatinya. Itu namanya hidup.."
Rêveur
"Kesuksesan adalah mendapatkan apa yang kamu inginkan, kebahagiaan adalah menginginkan apa yang kamu dapatkan"
Rêveur