Senin, 24 September 2012

Analisa Penerapan E-Bisnis Pada PT. SMART, Tbk (www.smart-tbk.com)

Kegiatan e-bisnis dapat dilakukan dalam beberapa lingkup market, misalnya Business to Consumer (B2C), Business to Business (B2B), Business to Government (B2G), dan Business to Education (B2E). Sistem e-bisnis pada PT. SMART, Tbk yang akan dianalisis adalah e-bisnis lingkup market B2C dan menggunakan model 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 pasar dan calon pelanggan.

B2C menjembatani aktivitas antara organisasi-dalam hal ini PT. SMART, Tbk- dengan para konsumen serta pihak yang berkepentingan lainnya. Salah satu cara yang ditempuh perusahaan dalam menerapkan e-bisnis adalah dengan memanfaatkan media jaringan dan komunikasi. PT. SMART, Tbk telah menyediakan situs/website tentang perusahaannya di internet yang dapat diakses oleh siapa saja, kapan saja dan di mana saja (www.smart-tbk.com).

  

Penerapan situs ini terkait dengan citra perusahaan dan merupakan salah satu cara yang dilakukan perusahaan untuk lebih mengenalkan kepada khalayak, baik produk maupun perusahan itu sendiri (salah satu bentuk e-bisnis dalam hal promosi).
Melalui situs tersebut, banyak informasi yang dapat diperoleh oleh khalayak. Berikut beberapa item yang dapat dimanfaatkan :

1. Item for Investor.
Dalam item ini, tersedia informasi mengenai laporan tahunan, hasil kuartalan, harga internasional, perkebunan dan produksi, informasi kepada shareholders, serta pengumuman-pengumuman terbaru.

2. Item for Costumers.
Item ini menyediakan ragam produk yang dapat dikonsumsi oleh konsumen, berikut kelebihan-kelebihan dari produk tersebut. Sehingga para konsumen dapat mengetahui keunggulan produk-produk tersebut.

3. Item for Job Seekers.
Item ini memberikan informasi mengenai peluang-peluang untuk dapat bergabung dengan perusahaan ini. termasuk juga kriteria yang diperlukan untuk dapat bekerja di sana.

4. Item Product Recipes.
Perusahaan juga memanjakan konsumennya dengan memberikan beberapa resep masakan yang dapat dicoba oleh customer dengan menggunakan produk perusahaan.

Berikut ini analisis kebermanfaatan penerapan e-bisnis pada PT. SMART, Tbk dilihat dari laporan keuangan tahun sebelum penerapan e-bisnis (2004) dan tahun 2005 setelah penerapan e-bisnis -dengan membuka situs/website.

Pada tahun 2004, biaya penjualan, termasuk biaya promosi dan iklan sebesar Rp 128.207.022.143. Sementara pada tahun 2005 biaya ini menjadi lebih besar, salah satunya dimungkinkan karena adanya penerapan e-bisnis (website) ini. Biaya ini naik sebesar Rp 65.829.411.172 menjadi Rp 194.036.433.315. Dilihat dari laba yang diperoleh, tahun 2004 perusahaan memperoleh laba usaha sebesar Rp 283.395.386.692, kemudian tahun 2005, laba usaha naik menjadi Rp 424.969.872.324. Keuntungan dari penerapan e-bisnis ini mungkin juga memberi kontribusi tertentu dari kenaikan laba usaha sebesar Rp 141.574.485.632. Berikut ini dapat dilihat grafik perolehan laba dan biaya PT. SMART, Tbk tahun 2004-2006:


Dari grafik di atas, terlihat bahwa dari tahun ke tahun laba usaha yang dicapai PT. SMART, Tbk terus meningkat. Bahkan pada tahun 2006, kenaikan laba usaha yang terjadi hampir mendekati 1,5 kali dari kenaikan tahun sebelumnya. Sedangkan biaya tertinggi terjadi pada tahun 2005. Hal ini disinyalir karena adanya biaya penerapan e-bisnis (website), yang terkandung di dalamnya biaya infrastruktur teknologi yang baru di gunakan. Namun, pada tahun berikutnya biaya ini kembali turun, karena tidak membutuhkan biaya pembuatan lagi, tetapi sekedar biaya operasional saja.

