Sistem operasi bertanggung jawab untuk mengelola seluruh sumber daya yang terdapat pasa sebuah sistem komputer dan menghubungkan sumber daya tersebut dengan pengguna ataupun dengan program lain sehingga program yang terdapat di computer dapat mengakses dan menggunakan sumber daya tersebut.
Pengaturan sumber daya dilakukan agar tidak terjadinya konflik saat penggunaan sumber daya antara satu program aplikasi dengan program aplikasi lainyang dapat menyebabkan suatu kesalahan atau eror.
Pada pengaturan sumber daya suatu sistem operasi dapat mencakup hal-hal berikut ini :
• Pengorganisasian atau pengendalian kegiatan komputer
• Pengaturan memori
• Sistem operasi bertanggung untuk melakukan pengaturan memori yang mencakup :
1. Mengalokasikan dan mendealokasikan ruang memori sesuai kebutuhan.
2. Menjaga ruang-ruang di memori yang sedang digunakan dan di program apa yang
menggunakannya.
3. Memilih data yang akan diambil dari harddisk dan disimpan sementara ke memori.
• Pengaturan penyimpanan di harddisk
Sistem operasi bertanggung jawab untuk melakukan pengaturan
penyimpanan data-data di
harddisk.
• Pengaturan proses input dan output data
Sistem operasi berfungsi untuk menyeragamkan operasi-operasi
di perangkat input-
output.
• Manajemen file
Majaemen yang dilakukan oleh system informasi adalah :
1. Pembuatan dan penghapusan file
2. Pembuatan dan penghapusan folder
3. Mendukung manipulasi file dan folder
4. Memetakan file ke tempat penyimpanan tetap (harddisk)
5. Mem-backup file ke media penyimpanan
Henry Pandia. Teknologi Informasi dan komunikasi.Erlangga
Minggu, 24 Juni 2012
Senin, 18 Juni 2012
Komputer
Komputer mempunyai ukuran, kecepatan, dan kemampuan yang sangat bervariasi. Berdasarkan criteria tersebut, computer dapat dikelompokan menjadi empat bagian, yaitu
1. Komputer pribadi (personal computer / PC)
2. Superkomputer (mainframe)
3. Dedicated komputer
4. Embedded komputer
Personal Komputer
• Mempunyai ukuran yang bermacam-macam . namun, bila dibandingkan dengan ukuran
mainframe, ukuran PC sangat kecil.
• Beberapa jenis PC mempunyai mikroprosesor lebih dari satu sebagai tambahan pada
prosesor utama yang memungkinkan mempunyai beberapa ko-prosesor yang berfungsi
untuk menangani pekerjaan-pekerjaan yang khusus.
• Computer PC digunakan sebagai alat bantu Pekerja-pekerja di kantor, lembaga-
lembaga pendidikan, maupun rumah-rumah.
• Fungsi PC bermacam-macam, mulai dari penggunaan melayani pelanggan, membuat
dokumen-dokumen, mengolah data-data bisnis, mengelola data-data riset, melakukan
simulasi penelitian, sampai pada penggunaan untuk hiburan.
Superkomputer
• Mainfrrame atau supercomputer merupakan computer yang paling canggih yang
dilengkapi dengan berbagai kemampuan yang sangat handal.
• Beberapa mainframe digunakan untuk pekerjaan tertentu saja,misalnya menyalin dan
menyimpan hasil-hasil penelitian dari percobaan di laboratorium. Sebaliknya, ada
juga mainframe yang digunakan untuk banyak pekerjaan sekaligus.
• Digunakan pula untuk proyek-proyek besar, seperti untuk mendesign pesawat
terbang, menganalisis molekul-molekul obat, menangani data-data di bank,
dansebagainya.
Dedicated Komputer
• Komputer yang dibuat dengan tujuan tertentu saja, sebagai contoh video game.
Embedded Komputer
• Komputer yang berfungsi sebagai unit control dan ditempatkan di peralatan yang
membutuhkan pengendalian otomatis.
• Biasanya mempunyai mikroprosesor tunggal.
• Beberapa peralatan yang mempunyai embedded computer di dalamnya adalah telepon,
videotape recorder, pendingin ruangan, dan mobil yang dilengkapi system pengapian
yang dikendalikan, dan sebagainya.
• Membantu untuk mengendalikan penerbangan pesawat, mengendalikan penerbangan
pesawat, mengendalikan satelit agar tetap pada orbitnya, dan mengendalikan peluru
kendali agar menemukan target yang diituju.
• Dapat juga digunakan untuk mengendalikan gerakan dari robot-robot yang digunakan
di industry.
Henry Pandia. Teknologi Informasi dan komunikasi.Erlangga
Minggu, 10 Juni 2012
Sistem Pengujian Software
Pengujian software sangat diperlukan untuk memudahkan software aplikasi yang akan dibuat menjadi mudah untuk dipasang pada komputer pengguan. Pengembang harus membuat atau menggunakan program khusus yang digunakan bisa membuat paket instalasi, supaya progam instalasi menjadi baik. Testing sendiri memiliki arti elemen kritis dari jaminan kualitas perangkat lunak dan merepresentasikan kajian pokok dari spesifikasi, desain, dan pengkodean.
Pengujian software haruslah didefinisikan dalam proses rekayasa perangkat lunak atau software engineering. Sejumlah strategi pengujian software telah diusulkan dalam literatur. Semuanya menyediakan developer software dengan template untuk pengujian. Dalam hal ini, semuanya harus memiliki karakteristik umum berupa :
Testing dimulai pada level modul dan bekerja keluar kearah integrasi pada sistem berbasiskan komputer
Teknik testing yang berbeda sesuai dengan poin-poin yang berbeda pada waktunya
Testing diadakan oleh software developer dan untuk proyek yang besar oleh group testing yang independent
Testing dan Debugging adalah aktivitas yang berbeda tetapi debugging harus diakomodasikan pada setiap strategi testing
Langkah-langkah Pengujian Software
Kemudian kita akan menjalankan langkah-langkah yang harus diperhatikan dalam pengujian software sebagai berikut.
Terdapat 4 langkah yaitu:
• Unit testing-testing per unit yaitu mencoba alur yang spesifik pada struktur modul kontrol untuk memastikan pelengkapan secara penuh dan pendeteksian error secara maksimum
• Integration testing – testing per penggabungan unit yaitu pengalamatan dari isu-isu yang diasosiasikan dengan masalah ganda pada verifikasi dan konstruksi program
• High-order test yaitu terjadi ketika software telah selesai diintegrasikan atau dibangun menjadi satu –tidak terpisah-pisah
• Validation test yaitu menyediakan jaminan akhir bahwa software memenuhi semua kebutuhan fungsional, kepribadian dan performa.
Setelah kita menyelesaikan langkah-langkah pada pengujian software, kita dapat mengetahui kriteria dari hasil testing yang dilakukan diantara lain, yaitu :
• Dengan menggunakan model statisitik dan teori software reliability, model dari kegagalan software-yang tidak terdeteksi selama testing-sebagai fungsi dari waktu eksekusi dapat dikembangkan
• Sebuah versi dari model kegagalan yang disebut logarithmic Poisson execution-time model.
Test Unit (Test Level Komponen)
Pengujian unit: Komponen individual yang diuji secara independen untuk memastikan kualitasnya. Fokusnya untuk tidak menutup error pada desain dan implementasi, diantaranya adalah:
• struktur data pada sebuah komponen
• logika program dan struktur program pada sebuah komponen
• interface komponen
• fungsi dan operasi dari sebuah component
• Penguji/tester unit: pengembang dari komponen.
Test Integrasi
Selain ada test unit ada pula test integrasi yang mempunyai arti Sebuah group dari component dependent diuji bersama untuk memastikan kualitas dari unit integrasinya. Merupakan teknik sistematik untuk membangun struktur program pada saat melakukan testing untuk mencari error. Secara obyektif untuk mengambil modul unit test dan membangun struktur program yang telah dirancang oleh desainnya. Fokusnya untuk meng-uncover error pada:
• Desain dan konstruksi arsitektur software
• Fungsi-fungsi yang terintegrasi atau operasi pada level sub-system
• Interface dan interaksi
• Integrasi resource dan/atau integrasi lingkungan
• Penguji integration: pengembang dan/atau test engineer
Strategi Pengujian Integrasi
Ada 2 pendekatan strategi penguji integrasi, yaitu :
1. integrasi non-incremental
2. integrasi incremental
Integrasi non-incremental :
Integrasi non-incremental adalah Big Band, menggabungkan (atau mengintegrasi) semua bagian dalam sekali. Terdapat keuntungan dan kerugian dari integrasi ini :
• Keuntungan: Sederhana
• Kerugian:
o sulit untuk men-debug, tidak mudah untuk mengisolasi error
o tidak mudah untuk memvalidasi hasil test
o mustahil untuk membentuk sebuah sistem terintegrasi impossible
Integrasi incremental:
Integrasi incremental adalah mengintegrasi sistem tahap demi tahap(atau bagian demi bagian) dalam sebuah pesanan yang didesain dengan baik. Terdapat tiga metode penting pada integrasi ini:
1. Top-down
2. bottom-up
3. Sandwich
Integrasi Top-down
Integrasi top-down adalah Modul-modul diintegrasi dengan memindahkan downward melalui struktur kontrol. Modul subordinate ke modul kontrol utama digabung ke sistem dalam cara depth-first atau breadth-first. Proses integrasi memiliki lima langkah diantaranya adalah :
1. Modul kontrol utama digunakan sebagai sebuah test driver, dan stubs disubstitusi untuk semua modul secara langsung ke modul kontrol utama.
2. Stub subordinate digantikan sekali satu waktu dengan modul actual.
3. Test terkonduksi sebagai tiap modul diintegrasi.
4. Pada pelengkapan tiap kumpulan test, stub lainnya diganti dengan modul real.
5. Pengujian regresi dapat dikonduksi.
Integration top-down pros dan cons :
• biaya kostruksi stub
• fungsi kontrol utama dapat diuji lebih cepat.
Integrasi Bottom-Up
Integrasi bottom-up adalah modul pada level terbawah diintegrasi pertama, kemudian dengan menggerakkan keatas melalui struktur kontrol. Proses integration(lima langkah):
1. Modul low-level dikombinasikan ke cluster yang menunjukkan sebuah sub-function software spesifik.
2. Sebuah driver ditulis untuk meng-coordinate input dan output test case.
3. Test cluster diuji.
4. Driver dipindah dan cluster digabungkan bergerak ke atas dalam struktur program.
Integrasi bottom-up pros dan cons:
• tidak ada biaya stub
• perlu pengujian driver
• tidak ada sistem yang dapat dikontrol hingga langkah terakhir
Regression Testing
Regression testing Merupakan aktivitas yang membantu untuk memastikan sebuah perubahan (yang berkaitan dengan testing atau penjelasan lain) tidak menghasilkan perilaku yang tidak diharapkan atau error tambahan. Regression tes terdiri dari 3 kelas, yaitu:
• Sebuah Contoh yang mewakili tes yang akan menguji semua fungsi software
• Tes tambahan yang berfokus pada fungsi software yang tampak yang akan berubah akibat perubahan lain
• Tes yang berfokus pada komponen software yang telah berubah
Validation testing. Uji Validasi : Software yang berintegrasi diuji berdasarkan pada kebutuhan untuk memastikan bahwa kita memiliki produk yang benar. Fokus-nya adalah untuk meng-uncover error pada:
o Input/output sistem
o Informasi fungsi sistem dan data
o Interface sistem dengan bagian eksternal
o User interface
o Perilaku dan performance sistem
Uji Sistem
Pengertian dari uji system adalah Sistem software diuji keseluruhan. Ini memverifikasi semua elemen secara langsung untuk memastikan bahwa semua fungsi dan performance sistem diterima dalam lingkungan target. Terbagi menjadi 5 bagian yaitu :
• Recovery Testing : sistem tes yang menekan software untuk gagal dengan cara yang bervariasi dan memverifikasi perbaikan sendiri dengan baik
• Security Testing : usaha untuk memverifikasi mekanisme perlindungan yang dibuat dalam sistem apakah akan melindunginya dengan semestinya.
• Stress Testing : didesain untuk menghadapi program dengan situasi abnormal.
• Performance Testing : didesain untuk menguji performa software ketika bekerja dalam konteks pengintegraian sistem.
• Pengujian instalasi : didesain untuk menguji prosedur instalasi dan software pendukungnya
Rencana Uji
Kemudian pada tahap rencana uji berhubungan dengan mengeset standar untuk pengujian proses dibanding penggambaran pengujian produk. Test plan/rencana uji terdiri atas:
• standar untuk proses pengujian
• resource yang diperlukan (hardware, software dan engineer)
• jadwal pengujian (pengujian task dan milestones)
• uji item (apa yang harus diuji)
• prosedur recording test (hasil test harus secara sistematis direkam)
• constraint
Debugging
Kemudian pada saat debugging terdapat gejala-gejala yang mungkin terjadi
• Gejalanya mungkin sebagai hasil dari masalah pemilihan waktu dibanding masalah proses
• Kemungkinan sulit secara akurat mereproduksi kondisi input
• Gejalanya mungkin terjadi dalam waktu yang dekat berkelanjutan
• Gejalanya mungkin berkaitan dengan penyebab yang didistribusikan melewati sejumlah task yang berjalan pada prosesor yang berbeda. Terdapat 3 kategori pendekatan Debugging:
1. Brute force : metode yang paling umum dan lebih efisien untuk mengisolasi penyebab dari error software
2. Backtracking : metode yang dapat berhasil pada program kecil
3. Cause elimination : perwujudan dari induksi atau deduksi dan pengenalan dari konsep binary partitioning
Test Issues pada Dunia Nyata
• Pengujian software sangat mahal.
• Bagaimana mendapat pengujian secara otomatis?
Pengujian software lainnya:
• Pengujian GUI
• Pengujian Software Berorientasi Object
• Pengujian Komponen dan Pengujian Berbasis Komponen Software
• Pengujian Fitur spesifik Domain
• Pengujian Sistem Berbasis Web
Contoh dari Pengujian Sistem
IMPLEMENTASI ENTEPRISE SISTEM
Enterprise system adalah sistem berbasis software untuk membantu pengelolaan sistem informasi pada suatu organisasi dengan skala besar. Skala besar berarti volume transaksi yang besar, concern terhadap kualitas informasi yang tinggi, mengintegrasikan berbagai proses bisnis, lintas bidang (horisontal) maupun lintas strata (vertikal).
• Contoh dari ES adalah ERP (Enterprise Resource Planning) atau e-Business secara umum, e-Government, dan ingrated
software lainnya
Mengimplementasikan ES tidak mudah, atau setidaknya memilki strategi yang berbeda dengan sistem lain yang terbatas ruang lingkupnya, penggunanya dan tidak terpadu. Implementasi di sini bermakna bahwa software telah dapat digunakan dan bisa memberikan value bagi penggunanya sesuai tujuan pemanfaatan software tsb. Implementasi ini bisa dilakukan secara internal organisasi (oleh divisi IT/MIS) atau dengan pihak eksternal dalam kerangka proyek dan terikat legalitas berbentuk kontrak.
implementator sebagai pihak eksternal yang melakukan implementasi dan klien sebagai organisasi yang diimplementasikan softwarenya.
Implementasi ES berbeda dengan implementasi software berskala kecil atau yang penggunanya tunggal seperti MS Word, Database Rental VCD atau website, meskipun produknya sama-sama software yang berjalan di atas server dan membutuhkan konektivitas. Tentu nanti ada strategi yang berbeda, metode pemilihan bahan yang berbeda, tahapan yang berbeda, standar-standar tertentu, dst. Demikian pula dalam konteks software, bisa dipilah berdasar cakupan penggunaannya, bisa dilihat juga dari jenisnya (generik dan customized), yang masing-masing punya strategi implementasi yang berbeda. SE berkaitan dengan pengelolaan sistem informasi, yang tidak hanya bicara teknologi saja, tapi berkaitan dengan proses bisnis, struktur organisasi dan manusianya.
Pola pikir ”developer” adalah menganggap suatu problem bisa selesai dengan solusi berbasis software yang baik dan tepat. Tapi apakah cukup seperti itu? Dalam membangun solusi, ya itu cukup, tapi belum tentu menjamin kesuksesan implementasi. Pola pikir developer cenderung berfokus pada analisis dan development tidak pada implementasinya. Padahal sukses tidaknya proyek software, baik buruknya reputasi implementator, seringkali orang luar melihat pada keberhasilan implementasinya dan value yang didapatkan klien. ES untuk organisasi dengan puluhan divisi, ribuan orang, puluhan kepentingan, dan mungkin ratusan konflik. Apalagi jika software yang kita implementasikan bukan sekedar supporting tools tapi adalah core dari bisnis itu sendiri (konsep e-business). Cara implementasi dengan pola pikir seperti ini hanya akan menghasilkan solusi dan software yang bagus, tapi tidak optimal dan memberikan value untuk organisasi tsb, atau bahkan malah tidak pernah akan digunakan.
http://enikusuma.wordpress.com/2010/09/24/pengujian-software/
elearning.amikom.ac.id/.../TESTING%20PERANGKAT%20LUNAK
Langganan:
Postingan (Atom)