Skip to content

bimaaul/mppl-kel4

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Group 3 (3)

MPPL - Responsi 2 - Kelompok 4

Back-End Latar Belakang Tujuan Ruang Lingkup Deskripsi User Analisis Spesifikasi Metode Pengembangan Hasil dan Pembahasan Stakeholders Identifikasi User Fitur Utama Fungsi CRUD Implementasi Link Aplikasi Developer dan Jobdesk

🔗 Back-End

^ kembali ke atas ^
https://app.swaggerhub.com/apis-docs/bimaaul/mppl/1.0

📖 Latar Belakang

^ kembali ke atas ^

Di masa teknologi ini, jasa pengembangan sistem informasi semakin diperlukan. Namun tidak sedikit orang yang kesulitan mendapat informasi jasa software developer yang terpercaya dan profesional. Begitu juga sebaliknya. Tidak jarang software developer juga kesulitan untuk mencari client karena jasanya belum dikenali banyak orang. Salah satu software developer yang merasakan hal tersebut adalah Mamen Rider.

Mamen Rider merupakan salah satu kumpulan mahasiswa Ilmu Komputer IPB yang juga merupakan software developer dan sudah dikenal oleh teman-temannya. Selama perkuliahan, mereka sudah melakukan beberapa proyek yang dikerjakan bersamaan oleh setiap anggotanya. Setelah melakukan beberapa proyek bersama, mereka merasa hal tersebut merupakan suatu peluang yang besar bagi mereka terutama dalam bidang software development.

Kedepannya Mamen Rider akan mengembangkan usaha jasa software development bernama Mamen Project dan menawarkannya kepada orang lain. Namun karena keterbatasan jejaring informasi, Mamen Rider kesulitan untuk menjangkau target clientnya dan tidak memiliki wadah untuk mempromosikan skill dan kemampuan mereka.

📌 Tujuan

^ kembali ke atas ^

  • Media untuk memperkenalkan Mamen Project dan profil Mamen Rider
  • Memperluas jangkauan target client

📒 Ruang Lingkup

^ kembali ke atas ^

  • Sistem yang dibuat berdasarkan kebutuhan dan permasalahan dari pihak client yaitu Mamen Rider
  • Secara garis besar, sistem yang kami buat menyediakan informasi seputar profile dari pihak client, portofolio setiap anggota client, narahubung setiap anggota, dan informasi daftar proyek yang dapat dilakukan.
  • Sistem berfungsi sebagai penghubung pihak client dan juga user yang hendak mencari pihak software developer yang dapat mengerjakan proyek bisnis mereka
  • Aplikasi berbasis website sebagai client-side
  • Pembuatan dan pengembangan program menggunakan PHP dengan framework React JS dan database menggunakan MySQL
  • Dapat diakses dimana saja dengan koneksi internet

🖥 Deskripsi Aplikasi

^ kembali ke atas ^

Mamen project adalah sebuah aplikasi berbasis website yang menyediakan informasi seputar profile pihak Mamen Rider, portofolio setiap anggota mereka, track record untuk setiap proyek yang berhasil mereka kerjakan, narahubung untuk melakukan kolaborasi, dan informasi review proyek yang telah berhasil dibuat. Tujuan dari dibuatnya aplikasi ini yaitu sebagai penghubung antara pihak Mamen Rider dan juga user yang hendak mencari software developer untuk mengembangkan produk bisnis mereka.

🧑‍🤝‍🧑 User Analisis

^ kembali ke atas ^

User Story

“Sebagai seorang pembisnis yang ingin membuat startup, saya ingin dengan mudah mendapatkan informasi jasa di bidang software engineer agar saya dapat bekerja sama dengan mereka dan mewujudkan pembuatan software start up saya.”

“Sebagai seorang pembisnis yang ingin mencari jasa developer, saya ingin mengetahui testimoni dari beberapa developer yang saya temui agar saya dapat memperoleh developer terbaik untuk bekerjasama dengan saya nantinya.”

“Sebagai seorang pembisnis yang ingin mencari jasa developer, saya ingin mengetahui daftar keahlian apa saja yang dimiliki oleh developer tersebut agar saya dapat menyesuaikan dengan jenis keahlian yang dibutuhkan dengan project saya.”

“Sebagai seorang pembisnis yang ingin mencari jasa developer, saya ingin mengetahui track record dari developer tersebut agar saya dapat memperoleh developer terbaik untuk bekerjasama dengan saya nantinya.”

