1
1
I
DENTITASKajian
Pengenalan Design Pattern Referensi
[1] Erich Gamma, et al. Elements of Reusable Object Oriented Software. Addison Wesley.
[2] Bob Tarr. CMSC446 Introduction To Design Patterns. University of
Maryland, Baltimore County.
http://userpages.umbc.edu/~tarr/dp/spr04/cs446.html
[3] Anthony Finkelstein. Advanced Software Engineering Course Structure: Software Metric. University College London. http://www.cs.ucl.ac.uk/staff/A.Finkelstein/d22.html
Kompetensi
Mahasiswa mampu memahami sejarah munculnya dan pentingnya design pattern pada pengembangan perangkat lunak. Selain itu, mahasiswa mengetahui bagaimana mengukur perangkat lunak
Lama Pengerjaan
60’
Jenis Pengerjaan *(bisa dipilih lebih dari 1)
Tes Tulis Praktek/Praktikum Presentasi Tes Lisan
NIM/Nama : Kode Dosen : Kelas : Tgl Pengerjaan :
2
I
NDIKATORP
ENCAPAIANKompetensi Dasar
1. Mampu memahami sejarah munculnya design pattern 2. Mampu menyebutkan aktor-‐aktor pada design pattern Kompetensi Menengah
1. Mampu memahami pembagian kategori design pattern berdasarkan tujuan (creational, structural, behavioral)
2. Mampu memahami pembagian kategori design pattern berdasarkan ruang lingkup/scope (class pattern, object pattern)
3. Mampu memahami pengukuran perangkat lunak Kompetensi Mahir
Mampu menyebutkan atau menjelaskan beberapa pattern (factory, strategy, decorator, observer, command, MVC, dll) secara singkat
a. Notes on the Synthesis of Form b. The Oregon Experiment,
c. A Pattern Language: Towns, Buildings, Construction,
d. Design Pattern – Elements of Reusable Object Oriented Software 2. Yang termasuk Gang Of Four adalah
a. Christopher Alexander b. Ward Cunningham c. John Vlissides d. Grady Booch
3. Christopher Alexander mengatakan bahwa “setiap pattern memiliki 3 hal/aturan”. Pilihlah yang BUKAN merupakan aturan
a. Problem b. Structure c. Context d. Solution
4. A: Pattern dapat diimplementasikan pada bidang lain selain pengembangan perangkat lunak B: Pattern adalah sebuah solusi dari masalah pada konteks tertentu
a. Pernyataan A benar b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
5. A: Creational adalah kategori pattern yang berhubungan dengan interaksi dinamis antara class dengan object
B: Behavioral adalah kategori pattern yang berhubungan dengan interaksi dinamis antara class dengan object
a. Pernyataan A benar b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
6. A: Structural adalah kategori pattern yang berhubungan dengan decoupling interface dan implementasi class dan object
B: Behavioral adalah kategori pattern yang berhubungan dengan inisialisasi dan konfigurasi class dan object
a. Pernyataan A benar b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
7. A: Klasifikasi design pattern jika dilihat dari TUJUAN, dapat dikategorikan menjadi 3 bagian, yaitu creational, structural, dan class pattern
3 a. Pernyataan A benar
b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
8. Jika kita ingin mengetahui skenario yang akan menggambarkan dimana pattern dapat diimplementasikan atau berguna, bagian manakah yang akan anda pilih pada template pattern ?
a. Intent b. Motivation c. Sample Code d. Collaborations
9. Di bawah ini yang termasuk environment variable adalah a. javac
b. java c. java_home d. exe
10. A: Object merupakan instansiasi dari class
B: Dalam sebuah class terdapat object, atribut dan method a. Pernyataan A benar
b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
11. Di bawah ini merupakan fitur-‐fitur dari Object Oriented Programming, kecuali a. Penurunan sifat (inheritance)
b. Penurunan sifat banyak (multiple inheritance) c. Penyembunyian data (encapsulation)
d. Memiliki banyak bentuk (polymorphism)
12. A: Access specifier public merupakan hak akses pada member class (atribut atau method), yang dapat di akses oleh class lain namun hanya pada satu package saja
B: Access specifier friendly merupakan hak akses pada member class (atribut atau method), yang dapat diakses oleh class lain naum hanya pada satu pakage saja
a. Pernyataan A benar b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
13. Method yang memiliki nama yang sama dengan nama classnya, disebut ... a. Polymorphism
b. Constructor c. Class method d. Class variable
a. Pernyataan A benar b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
15. A: Sebuah class dapat mengimplementasikan banyak interface dan bisa meng-‐extends lebih dari satu class B: Sebuah class yang meng-‐implementasikan interface harus membuat body dari method yang ada di class interface
a. Pernyataan A benar b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
16. A: Setiap method yang ada di interface class diperbolehkan menggunakan access specifier selain public B: Setiap method yang ada di abstract class diperbolehkan menggunakan access specifier selain public
a. Pernyataan A benar b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
17. Perhatikan gambar class berikut. Termasuk notasi diagram apakah class di bawah ini? Class Name Operation1() Operation2() Type Variabel1 Type Variabel2
a. Unified Modeling Technique b. Unified Modeling Language c. Object Modeling Technique d. Object Modeling Language
18. Perhatikan garis relasi pada class diagram berikut. Disebut garis apakah itu?
a. Agregation
5 d. Asosiation
19. A: Software metric digunakan untuk menjelaskan kondisi state-‐of-‐the-‐art saat ini dalam mengukur perangkat lunak
B: Software metric digunakan untuk mencari kesalahan (error) pada perangkat lunak a. Pernyataan A benar
b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
20. Berikut ini merupakan contoh entity pada software metric, kecuali a. Software development team
b. Software design spesification c. Software design
d. Software tester
21. A: Dalam software metric, pengalaman masing-‐masing personil dalam tim pengembang software tidak dipertimbangkan
B: Jumlah baris code merupakan atribut pada software metric a. Pernyataan A benar
b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah 22. Di bawah ini termasuk tipe metric, kecuali
a. Prediction b. Ordinal c. Interval d. Estimation
23. A: LOC merupakan metric untuk mengukur jumlah baris code pada class
B: DIT merupakan metric untuk mengukur kedalaman inheritance class sampai root class a. Pernyataan A benar
b. Pernyataan B benar
c. Kedua pernyataan A dan B adalah benar d. Kedua pernyataan A dan B adalah salah
24. Jika anda sebagai project manager ingin mengukur kemampuan programmer anda, apakah termasuk kategori high, low atau average, metric apakah yang akan anda gunakan
a. Direct measurement b. Indirect measurement c. Nominal
d. Ordinal
25. Pengukuran jumlah baris code (LNOC) termasuk tipe matrik ... a. Direct measurement
d. Ordinal
4
A
SSESSMENTT
OOLS(P
ENCAPAIANK
OMPETENSI)
Berisi assessment tools yang digunakan untuk menilai tingkatan pencapaian kompetensi. Assessment tools dapat berupa checklist fungsionalitas atau rubric descriptive.
5
CATATAN PERBAIKAN
Catatan perbaikan dapat diberikan oleh dosen untuk membantu mahasiswa mencapai kompetensi. Perbaikan dapat diberikan untuk membantu mahasiswa mencapai satu tingkatan kompetensi yang lebih tinggi daripada tingkatan yang dicapai pada saat assessment. Catatan perbaikan ini merupakan revisi yang harus dipenuhi oleh mahasiswa dan perbaikan yang dilakukan oleh mahasiswa harus diuji kembali oleh dosen pengajar.
Dosen berhak untuk memberikan batas waktu perbaikan dan membatalkan perbaikan jika ternyata mahasiswa tidak mampu mencapai kompetensi sesuai dengan batas waktu yang disediakan.
Catatan Perbaikan : _______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________
_______________________________________________________________________
Batas Akhir Perbaikan : ___________________________ (DD/MM/YYYY)
Perbaikan
ke-‐ Perbaikan Tgl Detail Perbaikan Kompetensi* Level
1
2
3