• Tidak ada hasil yang ditemukan

REKAYASA PERANGKAT LUNAK (3). pdf

N/A
N/A
Protected

Academic year: 2018

Membagikan "REKAYASA PERANGKAT LUNAK (3). pdf"

Copied!
9
0
0

Teks penuh

(1)

TUGAS MANDIRI 5

REKAYASA PERANGKAT LUNAK

OLEH :

HANNDY DANNOVAN

7411030855 / TEKNIK INFORMATIKA – B

POLITEKNIK ELEKTRONIKA NEGERI SURABAYA

(2)

1. WaterFall Model Life Cycle Software

Model siklus hidup (life cycle model) adalah model utama dan dasar dari banyak model. Salah satu model yang cukup dikenal dalam dunia rekayasa perangkat lunak adalah The Waterfall Model. Disebut waterfall (berarti air terjun) karena memang diagram tahapan prosesnya mirip dengan air terjun yang bertingkat. Model ini adalah model klasik yang bersifat sistematis, berurutan dalam membangun software.

Keterkaitan dan pengaruh antar tahap ini ada karena output sebuah tahap dalam Waterfall Model merupakan input bagi tahap berikutnya, dengan demikian ketidaksempurnaan hasil pelaksanaan tahap sebelumnya adalah awal ketidaksempurnaan tahap berikutnya. Memperhatikan karakteristik ini, sangat penting bagi tim pengembang dan perusahaan untuk secara bersama-sama melakukan analisa kebutuhan dan desain sistem sesempurna mungkin sebelum masuk ke dalam tahap penulisan kode program. Berikut adalah penjelasan detail dari masing-masing tahap dalam Waterfall model.

1. Analisa kebutuhan. Analisa kebutuhan merupakan tahap pertama yang menjadi dasar proses pembuatan Tailor-made software selanjutnya. Kelancaran proses pembuatan software secara keseluruhan dan kelengkapan fitur software yang dihasilkan sangat tergantung pada hasil analisa kebutuhan ini. Untuk memperoleh informasi tentang proses bisnis dan kebutuhan perusahaan, umumnya tim pengembang melakukan wawancara, diskusi dan survey. Dalam proses wawancara, diskusi dan survey diperlukan komunikasi yang intensif dan terbuka antara tim pengembang dan tim counter-partner dari perusahaan. Selain itu, peran aktif dari manajemen sebagai pihak yang memahami seluk beluk perusahaan secara komprehensif juga diperlukan agar diperoleh informasi proses bisnis dan daftar kebutuhan perusahaan yang lengkap. Beberapa perusahaan membantu memperlancar penyelesaian tahap ini dengan terlebih dahulu menyusun scope of work software yang akan dibuat sebagai acuan kerja tim pengembang. Hasil analisa kebutuhan yang tidak lengkap berpotensi menyebabkan beberapa permasalahan yang tidak diharapkan, antara lain : waktu pembuatan software menjadi lebih lama, proses dalam software tidak sesuai dengan proses bisnis dan software tidak dapat memenuhi semua kebutuhan perusahaan. Untuk meminimalkan risiko ini, disarankan perusahaan melakukan konfirmasi pemahaman tim pengembang tentang proses bisnis dan kebutuhan perusahaan dengan cara meminta resume hasil analisa kebutuhan dan menyempurnakannya bersama tim pengembang jika diperlukan.

2. Desain sistem. Desain sistem merupakan tahap penyusunan proses, data, aliran proses dan hubungan antar data yang paling optimal untuk menjalankan proses bisnis dan memenuhi kebutuhan perusahaan sesuai dengan hasil analisa kebutuhan. Dokumentasi yang dihasilkan dari tahap desain sistem ini antara lain : System Flow, Data Flow Diagram (DFD) dan Entity Relationship Diagram (ERD). System Flow merupakan bagan aliran dokumen dari satu bagian perusahaan ke bagian lain baik secara manual maupun melalui Sistem Informasi. Data Flow Diagram adalah diagram yang menunjukan aliran data di antara pengguna, proses dan database yang terkait dengan software. Entity Relationship Diagram merupakan diagram yang menunjukan bagaimana data dan informasi software akan di simpan di dalam database beserta dengan hubungan antar data. Seperti halnya tahap analisa kebutuhan, pada saat desain sistem selesai dibuat sebaiknya desain yang sudah dibuat pengembang didiskusikan dan disempurnakan oleh tim pengembang bersama dengan tim counter-partner dan manajemen perusahaan.

