Terakhir diperbaharui: Mar 2, 2021
Deploy Aplikasi
Kita telah melewati banyak tahapan dalam membuat sebuah aplikasi.
Jika mengikuti konsep Software Development Life Cycle, maka tahapan yang sudah dilewati adalah tahapan Planning, Design, Development & Testing.
Pembagian tahapan dalam SDLC sendiri sangat beragam, ada yang membaginya menjadi 5, 6 atau bahkan 7 tahapan.
Dan pemberian nama setiap tahapan juga bisa berbeda-beda, sebagai contoh tahapan Development juga sering disebut dengan Implementation.
Sekarang kita sampai pada tahapan selanjutnya yaitu Deployment.
Yang dimaksud dengan deployment adalah semua proses yang dilakukan agar versi akhir dari aplikasi tersedia dan siap digunakan oleh user.
Aplikasi yang sudah selesai dikembangkan dan diuji, akan di deploy ke production environment (umumnya berupa server).
Deployment environment
Kita perlu tahu jenis-jenis environment yang biasa digunakan dalam mengembangkan sebuah aplikasi:
Environment | Keterangan |
---|---|
Development | Kegiatan ngoding terjadi disini |
Testing | Lingkungan yang didesain khusus untuk proses pengujian aplikasi oleh tester baik menggunakan teknik otomasi atau manual |
Staging | Lingkungan yang didesain untuk testing aplikasi pada environment yang sama dengan production |
Production | Lingkungan dimana versi akhir aplikasi siap untuk digunakan oleh user |
Cloud Computing
Agar aplikasi DinoTes tersedia secara publik atau dapat diakses melalui internet maka kita perlu menggunakan cloud computing service.
Istilah cloud computing mengacu pada berbagai macam resource seperti server, storage, database, networking, software yang didistribusikan di atas cloud (internet).
Dengan cloud computing kita tidak perlu lagi membangun server sendiri, tinggal pilih cloud computing provider dan model layanan yang diinginkan.
Cloud computing provider
Contoh dari penyedia jasa layanan cloud computing:
- Amazon Web Service(AWS)
- Microsoft Azure
- Google Cloud Platform
- IBM Cloud Services
- Rackspace
- dan masih banyak lagi
Cloud Computing Service Model
Beberapa model layanan yang ditawarkan oleh penyedia layanan cloud computing:
Infrastructure as a Service (IaaS)
Layanan cloud computing yang ditawarkan berupa virtual server, networking, virtual storage dsb.
IaaS sering digunakan untuk keperluan web development, storage, pengembangan aplikasi yang membutuhkan hardware dengan spesifikasi yang sangat tinggi
Contoh:
Platform as a Service (PaaS)
Layanan berupa platform atau resource untuk developer dalam mengembangkan aplikasi.
Contoh:
Software as as Service (SaaS)
Layanan berupa software yang dikelola langsung oleh penyedia layanan yang bisa digunakan oleh user.
Contoh:
Lalu untuk deploy aplikasi DinoTes, kita pakai yang mana?
Sampai tulisan ini dibuat Google menyediakan free credit $300 untuk Google Cloud Platform.
Sedangkan Amazon menyediakan 12 months free tier begitu juga dengan Microsoft Azure.
Tapi dalam proses registrasinya ketiga provider di atas mewajibkan kita untuk memasukan informasi kartu kredit / debit.
Oleh karena itu kita akan menggunakan Heroku + MongoDB Atlas.
Jika kamu sudah memiliki kartu kredit/debit kamu bisa mengikuti langkah - langkah deployment menggunakan AWS Lightsail.