Labels

Tampilkan postingan dengan label Rekayasa Perangkat Lunak. Tampilkan semua postingan
Tampilkan postingan dengan label Rekayasa Perangkat Lunak. Tampilkan semua postingan

Minggu, 09 Februari 2014

Pengembangan Perangkat Lunak

Kali ini saya ingin menulis mengenai pengembangan perangkat lunak.
Perangkat lunak itu apa???
Perangkat lunak itu adalah software yang digunakan untuk membantu kita dalam menyelesaikan tugas kita.
Untuk bisa membuat sebuah software kita harus memiliki data sebanyak-banyaknya. Ini akan membantu kita dalam menganalisis data yang nantinya akan dikembangkan menjadi software. Jika sudah memiliki data yang cukup, maka akan mudah membuat alur model bisnisnya.
Membuat model bisnis itu tidak mudah, karena tidak semua alur kegiatan kerja dapat dikatakan sebagai model bisnis. Alur kegiatan kerja berasal dari entitas-entitas yang ada dalam data, yang kemudian menjelaskan hubungan antar entitas tersebut. Adanya proses input, output, dan goal pada entitas lebih memudahkan kita untuk mengerjakan tahap selanjutnya.
Karena tahap selanjutnya itu penggambaran ERD(Entity Relationship Diagram).
Menggambar ERD itu mudah, namun terkadang kita hanya bingung dengan data yang ada. Mengapa saya bilang menggambar ERD itu mudah..., karena hanya memakai beberapa simbol, yaitu:


Ketiga simbol di atas adalah simbol yang paling sering digunakan untuk menggambar ERD. Persegi panjang untuk menunjukkan entitas, oval untuk menunjukkan artribut, Belah ketupat untuk menunjukkan relasi.
Penggambaran ERD ini untuk memudahkan penjelasan dari model bisnis.
Model fungsi ini agak ribet karena setiap entitas memiliki input, proses, output. Entitas bisa menjadi sebuah inputan, dan entitas juga bisa menjadi sebuah output.

Tahap selanjutnya......
Pembuatan DFD(Data Flow Diagram)
Untuk pembuatan DFD ini merupakan lanjutan dari model fungsi diatas. Pembuatan DFD dimulai dari function partitioning, DFD level 0, DFD level 1, DFD level 2, dst. Dimana setiap proses yang ada itu berurutan.
DFD level 0 sampai DFD level 2 atau seterusnya(tergantung function partitioning berhenti di level berapa), hanya menggambarkan kembali model fungsi yang telah dibuat. Tetapi pastikan apa yang ad di model fungsi harus tetap sama dengan penggambaran di DFD level dan jumlah yang diinput harus sama dengan jumlah yang dioutput. Data yang dihasilkan harus disimpan di data store.
Tahap selanjutnya......
Pembuatan Behavior Model
Pada model behavior ini, dimana proses yang sudah ada sebelumnya dibuat menjadi lebih spesifik. Untuk membuat proses terlihat lebih spesifik, maka kamu bisa menggambarkannya dalam bentuk flowchart yang didalamnya terdapat input, proses, dan output.
Tahap terakhir yaitu User Interface Design
Jika kamu bisa menyelesaikan tahapan-tahapan diatas maka kamu sudah hampir membuat sebuah software. Karena kamu tinggal mengimplementasikan ke dalam suatu program atau memberikan ke programer. Jika pengerjaan tersebut dilakukan dengan benar dan jelas maka tidak akan susah untuk membuat programnya.
Tapi perlu di ingat untuk membuat tampilan programnya juga. Seperti tampilan untuk menginput data, dimana tampilannya mudah dimengerti oleh user dan tampilan output yang di hasilkan bisa berupa juga laporan. Tampilan input haruslah memudahkan user dalam menginput data jangan sampai membuat user harus mengingat semua data yang telah diinput. Sedangkan untuk tampilan output harus pula dibuat semudah mungkin agar user bisa memahami outputnya.
Dibuat pula interaksi antara user dengan komputer seperti konfirmasi ulang penginputan data, konfirmsi sebelum menghapus data. Tampilan program yang dibuat harus konsisten karena lebih memudahkan user dalam mengoperasikannya.
Sekian yang dapat saya sampaikan...
Semoga ini dapat bermanfaat bagi kalian yaa...^_^


Refleksi Rekayasa Perangkat Lunak