(3)

digunakan antara lain : Microsoft Visual Basic .Net untuk pembuatan software dalam kategori Desktop Application, PHP untuk pembuatan software dalam kategori Web Application dan Java untuk pembuatan software yang dapat berjalan di atas beberapa platform sistem operasi / multiplatform. Database yang saat ini banyak dipergunakan antara lain : ORACLE dan Microsoft SQL Server 2005 untuk kebutuhan penyimpanan data dalam jumlah besar, fitur keamanan data yang handal dan penggunaan oleh banyak pengguna, MySQL dan PosgreSQL untuk kebutuhan penyimpanan data di sistem operasi Linux dan Microsoft Access untuk penyimpanan data dalam jumlah yang tidak terlalu besar untuk memenuhi kebutuhan personal. Berbeda dengan 2 tahap sebelumnya, pada tahap penulisan kode program ini keterlibatan perusahaan tidaklah terlalu besar.

4. Pengujian program. Pengujian software dilakukan untuk memastikan bahwa software yang dibuat telah sesuai dengan desainnya dan semua fungsi dapat dipergunakan dengan baik tanpa ada kesalahan. Pengujian software biasanya dilakukan dalam 2 atau 3 tahap yang saling independen, yaitu : pengujian oleh internal tim pengembang, pengujian oleh divisi Quality Assurance dan pengujian oleh pengguna di perusahaan. Dalam tahap ini, perusahaan harus memastikan bahwa kerangka / skenario pengujian software dibuat dengan lengkap meliputi semua proses, kebutuhan dan pengendalian yang ada di dalam dokumen analisa kebutuhan dan desain sistem.

5. Penerapan program. Penerapan program merupakan tahap dimana tim pengembang menerapkan / meng-install software yang telah selesai dibuat dan diuji ke dalam lingkungan Teknologi Informasi perusahaan dan memberikan pelatihan kepada pengguna di perusahaan. Pada saat melaksanakan pelatihan perusahaan harus yakin bahwa semua karyawan benar-benar menguasai Sistem Informasi yang dibuat sesuai dengan tugas, kewenangan dan tanggung-jawabnya. Untuk mendukung penguasaan ini pada waktu operasional harian setelah pelatihan, perusahaan sebaiknya memastikan pengembang telah memberikan buku User Manual dari Sistem Informasi yang dibuat.

Berdasarkan kesepakatan yang dibuat sebelumnya, pada tahap ini perusahaan juga dapat meminta tim pengembang untuk menjelaskan secara detail kode program kepada staff Teknologi Informasi di perusahaan agar jika diperlukan pengembangan lebih lanjut di waktu yang akan datang dapat dilakukan sendiri oleh perusahaan. Hal ini biasanya dilakukan perusahaan-perusahaan besar yang memfokuskan staff divisi Teknologi Informasinya hanya untuk pemeliharaan sistem saja

Dengan memperhatikan keuntungan, konsekuensi dan mengikuti tahapan-tahapan yang ada di dalam metode Waterfall tersebut di atas dengan baik maka peluang perusahaan untuk mendapatkan Sistem Informasi yang berkualitas menjadi semakin besar. Semakin berkualitas Sistem Informasi yang diperoleh perusahaan berarti semakin besar pula daya saing dan peluang perusahaan untuk memenangkan kompetisi. Hal ini tidak lain karena pemrosesan informasi, pengendalian proses bisnis dan pengambilan keputusan dapat dilakukan dengan cepat dan akurat.

(4)

2. Fase pada model pengembangan evolusioner

