Soal dan Jawaban Materi Review SIMBAD

1. Apa yang dimaksud dengan pengembangan software ?

Jawab  : Di era globalisasi dan informasi ini, perkembangan media pembelajaran juga semakin maju. Penggunaan Teknologi Informasi (TI) sebagai media pembelajaran sudah merupakan suatu tuntutan. Walaupun perancangan media berbasis TI memerlukan keahlian khusus, bukan berarti media tersebut dihindari dan ditinggalkan.
(Sumber : Jurnal Pendidikan Akuntansi Indonesia, Vol. VIII. No. 2 – Tahun 2010, Hlm. 1 - 10)


2. Model Pengembangan Software terdiri dari (Sebutkan dan Jelaskan) ?

Jawab  : Perancangan dan Pengembangan Software Melalui 5 tahapan yang meliputi :
              1. Analisis kebutuhan
              2. Perancangan media
              3. Pengembangan Media
              5. Pengujuan
              6. Implementasi 
(Sumber : Muhamad Ali, Pengembangan Media Pembelajaran.... 13)


3. ERD adalah ?

Jawab  : Entity Relationship Diagram  (ERD) adalah sekumpulan cara atau peralatan untuk mendeskripsikan  data-data  atau  objek-objek  yang  dibuat  berdasarkan  dan  berasal dari  dunia  nyata  yang  disebut  entitas  (entity)  serta  hubungan  (relationship)  antar entitas-entitas tersebut dengan menggunakan beberapa notasi.
(Jurnal Informatika, Vol.5, No. 1, Juni 2009: 71 – 85, Analisis Data dengan Menggunakan ERD dan Model Konseptual Data Warehouse . Doro Edi , Stevalin Betshani)



4. LRS adalah ?

Jawab  : Menurut Hasugian dan Shidiq (2012:608) “memberikan batasan bahwa Logical Record Struktured (LRS) adalah sebuah model sistem yang digambarkan dengan sebuah diagram-ER akan mengikuti pola atau aturan permodelan tertentu dalam kaitannya dengan konvensi ke LRS”.
(Jurnal Pilar Nusa Mandiri Vol. 13 No. 2. September 2017, P-ISSN: 1978-1946. E-ISSN: 2527-6514. Analisa dan Perancangan Sistem)


5. UML adalah ?

Jawab  : Unified Modelling Language (UML) adalah sebuah “bahasa” yang telah menjadi standar dalam industri untuk visualisasi,merancang dan mendokumentasikan system piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem. Dengan menggunakan UML dapat dibuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun.Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka
lebih cocok untuk penulisan piranti lunak dalam bahasa berorientasi objek seperti C++, Java, atau
VB. NET.
(Jurnal Teknologi Informasi DINAMIK Volume XIV, No.1, Januari 2009 : 23-29 ISSN : 0854-9524
Pemodelan Visual dengan Menggunakan Uml dan Rational Rose 24)


6. OOP adalah ?

Jawab  : Object Oriented Programming (OOP) adalah perangkat lunak yang dihasilkan dari pemodelan menggunakan UML yang berisi analisis dan perancangan perangkat lunak yang merupakan perpaduan dari beberapa metode yang telah ada sebelumnya. Penelitian ini berisi masalah pada sistem yang telah ada, yaitu kurang terintegrasinya data terkait sidang skripsi, pelaporan yang masih dikerjakan secara manual, dan databasing yang kurang sistematis. Solusi dari permasalahan yang ada adalah dengan implementasi OOP sebagai metodologi dalam analisis, perancangan dan pemrograman sistem sidang skripsi mulai dari pembimbingan skripsi, pelaksanaan sidang, penilaian hasil sidang, sampai pada pelaporan-pelaporan. Tujuan penelitian ini adalah untuk menghasilkan implementasi OOP pada aplikasi sistem sidang skripsi yang diharapkan menjadi solusi dari keterbatasan-keterbatasan sistem yang ada. Simpulan dari penelitian ini adalah bahwa aplikasi sidang skripsi yang menggunakan metode OOP memiliki banyak keunggulan, diantaranya adalah sifat reusability program, maintenance yang tidak rumit, dan mudah untuk dikembangkan.
(Sumber : Jurnal Ilmu Komputer dan Teknologi Informasi – MATICS) 