Rekayasa Perangkat Lunak...
Awalnya, saya merasa kalau mata kuliah ini sangat sulit untuk dimengerti.
Namun, setelah mengikuti selama satu semester ini saya mulai memahami beberapa langkah-langkah yang penting dalam membuat suatu model. Untuk mengerjakan suatu model diperlukan data-data yang lengkap. Data-data itulah yang bisa membantu kita untuk mengerjakan langkah selanjutnya. Data kemudian di analisis dan dibuat dalam suatu proses. Proses itu yang nantinya akan terus dikembangkan sampai menjadi sebuah hasil yang bisa dimengerti dalam pembuatan programnya.
Hal inilah yang membuat proses pengerjaan datanya pun tidak boleh dikerjakan secara asal-asalan apalagi kalau sampai mengarang. Pengerjaan ini selalu berurutan jadi jika dimana awalannya sudah salah maka yang lain akan salah. Jika dikerjakan dengan baik dan bisa dimengerti (sewaktu pembuatan program) maka itu akan memudahkan kita dalam menyelesaikan program. Pembuatan program juga harus memperhatikan tampilan yang akan muncul di hadapan user. Kita harus memperhatikan interaksi yang terjadi antara user dengan komputer.
Proses belajar mengajar yang diterapkan juga menyenangkan karena dibuat dalam sebuah kelompok dimana kita dapat saling membantu(teman yang mengerti membantu teman kelompok yang belum mengerti). Beberapa tugas dikerjakan secara berkelompok, hasil tugas itu di pajang di dalam kelas dan dibuat seperti pameran. Hanya satu orang yang menjelaskan hasil kerja kelompok, dan beberapa anggota lain mengunjungi tempat yang berbeda. Ini dapat membuat kita lebih aktif dalam bertanya.

Materi yang diberikan oleh dosen juga dapat dipahami karena cara penyampaiannya sesuai dengan kehidupan sehari-hari dan adanya contoh-contoh di dalamnya. Dan lebih senangnya lagi final ditiadakan, kita hanya diberikan tugas. Tapi menurut saya itu memiliki keuntungan dan kerugian masing-masing, tergantung bagaimana kita menyikapinya.

Jumat, 08 November 2013

Refleksi: Rekayasa Perangkat Lunak

Kali ini saya akan membahas mengenai pelajaran rekayasa perangkat lunak... 
Pertama kali saya mengikuti pelajaran ini, saya merasa takut karena saya sama sekali tidak mengerti mengenai perangkat lunak. Pertama kali yang saya pikir tentang perangkat lunak yaitu sesuatu yang akan sangat rumit jika dikerjakan. Seperti rumitnya algoritma dan banyaknya alat yang digunakan untuk merakit sebuah perangkat lunak.  Tetapi waktu hari pertama mengikuti pelajaran ini saya merasa bisa mengikutinya dengan baik. Karena dosen yang mengajarkan pelajaran ini, yaitu pak sofyan menjelaskan tentang perangkat lunak yang tidak terlalu rumit seperti yang saya banyangkan. Karena untuk membuat sebuah perangkat lunak memiliki tahapan-tahapan dan ada beberapa tahapan tersebut yang telah saya dapatkan sewaktu mengikuti pelajaran semester lalu.


Pak sofyan juga mengajarkan supaya mahasiswanya bisa menjadi kreatif dan mampu bekerja sama dengan yang lain. Dengan banyaknya tugas yang diberikan saya dituntut agar mampu menyelesaikan tugas tersebut sesuai dengan yang diinginkan dan tepat waktu.  Tugas yang diberikan itu membantu saya menganalisis sebuah masalah karena banyaknya informasi yang saya dapatkan sewaktu menyelesaikan tugas tersebut. Saya juga diajarkan agar mampu bekerja secara berkelompok. Karena walaupun saya bisa menyelesaikan sebuah tugas dengan baik tapi saya tidak mampu bekerja secara berkelompok, maka saya akan mendapat kesulitan jika berada dalam sebuah tim.

Minggu, 03 November 2013

Metode prototyping

Pada kesempatan kali ini, saya akan membahas mengenai metode prototyping mulai dari tahapan-tahapan sampai kelebihan dan kelemahan metode ini.
            Metode prototyping adalah proses pembuatan perangkat lunak yang sederhana. Dimana selama proses pembuatannya melibatkan user. Adanya interaksi antara user dengan pengembang selama pembuatan perangkat lunak dapat membantu pengembang dalam mendeskripsikan perangkat lunak yang dibutuhkan. Interaksi ini mendeskripsikan tujuan dari penggunaan perangkat lunak tersebut.
