Minggu, 17 April 2016

Weekly Report 18/4/2016 - Reyhan Razaby

Seminggu belakangan ini saya melakukan merancang sprint backlog untuk sprint 2. Dan di sprint 2 ini rencana kami adalah melanjutkan halaman Welcome (biasa disebut Luthfi halaman default) yang tidak sempat dikerjakan pada sprint 1 lalu. Kemudian di sprint 2 ini rencananya adalah menyelesaikan masalah login dan register menggunakan server yang diberikan dari Badr. Kemudian juga menyelesaikan halaman Editmode yang tugasnya adalah mengedit amalan & kategori, menambah amalan & kategori, dan menghapus amalan & kategori.

Untuk hasil lebih detailnya bisa dilihat di Trello

Atau bisa dilihat di screenshot di bawah ini



Kemudian saya sudah berhasil membuat halaman (tampilan masih akan diperbaiki) Editmode dan secara fungsional sudah berhasil. Tampilan sementara bisa dilihat di bawah ini.



Saya tambahkan tombol tiga titik untuk memunculkan popup dan tombol silang untuk menghapus amalan atau kategori. Jika kategori dihapus, amalan-amalan yang ada di dalamnya sudah berhasil ikut dihapus. Selain itu pada menu popup baru bekerja pada pilihan "Edit", dan amalan yang diklik pada menu "Edit" tersebut sudah berhasil dibawa ke halaman Edit untuk mengedit amalan tersebut.

Selain itu saya juga sudah membuat halaman Welcome yang bertujuan untuk memilih amalan-amalan yang akan dievaluasi. Tampilan halaman sementara bisa dilihat di bawah ini


Code sudah saya push ke GIT

Selain itu saya melakukan perubahan pada userstory yaitu saya tambahkan fitur Settings yang tugasnya mampu mengubah bahasa, warna tampilan dan profil (seperti nama lengkap dan password).

Weekly Report 17/4/2016 - Muhamad Farhan Dzikri

Dalam 2 minggu ini yang saya kerjakan adalah menentukan primary color, secondary color dan accent color. Pilihan warna yang saya ambil dari primary color yaitu warna hitam di halaman login, secondary color yaitu warna kotak untuk mengisi nama saat registrasi, dan biru muda accent color sebagai headernya.


Kemudian saya jugamendesign halaman yang telah dibuat Luthfi agar sesuai dengan uiux aplikasi yang telah saya rancang sebelumnya. Design awal yang Luthfi buat adalah seperti berikut ini

Karena uiux saya gabungkan dengan gaya material design, maka saya berniat akan mengubah designnya menjadi seperti gambar dibawah ini. Ini adalah mock up yang saya buat di Corel Draw. Inspirasinya adalah dari aplikasi WhatsApp bagian settings.




Kemudian design ini saya implementasikan di Android studio sehingga hasilnya seperti gambar dibawah ini. Ukuran font, jarak hingga warna saya ikuti dari guideline material design. Ukuran font besar adalah 16sp, ukuran font kecil adalah 14sp dengan warna #88888, tinggi list adalah 72dp, dan padding kanan kiri adalah 16dp.



Setelah itu saya memasukkan fungsi dialog pada masing2 list. Jika di klik list akan menampilkan kotak dialog seperti ini.




Untuk menampilkan kotak dialog seperti ini kode yang dibuat cukup simple. Saya mempelajari kode ini dan berikut adalah penjelasannya.

Kode terdiri dari menampilkan Alert Dialog, Set View, Postive button, Negative button, Single Choice button, dan OnClickListener.
Alert dialog adalah fungsi untuk menampilkan kotak putih seperti gambar diatas.
Set view adalah fungsi untuk mengisi kotak alert dialog.
Positive button adalah fungsi untuk menyetujui pilihan alert dialog.
Negative button adalah fungsi untuk membatalkan pilihan alert dialog.
Single choice adalah isi dari alert dialog untuk membuat pilihan yang hanya dapat dipilih satu.
On click listener adalah fungsi untuk membuat respon dari fungsi2 yang diimplementasikan.
Di kode bagian awah ada fungsi SetText, tugasnya adalah untuk mengubah tulisan di halaman depan agar sesuai dengan pilihan user.

Selain itu saya juga mengimplementasikan Toast dimana fungsi tersebut akan menampilkan tulisan di dekat home button. Tujuannya adalah agar user mendapatkan feedback dari hasil pilihannya. Hasilnya dapat dilihat di gambar bawah berikut.



Namun setelah saya buat, saya mendapatkan inspirasi lain untuk mendesign uiux halaman ini. Saya terinspirasi dari Google Calendar seperti dibawah ini.




Saya merasa tampilan diatas lebih cokok untuk dijadikan tampilan membuat amalan baru. Karena halaman whatsapp diatas bukanlah halaman membuat, tapi mengubah settings. Jadi sebelum saya mengimplementasikannya di Android Studio saya mencoba membuat mockupnya di Corel Draw untuk saya tanyakan kepada teman2. Sejauh ini hasilnya adalah seperti berikut.


Weekly Report 17/4/2016 - Muhamad Hardi Ramli