⚙️ Spesifikasi Lingkungan Pengembangan

^ kembali ke atas ^

Software

Hardware

Perangkat keras yang dibutuhkan dalam pembuatan aplikasi ini adalah Laptop dengan spesifikasi minimal sebagai berikut.

  • Prosesor Intel Core i5 gen 2.8 GHz
  • RAM 8 GB
  • HDD 320 GB
  • GPU Nvidia GeForce 920MX

Tech Stack

MERN adalah singkatan dari MongoDB, Express, React, Node yang merupakan tech stack yang digunakan pada pengembangan aplikasi kali ini.

Nama Fungsi
MongoDB Database
ExpressJS NodeJS Web Framework
NodeJS JavaScript Web Server
React JS Client-side JavaScript framework (Front-End)

MERN adalah salah satu dari beberapa variasi stack MEAN (MongoDB, Express, Angular, Node), di mana Angular sebagai framework front-end tradisional digantikan dengan React.js. Variasi lainnya adalah MEVN (MongoDB, Express, Vue, Node) dan framework front end dengan bahasa pemrograman JavaScript apapun dapat digunakan.

🚀 Metode Pengembangan Desain

^ kembali ke atas ^

Scrum

Metodologi yang digunakan dalam pengembangan sistem ini yaitu scrum dimana dalam pengembangannya dapat dilihat pada gambar berikut :

agile-development-process

Scrum adalah salah satu metode rekayasa perangkat lunak dengan menggunakan prinsip-prinsip pendekatan AGILE, yang bertumpu pada kekuatan kolaborasi tim, incremental product dan proses iterasi untuk mewujudkan hasil akhir.

Tahapan penting dalam metode Scrum dapat diuraikan menjadi beberapa poin, yakni:

  1. Product Owner mendata seluruh permintaan terhadap produknya sesuai prioritasnya.
  2. Scrum Team memilih salah satu pekerjaan atau item dari list prioritas Product Owner. Dalam tahap ini Scrum Team menganalisis, menggali, serta merencanakan alur kerja mereka dalam menyelesaikan pekerjaan ini.
  3. Scrum team mengerjakan sesuai metode, bidang, dan permintaan yang telah disepakati bersama.
  4. Scrum Master memastikan seluruh Scrum team bekerja sesuai rencana awal.
  5. Di akhir waktu yang telah disediakan (sprint) atau ketika Developer Team telah menyelesaikan pekerjaannya, maka pekerjaan harus sudah siap untuk dikirim.
  6. Review pekerjaan Scrum Team (review product).
  7. Proyek dianggap selesai. Baik karena kualitas produk telah sesuai permintaan, atau karena pekerjaan sudah berada pada batas waktu yang ditentukan.

Kick-off Meeting

Project Milestone Target Date
First meet bersama client Minggu, 29/08/21
Membuat perancangan awal sesuai dengan kebutuhan client Minggu, 29/08/21
Membuat Use Case Diagram, Activity Diagram, ERD, Arsitektur Diagram Minggu, 29/08/21 - Minggu, 05/09/21
Membuat Desain Tampilan Sistem Minggu, 5/09/21 - Minggu, 12/09/21
Melakukan meeting bersama client terkait desain yang telah dibuat Senin, 13/09/21
Melakukan revisi terkait desain jika ada Selasa, 14/09/21 - Sabtu, 18/09/21
Melakukan meet untuk fiksasi desain bersama client Minggu, 19/09/21
Design database dan Backend Senin, 20/09/21 - Sabtu, 27/11/21
Memulai pengerjaan implementasi desain (Front-end) Senin, 20/09/21 - Sabtu, 27/11/21
Connect Front-end to Back-end Minggu, 28/11/21 - Kamis, 02/12/21
Testing internal Kamis, 02/12/21
Bug Fixing Kamis, 02/12/21 - Jum’at, 03/12/21
User Acceptance Testing Sabtu, 04/12/21

Major Known Risks (including significant Assumptions)

Risk Risk Rating (Hi, Med, Low)
Kesulitan mengimplementasikan fitur chat pada teknologi yang dipilih Medium
Tidak adanya milestone pada proyek yang sedang dikerjakan Medium
Kurangnya dokumentasi terkait perancangan dan pengembangan sistem Medium
Pembuatan program yang terhambat waktunya karena programmer perlu belajar framework yang digunakan High