Dari grafik di atas, terlihat bahwa dari tahun ke tahun laba usaha yang dicapai PT. SMART, Tbk terus meningkat. Bahkan pada tahun 2006, kenaikan laba usaha yang terjadi hampir mendekati 1,5 kali dari kenaikan tahun sebelumnya. Sedangkan biaya tertinggi terjadi pada tahun 2005. Hal ini disinyalir karena adanya biaya penerapan e-bisnis (website), yang terkandung di dalamnya biaya infrastruktur teknologi yang baru di gunakan. Namun, pada tahun berikutnya biaya ini kembali turun, karena tidak membutuhkan biaya pembuatan lagi, tetapi sekedar biaya operasional saja.

(sumber : http://staff.uny.ac.id)

Daftar Pustaka
http://staff.uny.ac.id/sites/default/files/penelitian/Diana%20Rahmawati,%20M.Si./ANALISIS%20PENERAPAN%20E-BUSINESS%20PT%20SINAR%20MAS%20AGRO%20RESOURCES%20AND%20TECHNOLOGY%20SMART%20TBK.pdf - diakses pada tanggal 23-09-2012, pukul 13:23 pm. 

Disusun oleh :
Nim/Nama  : 09410100179/Imam Syafi'i
Dosen         : Tan Amelia
Tugas : Mereview salah satu website dan melakukan analisa terhadap website tersebut, dilihat dari perspektif teknologi yang digunakan, market dan model yang dikembangkan. 




Selasa, 11 September 2012

Kelompok 5 (E - Marketing)

Kelompok 5 (E-Marketing)

Ketua Kelompok : 09410100179 / Imam Syafi'i

Anggota Kelompok :
09410100202 / Hendry H. K.
09410100206 M. Fanrouk Evero
10410100088 Novita Kurniasari

Minggu, 30 Oktober 2011

Testing dan Implementasi Sistem Pertemuan 6

Unit Testing

Unit testing berfokus pad usaha verifikasi pada unit terkecil dari disain software – komponen atau modul software. Penggunaan diskripsi disain tingkat komponen sebagai tuntunan, jalur kendali yang penting dites untuk menemukan errors, terbatas pada modul tersebut. Kompleksitas relatif terhadap tes dan errors yang dicakup dibatasi oleh batasan-batasan dari cakupan yang telah ditetapkan pada unit testing. Unit testing berorientasi white box, dan tahapan dapat dilakukan secara paralel pada banyak komponen.

Hal-hal yang perlu diperhatikan pada unit testing :
  • Tes yang terdapat pada unit testing
  • Tes aliran data antar modul dibutuhkan sebelum inisialisasi tes lainnya.
  • Pemilihan jalur eksekusi testing adalah tugas yang esensial selama unit test.
  • Kesalahan komputasi yang umum terjadi
  • Komparasi dan alur kendali merupakan satu kesatuan
  • Batasan testing adalah tugas terakhir dari unit testing
  • Disain yang baik meliputi kondisi kesalahan yang diantisipasi dan jalur penanganan kesalahan diset untuk dapat digunakan kembali atau proses pembersihan pada terminasi saat kesalahan terjadi.

Prosedur-prosedur unit test :

  • Setelah kode dikembangkan, dan diverifikasi terhadap tingkat disain komponen
    bersangkutan, disain test case dari unit test dimulai
  • Review informasi disain menyediakan tuntunan untuk menetapkan test cases agar dapat
    mendekati keseluruhan cakupan kesalahan di tiap kategori sebagaimana didiskusikan
    sebelumnya
  • Tiap test case harus dihubungkan dengan hasil yang diharapkan
  • Karena komponen bukan program yang berdiri sendiri, drivers dan atau stubs software
    harus dikembangkan untuk tiap unit test.
  • Drivers –> program utama yg menerima data test case, memasukkan data ke komponen yg dites dan mencetak hasil yg bersangkutan.
  • Stubs –> untuk menggantikan modul-modul yg merupakan subordinat (dipanggil oleh) komponen yg dites.

Penerapan dari driver dan stubs dapat dilihat pada gambar dibawah ini:




Testing dan Implementasi Sistem Pertemuan 5

State Transition Testing

State transition testing menggunakan model sistem, yang terdiri dari:
  • Status yang terdapat di dalam program.
  • Transisi antar status-status tersebut.
  • Kejadian yang merupakan sebab dari transisi - transisi tersebut.
  • Aksi - Aksi yang akan dihasilkan

Misal terdapat suatu state transition diagram yang menangani masukan permintaan untuk
mode tampilan terhadap waktu tampilan dari suatu device, sebagai berikut:

State transition diagram di atas terdiri dari:

  • Status, seperti displaying time (S1)
  • Transisi, seperti antara S1 dan S3
  • Kejadian yang menyebabkan transisi, seperti "reset" selama status S1 akan menyebabkan transisi ke S3.
  • Aksi yang merupakan hasil dari transisi, seperti selama transisi dari S1 ke S3 sebagai hasil dari kejadian “reset”, aksi “display time” akan terjadi.

Test cases didisain untuk memeriksa transisi-transisi yang valid.
Untuk tiap test case, terdapat spesifikasi sebagai berikut:

  • Status mulai.
  • Masukan.
  • Keluaran yang diharapkan.
  • Status akhir yang diharapkan.

Berdasarkan contoh di atas, terdapat 6 test cases:


Testing dan Implementasi Sistem Pertemuan 4

Lines of Code

Pengukuran sederhana: menghitung jumlah baris kode dalam program dan menggunakan perhitungan ini untuk mengukur kompleksitas.

Berdasarkan studi yang telah dilakukan :
  • Program kecil mempunyai error rata-rata 1,3 % sampai 1,8 %.
  • Program besar mempunyai kenaikan error rata-rata dari 2,7 % sampai 3,2 %.

Halstead’s metric adalah pengukuran yang berdasarkan pada penggunaan operator-operator
atabase) yang ada
(seperti kata kunci) dan operan-operan (seperti nama variabel, obyek d
dalam suatu program.
n1 = jumlah operator yang unik (distinct) dalam program
n2 = jumlah operan yang unik (distinct) dalam program.
Panjang program: H = n1 log2 n1 + n2 log2 n2.
N1 = perhitungan jumlah keseluruhan operator program. N2 = perhitungan jumlah keseluruhan operan program.
Prediksi bug: B = (N1 + N2) log2 (n1 + n2) / 3000

Black Box Testing

Black box testing, dilakukan tanpa pengetahuan detil struktur internal dari sistem atau komponen yang dites. juga disebut sebagai behavioral testing, specification-based testing, input/output testing atau functional testing.

Black box testing berfokus pada kebutuhan fungsional pada software, berdasarkan pada spesifikasi kebutuhan dari software.

Black box testing bukan teknik alternatif daripada white box testing. Lebih daripada itu, ia merupakan pendekatan pelengkap dalam mencakup error dengan kelas yang berbeda dari metode white box testing. Kategori error yang akan diketahui melalui black box testing:

  • Fungsi yang hilang atau tak benar
  • Error dari antar-muka
  • Error dari struktur data atau akses eksternal database
  • Error dari kinerja atau tingkah laku
  • Error dari inisialisasi dan terminasi

Tak seperti white box testing, yang dipakai pada awal proses testing. Black box testing digunakan pada tahap akhir dan berfokus pada domain informasi. Tes didisain untuk menjawab pertanyaan sebagai berikut:

  • Bagaimana validasi fungsi yang akan dites?
  • Bagaimana tingkah laku dan kinerja sistem dites?
  • Kategori masukan apa saja yang bagus digunakan untuk test cases?
  • Apakah sebagian sistem sensitif terhadap suatu nilai masukan tertentu?
  • Bagaimana batasan suatu kategori masukan ditetapkan?
  • Sistem mempunyai toleransi jenjang dan volume data apa saja?
  • Apa saja akibat dari kombinasi data tertentu yang akan terjadi pada operasi sistem?

Terdapat banyak jenis teknik disa
akan digunakan [BCS97A], yaitu:

  • Equivalence Class Partitioning
  • Boundary Value Analysis
  • State Transitions Testing
  • Cause-Effect Graphing


Testing dan Implementasi Sistem Pertemuan 3

Desain Test Case

Tiap produk hasil rekayasa dapat di tes dalam dua cara:
  • Dengan berdasarkan pada fungsi yang dispesifikasikan dari produk, tes dapat dilakukan dengan mendemonstrasikan tiap fungsi telah beroperasi secara penuh sesuai dengan yang diharapkan, dan sementara itu, pada saat yang bersamaan, dilakukan pencarian error pada tiap fungsi.
  • Dengan mengetahui operasi internal dari produk, tes dapat dilakukan untuk memastikan semua komponen berjalan sebagaimana mestinya, operasi internal berlaku berdasarkan pada spesifikasi dan semua komponen internal telah cukup diperiksa.
Pendekatan cara pertama biasa disebut dengan black box testing, dan pendekatan cara kedua disebut white box testing.

Definisi Test Case

Test case merupakan suatu tes yang dilakukan berdasarkan pada suatu inisialisasi, masukan, kondisi ataupun hasil yang telah ditentukan sebelumnya.
Adapun kegunaan dari test case ini, adalah sebagai berikut:
  • Untuk melakukan testing kesesuaian suatu komponen terhadap spesifikasi – Black Box Testing.
  • Untuk melakukan testing kesesuaian suatu komponen terhadap disain – White Box Testing.
Hal yang perlu diingat bahwa testing tidak dapat membuktikan kebenaran semua kemungkinan eksekusi dari suatu program. Namun dapat didekati dengan melakukan perencanaan dan disain tes case yang baik sehingga dapat memberikan jaminan efektifitas dari software sampai pada tingkat tertentu sesuai dengan yang diharapkan.
White Box Testing

White Box Testing disebut juga glass box testing atau clear box testing, adalah suatu metode disain test case yang menggunakan struktur kendali dari disain prosedural.
Metode disain test case ini dapat menjamin:
  • Semua jalur (path) yang independen / terpisah dapat dites setidaknya sekali tes.
  • Semua logika keputusan dapat dites dengan jalur yang salah dan atau jalur yang benar.
  • Semua loop dapat dites terhadap batasannya dan ikatan operasionalnya.
  • Semua struktur internal data dapat dites untuk memastikan validitasnya.

Mengapa melakukan white box testing bilamana black box testing berfungsi untuk testing pemenuhan terhadap kebutuhan / spesifikasi?

  • Kesalahan logika dan asumsi yang tidak benar kebanyakan dilakukan ketika coding untuk “kasus tertentu”. Dibutuhkan kepastian bahwa eksekusi jalur ini telah dites.
  • Asumsi bahwa adanya kemungkinan terhadap eksekusi jalur yang tidak benar. Dengan white box testing dapat ditemukan kesalahan ini
  • Kesalahan penulisan yang acak. Seperti berada pada jalur logika yang membingungkan pada jalur normal.

Argumen di atas adalah kesalahan-kesalahan yang tak dapat ditemukan dengan menggunakan black box testing yang terbaik sekalipun.

Cakupan pernyataan, cabang dan jalur

Cakupan pernyataan, cabang dan jalur adalah suatu teknik white box testing yang menggunakan alur logika dari program untuk membuat test cases. Yang dimaksud dengan alur logika adalah cara dimana suatu bagian dari program tertentu dieksekusi saat menjalankan program. Alur logika suatu program dapat direpresentasikan dengan flow graph.

Suatu flow graph terbentuk dari:

  • Nodes (titik), mewakili pernyataan (atau sub program) yang akan ditinjau saat eksekusi program.
  • Edges (anak panah), mewakili jalur alur logika program untuk menghubungkan satu pernyataan (atau sub program) dengan yang lainnya.
  • Branch nodes (titik cabang), titik-titik yang mempunyai lebih dari satu anak panah keluaran.
  • Branch edges (anak panah cabang), anak panah yang keluar dari suatu cabang
  • Paths (jalur), jalur yang mungkin untuk bergerak dari satu titik ke lainnya sejalan dengan keberadaan arah anak panah.

Disain cakupan tes

Untuk mendisain cakupan dari tes, perlu diketahui tahap-tahap sebagai berikut:

  1. Menganalisa source code untuk membuat flow graph.
  2. Mengidentifikasi jalur tes untuk mencapai pemenuhan tes berdasarkan pada flow graph.
  3. Mengevaluasi kondisi tes yang akan dicapai dalam tiap tes.
  4. Memberikan nilai masukan dan keluaran berdasarkan pada kondisi.

Basis Path Testing

Merupakan teknik white box testing yang dikenalkan oleh Tom McCabe [MC76]. Metode ini memungkinkan pendisain test cases untuk melakukan pengukuran terhadap kompleksitas logika dari disain prosedural dan menggunakannya sebagai panduan dalam menentukan kelompok basis dari jalur eksekusi, dimana hal ini akan menjamin eksekusi tiap pernyataan dalam program sekurangnya sekali selama testing berlangsung.

Basis path hadir dalam 2 bentuk, yaitu:

  • Zero Path: Jalur penghubung yang tidak penting atau jalur pintas yang ada pada suatu
    sistem.
  • One Path: Jalur penghubung yang penting atau berupa proses pada suatu sistem.

Cyclomatic Complexity

Adalah pengukuran software yang memberikan pengukuran kuantitatif dari kompleksitas
logika program.

Pada konteks metode basis path testing, nilai yang dihitung bagi cyclomatic complexity menentukan jumlah jalur - jalur yang independen dalam kumpulan basis suatu program dan memberikan jumlah tes minimal yang harus dilakukan untuk memastikan bahwa semua
pernyataan telah dieksekusi sekurangnya satu kali. Jalur independen adalah tiap jalur pada program yang memperlihatkan 1 kelompok baru dari pernyataan proses atau kondisi baru.

[Region / Complexity] V(G) = E (edges) – N (nodes) + 2

V(G) = P (predicate node) + 1


Graph Matrix

Adalah matrik berbentuk segi empat sama sisi, dimana jumlah baris dan kolom sama dengan lah node, jum dan identifikasi baris dan kolom sama dengan identifikasi node, serta isi data adalah keberadaan penghubung antar node (edges).

Berikut contohnya :

Sabtu, 29 Oktober 2011

Testing dan Implementasi Sistem Pertemuan 2

Obyektifitas Testing

Secara umum obyektifitas dari testing adalah untuk melakukan verifikasi, validasi dan deteksi error untuk menemukan masalah dan tujuan dari penemuan ini adalah untuk membenahinya.
Namun terdapat pula beberapa pendapat dari praktisi yang dapat pula dipandang sebagai bagian dari obyektifitas testing, antara lain:
  • Meningkatkan kepercayaan bahwa sistem dapat digunakan dengan tingkat resiko yang dapat diterima.
  • Menyediakan informasi yang dapat mencegah terulangnya error yang pernah terjadi.
  • Menyediakan informasi yang membantu untuk deteksi error secara dini.
  • Mencari error dan kelemahan atau keterbatasan sistem.
  • Mencari sejauh apa kemampuan dari sistem.
  • Menyediakan informasi untuk kualitas dari produk software.

Misi dari Tim Testing

Misi dari tim testing tidak hanya untuk melakukan testing, tapi juga untuk membantu meminimalkan resiko kegagalan proyek.
Tester mencari manifestasi masalah dari produk, masalah yang potensial, dan kehadiran dari masalah. Mereka mengeksplorasi, mengevaluasi, melacak, dan melaporkan kualitas produk, sehingga tim lainnya dari proyek dapat membuat keputusan terhadap pengembangan produk.
Penting diingat bahwa tester tidak melakukan pembenahan atau pembedahan kode, tidak mempermalukan atau melakukan komplain pada suatu individu atau tim, hanya menginformasikan.
Tester adalah individu yang memberikan hasil pengukuran dari kualitas produk.

Prinsip-Prinsip Testing

Terdapat 6 kunci prinsip-prinsip testing, yaitu:

  • Testing yang komplit tidak mungkin.
  • Testing merupakan pekerjaan yang kreatif dan sulit.
  • Alasan yang penting diadakannya testing adalah untuk mencegah terjadinya errors.
  • Testing berbasis pada resiko.
  • Testing harus direncanakan.
  • Testing membutuhkan independensi.