7. Komponen dari ERD (Sebutkan dan Jelaskan) ?

Jawab  :
(Jurnal Informatika, Vol.5, No. 1, Juni 2009: 71 – 85, Analisis Data dengan Menggunakan ERD dan Model Konseptual Data Warehouse . Doro Edi , Stevalin Betshani)



8. Komponen dari LRS (Sebutkan dan Jelaskan) ?

Jawab  :


9. Komponen dari UML (Sebutkan dan Jelaskan) ?

Jawab  : Komponen-komponen UML
Sejauh ini para pakar merasa lebih mudah dalam menganalisa dan mendesain atau memrodelkan suatu sistem karena UML memiliki seperangkat aturan dan notasi dalam bentuk grafis yang cukup spesifik (Sugrue J. 2009).
Komponen atau notasi UML diturunkan dari 3 (tiga) notasi yang telah ada sebelumnya yaitu Grady Booch, OOD (Object-Oriented Design), Jim Rumbaugh, OMT (Object Modelling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).
Pada UML versi 2 terdiri atas tiga kategori dan memiliki 13 jenis diagram yaitu :

1. Struktur Diagram
Menggambarkan elemen dari spesifikasi dimulai dengan kelas, obyek, dan hubungan mereka, dan beralih ke dokumen arsitektur logis dari suatu sistem. Struktur diagram dalam UML terdiri atas :
1) Class diagram
Class diagram menggambarkan struktur statis dari kelas dalam sistem anda dan menggambarkan atribut, operasi dan hubungan antara kelas. Class diagram membantu dalam memvisualisasikan struktur kelas-kelas dari suatu sistem dan merupakan tipe diagram yang paling banyak dipakai. Selama tahap desain, class diagram berperan dalam menangkap struktur dari semua kelas yang membentuk arsitektur sistem yang dibuat.
Class memiliki tiga area pokok :
1. Nama (dan stereotype)
2. Atribut
3. Metoda 
2) Object diagram
Object diagram menggambarkan kejelasan kelas dan warisan dan kadang-kadang diambil ketika merencanakan kelas, atau untuk membantu pemangku kepentingan non-program yang mungkin menemukan diagram kelas terlalu abstrak.
Berikut notasi object diagram.
3) Component diagram
Component diagram menggambarkan struktur fisik dari kode, pemetaan pandangan logis dari kelas proyek untuk kode aktual di mana logika ini dilaksanakan.
Gambar 3. Notasi component diagram.

4) Deployment diagram (Collaboration diagram in version 1.x)
Deployment diagram memberikan gambaran dari arsitektur fisik perangkat lunak, perangkat keras, dan artefak dari sistem. Deployment diagram dapat dianggap sebagai ujung spektrum dari kasus penggunaan, menggambarkan bentuk fisik dari sistem yang bertentangan dengan gambar konseptual dari pengguna dan perangkat berinteraksi dengan sistem.

Gambar 4. Notasi deployment diagram. 

5) Composite structure diagram

Sebuah diagram struktur komposit mirip dengan diagram kelas, tetapi menggambarkan bagian individu, bukan seluruh kelas. Kita dapat menambahkan konektor untuk menghubungkan dua atau lebih bagian dalam atau ketergantungan hubungan asosiasi. 
Gambar 5. Notasi composite diagram.

6) Package diagram
Paket diagram biasanya digunakan untuk menggambarkan tingkat organisasi yang tinggi dari suatu proyek software. Atau dengan kata lain untuk menghasilkan diagram ketergantungan paket untuk setiap paket dalam Pohon Model. 
Gambar 6. Notasi package diagram.

2. Behavior Diagram
Menggambarkan ciri-ciri behavior/metode/ fungsi dari sebuah sistem atau business process. Behavior diagram dalam UML terdiri atas :
7) Use case diagram
Diagram yang menggambarkan actor, use case dan relasinya sebagai suatu urutan tindakan yang memberikan nilai terukur untuk aktor. Sebuah use case digambarkan sebagai elips horizontal dalam suatu diagram UML use case.
Use Case memiliki dua istilah
1. System use case; interaksi dengan sistem.
2. Business use case; interaksi bisnis dengan konsumen atau kejadian nyata 