Pengembangan evolusioner berdasarkan pada ide untuk mengembangkan implementasi awal, memperlihatkan kepada user untuk dikomentari, dan memperbaikinya versi demi versi sampai sistem yang memenuhi persyaratan diperoleh. Tidak ada kegiatan spesifikasi, pengembangan, dan validasi yang terpisah. Akan tetapi kegiatan-kegiatan tersebut dilakukan pada saat yang bersamaan dengan umpan balik yang cepat untuk masing-masing kegiatan.

Ada dua jenis pengembangan evolusioner:

a. Pengembangan eksploratori. Tujuan proses ini adalah bekerja dengan pelanggan untuk menyelidiki persyaratan mereka dan mengirimkan sistem akhir. Pengembangan dimulai dengan bagian-bagian sistem yang dipahami. Sistem berubah dengan adanya tambahan fitur-fitur baru sesuai usulan pelanggan.

b. Prototipe yang dapat dibuang (throw away). Tujuan pengembangan evolusioner adalah memahami persyaratan pelanggan dan dengan demikian mengembangkan definisi persyaratan yang lebih baik untuk sistem. Prototipe berkonsentrasi pada eksperimen, dengan persyaratan pelanggan yang tidak dipahami dengan baik.

Pendekatan evolusioner sering kali lebih efektif dari pendekatan air terjun dalam menghasilkan sistem yang memenuhi kebutuhan langsung pelanggan.

Keuntungan:

- Spesifikasi dapat dikembangkan secara inkremental. Sementara user mendapat pemahaman lebih baik dari masalah mereka, sistem perangkat lunak dapat merefleksikannya.

Masalah:

- Proses tidak bisa dilihat. Manajer memerlukan hasil regular untuk mengukur kemajuan. Jika sistem dikembangkan dengan cepat, tidaklah efektif dari segi biaya jika dihasilkan dokumen yang merefleksikan setiap versi

- Sistem seringkali memiliki struktur yang buruk. Perubahan yang terus-menerus cenderung merusak struktur perangkat lunak. Pernyesuaian perubahan perangkat lunak menjadi kian sulit dan mahal.

- Mungkin diperlukan alat bantu dan teknik khusus. Memungkinkan pengembangan yang cepat, tetapi mungkin tidak kompatibel dengan alat bantu atau teknik lain dan relatif hanya sedikit orang yang memiliki keahlian memakainya.

Untuk aplikasi yang digunakan yaitu apikasi dengan spesifikasi :

- Sistem interaktif berukuran kecil atau tingkat medium

- Bagian dari sistem besar (misalnya user interface)

- Sistem dengan daur hidup pendek

(5)

3. Rekayasa persyaratan.

Merupakan proses melibatkan semua kegiatan yang dibutuhkan untuk membuat dan memelihara

dokumen persyaratan sistem.

Gambar : Proses Persyaratan Rekayasa

Tipe – tipe persyaratan antara lain sebagai berikut :

- Persyaratan User

Laporan dalam bahasa natural plus diagram layanan yang tersedia dan batasan

operasional. Ditulis oleh konsumen.

- Persyaratan Sistem

Dokumen terstruktur yang berisi deskripsi detail dari fungsi sistem, layanan dan batasan

operasional. Mendefinisikan apa yang harus dilaksanakan sehingga dapat menjadi bagian

dari kontrak antara konsumen dan developer.

Soal 4 - 7

Sebuah bengkel sepeda motor memberikan pelayanan pelanggan untuk melakukan servis,

termasuk pembelian spare part yang diperlukan. Sebelumnya bengkel tersebut melakukan

kegiatan tersebut dengan mencatat dalam buku kerja. Untuk memperbaiki pelayanan, maka

dikembangkan perangkat lunak untuk menangani servis, pembelian spare part dan pembayaran.

Kegiatan tersebut dilakukan oleh seorang karyawan administrasi dan memberikan laporan

(6)

• Mencatat kegiatan pendaftaran pelanggan baru.

• Menyimpan data layanan bengkel pada pelanggan berupa jenis servis dan pembelian spare part

• Penyimpan pembayaran dan mencetak kuitansi.

• Laporan yang diharapkan dari sistem berupa laporan jenis servis per bulan, spare part terjual per bulan dan laporan keuangan per-hari atau per-bulan.

4. kebutuhan fungsional dan non fungsional dari sistem

