Weekly Report #1 - Perkenalan - Niken

Pada pertemuan di kelas hari Senin 15 Feb, kami mengawali diskusi dengan membahas sekilas/ulang metode Scrum dan menentukan role masing-masing anggota tim. Hasilnya:

  • Product Owner : M. Firza
  • Scrum Master : Tri Ahmad Irfan
  • Development Team : Ken Nabila Setya, Teresa P., M. Iddad, Shylla P.

Lalu, karena saat itu kondisi kami belum bertemu mentor dan belum tahu detil masalah yang akan diberikan mentor, kami memutuskan untuk membahas teknologi apa saja yang akan dipakai selama pembangunak proyek ini. Sementara ini, hasilnya:

  • Communication : Slack
  • Project Management : JIRA
  • Repo & Blog : GitHub
  • Code Review : Review Board
  • Cloud : Google Drive

Kami memutuskan untuk mengadakan pertemuan selanjutnya dengan agenda belajar bersama menggunakan teknologi tersebut. Beberapa teknologi seperti Slack dan Gdrive tidak akan masuk materi pembelajaran. Setelah rapat tersebut, tidak lama kemudian kami sudah menggunakan Slack sebagai media komunikasi. Sebelumnya kami menggunakan untuk komunikasi Whatsapp. Sekarang komunikasi kami terpusat di Slack.

Pertemuan selanjutnya dilakukan hari Kamis malam, 18 Feb di MIC. Sebelum belajar kami berdiskusi mengenai nama tim. Akhirny kami memilih nama “RedPanda”. Kemudian, kami lanjut mempelajari cara menggunakan Github dan flow kerja kami nanti. Irfan dan Teresa sudah paham dengan github, sehingga mereka mengajari kami (anggota tim lainnya). Saya sendiri belum pernah pakai Github. Saya senang dapat belajar hal baru saat PPL.

Berikut adalah catatan saya saat belajar Github:

  1. Clone, add, commit, push
  • utk windows -> install source tree
  • clone alamat repository githubnya ke source tree
  • Lakukan perintah-perintah berikut:
git clone
git add [nama file]
git commit -m “pesan”
git push
  • Kalau gagal push berarti repository harus sinkronisasi dahulu, ini akibat ada beberapa orang yang mengedit line yang sama (terjadi conflict). Cara sinkronisasi:
git pull
  • apabila terjadi conflict
>>>> HEAD
[disini kodingan niken yang hrsnya niken tambahin
benerin lagi aja kalau conflict]
=========
  • Lalu liat status, apakah line yang kita ubah sudah masuk apa blm, ketik perintah:
git status

2. Membuat branch baru, berikut perintahnya:

git branch -> ngelist branch yang ada
git checkout -b [nama branch] -> pindah ke branch baru
git checkout master -> pindah ke master

3. Meng-edit branch (baru kesimpen di branch saja blm di master)

  • checkout terlebih dahulu ke branch itu
  • bikin file/edit file
  • add file
  • commit perubahan

4. Merge branch ke branch lain

git checkout [branch-induk]
git merge [branch-anak]

Pertemuan tersebut berakhir karena terlalu malam. Pertemuan berikutnya kami lakukan hari jumat bersama dengan mentor kami di HappyFresh.

Jumat, 19 Feb, kami bertemu dengan para mentor di HappyFresh. Kami melakukan pertemuan jam 14.00. Namun sedikit terlambat di pihak HF, sehingga baru mulai jam 14.30. Kami saling memperkenalkan diri. Lalu kami dibagikan mentor oleh pihak HF. RedPanda dimentori oleh Mas MasBoy dan Mas Faren. Kami diberi penjelasan mengenai masalah Out of Stock yang cukup mengganggu kepercayaan customer.

Sebelum menjelaskan masalah saya akan terlebih dahulu memperkenalkan HF. HappyFresh adalah perusahaan yang menjual jasa, yaitu membelanjakan customer sesuai pesanan dan mengantarkan ke rumah mereka tepat pada waktunya dengan kondisi barang yang masih fresh. HappyFresh ada di berbagai negara, diantaranya Indonesia, Malaysia, Vietnam, dan Filipina. Di Indonesia HappyFresh bekerja sama dengan beberapa supermarket ternama. Customer dapat membuka aplikasi HF dan memilih belanjaan apa yang butuhkan dengan memilih menggunakan foto yang tampil di aplikasi. Foto barang yang tampil menandakan stok barang tersedia. Barang-barang tersebut akan dibeli di supermarket terdekat dari lokasi customer. Di masing-masing supermarket akan ada beberapa agen HF yang disebut shopper yang bertugas berbelanja sesuai dengan pesanan