Metode prototyping ini memiliki tahapan-tahapan agar perangkat lunak dapat digunakan oleh user. Pertama-tama, user datang ke pengembang perangkat lunak dan mendeskripsikan perangkat lunak yang diinginkan, serta mengidentifikasi kebutuhan-kebutuhan yang dibutuhkan secara terperinci. Setelah perangkat lunak dideskripsikan maka pengembang perangkat lunak akan mulai memikirkan rancangan-rancangan yang akan dibuat. Rancangan itu berupa metode input dan metode outputnya, serta komponen-komponen yang lain.
            Evaluasi dilakukan oleh user setelah rancangan perangkat lunak sudah selesai. Dalam hal ini rancangan tersebut masih berupa sketsa. Jika user merasa perangkat lunak tersebut tidak sesuai dengan keinginannya, maka rancangan tersebut akan diulang dari awal. Jika rancangan tersebut sudah sesuai maka akan dilanjutkan ke tahap berikutnya. Rancangan  yang sudah dibuat kemudian dilanjutkan oleh pembuat perangkat lunak yang menterjemahkan ke dalam bahasa pemrograman sehingga menjadi perangkat lunak yang bisa digunakan. Perangkat lunak yang sudah selesai diterjemahkan diuji kembali sebelum digunakan. Pengujian dilakukan kembali oleh user untuk mengetahui apakah perangkat lunak tersebut sudah sesuai dengan keinginan. Jika belum sesuai, maka penerjemahan kembali dilakukan. Tetapi, jika sudah sesuai dengan keinginan user maka perangkat lunak siap untuk digunakan.

            Dengan menggunakan metode prototyping ini maka dapat membangun hubungan yang baik karena adanya komunikasi antara user dan pengembang perangkat lunak. User juga dapat berperan aktif dalam proses pembuatan perangkat lunak.  Pengembang juga bisa lebih cermat dalam merancang suatu perangkat lunak yang sesuai dengan kebutuhan user. Dengan begitu user dapat menerapkan dengan lebih mudah. Terkadang perangkat lunak yang sudah selesai dibuat tidak memiliki kualitas yang baik. Karena proses pengerjaan yang dilakukan mengikuti permintaan dari user yang menginginkan hasilnya selesai tepat waktu. Oleh karena itu, penyelesaian perangkat lunak biasanya menggunakan bahasa pemograman yang sederhana sehingga hasilnya menjadi perangkat lunak yang sederhana.

Perbedaan metode prototyping dengan metode spiral

Prototyping dan spiral???
           
           Kedua metode ini jelas sangat berbeda. Walaupun metode ini memiliki cara kerja yang hampir sama, namun masih bisa ditemukan perbedaan diantara keduanya.

            Perbedaan tersebut sangat jelas terlihat pada proses kerjanya. Pada metode spiral, proses pengerjaan yang dilakukan berdasarkan pembagian tugas yang dikerjakan secara berkelompok dan menggunakan prototype. Penjelasan yang diberikan user mengenai kebutuhan perangkat lunak yang diinginkan kemudian dibagi menjadi beberapa tahapan berdasarkan tugas masing-masing kelompok. Pembagian tahapan yang dilakukan tidak bisa sembarangan sebab dapat menganggu proses tahapan yang lain. Jadi, sewaktu membagi tahapan-tahapannya dibutuhkan banyak pertimbangan. Kemudian perangkat lunak mulai dikerjakan dan diselesaikan supaya user mencoba perangkat lunak yang telah dibuat. Metode ini juga lebih cocok digunakan untuk pembuatan perangkat lunak yang kompleks.

Sedangkan pada metode prototyping, proses pengerjaan yang dilakukan hanya bergantung pada satu orang saja yaitu pada pembuat perangkat lunak. Dengan adanya penjelasan kebutuhan yang diinginkan user, maka pembuat perangkat lunak mudah untuk membuat perangkat lunak itu. Proses yang terjadi dapat terus berulang jika perangkat lunak yang sudah selesai dibuat tidak sesuai dengan keinginan user. Proses ini bisa berhenti berulang apabila terjadi kesepakatan antara user dengan pembuat perangkat lunak.

            Perbedaan terlihat juga pada interaksi antara pengembang perangkat lunak dengan user. Pada metode spiral, hubungan interaksi yang terjadi antara pengembang dengan user sedikit sulit. Hal ini dikarenakan user kurang percaya pada hasil yang ditunjukkan pengembang. Karena pengembang hanya memperlihatkan hasilnya saat perangkat lunak itu sudah selesai. Sedangkan pada metode prototyping hubungan interaksi yang terjadi antara user dengan pengembang berjalan dengan baik. Sewaktu pengembang selesai membuat rancangan perangkat lunak maka si pengembang akan memperlihatkan ke user, sehingga user dapat mengemukakan pendapatnya selama proses pembuatan perangkat lunak. Jadi, user merasa puas dengan hasil yang ditunjukkan oleh pengembang.


            Dari kedua perbedaan di atas kita sudah dapat melihat walaupun didalam metode spiral menggunakan prototype tapi metode spiral berbeda dengan metode prototyping.