Sunday, April 21, 2019

TUGAS UTS REKAYASA PERANGKAT LUNAK

Nama : Ardian Pratama
NIM   : 1117101487
Kls     : SP 4.2


SOAL ::

1. Jelaskan dan Sebutkan Tahap umum dalam Pengembangan Perangkat Lunak (Software  Development Stages) (Score 20)

2.  Pengertian perangkat lunak merupakan suatu instruksi (program komputer) yang ketika dijalankan menyediakan fungsi dan tampilan yang diinginkan, struktur data yang memberi kesempatan program untuk memanipulasi informasi dan dokumen yang mendiskripsikan operasi dan penggunaan program.
a. Bagaimana karakteristik perangkat lunak ? (Score 10)
b. Sebutkan dan jelaskan Software Enginering Layer! (Score 10)

3. Andaikan anda terpilih menjadi seorang manajer proyek pada sebuah perusahaan yang akan    mengembangkan aplikasi game edukasi di mana tugas anda adalah membuat game baru yang sebelumnya belum ada dan kebutuhan-kebutuhan dalam membangun perangkat lunak juga belum disiapkan. Model process apa yang akan saya gunakan dalam melakukan pengembangan perangkat lunak dan jelaskan alasannya! Serta Buatlah rancangan context diagram, dekomposisi diagram, dan DFD level 0 dan 1 ! (Score 60)



JAWAB :
Metode dan Tahapan Pengembangan Perangkat Lunak, adapun berbagai jenis pengembangan perangkat lunak yaitu


1.    Model Sekuensial Linier / Waterfall Method

Model Sekuensial Linier sering disebut Model Air Terjun merupakan paradigma rekayasa perangkat lunak yang 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 analisis, desain , kode, pengujian, dan pemeliharaan.

1.a Gambar Pengembangan Waterfall
Rekayasa dan Pemodelan Sistem/Informasi
Karena perangkat lunak merupakan bagian dari suatu sistem maka langkah pertama dimulai dengan membangun syarat semua elemen sistem dan mengalokasikan ke perangkat lunak dengan memeperhatikan hubungannya dengan manusia, perangkat keras dan database.
·         Analisis Kebutuhan Perangkat Lunak
Proses menganalisis dan pengumpulan kebutuhan sistem yang sesuai dengan domain informasi tingkah laku, unjuk kerja, dan antar muka (interface) yang diperlukan. Kebutuhan-kebutuhan tersebut didokumentasikan dan dilihat lagi dengan pelanggan.
·         Desain
Proses desain akan menerjemahkan syarat kebutuhan ke sebuah perancangan perangkat lunak yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada : struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) prosedural.
·         Pengkodeaan (Coding)
Pengkodean merupakan prses menerjemahkan desain ke dalam suatu bahasa yang bisa dimengerti oleh komputer.
·         Pengujian.
Proses pengujian dilakukan pada logika internal untuk memastikan semua pernyataan sudah diuji. Pengujian eksternal fungsional untuk menemukan kesalahan-kesalahan dan memastikan bahwa input akan memberikan hasil yang aktual sesuai yang dibutuhkan
·         Pemeliharaan
Perangkat lunak yang sudah disampaikan kepada pelanggan pasti akan mengalami perubahan. Perubahan tersebut bisa karena mengalami kesalahan karena perangkat lunak harus menyesuaikan dengan lingkungan (periperal atau sistem operasi baru) baru, atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja.

2. Model Prototipe

Sebuah prototipe adalah bagian dari produk yang mengekspresikan logika maupun fisik antarmuka eksternal yang ditampilkan. Konsumen potensial menggunakan prototipe dan menyediakan masukan untuk tim pengembang sebelum pengembangan skal besar dimulai. Melihat dan mempercayai menjadi hal yang diharapkan untuk dicapai dalam prototipe. Dengan menggunakan pendekatan ini, konsumen dan tim pengembang dapat mengklarifikasi kebutuhan dan interpretasi mereka.
Tahapan-tahapan Prototyping
Tahapan-tahapan dalam Prototyping adalah sebagai berikut:
1.      Pengumpulan kebutuhan
Pelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.
2.      Membangun prototyping
Membangun prototyping dengan membuat perancangan sementara yang berfokus pada penyajian kepada pelanggan (misalnya dengan membuat input dan format output).
3.      Evaluasi protoptyping
Evaluasi ini dilakukan oleh pelanggan apakah prototyping yang sudah dibangun sudah sesuai dengan keinginann pelanggan. Jika sudah sesuai maka langkah 4 akan diambil. Jika tidak prototyping direvisi dengan mengulang langkah 1, 2 , dan 3.
4.      Mengkodekan sistem
Dalam tahap ini prototyping yang sudah di sepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai.
5.      Menguji sistem
Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus dites dahulu sebelum digunakan. Pengujian ini dilakukan dengan White Box, Black Box, Basis Path, pengujian arsitektur dan lain-lain.
6.      Evaluasi Sistem
Pihak akan  mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan . Jika ya, langkah 7 dilakukan; jika tidak, ulangi langkah 4 dan
7.      Menggunakan sistem
Perangkat lunak yang telah diuji dan diterima pelanggan siap untuk digunakan.