Pada minggu-minggu lalu saya sudah mulai mencoba melakukan deploy server walaupun terjadi beberapa kesulitan karena secara pribadi saya belum pernah menggunakan laravel untuk dideploy ke server. Saya sempat kesulitan pada hal-hal seperti instalasi program tambahan yang dibutuhkan seperti php-mcrypt untuk menjalankan composer, update laravel pada server dan lainnya. Sebelum mengetahui hal tersebut yang saya lakukan adalah mengupdate kode tersebut secara lokal lalu menguploadnya melalui winSCP. Hal ini tentu menghambat laju development, apalagi jika internet yang bisa digunakan hanya dari modem/HP karena servernya tidak dapat diakses melalui akses internet UI.

Beberapa hal yang bisa saya share adalah cara menjalankan composer pada server, dan instalasi mcryptnya. Hal yang pertama kali harus diperhatikan adalah mengecek versi php yang ada pada server dengan 

php -v.
Setelah itu install mcrypt pada server sesuai dengan versi php yang ada pada server contoh jika yang digunakan adalah php 5 maka bisa menggunakan
sudo apt-get php5-mcrypt atau sudo yum php5-mcrypt. 

Upload file composer.phar ke server lalu jalankan 

php [posisi direktori composer]/composer.phar update.

Tunggu lalu lanjutkan artisan dan lainnya seperti biasa.

Untuk deployment, supaya dapat diakses dilakukan dengan

php artisan serve --host=[ip server]

(harap diperhatikan supaya port yang digunakan tidak digunakan oleh program lain dan dibuka firewall, bisa minta melalui admin server/yang memiliki akun privilege root)

Saya juga telah mengupdate database untuk user dan autentikasi supaya siap digunakan.

Pada minggu ini saya masih mengalami masalah seperti dibawah ini

ketika mengambil user dari database, hal ini masih saya tanyakan dan cari solusinya. 