Gambar 7. Notasi use case diagram. 

8) Activity diagram
Menggambarkan aktifitas-aktifitas, objek, state, transisi state dan event. Dengan kata lain kegiatan diagram alur kerja menggambarkan perilaku sistem untuk aktivitas 


Gambar 8. Notasi activity diagram. 


9) State Machine diagram (State chart diagram in version 1.x)

Menggambarkan state, transisi state dan event.
Gambar 9. Notasi state machine diagram.

3. Interaction diagram
Bagian dari behavior diagram yang menggambarkan interaksi objek. Interaction diagram dalam UML terdiri atas :
10) Communication diagram
Serupa dengan sequence diagram, tetapi diagram komunikasi juga digunakan untuk memodelkan perilaku dinamis dari use case. Bila dibandingkan dengan Sequence diagram, diagram komunikasi lebih terfokus pada menampilkan kolaborasi benda daripada urutan waktu. 
Gambar 10. Notasi communication diagram.

11) Interaction Overview diagram
Interaksi overview diagram berfokus pada gambaran aliran kendali interaksi dimana node adalah interaksi atau kejadian interaksi.

Gambar 11. notasi overview diagram. 


12) Sequence diagram
Sequence diagram menjelaskan interaksi objek yang disusun berdasarkan urutan waktu. Secara mudahnya sequence diagram adalah gambaran tahap demi tahap, termasuk kronologi (urutan) perubahan secara logis yang seharusnya dilakukan untuk menghasilkan sesuatu sesuai dengan use case diagram 
Gambar 12. Notasi sequence diagram

13) Timing diagram
Timing diagram di UML didasarkan pada diagram waktu hardware awalnya dikembangkan oleh para insinyur listrik.


Gambar 13. Notasi timing diagram. 

Untuk menggambarkan analisa dan desain diagram, UML memiliki seperangkat notasi yang akan digunakan ke dalam tiga kategori diatas yaitu struktur diagram, behaviour diagram dan interaction diagram. Berikut beberapa notasi dalam UML diantaranya :
1. Actor; menentukan peran yang dimainkan oleh user atau sistem lain yang berinteraksi dengan subjek. Actor adalah segala sesuatu yang berinteraksi langsung dengan sistem aplikasi komputer, seperti orang, benda atau lainnya. Tugas actor adalah memberikan informasi kepada sistem dan dapat memerintahkan sistem untuk melakukan sesuatu tugas. 
Gambar 14. Notasi actor

2. Class diagram; Notasi utama dan yang paling mendasar pada diagram UML adalah notasi untuk mempresentasikan suatu class beserta dengan atribut dan operasinya. Class adalah pembentuk utama dari sistem berorientasi objek. 
Gambar 15. Notasi class

3. Use Case dan use case specification; Use case adalah deskripsi fungsi dari sebuah sistem
perspektif pengguna. Use case bekerja dengan cara mendeskripsikan tipikal interaksi antara user (pengguna) sebuah sistem dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Urutan langkah-langkah yang menerangkan antara pengguna dan sistem disebut skenario.
Use case merupakan awal yang sangat baik untuk setiap fase pengembangan berbasis objek, design, testing, dan dokumentasi yang menggambarkan kebutuhan sistem dari sudut pandang di luar sistem.
Perlu diingat bahwa use case hanya menetapkan apa yang seharusnya dikerjakan oleh sistem, yaitu kebutuhan fungsional sistem dan tidak untuk menentukan kebutuhan non-fungsional, misalnya: sasaran kinerja, bahasa pemrograman dan lain sebagainya. 
Gambar 16. Notasi use case

4. Realization; Realization menunjukkan hubungan bahwa elemen yang ada di bagian tanpa panah akan merealisasikan apa yang dinyatakan oleh elemen yang ada di bagian dengan panah. 
Gambar 17. Notasi realization

