Tugas UTS Matakuliah RPL



Soal !

1. Jelaskan dan Sebutkan Tahap umum dalam Pengembangan Perangkat Lunak (Software  Development Stages) !
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 ?
          b. Sebutkan dan jelaskan Software Enginering Layer!
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 ! 

     Jawab !

     1. A. Waterfall

Requirement Analysis : Tahap ini pengembang sistem diperlukan komunikasi yang bertujuan untuk memahami perangkat lunak yang diharapkan oleh pengguna dan batasan perangkat lunak tersebut. Informasi ini biasanya dapat diperoleh melalui wawancara, diskusi atau survei langsung. Informasi dianalisis untuk mendapatkan data yang dibutuhkan oleh pengguna.
Design System: Spesifikasi kebutuhan dari tahap sebelumnya akan dipelajari dalam fase ini dan desain sistem disiapkan. Desain Sistem membantu dalam menentukan perangkat keras(hardware) dan sistem persyaratan dan juga membantu dalam mendefinisikan arsitektur sistem secara keseluruhan.
- Implementation  : Pada tahap ini, sistem pertama kali dikembangkan di program kecil yang disebut unit, yang terintegrasi dalam tahap selanjutnya. Setiap unit dikembangkan dan diuji untuk fungsionalitas yang disebut sebagai unit testing.
- Integration & Testing : Seluruh unit yang dikembangkan dalam tahap implementasi diintegrasikan ke dalam sistem setelah pengujian yang dilakukan masing-masing unit. Setelah integrasi seluruh sistem diuji untuk mengecek  setiap kegagalan maupun kesalahan.
- Maintenance : Perangkat lunak yang  sudah  jadi,  dijalankan  serta dilakukan  pemeliharaan. Pemeliharaan termasuk dalam memperbaiki  kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru.
        B.  Prototype
- Pengumpulan kebutuhan : pelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhah, dan garis besar sistem yang akan dibuat.
- Membangun Prototype : membangun prototype dengan membuat perancangan sementara yang berfokus penyajian kepada pelanggan(contoh membuat input dan format output).
- Evaluasi Prototyping : apakah prototyping yang dibuat / dibangun, sudah sesuai dengan keinginan dan kebutuhan pelanggan atau belum. Jika tidak sesuai, prototyping akan direvisi dengan mengulangi langkah-langkah sebelumnya. Tapi jika sudah sesuai, maka langkah selanjutnya akan dilaksanakan.
- Mengkodekan System : Di tahap ini prototyping yang sudah disepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai.
- Menguji system : Setelah sistem sudah menjadi suatu software yang siap pakai, maka software harus di tes dahulu sebelum digunakan. Tujuannya untuk meminimalisirkan kesalahan software tersebut. Pengujian dilakukan dengan Black Box, White box, Pengujian arsitektur, Basis path dan lain-lain.
- Evaluasi Sistem : pelanggan / klien mengevaluasi sistem yang sudah dibuat sudah sesuai yang diinginkan. Jika tidak, maka pengembang akan mengulangi langkah ke 4 dan 5. Tapi jika iya, maka langkah ke 7 akan dilakukan.
- Menggunakan system : Prangkat Lunak / Software yang telah diuji dan diterima klien / pelanggan siap digunakan.
        C. RAD (Rapid Application Development)
- Business Modelling : Aliran informasi (information flow) pada fungsi-fungsi bisnis dimodelkan untuk mengetahui informasi apa yang mengendalikan proses bisnis, informasi apa yang hasilkan, siapa yang membuat informasi itu, kemana saja informasi mengalir, dan siapa yang mengolahnya.
- Data Modelling : Aliran informasi yang didefinisikan dari business modeling, disaring lagi agar bisa dijadikan bagian-bagian dari objek data yang dibutuhkan untuk mendukung bisnis tersebut. Karakteristik (atribut) setiap objek ditentukan beserta relasi antar objeknya.
- Process Modelling : Objek-objek data yang didefinisikan sebelumnya diubah agar bisa menghasilkan aliran informasi untuk diimplementasikan menjadi fungsi bisnis. Pengolahan deskripsi dibuat untuk menambah, merubah, menghapus, atau mengambil kembali objek data.
- Application Generator : RAD bekerja dengan menggunakan fourth generation techniques (4GT). Sehingga sangat jarang digunakan pemrograman konvensional menggunakan bahasa pemrograman generasi ketiga (third generation programming languages), tetapi lebih ditekankan pada reuse komponen-komponen (jika ada) atau membuat komponen baru (jika perlu).
- Testing and Turnover : Karena menekankan pada penggunaan kembali komponen yang telah ada (reuse), sebagian komponen-komponen tersebut sudah diuji sebelumnya. Sehingga mengurangi waktu testing secara keseluruhan. Kecuali untuk komponen-komponen baru.
    2. A. Karakteristik Perangkat Lunak