Untuk minggu selanjutnya, hal yang akan saya lakukan adalah memperbaiki kode supaya bisa dijalankan pada server yang telah diberikan, seperti konfigurasi php.ini untuk mengetahui alamat untuk php mail() yang bisa digunakan untuk mengirim email (http://www.html-form-guide.com/email-form/php-script-not-sending-email.html) dan DB lebih lanjut untuk penyimpanan amalan. Karena saya akan lebih banyak mengutak-atik pada server, mungkin saya hanya akan mengupdate git saya jika sempat dan koneksi modem sedang lancar. Link Git

Weekly Report 17/4/2016 - Luthfi Kurnia Putra

    Sebenarnya untuk minggu ini, tidak begitu banyak yang saya lakukan untuk pekerjaan PPL ini. Jika bisa dibagi kedalam dua bagian, saya membagi tugas saya dalam minggu ini untuk membuat halaman Edit Amalan dan mempelajari Unit Testing.
    Untuk bagian Edit Amalan, sejauh ini progress sudah baik. Tampilan view dari Activity sudah diselesaikan dengan baik oleh Reyhan. Tetapi untuk fitur editnya masih belum terimplementasi ke-form yang sudah kami buat. Tapi sejauh ini, pada halaman Edit Amalan aplikasi kami sudah dapat menghapus amalan, menghapus kategori, menambah amalan, dan menambah kategori.
    Untuk fitur editnya sendiri, menu dropdown yang akan muncul saat menekan tombol edit sudah diimplementasikan (walaupun tempat munculnya masih random). Akan tetapi, fungsi backendnya belum saya kerjakan (karena terakhir kali saya cek belum jadi) sehingga tidak mungkin terkejar minggu ini.
    Untuk minggu depan, sepertinya saya sudah dapat membuat halaman Statistik Amalan disebabkan fungsi pada Local Database sudah mau rampung (kalo edit udah selesai semua operasi local storage dah rampung) sehingga bisa langsung dihitung dan diambil statistik datanya dari yang sudah ada. Kemudian, ada juga rencana untuk mulai mengimplementasikan notifikasi dengan service.
    Selanjutnya, mengenai Unit Testing, saya sendiri sudah mencari library yang memungkinkan untuk melakukan unit testing di Android, akan tetapi beberapa yang saya temukan API-nya sudah deprecated. Untuk yang belum tahu apa itu deprecated, Deprecated adalah istilah yang digunakan dalam dunia pemrograman untuk menyatkan bahwa sebuah fungsi sudah 'usang' atau tidak dapat dipakai lagi. Biasanya, fungsi yang sudah deprecated akan digantikan oleh fungsi lain yang lebih baik. Tetapi tidak jarang juga fungsi tersebut jadi 'hilang' sama sekali karena tidak ada pihak yang mau mengembangkan.
    Kembali ke cerita Unit Testing saya, saya juga sudah mencari API-API indie yang berusaha mengimplementasikan unit testing yang mampu bekerja diatas Android Studio, akan tetapi kebanyakan juga mengalami masalah yang sama. Yaitu fungsi yang mereka pakai sudah deprecated atau usang.
    Untuk minggu depan sepertinya saya pribadi akan fokus dulu ke pengembangan Edit Amalan dan pembuatan halaman baru mengenai Statistik Amalan.

Minggu, 10 April 2016

Weekly Report 11/4/2016 - Muhamad Iqbal

Selama 2 minggu masa uts sebagian waktu saya lebih banyak berkutat pada uts sehingga saya mulai untuk mengerjakan ppl pada hari minggu malam. Pada Weekly Report kemarin aplikasi masih belum bisa menampilkan data dari database. Kita menggunakan Volley library untuk melakukan networking namun masih error. Kemarin saya melakukan beberapa perubahan dari sebelum uts yaitu menambahkan inisiasi cache dan set network HttpUrlConnection namun masih terdapat error pada Json object request dan saya masih belum dapat menemukan masalahnya.

Membuat Request Queue awal

Request Queue baru yang masih terdapat error
json object request

Weekly Report 11/4/2016 - Reyhan Razaby

Untuk minggu ini saya hanya mengerjakan progress dalam satu hari, yaitu pada hari Minggu kemarin. Dan yang saya kerjakan adalah memperbaiki buatan Luthfi sebelumnya.

Pada sebelumnya Luthfi telah membuat halaman Tambah Amalan dan Tambah Kategori namun pilihan menu untuk keduanya tersebut masih berada di Mainpage, sedangkan yang kami rencanakan sebelumnya adalah di halaman Edit Mode. Dan yang sudah saya lakukan adalah membuat halaman Edit Mode tersebut tetapi belum ada konten apa-apa, baru toolbar yang berisi icon tambah (+) yang fungsinya untuk menampilkan menu Tambah Amalan dan Tambah Kategori yang sebelumnya berada di Mainpage.

Selain itu pada halaman Tambah Kategori, Luthfi masih membuatnya dalam activity baru, sedangkan yang kami rencanakan hanyalah sebuah dialog box. Karena hanya memerlukan input dari nama kategori yang diinginkan.

Proyek sementara di atas sudah saya push ke GIT

Minggu, 03 April 2016

Weekly Report 03/4/2016 - Luthfi Kurnia Putra

    Untuk minggu UTS ini sepertinya tidak banyak yang saya lakukan. Tapi setidaknya ada beberapa hal yang harus saya sampaikan. Untuk bocorannya, mengenai Sprint Review dan mengenai penambahan fitur baru.
    Untuk Sprint Review, kami sudah melakukannya saat di Badr kemarin sebelum minggu UTS dimulai. Beberapa task sudah kami selesaikan dengan baik. Akan tetapi, banyak sekali task-task yang belum kelar karena kendala teknis. Sehingga kami, mau tidak mau, harus mencari waktu lagi untuk menyelesaikan task-task yang keteteran tersebut. But anyway, yang terjadi terjadilah. Mudah-mudahan tidak terulang di sprint selanjutnya :)) .
    Untuk detail mengenai task-task apa yang sudah dikerjakan pada Sprint 1 dapat dilihat pada Spreadsheet di Google Docs kelompok kami. Mudah-mudahan membantu penilaian kami ya :) .
    Kemudian untuk fitur tambahan yang saya buat kali ini adalah fitu mengenai 'Tambah Amalan' dan 'Tambah Kategori'. Untuk lebih detail mengenai fitur 'Tambah Amalan', fitur ini memfasilitasi pengguna untuk menambahkan amalan baru ke aplikasi. User dapat mengatur sendiri nama amalan yang ingin dibuat, ingin dikategorikan ke kategori apa, ingin dikeluarkan berkala secara harian/mingguan/bulanan, menentukan tipe dari amalan (checklist/fill form) dan masih banyak lagi. Fitur kategori hanya berfungsi menambahkan kategori baru. Kategori ini nantinya akan muncul di dropdown spinner pilihan saat user membuat amalan yang baru.
    Sejauh ini fitur ini masih works dengan baik dan juga telah menyimpan data dengan benar. Saya pribadi sedang mencari testcase-testcase lain lagi untuk menguji fitur ini. Sebab kemarin saya menemukan bug dimana fitur tidak berhasil untuk hari-hari tertentu. Akan tetapi, masalah tersebut sudah berhasil terpecahkan.
    Nah, sekilas mengenai dropdown spinner, apa itu dropdown spinner? Dropdown spinner adalah menu dropdown built-in android yang berguna untuk menampilkan menu secara dropdown (Tau kan dropdown? Yang kalo di klik ke bawah baru muncul konten dari menunya itu ...). Spinner ini diisi dengan cara memasukkan sebuah ArrayAdapter berisi sebuah tipe data List yang sudah diisi sebelumnya dengan konten menu yang ingin ditampilkan.
    Kemudian, untuk ArrayAdapter, apa lagi tuh ArrayAdapter? Wah saya juga kurang tau sih itu apa. Tapi kalo saya deskripsiin sih itu lebih kayak sebuah 'objek' yang tugasnya untuk masukkin sebuah value berisi array ke dalam sebuah view-view tertentu dari view built-in Android. Contoh view-view tersebut adalah Spinner, ListView, etc.
   Nah udah dulu ya, sekian dari saya untuk minggu ini dan semoga bermanfaat. Selamat Malam!