5. Interaction; Interaction digunakan untuk menunjukkan baik aliran pesan atau informasi antar obyek maupun hubungan antar obyek. 
Gambar 18. Notasi interaction

6. Dependency; Dependency merupakan relasi yang menunjukan bahwa perubahan pada salah satu elemen memberi pengaruh pada elemen lain. Terdapat 2 stereotype dari dependency, yaitu include dan extend. Include menunjukkan bahwa suatu bagian dari elemen (yang ada digaris tanpa panah) memicu eksekusi bagian dari elemen lain (yang ada di garis dengan panah). Extend menunjukkan bahwa suatu bagian dari elemen di garis tanpa panah bisa disisipkan ke dalam elemen yang ada di garis dengan panah. 
Gambar 19. Notasi dependency

7. Note; Note digunakan untuk memberikan keterangan atau komentar tambahan dari suatu elemen sehingga bisa langsung terlampir dalam model. Note ini bisa disertakan ke semua elemen notasi yang lain.

Gambar 20. Notasi note

8. Association; Association menggambarkan navigasi antar class (navigation), berapa banyak obyek lain yang bisa berhubungan dengan satu obyek (multiplicity antar class) dan apakah suatu class menjadi bagian dari class lainnya (aggregation). 
Gambar 21. Notasi association


9. Generalization; Generalization menunjukkan hubungan antara elemen yang lebih umum ke elemen yang lebih spesifik. 
Gambar 22. Notasi generalization

10. Package; package adalah mekanisme pengelompokkan yang dgunakan untuk menandakan pengelompokkan elemen-elemen model. 
Gambar 23. Notasi package

11. Interface; Interface merupakan kumpulan operasi berupa implementasi dari suatu class. Atau dengan kata lain implementasi operasi dalam interface dijabarkan oleh operasi di dalam class. 
Gambar 24. Notasi interface


10. Konsep dari OOP (Sebutkan dan Jelaskan) ?

Jawab  Konsep OOP (Object Oriented Programming) 
1. Kelas Abstrak (Class Abstraksi)
    • Kelas merupakan deskripsi abstrak informasi dan tingkah laku dari sekumpulan data.
    • Kelas dapat diilustrasikan sebagai suatu cetak biru(blueprint) atau prototipe yang digunakan untuk menciptakan objek.
    • Kelas merupakan tipe data bagi objek yang mengenkapsulasi data dan operasi pada data dalam suatu unit tunggal.
    • Kelas mendefinisikan suatu struktur yang terdiri atas data kelas (data field), prosedur atau fungsi (method), dan sifat kelas (property).
2. Enkapsulasi (encapsulation)
    • Istilah enkapsulasi sebenarnya adalah kombinasi data dan fungsionalitas dalam sebuah unit tunggal sebagai bentuk untuk menyembunyikan detail informasi.
    • Proses enkapsulasi memudahkan kita untuk menggunakan sebuah objek dari suatu kelas karena kita tidak perlu mengetahui segala hal secara rinci.
    • Enkapsulasi menekankan pada antarmuka suatu kelas, atau dengan kata lain bagaimana menggunakan objek kelas tertentu.
    • Contoh: kelas mobil menyediakan antarmuka fungsi untuk menjalankan mobil tersebut, tanpa kita perlu tahu komposisi bahan bakar, udara dan kalor yang diperlukan untuk proses tersebut.
3. Pewarisan (Inheritance)
    • Kita dapat mendefinisikan suatu kelas baru dengan mewarisi sifat dari kelas lain yang sudah ada.
    • Penurunan sifat ini bisa dilakukan secara bertingkattingkat, sehingga semakin ke bawah kelas tersebut menjadi semakin spesifik.
    • Sub kelas memungkinkan kita untuk melakukan spesifikasi detail dan perilaku khusus dari kelas supernya.
    • Dengan konsep pewarisan, seorang programmer dapat menggunakan kode yang telah ditulisnya pada kelas super berulang kali pada kelas-kelas turunannya tanpa harus menulis ulang semua kodekode itu.
