Perancangan Web Pertemuan II LSM 2016
Prinsip-prinsip Rekayasa Perangkat Lunak (RPL) Pengembangan Perangkat lunak tanpa menggunkan prosedur atau tahapan pengembangan perangkat lunak, hal ini menyebabkan ditemuinya kendala-kendala dalam pengembangan perangkat lunak selanjutnya. Proses RPL dalam pengembangan perangkat lunak sering disebut dengan SDLC (Software/System Development Life Cycle)
Pengertian SDLC Adalah tahapan-tahapan pekerjaan yang dilakukan oleh analis sistem dan programmer dalam membangun sistem informasi. Menurut ahli : System Development Life Cycle (SDLC) adalah pendekatan bertahap untuk melakukan analisa dan membangun rancangan sistem dengan menggunakan siklus yang spesifik terhadap kegiatan pengguna (Kendall & Kendall, 2006). Berdasarkan pada penjelasan diatas maka SDLC dapat disimpulkan sebagai “sebuah siklus untuk membangun sistem dan memberikannya kepada pengguna melalui tahapan perencanaan, analisa, perancangan dan implementasi dengan cara memahami dan menyeleksi keadaan dan proses yang dilakukan pengguna untuk dapat mendukung kebutuhan pengguna”.
Membangun sistem Mendukung kebutuhan bisnis Merancang sistem Memberikannya kepada pengguna
Tahapan-tahapan pada sdlc Inisiasi Pengembangan Konsep Sistem Perencanaan Analisis Kebutuhan Desain Pengembangan Integrasi dan Pengujian Implementasi Operasi dan Pemeliharaan Disposisi
Manfaat dari siklus hidup pengembangan system (sdlc) Meningkatkan proses Mengurangi kesalahan saat pengkodean Serangan berkurang Fitur-fitur yang tidak digunakan dinonaktifkan secara default Meminimumkan penggunaan hak. Melindungi, membentengi, mendeteksi, menyimpan, dan mengatur Terdapat diagram yang menunjukkan manfaat substansial dari tahap desain yang mana dapat digunakan untuk merancang seluruh tampilan dan mendokumentasikannya.
Kelebihan dan kekurangan sdlc Menyediakan tahapan yang dapat digunakan sebagai pedoman mengembangkan system Akan memberikan hasil sistem yang lebih baik karena sistem dianalisis dan dirancang secara keseluruhan sebelum diimplementasikan Kekurangan : Hasil dari SDLC tergantung pada hasil analisis, sehingga jika terdapat kesalahan di tahap analisis akan terbawa terus ke hasil sistem yang kurang memuaskan Dibutuhkan biaya yang lebih besar jika dibandingkan metode yang lainnya Dibutuhkan waktu yang lama untuk mengembangkannya karena sebuah sistem harus dikembangkan sampai selesai terlebih dahulu
Teknik /Model pada sdlc Waterfall Prototipe (Rapid Application Development) RAD Iteratif Spiral
Waterfall(Sommerville) Gambar I sumber : https://www.google.co.id/url?sa=i&rct=j&q=&esrc=s&source=imgres&cd=&cad=rja&uact=8&ved=0ahUKEwjFn7C_0aLPAhUDKpQKHRD5CuUQjB0IBg&url=http%3A%2F%2Fcisenaextreme99.blogspot.com%2F2013%2F06%2Fmetode-waterfall-menurut-pressman.html&psig=AFQjCNFwRdHo3rszdunPPWMwQMoaGmpolA&ust=1474622087547674
Model ini merupakan model SDLC yang paling sederhana Model ini merupakan model SDLC yang paling sederhana. Cocok untuk pengembangan perangkat lunak dengan spesifikasi yang tidak berubah-ubah model yang paling pertama dipublikasikan. Model ini berasal dari proses sistem engineering yang lebih umum. Sesuai gambar 1, karena proses dari tahap satu ke tahap selanjutnya mengalir kebawah, model ini dikenal sebagai waterfall model atau siklus hidup software (Sommerville 2007:66).
Prototipe Sumber : Menurut Pressman
Metode prototipe dimulai dari tahap komunikasi Metode prototipe dimulai dari tahap komunikasi. Tim pengembang perangkat lunak melakukan pertemuan dengan para stakeholder untuk menentukan kebutuhan perangkat lunak yang saat itu diketahui dan untuk menggambarkan area-area dimana definisi lebih jauh untuk iterasi selanjutnya. Perencanaan iterasi pembuatan prototipe dilakukan secara cepat. Setelah itu dilakukan pemodelan dalam bentuk “rancangan cepat”.
Pembuatan rancangan cepat berdasarkan pada representasi aspek-aspek perangkat lunak yang akan terlihat oleh para end user (misalnya rancangan antarmuka pengguna atau format tampilan). Rancangan cepat merupakan dasar untuk memulai konstruksi pembuatan prototipe. Prototipe kemudian diserahkan kepada para stakeholder untuk mengevaluasi prototype yang telah dibuat sebelumnya dan memberikan umpan-balik yang akan digunakan untuk memperbaiki spesifikasi kebutuhan. Iterasi terjadi saat pengembang melakukan perbaikan terhadap prototipe tersebut.
RAD Sumber : istqbexamcertification.com
Model RAD cocok digunakan pengembangan perangkat lunak yang bersifat inkremental (berkembang sedikit demi sedikit secara teratur) terutama untuk waktu pengerjaan yang pendek.
Iteratif
Spiral www.testingexcellence.com
Model Spiral cocok digunakan untuk pengembangan aplikasi dengan skala besar tetapi target waktu dan biaya tidak terlalu mengikat.
Rekayasa Web Adalah sebuah kegiatan yang dilakukan untuk membuat/menciptakan aplikasi berbasis web yang berkualitas baik. Dalam prosesnya rekayasa web mengadaptasi rekayasa perangkat lunak yang berorientasi kepada aktifitas teknis dan manajemen, yang tidak utuh tapi dengan perubahan dan penyesuaian. Rekayasa web merupakan gabungan antara web publishing (suatu konsep yang berasal dari printed publishing) dan aktifitas rekayasa perangkat lunak. Dikatakan demikian karena desain sebuah aplikasi web menekankan pada desain grafis, desain informasi, teori hypertext, desain sistem dan pemrograman.
Rekayasa Web (Lanjutan) Rekayasa Web adalah sebuah aplikasi yang menggunakan pendekatan sistematis, disiplin, dan terukur untuk pengembangan, operasi dan pemeliharaan aplikasi berbasis Web (Web-Based Applications). Rekayasa Web adalah subdisiplin dari rekayasa perangkat lunak yang membantu menyediakan metodologi untuk merancang, mengembangkan, memelihara, dan melibatkan aplikasi Web. Powel (1998) mengatakan bahwa sistem berbasis Web “melibatkan campuran antara print publishing (penerbitan cetakan) dan pengembangan perangkat lunak, antara pemasaran dan komputasi, antara komunikasi internal dan relasi eksternal, dan antara seni dan teknologi”
Rekayasa Web(Lanjutan) ilmu yang Multidisipliner
REKAYASA WEB DAN REKAYASA PERANGKAT LUNAK Meskipun rekayasa Web melibatkan pemrograman dan pengembangan perangkat lunak serta mengadopsi beberapa prinsip-prinsip RPL, pengembangan sistem berbasis Web dan rekayasa Web berbeda dengan pengembangan perangkat lunak dan rekayasa perangkat lunak. Sistem berbasis Web : Kebanyakan sistem berbasis Web (paling tidak saat ini) adalah halaman Web statis dan dinamis. Sistem berbasis Web akan berlanjut untuk dipusatkan pada “look and feel” yang menekankan pada penyajian dan kreativitas visual mengenai antarmuka frond-end dengan seorang pengguna yang dapat saling berhubungan.
REKAYASA WEB DAN REKAYASA PERANGKAT LUNAK (Lanjut Yuk) Sistem berbasis Web akan berlanjut ke pengembangan content-driven. Artinya pengembangan sistem berbasis Web akan meliputi pengembangan dari konten yang disajikan. Web menerangkan ikatan yang lebih besar antara seni dan ilmu daripada yang dialami di dalam pengembangan perangkat lunak. Kebanyakan sistem berbasis web dikembangkan dalam waktu yang sangat singkat sehingga sulit untuk membuat dan menerapkannya pada tingkat yang sama dengan perencanaan dan pengujian seperti yang digunakan dalam pengembangan perangkat lunak.
KEAHLIAN BIDANG REKAYASA WEB Faktor kesuksesan proyek rekayasa Web merupakan tingkat keahlian yang dibutuhkan dari seorang perekayasa Web untuk menguasai proses pengembangan. Menurut Seffah dan Grogono (2002), ada tiga kelompok keahlian yang dibutuhkan oleh seorang perekayasa perangkat lunak (software engineer). Oleh karena itu seorang perekayasa Web juga diharapkan memiliki ketiga kelompok keahlian berikut :
1.Keahlian prasyarat Pemrograman dan pemodelan berorientasi dengan UML dan Java, atau dengan bahasa yang serupa. Pengembangan basis data dengan JDBC, MySQL, dan Java Servlets, atau dengan bahasa yang serupa. Pemrograman Web dengan HTML, JavaScript, CGI Script, dan PHP, atau dengan bahasa yang serupa. Penyebaran dari tool authoring khusus dengan editor Web, seperti FrontPage dan Macromedia Dreamweaver untuk desain dan implementasi aplikasi berbasis Web.
2.Keahlian spesifik Pemahaman rekayasa Web sebagai bidang multidisipliner yang menggabungkan teknik, rekayasa, sosial, politik, pemasaran, legalitas, etika, budaya, estetika, dan isu pedadogis. Pengembangan filosofis pengembangan rekayasa Web. Pemahaman cakupan sistem dan konteks dari aplikasi rekayasa Web. Pemodelan analisis : pemahaman kebutuhan masalah, penetapan kebutuhan pengguna yang menggunakan use case dan scenario, penetapan kebutuhan data menggunakan elas dan teknik-teknik pemodelan analisis lainnya, dan atribut kualitas umum untuk aplikasi berbasis Web.
2. Keahlian spesifik (Masih ada Lagi....) Desain Web (desain situs menggunakan linear, grid, hierarki, dan struktur), Web jaringan, desain halaman, desain antar muka, desain navigasi, desain visual, desain tipografi, style editorial layar, warna, dan multimedia. Pengembangan prototipe (prototyping), tambahan (incremental), evolusioner, dan iteratif, pengodean program, pengujian integrasi, dan unit, pengevaluasian dan perbaikan (debugging) pengembangan solusi kode, dan pemeriksanaan konsistensi. Rekayasa dan pengujian usabilitas, interaksi manusia-komputer, kriteria usabilitas yang berkaitan dengan kepuasan pengguna (kemudahan penggunaan, kemudahan pembelajaran, dan konsistensi)
3.Keahlian umum Manajemen dan perencanaan proyek. Penggunaan kembali prinsip-prinsip desain, frameworks, arsitektur, dan toolkit (class libraries), memodifikasi dan menggunakan kembali analisis yang ada (desain dan solusi kode program dan pola), perbandingan (mengenali persamaan dan perbedaan antara permasalah baru dan solusi sebelumnya). Keahlian menulis dan membaca : mempunyai kemampuan menulis dan teknik mengatur laporan dan dokumentasi, mampu membaca teks dan dokumen. Dialog komunikasi dengan stakeholder. Bekerja di dalam tim dengan pengembang, desainer sistem, pemrogram, pengguna akhir dan klien.
AKTIVITAS REKAYASA WEB Rekayasa Web bukanlah tugas atau aktivitas tunggal. Rekayasa Web merupakan aktiftas yang melibatkan semua aspek-aspek dari pengembangan sistem berbasis Web, mulai dari konsep dan pengembangan untuk implementasi, evaluasi, kinerja, dan pemeliharaan yang berkesinambungan. Rekayasa Web menyajikan suatu pendekatan yang proaktif untuk penciptaan aplikasi Web. Sekarang ini banyak pengembang Web mengadopsi prinsip-prinsip rekayasa Web secara khusus.
Prinsip-prinsip rekayasa Web Analisis dan spesifikasi kebutuhan Teknik-teknik dan metodologi pengembangan sistem berbasis Web Integrasi dengan sistem warisan Migrasi dari sistem warisan ke lingkungan Web Pengembangan aplikasi waktu nyata berbasis Web Pengujian, verifikasi, dan validasi Penilaian kualitas, kontrol, dan jaminan Konfigurasi dan manajemen proyek Matriks web untuk estimasi usaha pengembangan Evaluasi dan spesifikasi kinerja
Masih Tentang Prinsip-prinsip rekayasa Web Pembaruan (update) dan pemeliharaan Manajemen staf, tim, dan model pengembangan Manusia dan aspek-aspek budaya Pengembangan user-centric, pemodelan pengguna, dan umpan balik serta keterlibatan pengguna Pengembangan aplikasi pengguna akhir Pendidikan dan pelatihan
KATEGORI APLIKASI WEB Pembaruan (update) dan pemeliharaan Manajemen staf, tim, dan model pengembangan Manusia dan aspek-aspek budaya Pengembangan user-centric, pemodelan pengguna, dan umpan balik serta keterlibatan pengguna Pengembangan aplikasi pengguna akhir Pendidikan dan pelatihan
Kategori Aplikasi Web
Review Materi Pertemuan 2(1) Yang bukan merupakan tahapan-tahapan pada System Development Life Cycle (SDLC) adalah . . . a. Implementation b. Requirement Analysis c. Web Engineering d. Integration and Test e. Operations and Maintenance
Review Materi Pertemuan Esai Mengapa kita perlu melakukan rekayasa web dalam pembangunan sebuah web, dan mengapa harus menggunakan model SDLC. Jelaskan !
Review Materi Pertemuan 2(2) Model System Development Life Cycle (SDLC) yang cocok untuk pengembangan perangkat lunak dengan spesifikasi yang tidak berubah-ubah adalah . . . . Iteratif Spiral Rapid Application Development (RAD) d. Waterfall e. Prototype
Review Materi Pertemuan 2(3) Subdisiplin dari rekayasa perangkat lunak yang membantu menyediakan metodologi untuk merancang, mengembangkan, memelihara, dan melibatkan aplikasi Web disebut . . . a. Perancangan Web b. Rekayasa Web c. Rekayasa Perangkat Lunak d. SDLC e. Web Design
Review Materi Pertemuan 2(4) Rekayasa Web adalah multidisipliner. Yang bukan disiplin ilmu dari Rekayasa Web adalah . . . a. Interaksi Manusia-Komputer b. Pemodelan dan simulasi c. Aljabar Linier d. Rekayasa Perangkat Lunak e. Hiperteks
Review Materi Pertemuan 2(5) Belanja elektronik, pemesanan barang dan layanan, dan perbankan on-line, merupakan contoh kategori web . . . a. Transaksional b. Interaktif c. Marketplaces d. Web portal e. Workflow