Communication Strategy

Metode komunikasi yang digunakan sebagai berikut :

  1. Melakukan rapat rutin setiap minggu malam untuk mengerjakan LKP setiap minggunya, kemudian membahas task atau pun pekerjaan di setiap progres role yang dikerjakan
  2. Melalui Trello, kami menggunakan list di setiap pekerjaan yang akan, sedang, ataupun telah diselesaikan oleh setiap anggota tim. List ini nantinya berupa catatan tanggal-tanggal penting, backlog, to-do, bugs, dan completed.
  3. Melalui Github, kami melakukan dokumentasi terhadap sistem yang kami buat baik dari segi laporan maupun hasil kodingan file dari sistem kami yang sudah dikerjakan nantinya akan disatukan pada github kelompok kami.

Project Budget

Budget Name Budget Cost
Landing Page ( Email form submission, Static View, Konten projects dan testimoni ) Rp. 1.200.000,00
Authentication ( Admin ) Rp. 250.000,00
Admin ( CRUD Content Landing Page, CRUD Anggota Mamen, CRUD Projek Mamen, CRUD Testimoni ) Rp. 800.000,00
Total Cost Total = Rp. 2.250.000,00

🎊 Hasil dan Pembahasan

^ kembali ke atas ^

Use Case Diagram

Kami menawarkan ide sebuah platform dimana user dapat melakukan permintaan kerjasama dengan pihak Mamen sebagai software engineer dalam pengembangan bisnis atau proyek mereka. User dapat melihat profile Mamen secara lengkap, daftar keahlian, profile anggota, riwayat projek, testimoni, serta melakukan pengajuan kerjasama. User dapat melakukan pengajuan untuk kerjasama dengan mengisikan form yang terdapat pada aplikasi dan mengirimkan data form tersebut. Kemudian pengajuan itu akan masuk ke dalam daftar permintaan pada aplikasi admin Mamen yang nantinya pengajuan tersebut dapat dilakukan tindakan lebih lanjut oleh admin untuk disetujui dan diterima.

Estimasi effort dan biaya dari use case diagram tersebut yang dihitung menggunakan metode Use Case Point (UCP) yaitu sebagai berikut

Menurut kelompok kami, metode yang direkomendasikan adalah Use Case Point. Alasannya karena pada use case point dihitung berdasarkan model dan jumlah use case sistem. Dalam perhitungannya, diperhitungkan juga faktor kompleksitas teknis dan lingkungan. Sehingga perkiraan biaya yang dihasilkan lebih menyeluruh karena tidak hanya faktor teknis saja yang diperhitungkan tetapi juga kondisi dan kemampuan internal tim pengembang. Sedangkang metode Function Point hanya mepertimbangkan faktor teknis saja, tanpa memperhitungkan faktor lingkungan tim pengembang.

Activity Diagram

ERD

Arsitektur Diagram

👨‍🏫 Stakeholder yang Terlibat

^ kembali ke atas ^

No Stakeholders Informasi yang Ingin Didapatkan
1. Mamen (Admin) Data mengenai profil umum Mamen Rider, keanggotaan, portofolio yang berisi projek yang sudah dikerjakan, dan narahubung setiap anggota Mamen rider.
2. Orang/Perusahaan yang membutuhkan jasa developer Data nama dan email sebagai client yang akan menanyakan informasi terkait projek Mamen rider.

👫 Identifikasi Jenis User

^ kembali ke atas ^

No Pengguna Task yang Dilakukan
1. Orang yang membutuhkan jasa developer Melihat company profile dari Mamen Rider, Melihat profile anggota, Melihat riwayat projek, dan Mengirimkan tawaran projek
2. Perusahaan yang membutuhkan developer tambahan (outsourcing) Melihat company profile dari Mamen Rider, Melihat profile anggota, Melihat riwayat projek, Mengajukan program kerja sama
3. Admin CRUD anggota, CRUD projek, CRUD testimoni, Read Permintaan, Delete Permintaan, dan Monitoring projek yang berjalan

🔆 Fitur Utama yang Dikembangkan

^ kembali ke atas ^