• Persyaratan Fungsional

• Analisis kebutuhan fungsional adalah analisis terhadap kebutuhan secara fungsional baik dalam aliran data ataupun informasi. Analisis kebutuhan fungsional digambarkan

dalam analisis terstruktur.

elemen apa saja yang berhubungan dengan sistem yang sedang berjalan. Analisis kebutuhan non

(7)

• Laporan Servis Per Hari

• Laporan Servis Per Bulan

• Laporan Penjualan Suku Cadang Per Bulan

• Laporan Keuangan Harian

• Laporan Keuangan Bulanan

b. Data Yang Sudah Ada • Data Karyawan

• Data Harga Suku Cadang

• Data Penjualan

• Data Servis Pelanggan

c. Data Yang Belum Tersedia • Data Pelanggan

• Data Suku Cadang

• Data Persediaan Suku Cadang

• Data Servis Sepeda Motor

• Data Pembelian Suku Cadang

• Data Jenis Kendaraan

• Data Kendaraan

• Data Detail Servis

d. Aturan Transaksi

Setiap pelanggan yang datang untuk servis maupun membeli spare parts akan didata oleh pegawai

bengkel dan data tersebut akan otomatis tersimpan dalam database.

 Pelanggan yang datang akan di kelompokkan berdasarkan jenis pelayanannya yaitu servis

motor, membeli spare parts dan Service + pembelian / penggantian sparepart.

 Yang dapat melakukan transaksi hanyalah seorang pegawai yang telah memiliki hak akses

untuk mengoperasikan sistem.

 Ketika pelayanan telah dilakukan maka karyawan bengkel akan membuatkan tagihan untuk

pelanggan berdasarkan pengeluaran dan juga apa saja yang telah diterima oleh pelanggan

kemudian tagihan tersebut akan dicetak berupa form kwitansi yang nantinya akan diberikan

(8)

 Setiap transaksi yang dilakukan akan secara otomatis tersimpan pada database dan database

tersebut akan memberikan laporan berdasarkan keinginan user sistem tersebut.

 Setiap hari sistem akan memberikan laporan yang nantinya akan diberika oleh admin.

(9)

7. Spesifikasi data dan spesifikasi aplikasi

a. Form Pelanggan : Untuk melakukan pendataan pelanggan baru dan pengolahan data pelanggan lainnya.

b. Form Pegawai : Untuk melakukan inisialisasi bagi pegawai yang akan melakukan pengoprasian system di hari tersebut.

c. Form Transaksi : Untuk malakukan transaksi pelanggan dan memberikan laporan hasil transaksi seperti struk tagihan kepada pelanggan.

Gambar

Gambar : Proses Persyaratan Rekayasa

Referensi

Dokumen terkait

Disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan pengguna, menentukan spesifikasi dari kebutuhan pengguna,

Proses dimana kebutuhan pemakai diterjemahkan menjadi produk perangkat lunak melalui suatu rangkaian aktivitas tertentu sesuai model proses yang digunakan.. Kebutuhan pemakai

 Sebuah desain harus menuju struktur data yang tepat untuk class-class yang akan diimplementasi dan digambar dari pola data yang dikenal..  Sebuah desain harus

 Proses yang digunakan untuk rekayasa kebutuhan sangat bervariasi tergantung pada domain aplikasi, orang yang terlibat dan organisasi yang.

BNI ATM memiliki fitur yang sangat lengkap, lebih dari 110 fitur, yang meliputi layanan tarik tunai, transfer antar rekening dan antar bank, pembelian (tiket

Architectural design mendefinisikan relasi antara elemen-elemen struktural utama, pola desain yang digunakan untuk mencapai kebutuhan yang ditentukan untuk sistem dan

Analisis kebutuhan merupakan satu di antara banyak aktivitas kritis pada proses rekayasa kebutuhan perangkat lunak untuk memahami ranah permasalahan dari sistem

Benchmarking : Kegiatan mempelajari bagaimana organisasi lain melakukan proses bisnis, untuk menjadi rujukan bagi organisasi untuk dapat melakukan sesuatu yang lebih baik Elisitasi