Kode Mata Kuliah : PAC 138 SKS : 3 SKS Waktu Pertemuan : 2 x 3 x 50 menit Pertemuan ke : 1 & 2
A. Tujuan Instruksional 1. Umum Mahasiswa dapat menjelaskan agile software development.
2. Khusus Mahasiswa dapat menjelaskan konsep dan prinsip agile software development. Mahasiswa dapat menjelaskan beberapa model proses terkait dengan agile software development. B. Pokok Bahasan Agile Software Development C. Sub Pokok Bahasan 1. Definisi agile software development. 2. Karakteristik agile software development 3. Perbedaan prescriptive dengan agile software development 4. Metode-metode terkait agile software D. Kegiatan Belajar Mengajar
TAHAP KEGIATAN PENGAJAR KEGIATAN MAHASISWA MEDIA & ALAT Pendahuluan 1. Review proses model pengembangan perangkat lunak. 2. Memberikan gambaran global mengenai agile software development.
Mendengarkan, mencatat, dan memperhatikan LCD, laptop dan slide ppt
Penyajian 1. Memberikan penjelasan mengenai agile software development - Menyampaikan definisi agile software development - Menyampaikan karakteristik agile software development. - Meminta mahasiswa secara acak untuk menyebutkan beberapa model proses prescriptive. - Meminta mahasiswa untuk menyimpulkan perbedaan model proses secara prescriptive dan agile. - Membagi mahasiswa dalam kelompok-kelompok kecil dan Mendengarkan, mencatat, dan memperhatikan
Menjawab pertanyaan.
LCD, laptop dan slide ppt 2 memberikan penugasan kepada masing-masing kelompok untuk menyebutkan beberapa model proses terkait dengan agile software development.
2. Meminta kelompok mahasiswa untuk presentasi dilanjutkan diskusi mengenai model proses terkait dengan agile software development.
Presentasi dan diskusi
Penutup 1. Menunjuk mahasiswa secara acak untuk menjelaskan mengenai salah satu model proses terkait dengan agile software development. 2. Mengingatkan untuk belajar materi minggu depan
LCD, laptop dan slide ppt
E. Evaluasi Memberikan tugas untuk melakukan eksplorasi beberapa model proses terkait dengan agile software development. F. Referensi [1]. Beck,K, Andres, C, Extreme Programming Explained, Addison Wesley Professional, 2004 [2]. Burke, E.M., Coyner, B.M, , Java Extreme Programming Cookbook , OReilly, 2003
3 SATUA ACARA PEGAJARA
Mata Kuliah : Extreme Programming Kode Mata Kuliah : PAC 138 SKS : 3 SKS Waktu Pertemuan : 3 x 3 x 50 menit Pertemuan ke : 3, 4, & 5
A. Tujuan Instruksional 1. Umum Mahasiswa dapat mengerti dan memahami, serta menerapkan Test Driven Development
2. Khusus Mahasiswa dapat menerapkan konsep unit testing. Mahasiswa dapat menerapkan konsep integration testing. Mahasiswa dapat menggunakan beberapa tools terkait Test Driven Development (TDD). B. Pokok Bahasan Test Driven Development (TDD) C. Sub Pokok Bahasan 1. Definisi TDD. 2. Karakteristik TDD 3. Unit testing 4. Integration Testing 5. Tools yang mendukung TDD D. Kegiatan Belajar Mengajar
TAHAP KEGIATAN PENGAJAR KEGIATAN MAHASISWA MEDIA & ALAT Pendahuluan Memberikan gambaran global mengenai test driven development. Mendengarkan, mencatat, dan memperhatikan
LCD, laptop dan slide ppt
Penyajian 1. Memberikan penjelasan mengenai test driven development. - Memberikan definisi test driven development. - Mejelaskan mengenai unit testing dan integration testing. - Memberikan contoh mengenai unit testing dan integration testing. - Meminta mahasiswa untuk membentuk kelompok diskusi. - Meminta setiap kelompok diskusi untuk membuat proyek Mendengarkan, mencatat, dan memperhatikan
Melakukan diskusi
LCD, laptop dan slide ppt 4 terkait dengan TDD 2. Menjelaskan penggunaan tools untuk test driven development. - Memberi contoh menggunaan pustaka JUnit. - Memberi contoh menggunaan pustaka Cactus. - Memberikan contoh proyek kecil menggunakan kedua pustaka tersebut di atas. - Memberi tugas kepada mahasiswa untuk eksplorasi lebih lanjut mengenai kedua pustaka tersebut, kaitannya dengan masing-masing proyek kelompok. 3. Memberikan waktu kepada mashasiswa untuk presentasi pengenmbangan proyek terkait dengan test driven development, dilanjutkan dengan diskusi.
Mendengarkan, mencatat, dan memperhatikan
Melakukan diskusi dan eksplorasi pustaka
Melakukan presentasi dan diskusi
Penutup 1. Menunjuk mhs secara acak untuk menjelaskan kesimpulan mengenai test driven development 2. Mengingatkan untuk belajar materi minggu depan Mendengarkan, mencatat, dan memperhatikan LCD, laptop dan slide ppt
E. Evaluasi Memberikan tugas untuk membentuk proyek dan membangunnya dengan test driven development F. Referensi [1]. Beck,K, Andres, C, Extreme Programming Explained, Addison Wesley Professional, 2004 [2]. Burke, E.M., Coyner, B.M, , Java Extreme Programming Cookbook , OReilly, 2003
5 SATUA ACARA PEGAJARA
Mata Kuliah : Extreme Programming Kode Mata Kuliah : PAC 138 SKS : 3 SKS Waktu Pertemuan : 2 x 3 x 50 menit Pertemuan ke : 6 & 7
A. Tujuan Instruksional 1. Umum Mahasiswa mampu menjelaskan konsep version control dan menerapkannya.
2. Khusus Mahasiswa mampu menjelaskan fasilitas dalam version control. Mahasiswa mampu mendemonstrasikan bagaimana version control digunakan dalam pengembangan perangkat lunak. Mahasiswa mampu menggunakan salah satu perangkat lunak untuk version control. B. Pokok Bahasan Version Control C. Sub Pokok Bahasan 1. Definisi version control 2. Fasilitas dalam version control. 3. Fungsi version control dalam pengembangan perangkat lunak pada umumnya. 4. Version control server dan client. 5. Berbagai macam perangkat lunak untuk version control D. Kegiatan Belajar Mengajar
TAHAP KEGIATAN PENGAJAR KEGIATAN MAHASISWA MEDIA & ALAT Pendahuluan Memberikan gambaran global mengenai version control. Mendengarkan, mencatat, dan memperhatikan LCD, laptop dan slide ppt
Penyajian 1. Memberikan gambaran mengenai version control - Memberikan definisi version control. - Memberikan contoh pengembangan perangkat lunak dengan dan tanpa version control. - Meminta mahasiswa untuk memberikan contoh serupa. - Menjelaskan mengenai version control server dan client beserta contohnya. - Meminta mahasiswa dalam kelompok untuk memilih salah Mendengarkan, mencatat, dan memperhatikan
Diskusi dan eksplorasi perangkat lunak LCD, laptop dan slide ppt 6 satu perangkat lunak version control untuk kemudian dieksplorasi
2. Memberikan waktu kepada mahasiswa untuk eksplorasi beberapa perangkat lunak version control client dan server, kemudian mempresentasikan dan mendiskusikan. Eksplorasi berupa sebuah kasus/skenario yang diimplementasikan menggunakan perangkat lunak version control.
version control.
Presentasi dan diskusi.
Penutup 1. Menunjuk mahasiswa secara acak untuk menjelaskan manfaat version control. 2. Memberikan kesimpulan tentang version control.
Mendengarkan, mencatat, dan memperhatikan, menjawab pertanyaan LCD, laptop dan slide ppt
E. Evaluasi Memberikan tugas eksplorasi beberapa perangkat lunak terkait dengan version control. F. Referensi [1]. Beck,K, Andres, C, Extreme Programming Explained, Addison Wesley Professional, 2004 [2]. Burke, E.M., Coyner, B.M, , Java Extreme Programming Cookbook , OReilly, 2003
7 SATUA ACARA PEGAJARA
Mata Kuliah : Extreme Programming Kode Mata Kuliah : PAC 138 SKS : 3 SKS Waktu Pertemuan : 3 x 50 menit Pertemuan ke : 8
A. Tujuan Instruksional 1. Umum Mahasiswa mampu menjelaskan dan mengerti mengenai model proses pengembangan perangkat lunak dengan extreme programming.
2. Khusus Mahasiswa dapat mendefinisikan extreme programming. Mahasiswa dapat menguraikan extreme programming menjadi beberapa task. Mahasiswa dapat menggunakan tools yang mendukung extreme programming. B. Pokok Bahasan Extreme programming process model. C. Sub Pokok Bahasan 1. Definisi extreme programming. 2. Extreme programming process model. 3. Tools untuk mendukung extreme programming process model. D. Kegiatan Belajar Mengajar
TAHAP KEGIATAN PENGAJAR KEGIATAN MAHASISWA MEDIA & ALAT Pendahuluan Memberikan penjelasan secara global mengenai extreme programming. Mendengarkan, mencatat, dan memperhatikan
LCD, laptop dan slide ppt
Penyajian 1. Memberikan definisi extreme programming. 2. Memberikan penjelasan mengenai tahapan-tahapan/fase dalam extreme programming 3. Meminta mahasiswa untuk membedakan extreme programming dengan model proses pengembangan perangkat lunak yang lain, baik prescriptive maupun agile. 4. Memberikan contoh tools untuk extreme programming 5. Memberikan tugas kepada mahasiswa untuk eksplorasi tools yang telah ditentukan. Mendengarkan, mencatat, dan memperhatikan
Menjawab pertanyaan. LCD, laptop dan slide ppt 8
Penutup 1. Menunjuk mhs secara acak untuk menjelaskan extreme programming 2. Memberikan kesimpulan
Menjawab pertanyaan
Mendengarkan, mencatat, dan memperhatikan LCD, laptop dan slide ppt
E. Evaluasi Memberikan tugas kepada mahasiswa untuk eksplorasi tools terkait extreme programming. F. Referensi [1]. Beck,K, Andres, C, Extreme Programming Explained, Addison Wesley Professional, 2004 [2]. Burke, E.M., Coyner, B.M, , Java Extreme Programming Cookbook , OReilly, 2003
9 SATUA ACARA PEGAJARA
Mata Kuliah : Extreme Programming Kode Mata Kuliah : PAC 138 SKS : 3 SKS Waktu Pertemuan : 3 x 50 menit Pertemuan ke : 9
A. Tujuan Instruksional 1. Umum Mahasiswa mampu menggunakan tools terkait extreme programming.
2. Khusus Mahasiswa mampu menggunakan JUnit, cactus dan Eclipse/Netbeans dalam kaitannya dengan extreme programming. Mahasiswa mampu menggabungkan tools untuk unit testing, integration testing, dan version control sebagai dasar dari extreme programming. B. Pokok Bahasan Extreme programming tools C. Sub Pokok Bahasan 1. JUnit 2. Cactus 3. Eclipse & Netbeans 4. Perangkat lunak version control. D. Kegiatan Belajar Mengajar
TAHAP KEGIATAN PENGAJAR KEGIATAN MAHASISWA MEDIA & ALAT Pendahuluan 1. Memberikan pertanyaan terkait unit testing dan integration testing. 2. Memberikan gambaran mengenai tools yang ada.
Mendengarkan, mencatat, dan memperhatikan LCD, laptop dan slide ppt
Penyajian 1. Memberi kesempatan kepada mahasiswa untuk presentasi bagaimana menggabungkan tools untuk keperluan extreme programming dalam kasus/proyek yang telah didefinisikan sebelumnya, dilanjutka dengan diskusi. 2. Memberikan kesimpulan dan saran terkait presentasi yang dilakukan mahasiswa.
Presentasi dan diskusi LCD, laptop dan slide ppt Penutup 1. Menunjuk mhs secara acak untuk menjelaskan bagaimana Mendengarkan, mencatat, dan LCD, laptop dan slide ppt 10 penggunaan tools untuk extreme programming. 2. Mengingatkan untuk belajar materi minggu depan
memperhatikan
E. Evaluasi Menilai kemampuan mahasiswa dalam penguasaan tools kaitannya dengan extreme programming. F. Referensi [1] Beck,K, Andres, C, Extreme Programming Explained, Addison Wesley Professional, 2004 [2] Burke, E.M., Coyner, B.M, , Java Extreme Programming Cookbook , OReilly, 2003
11 SATUA ACARA PEGAJARA
Mata Kuliah : Extreme Programming Kode Mata Kuliah : PAC 138 SKS : 3 SKS Waktu Pertemuan : 3 x 50 menit Pertemuan ke : 10
A. Tujuan Instruksional 1. Umum Mahasiswa dapat menggunakan metode SCRUM dalam penerapannya dengan extreme programming
2. Khusus Mahasiswa dapat menjelaskan metode SCRUM Mahasiswa dapat menjelaskan tahapan-tahapan dalam metode SCRUM. Mahasiswa dapat menggabungkan SCRUM dengan extreme programming. B. Pokok Bahasan SCRUM C. Sub Pokok Bahasan 1. Definisi SCRUM 2. Tahapan SCRUM 3. Penerapan SCRUM dengan extreme programming D. Kegiatan Belajar Mengajar
TAHAP KEGIATAN PENGAJAR KEGIATAN MAHASISWA MEDIA & ALAT Pendahuluan Menanyakan kembali mengenai extreme programming. Menjawab pertanyaan LCD, laptop dan slide ppt
Penyajian 1. Menjelaskan definisi SCRUM dan berbagai istilah yang terkait dengannya. 2. Menjelaskan beberapa tahapan dari SCRUM 3. Menjelaskan kaitan SCRUM dengan extreme programming. 4. Meminta mahasiswa membentuk kelompok yang terdiri dari 7 orang. 5. Meminta mahasiswa melakukan sebuah simulasi proyek menggunakan SCRUM.
Mendengarkan, mencatat, dan memperhatikan
Melakukan simulasi proyek menggunakan SCRUM. LCD, laptop dan slide ppt Penutup 1. Menunjuk mhs secara acak untuk menjelaskan SCRUM 2. Mengingatkan untuk belajar materi Mendengarkan, mencatat, dan memperhatikan LCD, laptop dan slide ppt 12 minggu depan
E. Evaluasi Melakukan evaluasi dengan menilai simulasi SCRUM yang dilakukan mahasiswa. F. Referensi Kniberg, H., Scrum and XP from the Trenches, C4Media Inc, 2007
13 SATUA ACARA PEGAJARA
Mata Kuliah : Extreme Programming Kode Mata Kuliah : PAC 138 SKS : 3 SKS Waktu Pertemuan : 3 x 50 menit Pertemuan ke : 11 s.d 14
A. Tujuan Instruksional 1. Umum Mahasiswa dapat menerapkan extreme programming dalam sebuah proyek.
2. Khusus Mahasiswa dapat merencanakan iterasi proyek pada extreme programming Mahasiswa dapat menulis user story dan membuat prioritasnya serta melakukan pemodelan secara cerdas (agile modelling). Mahasiswa mampu menerapkan pengetahuan yang telah didapat sebelumnya mengenai extreme programming ke dalam sebuah proyek perangkat lunak. B. Pokok Bahasan Proyek extreme programming C. Sub Pokok Bahasan 1. Perencanaan proyek 2. Perencanaan iterasi proyek 3. Penulisan user story card 4. Pemodelan user story 5. Eksekusi user story D. Kegiatan Belajar Mengajar
TAHAP KEGIATAN PENGAJAR KEGIATAN MAHASISWA MEDIA & ALAT Pendahuluan Melakukan review materi mengenai tools untuk extreme programming dan konsep dasar extreme programming.
Mendengarkan, mencatat, dan memperhatikan LCD, laptop dan slide ppt
Penyajian 1. Meminta mahasiswa merencanakan proyek perangkat lunak sekaligus iterasinya. - Meminta mahasiswa untuk membentuk kelompok. - Meminta masing-masing kelompok untuk berdiskusi dan dilanjutkan dengan presentasi hasil diskusi tentang proyek perangkat lunak masing-masing kelompok. Presentasi meliputi jenis proyek berikut iterasi Membentuk kelompok dan berdiskusi.
LCD, laptop dan slide ppt
14 yang direncanakan masing- masing proyek
2. Meminta mahasiswa untuk menulis user story - Meminta masing-masing kelompok yang terbentuk untuk menulis user story ke dalam PivotalTracker. - Meminta mahasiswa membuat skala prioritas user story. - Meminta mahasiswa untuk mempresentasikan user story yang telah dibuat kelompok.
3. Menjelaskan mengenai pemodelan user story. - Menjelaskan mengenai agile modelling. - Meminta masing-masing kelompok untuk memodelkan user story masing-masing proyek. - Meminta masing-masing kelompok untuk mempresentasikan hasil pemodelannya.
4. Menjelaskan mengenai eksekusi user story. - Menjelaskan penerapan pemodelan ke dalam program. - Meminta mahasiswa melakukan pemetaan salah satu user story ke dalam program dan mempresentasikannya.
Melakukan penulisan user story dan presentasi
Melakukan pemodelan setiap user story.
Memetakan pemodelan ke dalam program
Lapotop untuk tiap-tiap kelompok mahasiswa.
Lapotop untuk tiap-tiap kelompok mahasiswa.
Lapotop untuk tiap-tiap kelompok mahasiswa. Penutup 5. Menunjuk mhs secara acak untuk menjelaskan 6. Memberi tugas 7. Mengingatkan untuk belajar materi minggu depan LCD, laptop dan slide ppt
E. Evaluasi Evaluasi dilakukan dengan menilai hasil presentasi setiap pertemuan dan melakukan penilaian pada akhir proyek. F. Referensi [1]. Beck,K, Andres, C, Extreme Programming Explained, Addison Wesley Professional, 2004 [2]. Burke, E.M., Coyner, B.M, , Java Extreme Programming Cookbook , OReilly, 2003