tugas UTS testing dan implementasi sistem

Testing dan Implementasi Sistem



Nama         : Shah Alam Ikhsan Harahap
Kelas         : Karyawan malam 
M.Kuliah   : Testing Dan Implementasi Sistem
Dosen        : OFAH MUSYAWAROFAH., M.TI

Jawaban NO. 1
Langkah-langakah pengembangan Perangkat Lunak yaitu :
  1. Model Sekuensial Linier atau Waterfall Development Model Model Sekuensial Linier atau sering disebut Model Pengembangan Air Terjun, merupakan paradigma model pengembangan perangkat lunak paling tua, dan paling banyak dipakai. Model ini mengusulkan sebuah pendekatan perkembangan perangkat lunak yang sistematik dan sekunsial yang dimulai pada tingkat dan kemajuan sistem pada seluruh tahapan analisis, desain , kode, pengujian, dan pemeliharaan.

    Berikut Merupakan Tahapan – tahapan Pengembangan  Model Sekuensial Linear / Waterfall Development Model :
    • Rekayasa dan pemodelan sistem/informasi
    Langkah pertama dimulai dengan membangun keseluruhan elemen sistem dan memilah bagian-bagian mana yang akan dijadikan bahan pengembangan perangkat lunak, dengan memperhatikan hubungannya dengan Hardware, User, dan Database.
    • Analisis kebutuhan perangkat lunak
    Pada proses ini, dilakukan penganalisaan dan pengumpulan kebutuhan sistem yang meliputi Domain informasi, fungsi yang dibutuhkan unjuk kerja/performansi dan antarmuka.  Hasil penganalisaan dan pengumpulan tersebut didokumentasikan dan diperlihatkan kembali kepada pelanggan.
    • Desain
    Pada proses Desain, dilakukan penerjemahan syarat kebutuhan sebuah perancangan perangkat lunak yang dapat diperkirakan sebelum dibuatnya proses pengkodean (coding). Proses ini berfokus pada  struktur data, arsitektur perangkat lunak, representasi interface, dan detail algoritma prosedural.
    • Pengkodean
    Pengkodean merupakan proses menterjemahkan perancangan desain ke bentuk yang dapat dimengerti oleh mesin, dengan menggunakan bahasa pemrograman.
    • Pengujian
    Setelah Proses Pengkodean selesai, dilanjutkan dengan proses pengujian pada program perangkat lunak, baik Pengujian logika internal, maupun Pengujian eksternal fungsional untuk memeriksa segala kemungkinan terjadinya kesalahan dan memeriksa apakah hasil dari pengembangan tersebut sesuai dengan hasil yang diinginkan.
    • Pemeliharaan
    Proses Pemeliharaan erupakan bagian paling akhir dari siklus pengembangan dan dilakukan setelah perangkat lunak dipergunakan. Kegiatan yang dilakukan pada proses pemeliharaan antara lain :
    • Corrective Maintenance : yaitu mengoreksi apabila terdapat kesalahan pada perangkat lunak, yang baru terdeteksi pada saat perangkat lunak dipergunakan.
    • Adaptive Maintenance : yaitu dilakukannya penyesuaian/perubahan sesuai dengan lingkungan yang baru, misalnya hardware, periperal, sistem operasi baru, atau sebagai tuntutan atas perkembangan sistem komputer, misalnya penambahan driver, dll.
    • Perfektive Maintenance : Bila perangkat lunak sukses dipergunakan oleh pemakai. Pemeliharaan ditujukan untuk menambah kemampuannya seperti memberikan fungsi-fungsi tambahan, peningkatan kinerja dan sebagainya.

  1. Model PrototypeMetode Prototype merupakan suatu paradigma baru dalam metode pengembangan perangkat lunak dimana metode ini tidak hanya sekedar evolusi dalam dunia pengembangan perangkat lunak, tetapi juga merevolusi metode pengembangan perangkat lunak yang lama yaitu sistem sekuensial yang biasa dikenal dengan nama SDLC atau waterfall development model.

    Dalam Model Prototype, prototype dari perangkat lunak yang dihasilkan kemudian dipresentasikan kepada pelanggan, dan pelanggan tersebut diberikan kesempatan untuk memberikan masukan sehingga perangkat lunak yang dihasilkan nantinya betul-betul sesuai dengan keinginan dan kebutuhan pelanggan.
    Perubahan dan presentasi prototype dapat dilakukan berkali-kali sampai dicapai kesepakatan bentuk dari perangkat lunak yang akan dikembangkan.
    Teknik – teknik Prototyping Meliputi :
    • Perancangan Model
    • Perancangan Dialog
    • Simulasi
    Berikut adalah 4 langkah yang menjadi karakteristik dalam proses pengembangan pada metode prototype, yaitu :
    • Pemilihan fungsi
    • Penyusunan Sistem Informasi
    • Evaluasi
    • Penggunaan Selanjutnya
    Metode ini menyajikan gambaran yang lengkap dari suatu sistem perangkat lunak, terdiri atas model kertas, model kerja dan program. Pihak pengembang akan melakukan identifikasi kebutuhan pemakai, menganalisa sistem dan melakukan studi kelayakan serta studi terhadap kebutuhan pemakai, meliputi model interface, teknik prosedural dan teknologi yang akan dimanfaatkan.
    4
    Berikut adalah Tahapan – tahapan Proses Pengembangan dalam Model Prototype, yaitu :
    • Pengumpulan kebutuhan
    Pelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.
    • Membangun prototyping
    Membangun prototyping dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan (misalnya dengan membuat input dan format output).
    • Evaluasi protoptyping
    Evaluasi ini dilakukan oleh pelanggan, apakah prototyping yang sudah dibangun sudah sesuai dengan keinginan pelanggan atau belum. Jika sudah sesuai, maka langkah selanjutnya akan diambil. Namun jika tidak, prototyping direvisi dengan mengulang langkah-langkah sebelumnya.
    • Mengkodekan sistem
    Dalam tahap ini prototyping yang sudah di sepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai.
    • Menguji sistem
    Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, kemudian dilakukan proses Pengujian. Pengujian ini dilakukan dengan White Box, Black Box, Basis Path, pengujian arsitektur, dll.
    • Evaluasi Sistem
    Pelanggan mengevaluasi apakah perangkat lunak yang sudah jadi sudah sesuai dengan yang diharapkan . Jika ya, maka proses akan dilanjutkan ke tahap selanjutnya, namun jika perangkat lunak yang sudah jadi tidak/belum sesuai dengan apa yang diharapkan, maka tahapan sebelumnya akan diulang.
    • Menggunakan sistem
    Perangkat lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.
    Model Prototyping ini sangat sesuai diterapkan untuk kondisi yang beresiko tinggi di mana masalah-masalah tidak terstruktur dengan baik, terdapat fluktuasi kebutuhan pemakai yang berubah dari waktu ke waktu atau yang tidak terduga, bila interaksi dengan pemakai menjadi syarat mutlak dan waktu yang tersedia sangat terbatas sehingga butuh penyelesaian yang segera. Model ini juga dapat berjalan dengan maksimal pada situasi di mana sistem yang diharapkan adalah yang inovatif dan mutakhir sementara tahap penggunaan sistemnya relatif singkat.
    Berikut merupakan Jenis – jenis dari Prototyping :
    • Feasibility prototyping
    digunakan untuk menguji kelayakan dari teknologi yang akan digunakan untuk system informasi yang akan disusun.
    • Requirement prototyping
    digunakan untuk mengetahui kebutuhan aktivitas bisnis user.
    • Desain Prototyping
    digunakan untuk mendorong perancangan sistem informasi yang akan digunakan.
    • Implementation prototyping
      merupakan lanjutan dari rancangan prototype, prototype ini langsung disusun sebagai suatu sistem informasi yang akan digunakan.
      1. Model Rapid Application Development (RAD)Rapid Aplication Development (RAD) adalah sebuah model proses perkembanganperangkat lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek (kira-kira 60 sampai 90 hari). Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi berbasis komponen.
      5
      Berikut adalah Tahapan – tahapan Proses Pengembangan dalam Model Rapid Application Development (RAD), yaitu :
      • Bussiness Modeling
      Fase ini untuk mencari aliran informasi yang dapat menjawab pertanyaan berikut:
      • Informasi apa yang menegndalikan proses bisnis?
      • Informasi apa yang dimunculkan?
      • Di mana informasi digunakan ?
      • Siapa yang memprosenya ?
      • Data Modeling
      Aliran informasi yang didefinisikan sebagai bagian dari fase bussiness modeling disaring ke dalam serangkaian objek data yang dibutuhkan untuk menopang bisnis tersebut. Karakteristik (atribut) masing-masing objek diidentifikasi dan hubungan antar objek-objek tersebut didefinisikan.
      • Proses Modeling
      Aliran informasi yang didefinisikan di dalam fase data modeling ditransformasikan untuk mencapai aliran informasi yang perlu bagi implementasi sebuah fungsi bisnis. Gambaran pemrosesan diciptakan untuk menambah, memodifikasi, menghapus, atau mendapatkan kembali sebuah objek data.
      • Aplication Generation
      Selain menggunakan bahasa pemrograman generasi ketiga, RAD juga memakai komponen program yang telah ada atau menciptakan komponen yang bisa dipakai lagi. Ala-alat bantu bisa dipakai untuk memfasilitasi konstruksi perangkat lunak.
      • Testing dan Turnover
      Karena proses RAD menekankan pada pemakaian kembali, banyak komponen program telah diuji. Hal ini mengurangi keseluruhan waktu pengujian. Tetapi komponen baru harus diuji dan semua interface harus dilatih secara penuh.
      1. Model Evolutionary Development / Evolutionary Software Process ModelsModel Evolutionary Development bersifat iteratif (mengandung perulangan). Hasil prosesnya berupa produk yang makin lama makin lengkap sampai versi terlengkap dihasilkan sebagai produk akhir dari proses. Model Evolutionary Development / Evolutionary Software Process terbagi menjadi 2, yaitu :
      1. Model IncrementalModel Incremental merupakan hasil kombinasi elemen-elemen dari model waterfall yang diaplikasikan secara berulang, atau bisa disebut gabungan dari Model linear sekuensial (waterfall) dengan Model Prototype. Elemen-elemen tersebut dikerjakan hingga menghasilkan produk dengan spesifikasi tertentu kemudian proses dimulai dari awal kembali hingga muncul hasil yang spesifikasinya lebih lengkap dari sebelumnya dan tentunya memenuhi kebutuhan pemakai.
       6
      Model ini berfokus pada penyampaian produk operasional dalam Setiap pertambahanya. Pertambahan awal ada di versi stripped down dari produk akhir, tetapi memberikan kemampuan untuk melayani pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai. Model ini cocok dipakai untuk proyek kecil dengan anggota tim yang sedikit dan ketersediaan waktu yang terbatas.
      Pada proses Pengembangan dengan Model Incremental, perangkat lunak dibagi menjadi serangkaian increment yang dikembangkan secara bergantian
    Jawaban NO. 2

    Dasar-dasar Pengujian Perangkat Lunak

    1. Pengujian adalah proses eksekusi suatu program dengan maksud menemukan kesalahan.
    2. Pengujian merupakan pula sebagai elemen kritis dari jaminan kualitas perangkat lunak dan merepresentasikan kajian pokok dari spesifikasi, desain dan pengkodean.
    3. System Testing merupakan pengujian terhadap integrasi sub-sistem, yaitu keterhubungan antar sub-sistem yang ada.
    4. Acceptance Testing merupakan pengujian terakhir sebelum sistem dipakai oleh pengguna.
    5. Pengujian ini biasanya melibatkan pengujian dengan data dari pengguna sistem.
    6. Proses ini biasa dikenal sebagai “alphatest” “betatest” untuk software komersial, dimana pengujian dilakukan oleh potensial customer).
    PengujianWhite Box
    • White Box Testing merupakan cara pengujian dengan melihat kedalam modul untuk meneliti kode-kode program yang ada dan menganalisis apakah ada kesalahan atau tidak.
    • Jika terdapat modul yang menghasilkan output tidak sesuai dengan proses bisnis yang dilakukan, maka baris-baris program, variabel dan parameter yang terlibat pada unit tersebut akan dicek satu persatu, diperbaiki dan kemudian di-compile ulang.
    Dengan menggunakan white box akan didapatkan kasus uji sebagai berikut:
    1. Menguji semua keputusan secara logical.
    2. Menguji seluruh loop yang sesuai dengan batasannya.
    3. Menguji seluruh struktur data internal yang menjamin validitas.
    Pengujian Path Basis
    • Basis Path Testing memungkinkan perancang testcase mendapatkan ukuran kompleks logical dari perancangan prosedural dan menggunakan ukuran ini sebagai petunjuk untuk mendefinisikan himpunan jalur yang akan diuji.
    • Basis path menggunakan notasi graph atau flowgraph untuk menggambarkan aliran kontrolnya.
    • Tujuannya meyakinkan bahwa himpunan test case akan menguji setiap path pada suatu program paling sedikit satu kali.

      Unsur-unsur basis path testing sebagai berikut:
    • Lingkaran (node), menggambarkan satu atau lebih perintah prosedural.
    • Tanda panah (edge), menggambarkan aliran kontrol.
    • Region, daerah yang dibatasi oleh edge dan node termasuk daerah diluar grafik alir.
    Pengujian Struktur Kendali
    • Pengujian struktur kendali adalah sebuah metode disain test case yang menggunakan kondisi logis yang ada pada suatu program.
    • Teknik ini merupakan perbaikan dari basis path yang meliputi:
    1. PengujianKondisi,didasarkanpadastrukturkontrol(=,<,>,not,and,dsb.).
    2. Pengujian Aliran Data, didasarkan pada adanya hubungan antar-statement pada program.
    3. Pengujian Loop, berfokus pada validitas konstruksi loop.
    4. Setiap bahasa pemrograman memiliki kemampuan untuk melakukan pengujian kondisi agar program dapat berjalan dinamis dan interaktif.
    5. Untuk menguji setiap kondisi, diperlukan pembanding (operator) yang bisa sama dengan (=), lebih besar(>), lebih kecil(<) ,atau tidak sama dengan lainnya.


    Jawaban No. 3. kategori defect pada sw 
    • Error handling – pengenalan dan perlakuan terhadap error bila terjadi.
    • Boundary – related errors – perlakuan terhadap nilai batasan dari jangkauan mereka yang mungkin tidak benar.
    • Calculation errors – perhitungan arimatika dan logika yang mungkin tidak benar.
    • Initial and later states – fungsi gagal pada saat pertama digunakan atau sesudah itu.
    • Control flow errors – pilihan terhadap apa yang akan dilakukan berikutnya tidak sesuai untuk status saat ini.
    • Errors in handling or interpreting data – melewatkan dan mengkonversi data antar sistem (dan mungkin komponen yang terpisah dari sistem) dapat menimbulkan error.


    Jawaban No. 4 diagram distribusi software life cycle
    Hasil gambar untuk diagram distribusi software life cycle
    Jawaban No. 5 pengertian dari testing dan sebutkan prosesnya
    Menurut Hetzel 1983, testing merupakan aktivitas yang digunakan untuk dapat melakukan evaluasi suatu paramter ataupun kemampuan dari program atau sistem serta memastikan apakah sudah memenuhi kebutuhan ataupun hasil yang diharapkan.
    Prosesnya adalah Proses menganalisa sesuatu entitas aplikasi untuk mendeteksi perbandingan antara keadaan yang terdapat dengan keadaan yang diinginkan( defect) serta mengevaluasi fitur- fitur dari entitas software.

    Jawaban No. 6 komponen komponen proses pengembangan sw
    Proses CBSE adalah proses software yang mendukung berbasis komponen rekayasa perangkat lunak. Mereka memperhitungkan kemungkinan penggunaan kembali dan proses yang berbeda kegiatan yang terlibat dalam mengembangkan dan menggunakan komponen dapat digunakan kembali.

    Ada dua jenis proses CBSE, yaitu :

    Development for reuse, Proses ini berkaitan dengan komponen pengembangan atau layanan yang akan digunakan kembali dalam aplikasi lain. Ini biasanya melibatkan generalisasi komponen yang ada.

    Development with reuse, Pembangunan dengan reuse ini adalah proses pengembangan aplikasi baru menggunakan komponen dan jasa yang ada

    .
    Composition Component adalah proses mengintegrasikan komponen satu sama lain, dan dengan menulis khusus 'glue code' untuk menciptakan sistem atau komponen lain.

    Ada tiga jenis ketidakcocokan bisa terjadi:

    Parameter Ketidakcocokan operasi pada setiap sisi antarmuka memiliki nama yang sama tetapi jenis parameter atau jumlah parameter berbeda.
    Ketidakcocokan Operasi Nama-nama operasi di 'menyediakan' dan 'Membutuhkan' antarmuka yang berbeda.
    Operasi ketidaklengkapan 'memberikan' antarmuka dari komponen adalah subset dari 'membutuhkan' antarmuka dari komponen lain atau sebaliknya.

    Jawaban No 7 Perbedaan antara Perangkat Lunak Komersil dan Customized software dan  Elemen-elemen Project Software

    Perangkat lunak komersial adalah perangkat lunak yang dikembangkan oleh kalangan bisnis untuk memperoleh keuntungan dari penggunaannya. Kebanyakan perangkat lunak komersial adalah berpemilik, tapi ada perangkat lunak bebas komersial, dan ada perangkat lunak tidak bebas dan tidak komersial. 

    Customize ( Bespoke ) : disebut juga bespoke software atau tailored software adalah software yang diciptakan berdasarkan permintaan dan kebutuhan (bahkan situasi/kondisi) tertentu. Banyak Software House yang menghasilkan Perangkat lunak ini berdasarkan proyek/pesanan tertentu. 


    ada 3 manajement proyek software

    1. People (manusia), mempertinggi kesiapan organisasi PL untuk mengerjakan aplikasi yang semakin kompleks. Perencanaan sumber daya manusia memulai dengan mengevaluasi ruang lingkup serat memilih kecakapan yang dibutuhkan untuk menyelesaikan pengembangan. Baik posisi organisasi (seperti manajer, perekayasa perangkat lunak senior, dan lain-lain) maupun specialty (seperti telekomunikasi, data base, client/server) ditentukan. Untuk proyek yang sangat kecil (6 person- month atau kurang), seorang individu dapat melakukan semua langkah rekayasa perangkat lunak, berkonsultasi dengan spesialis bila diperlukan. Jumlah manusia yang diperlukan untuk sebuah proyek perangkat lunak dapat ditentukan hanya setelah sebuah estimasi usaha pengembangan (seperti person-mount atau person-year) dibuat.
    2. Problem (masalah), objektifitas dan ruang lingkupnya harus ditetapkan, pemecahan alternatifnya harus dipertimbangkan, teknik dan batasanpun harus didefinisikan
    3. Process (proses), memberikan suatu kerangka kerja dimana rencana komprehensif bagi pengembangan perangkat lunak

    Komentar

    Posting Komentar