customer. Kemudian shopper akan mengantarkan belanjaan tersebut kepada driver HF yang menunggu di luar supermarket. Driver akan mengantar belanjaan ke rumah customer. Berikut adalah permasalahan yang saya simpulkan dari penjelasan kedua mentor:

  • Customer HF sering mengalami out of stock barang yang mereka lihat di aplikasi. Karenanya,
  • HF tidak menerima data barang yang real time dari setiap supermarket. Data stok barang mereka terima hanya sekali sehari dengan kondisi tidak terupdate otomatis jika barang dibeli secara langsung di supermarket. Akibatnya,
  • Customer tidak dapat menerima daftar belanjaan secara lengkap jika ada yang out of stock
  • Update stok yang kosong hanya dilakukan jika shopper kebetulan berbelanja utk barang yang habis
  • Dari semua transaksi, ada 60% pembelian yang tidak lengkap (minimal 1 item kurang)
  • Sayangnya, tidak sedikit customer yang mereject barang belanjaan apabila tidak diantarkan secara lengkap.
  • Sering kali, data stok yang diterima HF dalam sekali sehari pun tidak sebenarnya tepat. Pegawai supermarket sering melakukan manipulasi angka stoknya (mungkin karena jumlah barang terlalu banyak)
  • HF ingin masalah ini bisa diselesaikan bukan hanya dengan supermarket yang bekerja sama dengan mereka, melainkan supermarket yang tidak partnership pun dapat terhindar dari out of stock.
  • HF tidak memungkinkan untuk membuat warehouse sendiri karena itu bukan bidang kerja mereka

Diskusi kami bersama mentor cukup alot karena kedua pihak sama-sama tidak memiliki solusi optimal untuk masalah sekompleks itu. Kami bahkan sempat meminta untuk ganti topik permasalahnnya namun topik pengganti jauh lebih rumit. Alhasil, kami menerima tantangan tersebut. Setelah jam 5 sore lewat, pertemuan tersebut berakhir. Semua tim meninggalkan HF, termasuk kami.

Namun RedPanda tidak langsung pulang. Kami makan malam bersama sekaligu brainstorming. Kami saling merumuskan permasalah dan mencoba mencari solusi terbaik. Akhirnya, kami memutuskan untuk meminta HF mengizinkan kami melakukan interview dan observasi di supermarket yang bekerja sama dengan mereka. Kemudian masing2 dari kami diminta memikirkan solusi sebanyak-banyaknya setelah dari makan malam ini. Setelah diskusi kami pulang ke rumah masing2.

Hari Sabtu dan Minggu (20–21 Feb) saya pribadi memikirkan cara-cara yang dapat menjadi solusi dari masalah untuk PPL RedPanda. Saya menemukan solusi yang cukup baik namun belum tentu dapat berhasil dijalankan oleh pihak HF. Berikut hasil pemikiran saya:

  • Kita harus menghilangkan beberapa constraint yang membuat masalah ini jadi imposible:
- Sistem yang kita buat hanya bisa dipakai oleh HF ke supermarket yang ber-partnership dan dengan jaminan supermarket tersebut “MAU” dipasangkan sistem yang sudah RedPanda buat. Menurut saya, bukan tanggung jawab kita (RedPanda) untuk memastikan bahwa semua supermarket dapat terdata stok barangnya apalagi jika supermarket tersebut saja bahkan tidak menganggap ada kerja sama dengan HF.
- Asumsikan sistem ini dilakukan dengan tepat oleh pihak-pihak yang berkewajiban. Dengan kata lain, human error atau kesengajaan manipulasi data tidak diatasi oleh sistem RedPanda.
  • Dengan asumsi hal diatas sudah diterapkan, saya mengusulkan ide membuat sistem seperti pendataan otomatis yang real time di tiap supermarket. Pendataan diupdate tiap kali ada transaksi pembelian barang, pemasukan barang ke supermarket, dan pengeluaran barang (seperti barang kadaluarsa/rusak)

Ide tersebut akan saya sampaikan pada pertemuan kelompok hari Senin 22 Feb. Selain itu, seiring dengan berjalannya waktu, tim RedPanda mengubah beberapa teknologi yang sebelumnya akana dipakai. Salah satunya kemungkinan ProjMan akan menggunakan Trello karena JIRA terlalu kompleks dan blog akan menggunakan Medium.