Rekayasa Perangkat Lunak
Rekayasa Perangkat Lunak
Pilihan Konsentrasi Pemrograman (Hacker)
Bisnis Digital
di Kota Tasikmalaya
3 SKS
Kode Mata Kuliah
BD412
Periode Perkuliahan
1 Feb – 30 Jul 2022 (5 bulan)
Rincian Perkuliahan
Mata kuliah Rekayasa Perangkat Lunak ini memberikan pemahaman dan penguasaan kepada mahasiswa mengenai berbagai macam Process Model dalam Software Engineering seperti Waterfall Model, Prototyping Model, RAD Model, dan Evolutionary Process Models (Incremental dan Spiral Model), Analysis Modeling, Design Model, Object Oriented Analysis and Design (OOAD), Testing Strategies, dan Software Testing Method. Selama perkuliahan juga dibahas tentang perkembangan dari Process Model dalam Software Engineering.
Capaian pembelajaran:
- Memahami apa itu rekayasa perangkat lunak
- Memahami dan mampu membedakan apa itu Waterfall Model, Agile, dan Scrum
- Memahami dan mampu menjalankan analisa kebutuhan suatu perangkat lunak dengan memakai metode Contextual Design
- Memahami dan mampu membangun Affinity Notes, Affinity Diagram, Persona, User Story, Sequence Diagram, dan Storyboard
- Memahami dan mampu melaksanakan brainstorming untuk menghasilkan vision dan fungsionalitas baru suatu perangkat lunak
- Memahami dan mampu membuat berbagai diagram UML untuk menjelaskan rancangan suatu perangkat lunak
- Memahami dan mampu membuat Prototype, khususnya: Paper Prototype, High Fidelity Prototype, dan simulasi prototype
- Memahami dan mampu melaksanakan proyek pengembangan perangkat lunak dengan memakai metodologi Scrum
- Memahami dan mampu menjalankan berbagai pengujian yang dipakai dalam pengembangan suatu perangkat lunak
- Memahami, mampu menghasilkan dan mempresentasikan sejumlah laporan seputar pengembangan perangkat lunak, seperti: analisa kebutuhan, rancangan fungsionalitas, rancangan teknis, dan demo produk
- Memahami dan mampu memakai aplikasi serta layanan Source Code Control, khususnya: Git, Sourcetree, dan Github
- Memahami dan mampu membuat aplikasi android
- Memahami dan mampu membuat aplikasi website frontend dan backend
- Memahami dan mampu membuat game
Pada mata kuliah ini, mahasiswa akan diberi pilihan agar fokus untuk mempelajari beberapa bahasa pemrograman. Mulai dari pengembangan aplikasi mobile, frontend web, backend web, atau pengembangan game.
Beberapa materi akan disampaikan dalam bentuk video courses dari berbagai media kursus online yang terkenal (Udemy, Hacktiv8, dll) secara gratis.
Pilihan karir setelah menguasai mata kuliah ini
- System Analyst
- IT Project Manager
- UI/UX Designer
- IT Quality Control
- Software Engineer
- Programmer
- QA Engineer
Modul Pembelajaran
Sasaran Pengembangan Skill
Mampu menerapkan prinsip agile dalam pengembangan proyek ,Mampu menggunakan tools seperti JIRA, Trello dalam manajemen project yang cepat ,Mampu menggunakan tools lainnya dalam agile project
Detil Pembelajaran
Synchronous secara tatap muka daring dengan pengajar melalui Pembelajaran Terjadwal, Asynchronous melalui Pembelajaran Mandiri SPOT dan SPADA UPI
Metode Asesmen
Quiz dan Tugas melalui SPOT dan SPADA
Kehadiran mahasiswa
Keaktifan mahasiswa
Sasaran Pengembangan Skill
• Mampu memahami pengertian Git dan Github
• Mampu memahami perbedaan Git dan VCS
• Mampu mengetahui cara instalasi Git pada Linux Ubuntu, dan cara instalasi Git pada MS Windows
• Mampu memahami cara memanfaatkan Github
• Mampu menggunakan Git dan Github dalam proses pengembangan software atau pembuatan dokumen
Detil Pembelajaran
Pada pembelajaran individu, peserta akan mengikuti pembelajaran dengan mendengarkan tutorial dan kuliah dari pengajar dan pengerjaan tugas. Materi ini mengajarkan konsep dasar GIT, perbedaan dasar GIT dan VCS, Instalasi GIT pada pada Linux Ubuntu dan perintah dasar.
Metode Asesmen
1. Nilai Tugas
Penilaian dilakukan setiap minggu dari hasil submit tugas mahasiswa/ progress project mahasiswa
Sasaran Pengembangan Skill
Menggunakan Function dan Method, Menerapkan Konsep OOP, Menggunakan Operator dan Expression
Detil Pembelajaran
Memahami Class dan Object
Membuat Function dan Method
Memahami Konsep OOP
Membuat Objek dan Kelas dalam OOP
Mengetahui flowchart dan pseudo-code
Memahami alur pengambilan keputusan (If-else, switch case)
Memahami konsep manipulasi operasi dalam Java
Mengimplementasikan operator dalam syntax Java
Metode Asesmen
Final Project
Sasaran Pengembangan Skill
Menggunakan Permission, Menerapkan Activity & Activity Life Cycle, Menerapkan Fragment & Fragment Life Cycle, Menggunakan Intent, Bundle, Serializable, dan Parcelable
Detil Pembelajaran
Menerapkan Android Permissions Resources
Memahami fungsi dan kegunaan Activity dan Activity Lifestyle.
Memahami fungsi Fragment, Fragment Lifecycle, dan View Page
Memahami cara menggunakan Intent, Bundle, Serializable, dan Parcelable
Memahami kapan memilih Toast dan Snackbar
Mampu melakukan berbagai aksi melalui AlertDialog sesuai dengan kebutuhan user
Metode Asesmen
Final Project
Sasaran Pengembangan Skill
1) Mampu menerapkan proses software development, 2) Mampu memahami System Development Life Cycle (SDLC), 3) Mampu menggunakan software project management, 4) Mampu melakukan rapid software development dan software testing, 5) Mampu memahami prinsip pengumpulan, pemrosesan, dan menyimpan data dari berbagai format, 6) Mampu mengumpulkan dan memodelkan data menjadi informasi yang bermanfaat.
Detil Pembelajaran
Mahasiswa akan melakukan pembelajaran syncronous dan asyncronous mengenai materi software development meliputi konsep software development, System Development Life Cycle (SDLC), software project management, rapid software development dan software testing. Materi teknologi database meliputi konsep dan prinsip pengumpulan, pemrosesan, dan menyimpan data, serta pemodelan data menjadi informasi yang bermanfaat. Serta hands-on project untuk merencanakan pengembangan software dengan pendekatan agile methodology dan pembuatan database yang handal.
Metode Asesmen
Penilaian dilakukan berdasarkan hasil tes dan hands-on project yang dikerjakan.
Sasaran Pengembangan Skill
Mahasiswa dapat membuat aplikasi front-end web dengan kode JavaScript standar ES6, menerapkan Web Components, Webpack, dan Menampilkan data dinamis dari Web API menggunakan AJAX.
Detil Pembelajaran
1. Mampu menuliskan kode JavaScript menggunakan standar ES6.
2. Mampu membuat dan menggunakan Web Component dalam pengembangan aplikasi Web.
3. Mampu membuat proyek JavaScript dan menggunakan package pihak ketiga melalui Node Package Manager (NPM).
4. Mampu menggunakan Webpack Sebagai Module Bundler.
5. Mampu menampilkan data secara dinamis dari Web API menggunakan AJAX.
Metode Asesmen
Final Project
Sasaran Pengembangan Skill
Mahasiswa dapat membuat aplikasi back-end sederhana berupa RESTful API menggunakan Node.js.
Detil Pembelajaran
1. Mengerti dasar pengetahuan back-end seperti server dan client, Web server dan Web Service, REST, dan konsep di dalamnya.
2. Mengerti dasar-dasar Node.js untuk back-end seperti Node.js, Global Object, Process Object, Modularization, event module, Filesystem, dan teknik Stream.
3. Membangun Web Services Menggunakan Node.js secara native maupun menggunakan framework Hapi.
4. Membangun RESTful api untuk fungsionalitas aplikasi nyata.
5. Mampu deploy web services melalui Amazon EC2.
6. Mampu mengkonsumsi dan menguji RESTful API menggunakan Postman..
Metode Asesmen
Final Project
Sasaran Pengembangan Skill
Mengupas scrum dari dasar hingga mahir. Di mulai dari konsep scrum, siklus scrum, roles dalam scrum, value scrum sampai kepada implementasi scrum dalam sebuah project. Training ini mengambil studi kasus development aplikasi Kasir dengan menggunakan framework scrum. Tujuannya agar mahasiswa bisa langsung mempraktekan scrum setelah mengikuti materi ini. Dalam training ini juga dibahas bagaimana tips dan trik dalam menghadapi ujian Scrum Master serta kisi-kisi yang keluar dalam ujian sertifikasi Scrum Master. Dengan mengikuti training ini mahasiswa diharapkan mampu menjadi seorang Scrum Master, bisa lolos exam Professional Scrum Master serta bisa memiliki sertifikat Professional Scrum Master yang diakui secara internasional.
Detil Pembelajaran
1. Scrum Project Management (#1 Best Selling Scrum Course in Indonesia)
2. Mengelola Scrum dengan JIRA Software
3. Mengelola Scrum Project dengan Aplikasi Open Project
Metode Asesmen
Studi Kasus
Sasaran Pengembangan Skill
Dapat mengoperasikan Unity sebagai tool untuk membuat game 2. Dapat membuat 1 tampilan interface sederhana game dengan menggunakan Unity. 3. Pengenalan c#
Detil Pembelajaran
1. Penjelasan tentang dasar-dasar tool yang ada di Unity
2. Penjelasan tentang bagaimana mengoperasikan Unity
3. Penjelasan tentang dimensi-dimensi untuk membuat game
Metode Asesmen
Final Project
Sasaran Pengembangan Skill
Materi ini akan membahas mengenai metodologi untuk pengujian dan implementasi sistem menggunakan alat uji, model, dan template dalam melakukan manajemen pengujian. Course ini memberikan pengetahuan tentang bagaimana merancang rencana pengujian perangkat lunak dan persiapan implementasi sebelum eksekusi sistem.
Detil Pembelajaran
1. Dasar-dasar Pengujian Perangkat Lunak
2. Jenis Pengujian
3. Rencara Pengujian
4. Kasus Uji
5. Mengelola Kasus Uji
6. Pengujian Statis
7. Laporan Bug
8. Organisasi Testing
9. Pengujian Siklus Hidup Proyek
10. Penerapan
Metode Asesmen
Penilaian dilakukan dari hasil submit tugas mahasiswa/progress project mahasiswa
Sasaran Pengembangan Skill
Mampu memahami bahasa pemrograman Python untuk aplikasi AI di Google Colab
Detil Pembelajaran
1. Menggunakan fungsionalitas serta fitur dari Python
2. Mengenali library Python
3. Membuat program AI sederhana dengan Python
Metode Asesmen
Studi Kasus
Sasaran Pengembangan Skill
Memahami Konsep Produk, Memahami SDLC, Mengenal Tech Stack, Mengenal Bahasa Pemrograman.
Detil Pembelajaran
Memahami cara bisnis internet yang menghasilkan pendapatan
Memahami konsep BE, FE, dan Rest API secara sederhana
Memahami Scrum Mengidentifikasi SDLC
Mengetahui jenis profesi dan perannya dalam pembuatan aplikasi
Memahami product MVP
Mengetahui macam Tech Stack dan toolsnya
Memahami perbedaan antara bahasa pemrograman, framework, dan library
Mengetahui cara menentukan Tech Stack yang tepat
Memahami Tech Stack pada database
Metode Asesmen
Quiz
Sasaran Pengembangan Skill
Designing Interface, Iteration Process
Detil Pembelajaran
Menyusun garis besar produk digital yang akan dibuat dan menuangkan dalam flowchart
Membuat rincian dari ide tersebut dalam wujud screen atau page dalam bentuk Wireframe dan Wireflow
Mengubah tampilan Wireframe menjadi Hi-Fi
Menyusun skenario dan rencana dokumentasi untuk usability testing produk.
Mengundang 5 orang yang memiliki karakter mendekati user persona
Melakukan iterasi dalam UI design menggunakan usability testing.
Menyelesaikan desain fitur/produk berdasarkan feedback selama proses iterasi.
Mendokumentasikan usability testing dan memetakan segala informasi dan feedback dari partisipan
Metode Asesmen
Quiz