- Functionality: Mengacu pada tingkat kinerja perangkat lunak terhadap tujuan yang telah ditentukan.
- Reliability: Mengacu pada kemampuan perangkat lunak untuk menyediakan fungsionalitas yang diinginkan dalam kondisi tertentu.
- Usability: Mengacu pada sejauh mana perangkat lunak dapat digunakan dengan mudah.
- Efficiency: Mengacu pada kemampuan perangkat lunak untuk menggunakan sumber daya sistem dengan cara yang paling efektif dan efisien.
- Maintainability: Mengacu pada kemudahan modifikasi yang dapat dilakukan dalam sistem perangkat lunak untuk memperluas fungsinya, memperbaiki kinerjanya, atau memperbaiki kesalahannya.
- Portability: Mengacu pada kemudahan pengembang perangkat lunak (software developer) mana yang dapat mentransfer perangkat lunak dari satu platform ke platform lainnya, tanpa (atau dengan minimum) perubahan. Secara sederhana, ini mengacu pada kemampuan perangkat lunak untuk berfungsi dengan baik pada berbagai platform perangkat keras (hardware) dan perangkat lunak (software) tanpa membuat perubahan apa pun di dalamnya.
        B. - QUALITY FOCUS (FOKUS KUALITAS)
Pada saat kita membangun sebuah aplikasi, Fokus pertama kali yang dibuat adalah Kita akan membangun kualitas yang seperti apa, siapa sasaran kita, aplikasi yang dibangun siapa pengguna dan lai-lain, Oleh karena itu FOKUS KUALITAS ini programmer akan mengetahui level sebuah aplikasi yang dibangun.
-  PROCESS
                      Process atau Proses adalah merupakan lapisan kedua dalam SOFTWARE LAYER, Lapisan ini terletak setelah QUALITY FOCUS, hal ini disebabkan setelah diketahui Fokus Kualitas dari Perangkat Lunak yang akan dibangun, maka pemrogram harus mengetahui bagaimana proses yang harus dijalani oleh pemrograman sehubungan dengan Fokus Kualitas dari Perangkat Lunak yang diharapkan, Proses-proses ini dilakukan terurut dan tepat, agar tidak terjadi kesalahan pada saat sebuah aplikasi di Launching. Proses-proses yang ada akan dikerjakan sesuai dengan Kunci Proses Area yang ada (KPA/Key Process Area).
       - METHODS
                      Methods atau Metode merupakan salah satu hal yang penting dalam Pembuatan Perangkat Lunak. Dengan metode, pembuat program akan melakukan langkah-langkah dan tindakan-tindakan yang sesuai dengan metode yang ada. Metode yang digunakan harus disesuaikan dengan perangkat lunak yang dibangun, dan tujuan dari pembuatan perangkat lunak.
- TOOLS
           Tools merupakan alat bantu yang dapat digunakan oleh programmer dalam menyelesaikan proyek yang ada. Mulai dari tools animasi tools multimedia, tools normalisasi dan lain-lain. Misalnya : X3D, power designer, paintshop pro, etc.
    3. -  Model Process yang digunakan Waterfall
 - Metode Waterfall adalah Salah satu jenis metode yang mungkin sangat cocok untuk pengembangan sistem operasi komputer. karena sistem operasi komputer memiliki fungsi yang sangat kompleks, sehingga dalam pengembangannya membutuhkan analisa yang penuh mengenai kebutuhan user akan sistem operasi, hingga fitur-fitur penting yang harus dimiliki oleh sistem operasi tersebut. Metode Waterfall Memiliki proses yang urut, mulai dari analisa hingga support.jadi jika tahap proses pertama belum selesai maka tidak bisa lanjut ketahap selanjutnya.
- Context Diagram

- Dekomposisi Diagram

- DFD 0

- DFD 1

Komentar