3.    Model 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.
Tahapan-tahapan dalam RAD :

1.      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 ?

2.      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.

3.      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.

4.      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.

5.      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.b Gambar Pengembangan Model RAD

4.    Model Spiral

Model spiral pada awalnya diusulkan oleh Boehm, adalah model proses perangkat lunak evolusioner yang merangkai sifat iteratif dari prototype dengan cara kontrol dan aspek sistematis model sequensial linier. Model iteratif ditandai dengan tingkah laku yang memungkinkan pengembang mengembangkan versi perangkat lunak yang lebih lengkap secara bertahap. Perangkat lunak dikembangkan dalam deretan pertambahan. Selama awal iterasi, rilis inkremantal bisa berupa model/prototype kertas, kemudian sedikit demi sedikit dihasilkan versi sistem yang lebih lengkap.
Tahapan-Tahapan Model Spiral

Model spiral dibagi menjadi enam wilayah tugas yaitu:

·         Komunikasi pelanggan
Yaitu tugas-tugas untuk membangun komunikasi antara pelanggan dan  kebutuhan – kebutuhan yang diinginkan oleh pelanggan
·         Perencanaan
Yaitu tugas-tugas untuk mendefinisikan sumber daya, ketepatan waktu, dan proyek informasi lain yg berhubungan.
·         Analisis Resiko
Yaitu tugas-tugas yang dibutuhkan untuk menaksir resikomanajemen dan teknis.
·         Perekayasaan
Yaitu tugas yang dibutuhkan untuk membangun satu atau lebih representasi dari apikasi tersebut.
·         Konstruksi dan peluncuran
Yaitu tugas-tugas yang dibutuhkan untuk mengkonstruksi, menguji, memasang , dan memberi pelayanan kepada pemakai.
·         Evaluasi Pelanggan
Yaitu tugas-tugas untuk mendapatkan umpan balik dari pelanggan.
1.c Gambar Proses Pengembangan Spiral

2. a.  Menurut Pressman (2001), ada beberapa karakteristik perangkat lunak dibandingkan dengan perangkat keras yang perlu diketahui, yaitu:
Perangkat lunak itu dibangun atau direkayasa, tidak dihasilkan dengan menggunakan mesin/tangan seperti perangkat keras.
Perangkat lunak itu tidak akan usang atau lusuh sejalan dengan waktu.
Perangkat lunak akan terus menerus dibuat menurut pesanan, sadangkan perangkat keras akan disusun dengan menggunakan komponen.

2. b. Software Engineenering Layer dibagi menjadi empat, yaitu :

1.       Berpusat pada kualitas (A Quality Focus)
Berpusat pada kualitas diibaratkan batu yang menopang lapisan-lapisan lain (tools, methods, dan process) pada rekayasa peranti lunak.

2.       Proses (Process)
Proses merupakan fondasi dasar dari rekayasa perangkat lunak, yang berperan sebagai perekat lapisan-lapisan teknologi dan memungkinkan pengembangan perangkat lunak komputer secara rasional dan tepat waktu. Proses ini mendefinisikan framework yang harus ditetapkan agar penyampaian (delivery) teknologi perangkat lunak berjalan dengan efektif.

3.       Metode-metode (Methods)
Lapisan ini menerangkan secara teknis mengenai bagaimana cara membangun perangkat lunak. Metode ini meliputi tahapan yang mencakup komunikasi (communication), analisis kebutuhan (requrements analysis), desain model (design modelling), pembuatan program (program construction), pengujian (testing), dan pendukung (support).Metode rekayasa perangkat lunak bergantung pada prinsip-prinsip dasar yang mengatur setiap area teknologi termasuk kegiatan pemodelan dan teknik deskriptif lainnya.

4.       Alat (Tools)
Alat dalam rekayasa perangkat lunak berfungsi menyediakan dukungan baik secara otomatis maupun semi-otomatis untuk proses dan metode-metode. Ketika alat-alat tersebut diintegrasikan sehingga informasi yang di hasilkan oleh suatu alat bisa digunakan oleh alat lainnya, sistem yang digunakan untuk membantu pengembangan perangkat lunak disebut CASE (computer-aided software engineering). Case mampu menggabungkan perangkat lunak, perangkat keras, dan basis data untuk membangun suatu lingkungan yang sejalan CAD/CAE (computer-aided design/engineering).


2.1 Gambar Software Engineering layers

3. Pada Model proses, penulis menggunakan pengembangan proses waterfall hal ini dikarenakan metode pengembangan waterfall pada prosesnya terstruktur dengan baik, mulai dari proses analisa terlebih dahulu terhadap berbagai kebutuhan penggunaan aplikasi game hingga pemeliharaan software secara berkala agar pihak pengguna aplikasi game merasa nyaman tanpa adanya bug atau error pada aplikasi tersebut.

Gambar diagram

a. Gambar context diagram

b. Dekomposisi diagram

c. DFD level 0

d. DFD level 1






No comments:

Post a Comment

TUGAS UTS REKAYASA PERANGKAT LUNAK

Nama : Ardian Pratama NIM   : 1117101487 Kls     : SP 4.2 SOAL : : 1.  Jelaskan dan Sebutkan Tahap umum dalam Pengembangan Perangkat ...