No Fitur Keguanaan dan Fungsi
1. Menampilkan profil dan informasi keanggotaan Memberikan informasi tentang data diri dari tiap anggota Mamen Rider
2. Menampilkan informasi portofolio setiap anggota Memberikan informasi tentang daftar portofolio/project yang pernah dikerjakan dan kemampuan yang dikuasai setiap anggota Mamen Rider
3. Informasi proyek yang dapat dikerjakan Memberitahukan batasan proyek yang dapat ditawarkan oleh client dan dikerjakan Mamen
4. Informasi narahubung setiap anggota Memudahkan calon client untuk berkomunikasi dengan anggota Mamen secara personal melalui linkedin

🔆 Fungsi CRUD

^ kembali ke atas ^

Nama Fitur Fungsi CRUD
Tentang Kami Create : Admin dapat memasukkan informasi profile Mamen Rider
	    	Read : User dapat melihat detail informasi Mamen Rider
		
	    	Update : Admin dapat mengedit informasi tentang kami yang telah dibuat
Project Kami Create : Admin dapat memasukkan daftar project yang berhasil dikerjakan
	    	Read : User dapat melihat daftar project Mamen Rider
		
	    	Update : Admin dapat mengedit informasi project yang telah dibuat
		
	    	Delete :  Admin dapat menghapus project yang telah dibuat
Anggota Create : Admin dapat memasukkan daftar anggota Mamen Rider
	    	Read : User dapat melihat daftar anggota Mamen Rider
		
	    	Update : Admin dapat mengedit informasi anggota yang telah dibuat
		
	    	Delete :  Admin dapat menghapus daftar anggota yang telah dibuat
Testimoni Create : Admin dapat memasukkan daftar testimoni client mereka
	    	Read : User dapat melihat daftar testimoni client

	   	Update : Admin dapat mengedit testimoni yang telah dibuat

	    	Delete :  Admin dapat menghapus testimoni yang telah dibuat
Permintaan Create : User dapat membuat permintaan kerjasama
	    	Read : Admin dapat melihat daftar permintaan yang masuk
	    	
	    	Delete :  Admin dapat menghapus daftar permintaan yang masuk

Change Log (catatan perubahan)

Change Type Description of Change Comments
Tipe : Desain
	    	Requestor : Front-end
	    	
	    	Status : Denied
Pada website user, di halaman "Tentang Kami" menu pop-up untuk melihat data lebih lengkap ditiadakan karena implementasi yang cukup sulit Perubahan untuk meniadakan pop-up pada "Tentang Kami" akhirnya tidak direalisasikan karena pada prosesnya pop up berhasil diimplementasikan dan memakai material UI
Tipe : Desain
	    	Requestor : PM & UI/UX Designer
	    	
	    	Status : Approved
Fitur chat pada desain aplikasi ditiadakan karena implementasi yang sulit dan konfirmasi dari pihak client yang belum membutuhkan fitur tersebut Perubahan untuk meniadakan implementasi fitur chat diterima karena dari pihak client pun ternyata tidak begitu membutuhkan fitur itu di web mereka
Tipe : Tech Stack
	    	Requestor : Back-end
	    	
	    	Status : Approved
Database yang digunakan diganti dari mysql menjadi mongo Implementasi dapat lebih sederhana dan lebih familiar dengan developer
Tipe : Schedule
	    	Requestor : Front-End
	    	
	    	Status : Approved
Perubahan jadwal implementasi dilakukan dengan menyesuaikan pelaksanaan implementasi yang dilakukan Dibuatnya perubahan pembaruan jadwal pengerjaan projek baru untuk menyesuaikan dengan pelaksanaan implementasi dari pihak front end developer

🚀 Hasil Implementasi

^ kembali ke atas ^

🔗 Link Aplikasi

^ kembali ke atas ^

👨‍🏫 Developer dan Job Desc

^ kembali ke atas ^

👩 Mutia Marcha Fatika | G64180085
      Role: Project Manager & UI/UX Designer
      Email: [email protected]
      GitHub: @mutiamarchaa

👦 Bima Aulia | G64180063
      Role: Back-End
      Email: [email protected]
      GitHub: @bimaaul

👩 Hana Salsabila | G64180051
      Role: Front-End
      Email: [email protected]
      GitHub: @hanasalsaa

👦 Muhammad Hafiduddin | G64180017
      Role: Front-End
      Email: [email protected]
      GitHub: @fid3101

👦 Arya Aminata | G64180007
      Role: Front-End
      Email: [email protected]
      GitHub: @aryaaminata093

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published