4. Polimorfisme (polymorphism)
    • Polimorfisme merupakan kemampuan objekobjek yang berbeda kelas namun terkait dalam pewarisan untuk merespon secara berbeda terhadap suatu pesan yang sama.
    • Polimorfisme juga dapat dikatakan kemampuan sebuah objek untuk memutuskan method mana yang akan diterapkan padanya, tergantung letak objek tersebut pada jenjang pewarisan.
    • Method overriding.
    • Method name overloading. (Sumber : Codenhead-javabasic.pdf)


11. Bahasa dalam OOP (Sebutkan dan Jelaskan) ?
Jawab  :    1.   Java: Java adalah bahasa pemrograman tingkat tinggi yang berorientasi objek dan program java tersusun 
                       dari bagian yang disebut kelas. Kelas terdiri atas metode-metode yang melakukan pekerjaan dan
                       mengembalikan informasi setelah melakukan tugasnya.
                      (sumber: https://didiindra.wordpress.com/tag/pengertian-java/)
2.   C#:  adalah sebuah bahasa pemrograman modern yang bersifat general-purpose‎berorientasi objek, yang dapat digunakan untuk membuat program di atas arsitektur Microsoft .NET Framework. ‎Bahasa C# ini memiliki kemiripan dengan bahasa JavaC dan C++
3.  C++: merupakan bahasa pemrograman yang memiliki sifat Pemrograman berorientasi objek, Untuk menyelesaikan masalah, C++ melakukan langkah pertama dengan menjelaskan class-class yang merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari object-object fisik, Class tersebut berisi keadaan object, anggota-anggotanya dan kemampuan dari objectnya, Setelah beberapa Class dibuat kemudian masalah dipecahkan dengan Class.
4.    Python: bahasa pemrograman interpretatif multiguna dengan filosofi perancangan yang berfokus pada tingkat keterbacaan kode. Python diklaim sebagai bahasa yang menggabungkan kapabilitas, kemampuan, dengan sintaksis kode yang sangat jelas, dan dilengkapi dengan fungsionalitas pustaka standar yang besar serta komprehensif.
5.    PHP : singkatan dari "PHP: Hypertext Prepocessor", yaitu bahasa pemrograman yang digunakan secara luas untuk penanganan pembuatan dan pengembangan sebuah situs webdan bisa digunakan bersamaan dengan HTML.
6.  Ruby : bahasa pemrograman dinamis berbasis skrip yang berorientasi obyek. Tujuan dari ruby adalah menggabungkan kelebihan dari semua bahasa-bahasa pemrograman skrip yang ada di dunia. Ruby ditulis dengan bahasa pemrograman C dengan kemampuan dasar seperti Perl dan Python.
7.   Perl adalah singkatan dari Practical Extraction and Report Language. Bahasa pemrograman ini diciptakan oleh Larry Wall pada tahun 1986 yang awalnya digunakan sebagai perangkat lunak yang digunakan untuk menulis program di lingkungan UNIX.
8.    Object Pascal : sebuah bahasa yang mendukung penuh konsep OOP. Sederhananya, bahasa ini memungkinkan bagi programmer untuk membuat dan memanipulasi object.
9.   Objective-C : bahasa pemrograman native utama yang dipakai untuk membuat aplikasi Mac. Bahasa ini diextend dari bahasa C yang menggunakan style dari Smalltalk. Semua syntax untuk operasi non object oriented hampir sama dengan C, sedangkan untuk operasi object oriented mengimplementasi dari style Smalltalk
10.  Dart merupakan bahasa pemrograman general-purpose yang dirancang oleh Lars Bak dan Kasper Lund. Bahasa pemrograman ini dikembangkan sebagai bahasa pemrograman aplikasi yang dapat dengan mudah untuk dipelajari dan disebarkan dan dapat digunakan untuk mengembangkan berbagai macam platform termasuk di dalamnya adalah web, aplikasi mobileserver, dan perangkat yang mengusung teknologi Internet of Things.

Komentar

Postingan populer dari blog ini

Tugas Perpustakaan Smart

SOAL PRA UTS SISTEM BASIS DATA