makalah pbo siti rohmatul k

25
Tugas Makalah Pemrograman Berorientasi Objek (PBO) TI022314 Desain Dan Perancangan Aplikasi Buku Pintar Siswa Indonesia Berbasis Android dan desktop Untuk Implementasi Smart Learning Oleh : (Siti Rohmatul Khasanah) (1404505076) Dosen : I Putu Agus Eka Pratama, ST MT Jurusan Teknologi Informasi Fakultas Teknik Universitas Udayana 2015

Upload: rohma-celaludicarie

Post on 08-Nov-2015

75 views

Category:

Documents


11 download

DESCRIPTION

Desain Dan Perancangan Aplikasi Buku Pintar Siswa Indonesia Berbasis Android dan desktop Untuk Implementasi Smart Learning oleh Siti Rohmatul K

TRANSCRIPT

  • Tugas Makalah

    Pemrograman Berorientasi Objek (PBO)

    TI022314

    Desain Dan Perancangan Aplikasi Buku Pintar Siswa Indonesia Berbasis

    Android dan desktop Untuk Implementasi Smart Learning

    Oleh :

    (Siti Rohmatul Khasanah)

    (1404505076)

    Dosen :

    I Putu Agus Eka Pratama, ST MT

    Jurusan Teknologi Informasi

    Fakultas Teknik Universitas Udayana

    2015

  • i

    KATA PENGANTAR

    Dengan mengucapkan puji syukur kehadirat Tuhan Yang Maha Esa yang telah

    memberikan rahmat-Nya kepada penyusun sehingga penyusun dapat

    menyelesaikan penyusunan makalah Desain Dan Perancangan Aplikasi Buku

    Pintar Siswa Indonesia Berbasis Android dan desktop Untuk Implementasi Smart

    Learning ini.

    Meskipun penyusun telah berusaha dengan sebaik baiknya dalam

    menyusun makalah ini, namun penyusun menyadari bahwa masih banyak

    kekurangan, baik dari sistematika maupun penyusunan kalimatnya. Oleh karena

    itu, penyusun sangat mengharap kritik dan saran yang membangun, demi

    kesempurnaan makalah ini.

    Penyusun berharap semoga dari makalah ini pembaca dapat mengambil

    hikmah dan manfaatnya sehingga bermanfaat dan dapat memberikan inspirasi

    bagi kita semua.

    Denpasar, 20 Mei 2015

    Penyusun

  • ii

    Daftar Isi

    Kata Pengantar ............................................................................................. i

    Daftar Isi ..................................................................................................... ii

    Abstrak ...................................................................................................... iii

    Bab I Pendahuluan

    I.1 Latar Belakang ............................................................................. 4

    I.2 Rumusan Masalah......................................................................... 5

    I.3 Solusi yang ditawarkan ................................................................. 5

    Bab II Landasan Teori dan Desain Solusi

    II.1 Landasan Teory .......................................................................... 6

    II.1.1 Smart City ......................................................................... 6

    II.1.2 Java ................................................................................... 6

    II.1.3 Objek Oriented ................................................................ 11

    II.2 Desain Solusi (UML) ................................................................ 15

    II.2.1 Use Case Diagramn ............................................................... 15

    II.2.2 Sequence Diagram .................................................................. 16

    II.2.3 Class Diagram ........................................................................ 19

    II.2.4 Tampilan GUI Untuk Buku Pintar Siswa Indonesia ................ 20

    Bab III Analisa dan Kesimpulan

    III.1 Analisa ..................................................................................... 22

    III.2 Kesimpulan .............................................................................. 22

    Daftar Pustaka ........................................................................................... iv

  • iii

    Abstrak

    Implementasi Smart City banyak diterapkan oleh kota-kota besar saat ini,

    banyak sekali bidang yang bisa diimplementasikan. Salah satunya adalah di

    bidang pendidikan (Smart Learning). Indonesia mempnyai beberapa jenjang

    pendidikan, mulai dari PAUD, TK, SD, SMP, SMA/SMK dan perguruan tinggi

    dimana terdapat sejumlah permasalahan pendidikan, yang mana dapat dikelola

    dan ditangani dengan baik, berbasiskan Teknologi Informasi. Salah satunya

    adalah dengan pemanfaatan bahasa pemrograman Java yang menggunakan konsep

    Object Oriented, ke dalam platform Android dan Desktop. Solusi yang ditawarkan

    adalah dengan penyediaan desain dan perancangan aplikasi mobile Android dan

    desktop berupa Smart Learning, yang akan diimplementasikan dengan

    berbasiskan konsep objek oriented pada Java. Makalah ini menyajikan latar

    belakang, masalah, solusi, hingga desain perancangan ke dalam UML.

    Kata kunci :

    Smart City, Smart learning, Java, UML, Object Oriented

  • 4

    Bab I Pendahuluan

    I.1 Latar Belakang

    Di Indonesia, semua penduduk wajib mengikuti program wajib belajar

    pendidikan dasar selama sembilan tahun, enam tahun di sekolah

    dasar/madrasah ibtidaiyah dan tiga tahun di sekolah menengah

    pertama/madrasah tsanawiyah. Pendidikan di Indonesia terbagi ke dalam

    tiga jalur utama, yaitu formal, nonformal, dan informal. Pendidikan juga

    dibagi ke dalam empat jenjang, yaitu anak usia dini, dasar, menengah, dan

    tinggi.

    Sekolah menengah pertama (SMP) adalah jenjang pendidikan dasar

    pada pendidikan formal di Indonesia setelah lulus sekolah dasar (atau

    sederajat). Sekolah menengah pertama ditempuh dalam waktu 3 tahun,

    mulai dari kelas 7 sampai kelas 9. Selanjutnya Sekolah Menengah Atas

    (SMA) adalah jenjang pendidikan menengah pada pendidikan formal di

    Indonesia setelah lulus Sekolah Menengah Pertama (atau sederajat). Sekolah

    menengah atas ditempuh dalam waktu 3 tahun, mulai dari kelas 10 sampai

    kelas 12.

    Kemajuan teknologi semakin pesat merambah kedalam kehidupan

    sehari-hari seperti kemajuan teknologi Gadget, smartphone, maupun laptop.

    Teknologi yang sangat dekat dan merupakan kebutuhan sehari-hari oleh

    semua orang adalah teknologi Telepon Selular, yang hampir semua orang

    memiliki dalam genggamanya dan juga laptop yang mudah di bawa ke mana

    saja. Gadget, smartphone, maupun laptop lebih sering di bawa para

    siswa/siswi SMP maupun SMA untuk proses belajar, mereka cenderung

    malas untuk membawa buku yang terlalu berat.

    Untuk itu perlu dibuat sebuah aplikasi untuk mempermudah proses

    pembelajaran siswa/siswi SMP maupun SMA. Aplikasi Buku Pintar Siswa

    Indonesia Berbasis Android dan desktop ini akan membuat siswa dan guru

    lebih mudah dalam proses pembelajaran. Aplikasi ini merupakan

    implementasi dari Smart learning . Dengan adanya smart learning ini,

  • 5

    diharapkan dapat menambah semangat belajar dan pengetahuan para

    siswa/siswi di tingkat SMP maupun SMA.

    I.2 Rumusan Masalah

    a. Apa yang dimaksud dengan Smart City ?

    b. Apa itu aplikasi Buku Pintar Siswa Indonesia ?

    c. Bagaimana desain dan rancangan aplikasi Buku Pintar Siswa Indonesia?

    I.3 Solusi Yang Ditawarkan

    Untuk mengurangi barang yang dibawa siswa yaitu buku maka

    dirancang aplikasi Buku Pintar Siswa Indonesia utuk menggantikan buku

    tersebut, aplikasi ini dapat di install di perangkat Gadget, smartphone,

    maupun laptop yang sudah sering dibawa oleh para siswa/siswi. Siswa/siswi

    lebih cenderung sering melihat Gadget, smartphone, maupun laptop mereka

    dari pada membawa dan membaca buku yang sangat tebal.

    Aplikasi ini mempermudah proses pembelajaran yang ada di sekolah

    karena telah memanfaatkan teknologi yang sering digunakan oleh para

    siswa/siswi. Siswa/siswi dapat belajar dimana saja dan kapan saja tanpa

    harus berat membawa buku yang mungkin berat untuk dibawa. Semua

    aktivitas yang berkaitan dengan belajar mengajar dapat di lihat melalui

    aplikasi ini seperti melihat nilai, melihat jadwal pelajaran, melihat tugas

    yang diberikan guru, melihat silabus, dll.

  • 6

    Bab II Landasan Teori Dan Desain Solusi

    II.1 Landasan Teori

    II.1.1 Smart City

    Smart city atau secara harfiah berarti kota pintar, merupakan suatu

    konsep pengembangan, penerapan, dan implementasi teknologi yang

    diterapkan untuk suatu wilayah (khiususnya perkotaan) sebagai sebuah

    interaksi yang kompleks diantara berbagai sistem yang ada di dalamnya.

    Disini digunakan kata city (kota) untuk merujuk kepada kota

    sebagai pusat dari sebuah negara atau wilayah, dimana semua pusat

    kehidupanberada (pemerintahan, perdagangan, pendidikan, kesehata,

    pertahanan, dan lain-lain). Demikian pula dengan pusat pemukiman

    penduduk, dimana jumlah penduduk di kota jauh lebih banyak

    dibandingkan wilayah lainnya (misal desa/subkota).

    Dengan kata lain Smart city merupakan sebuah konsep kota cerdas

    yang dapat membantu masyarakat mengelola sumber daya yang ada dengan

    effisien dan memberikan informasi yang tepat kepada masyarakat atau

    lembaga dalam melakukan kegiatannya atau pun mengantisipasi kejadian

    yang tek terduga sebelumnya

    Smart city merupakan sebuah impian dari hampir semua Negara di

    dunia. Dengan Smart City, berbagai macam data dan informasi yang berada

    di setiap sudut kota dapat dikumpulkan melalui sensor yang terpasang di

    setiap sudut kota, dianalisis dengan aplikasi cerdas, selanjutnya disajikan

    sesuai dengan kebutuhan pengguna melalui aplikasi yang dapat diakses oleh

    berbagai jenis gadget. Melalui gadgetnya,secara interaktif pengguna juga

    dapat menjadi sumber data, mereka mengirim informasi ke pusat data untuk

    dikonsumsi oleh pengguna yang lain.

    II.1.2 Java

    II.1.2.1 Pengertian Java

    Java adalah bahasa pemrograman yang multi platform dan multi

    device. Sekali anda menuliskan sebuah program dengan menggunakan Java,

  • 7

    anda dapat menjalankannya hampir di semua komputer dan perangkat lain

    yang support Java, dengan sedikit perubahan atau tanpa perubahan sama

    sekali dalam kodenya. Aplikasi dengan berbasis Java ini dikompulasikan ke

    dalam p-code dan bisa dijalankan dengan Java Virtual Machine.

    Fungsionalitas dari Java ini dapat berjalan dengan platform sistem operasi

    yang berbeda karena sifatnya yang umum dan non-spesifik.

    Gambar logo java

    (sumber: http://belajar-komputer-mu.com)

    II.1.2.2 Karakteristik Java

    Java adalah sebuah bahasa pemrograman berorientasi obyek murni.

    Jadi program program Java berada dalam sebuah struktur kelas kelas

    dan obyek obyek. Pada dasarnya sintaks pada bahasa Java mirip

    dengan sintaks pada bahasa C atau C++. Java bertipe kuat (strongly-

    typed). Ini berarti semua tipe data terikat secara statis atau dengan kata

    lain setiap nama variabel diasosiasikan dengan sebuah tipe data tunggal

    yang dikenali pada saat kompilasi.

    Pemrograman Berorientasi Obyek (OOP), Pemisalan Objek dalam

    OOP Objek-objek dalam dunia nyata, mempunyai 2 karakteristik khusus

    : Status dan Perilaku. Contohnya, sepeda punya status(jumlah gir, jumlah

    pedal, dua buah ban) dan perilaku(mengerem, mempercepat, ubah gir).

    Bahasa yang berorientasi pada objek pun mempunyai karakteristik yang

    sama dengan objek-objek di dunia nyata. Yaitu status yang dalam bahasa

    pemrograman biasanya disimpan sebagai Variabel dan perilaku yang

    diimplementasikan sebagai Method.

  • 8

    II.1.2.3 Ciri Utama Dari Program Java Adalah :

    1. JVM (Java Virtual Machine)

    2. Garbage Collection

    3. Code Security

    II.1.2.4 Edisi Java

    Java adalah bahasa yang dapat dijalankan dimanapun dan di

    sembarang platform apapun, di beragam lingkngan : internet, intranets,

    consumer electronic products, dan computer applications.The java 2

    platform tersedia dalam 3 edisi untuk keperluan berbeda. Untuk beragam

    aplikasi yang dibuat dengan bahasa Java, java dipaketkan dalam edis

    edisi berikut :

    1. Java 2 Standard Edition ( J2SE )

    2. Java 2 Enterprise dition ( J2EE )

    3. Java 2 Micro Edition ( J2ME )

    Masing masing edisi berisi Java 2 Software Development Kit (

    J2SDK ) untuk mengembangkan aplikasi dan Java 2 Runtime Environent

    ( J2RE ) untuk menjalankan aplikasi.

    II.1.2.5 Kelebihan Java

    1. Multiplatform. Java dapat dijalankan dalam beberapa platform

    komputer dan sistem operasi yang berbeda. Hal ini sesuai dengan

    slogannya yangs udah dibahas sebelumnya.

    2. OOP atau Object Oriented Programming. Java memiliki library

    yang lengkap. Library disini adalah sebuah kumpulan dari program

    yang disertakan dalam Java. Hal ini akan memudahkan

    pemrograman menjadi lebih mudah. Kelengkapan library semakin

    beragam jika ditambah dengan karya komunitas Java.

    3. Java dapat dipergunakan sebagai penterjemah sehingga dapat

    digunakan pada lingkungan komputer jenis apapun tanpa merubah

    kode program kembali.

  • 9

    4. Multithreading, sehingga program java dapat melakukan beberapa

    perintah (program) sekaligus.

    5. Java dirancang agar mudah dipelajari dan digunakan secara efektif.

    Java tidak menyediakan fitur-fitur rumit bahasa pemrograman

    tingkat tinggi, serta banyak pekerjaan pemrograman yang mulanya

    harus dilakukan manual, sekarang digantikan dikerjakan Java

    secara otomatis seperti dealokasi memori. Bagi pemrogram yang

    sudah mengenal bahasa C++ akan cepat belajar susunan bahasa

    Java namun harus waspada karena mungkin Java mengambil arah

    (semantiks) yang berbeda dibanding C++.

    6. Seluruh objek diprogram harus dideklarasikan lebih dulu sebelum

    digunakan. Ini merupakan keunggulan Java yaitu Statically Typed.

    Pemaksaan ini memungkinkan kompilator Java menentukan dan

    melaporkan terjadinya pertentangan (ketidakkompatibelan) tipe

    yang merupakan barikade awal untuk mencegah kesalahan yang

    tidak perlu (seperti mengurangkan variabel bertipe integer dengan

    variabel bertipe string). Pencegahan sedini mungkin diharapkan

    menghasilkan program yang bersih. Kebaikan lain fitur ini adalah

    kode program lebih dapat dioptimasi untuk menghasilkan program

    berkinerja tinggi.

    7. Java memiliki tingkat keamanan yang sangat baik. Java

    menggunakan model pengamanan tiga lapis (three-layer security

    model) untuk melindungi sistem dari untrusted Java code. Pertama,

    bytecode verifier membaca bytecode sebelum dijalankan dan

    menjamin bytecode memenuhi aturan-aturan dasar bahasa Java.

    Kedua, class loader menangani pemuatan kelas Java ke runtime

    interpreter. Ketiga, manajer keamanan menangani keamanan

    tingkat aplikasi dengan mengendalikan apakah program berhak

    mengakses sumber daya seperti sistem file, port jaringan, proses

    eksternal dan sistem window.

    8. Platform independence adalah kemampuan program bekerja di

    sistem operasi yang berbeda. Bahasa Java merupakan bahasa yang

  • 10

    secara sempurna tidak bergantung platform. Tipe variabel Java

    mempunyai ukuran sama di semua platform sehingga variabel

    bertipe integer berukuran sama tidak peduli dimana program java

    dikompilasi. Begitu telah tercipta file .class dengan menggunakan

    kompilator Java di platform manapun, maka file .class tersebut

    dapat dijalankan di platform manapun. Jadi dimanapun dibuat,

    dimanapun dapat dijalankan. Slogan ini biasa diringkas sebagai

    Write Once, Run Anywhere (WORA).

    9. Program Java melakukan garbage collection yang berarti program

    tidak perlu menghapus sendiri objek-objek yang tidak digunakan

    lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh

    pemrogram dan mengurangi atau mengeliminasi sumber kesalahan

    terbesar yang terdapat di bahasa yang memungkinkan alokasi

    dinamis.

    10. Java mempunyai mekanisme exception-handling yang ampuh.

    Exception-handling menyediakan cara untuk memisahkan antara

    bagian penanganan kesalahan dengan bagian kode normal sehingga

    menuntun ke struktur kode program yang lebih bersih dan

    menjadikan aplikasi lebih tegar. Ketika kesalahan yang serius

    ditemukan, program Java menciptakan exception. Exception dapat

    ditangkap dan dikelola program tanpa resiko membuat sistem

    menjadi turun.

    11. Program Java mendukung native method yaitu fungsi ditulis di

    bahasa lain, biasanya C/C++. Dukungan native method

    memungkinkan pemrogram menulis fungsi yang dapat dieksekusi

    lebih cepat dibanding fungsi ekivalen di java. Native method secara

    dinamis akan di-link ke program java, yaitu diasosiasikan dengan

    program saat berjalan.

    12. Kelebihan Java di bandingkan dengan C++. Pembuat program java

    telah merancang java untuk menghilangkan pengalokasian dan

    dealokasi memori secara manual, karena java memiliki Garbage

    Collection Diperkenalkannya deklarasi array yang sebenarnya dan

  • 11

    menghilangkan aritmatika pointer. Hal ini yang sering

    menyebabkan memori overwrite. Dihilangkannya multiple

    inheritance, mereka menggantinya dengan interface.

    II.1.2.5 Kekurangan Java

    1. Pada satu slogannya, takni Tulis sekali dan jalankan dimana saja

    ternyata tidak sepenuhnya benar. Beberapa hal harus disesuaikan

    jika dijalankan pada platform yang berbeda. Misalnya untuk J2SE

    dengan platform SWT-AWT bridge tidak dapat berfungsi di Mac

    OS X. Kekurangan lainnya adalah kemudahan aplikasi Java

    didekompilasi. Dekompilasi adalah suatu proses membalikkan

    sebuah aplikasi menjadi kode sumbernya. Hal ini memungkinkan

    terjadi pada Java karena berupa bytecode yang menyimpan bahasa

    tingkat tinggi. Hal ini terjadi pula pada platform .NET dari

    Microsoft sehingga program yang dihasilkan mudah dibajak

    kodenya karena sulit untuk disembunyikan.

    2. Penggunaan memori yang cukup banyak, lebih besar daripada

    bahasa tingkat tinggi sebelum generasi Java. Namun hal ini

    memang sesuai dengan fitur beragam yang dimiliki oleh Java.

    Masalah memori ini juga tidak dialami oleh semua pengguna

    aplikasi Java. Mereka yang sudah menggunakan perangkat keras

    dengan teknologi terbaru tidak merasakan kelambatan dan

    konsumsi memori Java yang tinggi. Lain halnya dengan mereka

    yang menggunakan teknologi lama atau komputer yang sudah

    berumur tua lebih dari empat tahun akan merasakan adanya

    kelambatan. Namun apapun kelemahan yang dimiliki Java,

    faktanya adalah Java merupakan bahasa pemrograman yang

    populer dan digunakan di seluruh dunia saat ini.

    II.1.3 Object Oriented

    II.1.3.1 Pengertian OOP (Object Oriented Programming)

    OOP (Object Oriented Programming) adalah suatu metode

    pemrograman yang berorientasi kepada objek. Tujuan dari OOP

  • 12

    diciptakan adalah untuk mempermudah pengembangan program dengan

    cara mengikuti model yang telah ada di kehidupan sehari-hari. Jadi setiap

    bagian dari suatu permasalahan adalah objek, nah objek itu sendiri

    merupakan gabungan dari beberapa objek yang lebih kecil lagi. Saya

    ambil contoh Pesawat, Pesawat adalah sebuah objek. Pesawat itu sendiri

    terbentuk dari beberapa objek yang lebih kecil lagi seperti mesin, roda,

    baling-baling, kursi, dll. Pesawat sebagai objek yang terbentuk dari

    objek-objek yang lebih kecil saling berhubungan, berinteraksi,

    berkomunikasi dan saling mengirim pesan kepada objek-objek yang

    lainnya. Begitu juga dengan program, sebuah objek yang besar dibentuk

    dari beberapa objek yang lebih kecil, objek-objek itu saling

    berkomunikasi, dan saling berkirim pesan kepada objek yang lain.

    II.1.3.2 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,

  • 13

    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. ub 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.

    II.1.3.3 Karakteristik OOP (Object Oriented Programming)

    1. Komputasi dilakukan dengan komunikasi antar objek. Setiap objek

    berkomunikasi dengan objek yang lain melalui pengiriman dan

    penerimaan pesan.

    2. Setiap objek memiliki memori sendiri, yang dapat terdiri dari

    objek-objek lainnya.

    3. Setiap objek adalah wakil atau representasi dari suatu kelas. Sebuah

    kelas dapat mewakili sekelompok objek yang sama.

    4. Kelas merupakan kumpulan tingkah laku yang berkaitan dengan

    suatu objek. Jadi, semua objek yang merupakan wakil dari kelas

    yang sama dapat melakukan aksi yang sama pula.

  • 14

    5. Kelas-kelas diorganisasikan ke dalam struktur pohon yang berakar

    tunggal, yang dinamakan dengan jenjang pewarisan (inheritance

    hierarchy).

    Contoh Program

    class Kendaraan{

    int posisi1;

    int kecepatan;

    int posisi2;

    int pergerakan;

    int getPosisi1(){

    return posisi1;}

    void setPosisi1(int theposisi1){

    posisi1 = theposisi1; }

    int getKecepatan(){

    return kecepatan; }

    void setKecepatan(int thekecepatan){

    kecepatan = thekecepatan; }

    posisi2 bergerak(){

    int jarak;

    int waktu;

    posisi2 = getKecepatan * waktu; }}

    class Mobil extends Kendaraan{}

    class KendaraanTestDrive{

    Mobil avanza = new Mobil;

    avanza.setPosisi1(30);

    avanza.setKecepatan(45);

    avanza.bergerak();

    }

  • 15

    II.2 Desain Solusi (UML)

    UML (Unified Modeling Language) adalah sebuah bahasa untuk

    menetukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian

    dari informasi yang digunakan atau dihasilkan dalam suatu proses

    pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau

    perangkat lunak) dari system perangkat lunak, seperti pada pemodelan

    bisnis dan system non perangkat lunak lainnya. Unified Modeling

    Language merupakan salah satu alat bantu yang dapat digunakan

    dalam bahasa pemograman yang berorientasi objek, saat ini UML akan

    mulai menjadi standar masa depan bagi industri pengembangan

    sistem/perangkat lunak yang berorientasi objek sebab pada dasarnya UML

    digunakan oleh banyak perusahaan raksasa seperti IBM, Microsoft, dan

    sebagainya.

    Gambar Tampilan UML

    (sumbr: gigihfordanama.wordpress.com)

    II.2.1 Use Case Diagram

    Use case diagram adalah abstraksi dari interaksi antara system

    dan actor. Use case bekerja dengan cara mendeskripsikan tipe

    interaksi antara user sebuah system dengan sistemnya sendiri melalui

    sebuah cerita bagaimana sebuah system dipakai. Diagram Use Case

    berguna dalam tiga hal :

    a. Menjelaskan fasilitas yang ada (requirement)

    b. Komunikasi dengan klien

    c. Membuat test dari kasus-kasus secara umum

  • 16

    Hak Akses :

    1. Admin : admin mempunyai hak akses paling banyak yaitu

    daftar(pendaftaran untuk username guru dan siswa), login,

    input(menginputkan jadwal pelajaran, silabus, dll), melihat

    silabus, melihat buku, melihat jadwal, dan print.

    2. Guru : guru mempunyai hak akses login, melihat silabus, melihat

    buku, melihat jadwal dan print.

    3. Siswa : siswa mempunyai hak akses login, melihat buku, melihat

    jadwal, dan print.

    II.2.2 Sequence Diagram

    Sequence diagram digunakan untuk menggambarkan prilaku pada

    sebuah skenario. Diagram jenis ini memberikan kejelasan sejumlah obyek

    dan pesan-pesan yang diletakkan diantaranya didalam sebuah use case.

    Komponen utamanya adalah obyek yang digambarkan dengan kotak segi

    empat, message yang digambarkan dengan garis penuh, dan waktu yang

    ditunjukkan dengan progress vertical.(Suhendar, 2002).

    Sequence diagram digunakan untuk memberikan gambaran detail

    dari setiap use case diagram yang dibuat sebelumnya. Setiap obyek yang

    terlibat dalam sebuah use case digambarkan dengan garis putus-putus

    vertical, kemudian massage yang dikirim oleh obyek digambarkan dengan

  • 17

    garis horisontal secara kronologis dari atas ke bawah. Sequance diagram

    dapat dilihat pada Gambar berikut :

    II.2.2.1 Tampilan sebelum Login

    II.2.2.2 Login

    II.2.2.3 Input

  • 18

    II.2.2.4 Melihat Silabus

    II.2.2.5 Melihat Buku

    II.2.2.6 Melihat Jadwal

    II.2.2.7 Print(contoh print jadwal)

  • 19

    II.2.3 Class Diagram

    Class adalah sebuah spesifikasi yang jika diinstansiasi akan

    menghasilkan sebuah objek dan merupakan inti dari pengembangan dan

    desain berorientasi objek. Class menggambarkan keadaan (atribut/properti)

    suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan

    tersebut (metoda/fungsi).

    Class adalah kumpulan objek-objek yang mempunyai struktur umum,

    behavior umum, relasi umum, dan semantic/kata yang umum. Class ini

    sebenarnya merupakan blue print dari sebuah

    objek. Dengan mendeklarasikan suatu class, maka kita telah mendeklar

    asikan suatu tipe data baru (tipe data referensi).

    Class diagram menggambarkan struktur dan deskripsi class,

    package dan objek beserta hubungan satu sama lain seperti containment ,

    pewarisan, asosiasi, dan lain-lain.

    Class memiliki tiga area pokok :

    1. Nama (dan stereotype)

    2. Atribut

    3. Metoda

    Atribut dan metoda dapat memiliki salah satu sifat berikut :

    Private , tidak dapat dipanggil dari luar class yang bersangkutan

    Protected , hanya dapat dipanggil oleh class yang bersangkutan dan anak-

    anak yang mewarisinya

    Public , dapat dipanggil oleh siapa saja

  • 20

    II.2.4 Tampilan Gui Aplikasi Buku Pintar Siawa Indonesia

    II.2.4.1 Tampilan awal sebelum Login Guru dan Siswa

    II.2.4.2 Tampilan awal sebelum Login Admiistrator

  • 21

    II.2.4.3 Login Guru dan Siswa

    II.2.4.4 Login Admiistrator

  • 22

    Bab III Analisa Dan Kesimpulan

    III.1 Analisa

    a. Apa yang dimaksud dengan Smart City ?

    Jawab : Smart city atau secara harfiah berarti kota pintar, merupakan suatu

    konsep pengembangan, penerapan, dan implementasi teknologi

    yang diterapkan untuk suatu wilayah (khiususnya perkotaan)

    sebagai sebuah interaksi yang kompleks diantara berbagai sistem

    yang ada di dalamnya.

    b. Apa itu aplikasi Buku Pintar Siswa Indonesia ?

    Jawab : Aplikasi Buku Pintar Siswa Indonesia adalah sebuah aplikasi utuk

    menggantikan buku yang biasanya di bawa oleh para siswa/i,

    aplikasi ini dapat di install di perangkat Gadget, smartphone,

    maupun laptop yang sudah sering dibawa oleh para siswa/siswi.

    c. Bagaimana desain dan rancangan aplikasi Buku Pintar Siswa

    Indonesia?

    Jawab : Rancangan aplikasi Buku Pintar Siswa menggunakan Desain

    UML yang terdiri dari rancangan Use Case Diagram, Squence

    Diagram dan Class Diagram. Dimana Use case diagram digunakan

    untuk mendesain abstraksi dari interaksi antara system dan actor.

    Sequence diagram digunakan untuk menggambarkan prilaku pada

    sebuah skenario. Class diagram digunakan untuk menggambarkan struktur

    dan deskripsi class, package dan objek beserta hubungan satu sama lain

    seperti containment , pewarisan, asosiasi, dan lain-lain.

    III.2 Kesimpulan

    Dari makalah Desain Dan Perancangan Aplikasi Buku Pintar Siswa

    Indonesia Berbasis Android dan desktop Untuk Implementasi Smart

    Learning dapa di ambil kesimpulan bahwa smart city Smart city merupakan

    sebuah konsep kota cerdas yang dapat membantu masyarakat mengelola

    sumber daya yang ada dengan effisien dan memberikan informasi yang

  • 23

    tepat kepada masyarakat atau lembaga dalam melakukan kegiatannya atau

    pun mengantisipasi kejadian yang tak terduga sebelumnya.

    Aplikasi Buku Pintar Siswa Indonesia ini dirancang agar

    mempermudah siswa maupun guru dalam proses belajar mengajar. Aplikasi

    ini juga di buat agar siswa tidak malas lagi untuk belajar karena terlalu berat

    utuk membawa buku sehingga siswa bisa belajar di mana saja dan kapan

    saja.

  • iv

    DAFTAR PUSTAKA

    [1] Eka Pratama, I Putu Agus. Smart City Beserta Dengan Cloud Computing Dan

    Teknologi Teknologi Pendukung Lainnya. Informatika, Bandung. 2014.

    [2] Pengertian Smart City

    http://smartcityindonesia.blogspot.com/

    [3] Jenjang pendidikan yang ada di Indonesia

    http://infokampusonline.com/4-jenjang-pendidikan-di-indonesia.html

    [4] Pengertian OOP

    http://www.academia.edu/9740255/MAKALAH_KONSEP_PENERAPAN_

    OOP_OBJECT_ORIENTED_PROGRAMMING_

    [4] Pengertian Java

    http://belajar-komputer-mu.com/pengertian-pemrograman-java-kelebihan-

    dan-kekurangan/

    [4] Pengertian UML

    http://www.academia.edu/4887559/Fungsi_Dan_Pengertian_UML