Kobe - Aplikasi Anggaran Seluler (Fronnd)

Deskripsi umum
Aplikasi yang memungkinkan untuk mengumpulkan anggaran per bulan, di mana ada 3 jenis gerakan: pendapatan, pengeluaran, dan penghematan. Untuk setiap jenis gerakan, hingga 10 kategori dapat didefinisikan. Dalam satu bulan tertentu, pengguna dapat menentukan nilai yang mengharapkan untuk menunjuk setiap kategori (anggaran). Selanjutnya, selama bulan pengguna akan mendaftarkan gerakan mereka dan dari ini, di tab Statistik Anda dapat melihat bagaimana rencana yang dibuat untuk bulan itu dipenuhi.
Tautan figma
Gambar referensi:

Lingkungan pengembangan
Untuk membuat lingkungan pengembangan aplikasi web dengan flutter di perbatasan dan ekspres.js di backend, untuk menginstalnya, Anda dapat mengikuti langkah -langkah ini:
Konfigurasi Perbatasan
- Instalasi Flutter - Pengembangan Seluler.
- Pertama, unduh dan instal flutter dari halaman resminya: https://flutter.dev/docs/get-started/install. Ikuti instruksi spesifik untuk sistem operasi Anda. Selanjutnya tambahkan jalur ke variabel lingkungan.
- Konfigurasi Android Studio - Emulator Seluler Android untuk menguji aplikasi.
- Instal Android Studio dari situs web resmi Android Studio: https://developer.android.com/studio.
- Di dalam Android Studio, instal Android SDK dan konfigurasikan emulator pada AVD Manager untuk mensimulasikan perangkat seluler.
- Visual Studio Code - Konfigurasi IDE untuk digunakan dalam proyek.
- Unduh dan instal Visual Studio Code (vScode) dari halaman resminya: https://code.visualstudio.com/.
- Plugin berikut dapat diinstal untuk memfasilitasi pengkodean dalam flutter:
- Flutter: Untuk mengintegrasikan dukungan untuk vScode dan termasuk fungsionalitas seperti eksekusi aplikasi dan pemurnian.
- DART: Diperlukan untuk bekerja dengan flutter, karena memberikan dukungan untuk bahasa pemrograman DART.
- Cuplikan Flutter Awesome: Menyediakan cuplikan kode yang berguna untuk berkembang lebih cepat dalam flutter.
- Cuplikan Widget Flutter: Koleksi cuplikan untuk widget yang paling umum digunakan dalam flutter.
Konfigurasi backend
- Instalasi Node.js
- Unduh dan instal node.js dari halaman resminya: https://nodejs.org/. Node.js diperlukan untuk bekerja dengan Express.js. Selanjutnya tambahkan jalur ke variabel lingkungan.
- Pembuatan dan Konfigurasi Proyek Express.js
- Buka terminal dan gunakan perintah berikut untuk menginstal Generator Aplikasi Express: NPM Instal -G Express -Generator
- Buat Proyek Express Baru Dengan Perintah: Name-of-Proyek Ekspres
- Pengembangan di Express.js
- Kembangkan aplikasi backend Anda dengan memodifikasi file di direktori proyek. Mereka dapat diinstal tambahan seperlunya, menginstalnya dengan nama pemasangan NPM.
- Alat seperti tukang pos atau insomnia dapat digunakan untuk menguji titik akhir API dari aplikasi Express.js Anda.
Eksekusi dan tes
- Untuk perbatasan, buka kode VS, navigasikan ke direktori proyek flutter Anda dan jalankan aplikasi Anda menggunakan emulator yang dikonfigurasi di Android Studio.
- Untuk backend, di terminal menavigasi ke direktori proyek Express Anda dan mengeksekusi
npm start memulai server.
Persyaratan
Persyaratan fungsional
| |
|---|
| Identifikasi persyaratan | RF1 |
| Nama Persyaratan | Pembuatan akun |
| Karakteristik | Pengguna dapat membuat akun, mendefinisikan nama pengguna dan kata sandi. |
| Deskripsi persyaratan | Pengguna dapat membuat akun yang memberikan data: email, nama pengguna, nama lengkap dan kata sandi |
| Persyaratan non -fungsional | RNF1, RNF2, RNF5 |
| Prioritas persyaratan | Tinggi |
| |
|---|
| Identifikasi persyaratan | Rf2 |
| Nama Persyaratan | Otentikasi pengguna |
| Karakteristik | Pengguna untuk masuk harus memasukkan informasi akun |
| Deskripsi persyaratan | Pengguna untuk masuk harus memasukkan nama pengguna dan kata sandi mereka |
| Persyaratan non -fungsional | RNF1, RNF2, RNF5 |
| Prioritas persyaratan | Rata-rata |
| |
|---|
| Identifikasi persyaratan | RF3 |
| Nama Persyaratan | Penciptaan kategori |
| Karakteristik | Pengguna dapat membuat kategori |
| Deskripsi persyaratan | Pengguna akan dapat membuat maksimum 10 kategori untuk pendapatan, pengeluaran, dan tabungan mereka. |
| Persyaratan non -fungsional | Rnf1, rnf2, rnf6 |
| Prioritas persyaratan | Rata-rata |
| |
|---|
| Identifikasi persyaratan | RF4 |
| Nama Persyaratan | Penciptaan Rencana Anggaran |
| Karakteristik | Pengguna akan dapat membuat rencana anggaran untuk setiap kategori pendapatan, pengeluaran, dan tabungan. |
| Deskripsi persyaratan | Pengguna akan dapat membuat rencana anggaran untuk setiap kategori pendapatan, pengeluaran, dan tabungan. |
| Persyaratan non -fungsional | Rnf1, rnf2, rnf6, rnf7 |
| Prioritas persyaratan | Rata-rata |
| |
|---|
| Identifikasi persyaratan | RF5 |
| Nama Persyaratan | Penghasilan Gerakan |
| Karakteristik | Pengguna dapat memasukkan pergerakan keuangan mereka sesuai dengan setiap kategori pendapatan, pengeluaran, dan tabungan. |
| Deskripsi persyaratan | Pengguna dapat memasukkan pergerakan keuangan mereka sesuai dengan setiap kategori pendapatan, pengeluaran, dan tabungan. |
| Persyaratan non -fungsional | RNF1, RNF2, RNF6, RNF7. |
| Prioritas persyaratan | Tinggi |
| |
|---|
| Identifikasi persyaratan | Rf6 |
| Nama Persyaratan | Melihat Sejarah Anggaran dan Pergerakan |
| Karakteristik | Pengguna dapat melihat anggaran masa lalu mereka. |
| Deskripsi persyaratan | Pengguna akan dapat melihat anggaran mereka dari periode sebelumnya (bulan dan tahun). |
| Persyaratan non -fungsional | Rnf1, rnf2, rnf6, rnf7 |
| Prioritas persyaratan | Rata-rata |
| |
|---|
| Identifikasi persyaratan | Rf7 |
| Nama Persyaratan | Perubahan kata sandi |
| Karakteristik | Pengguna dapat meminta perubahan kata sandi. |
| Deskripsi persyaratan | Pengguna dapat meminta perubahan kata sandi yang menyediakan nama pengguna atau email Anda. |
| Persyaratan non -fungsional | Rnf1, rnf2, rnf6, rnf7 |
| Prioritas persyaratan | Rendah |
Persyaratan non -fungsional
| |
|---|
| Identifikasi persyaratan | RNF1 |
| Nama Persyaratan | Pertunjukan |
| Karakteristik | Respons langsung dan efisiensi pemrosesan. |
| Deskripsi persyaratan | Aplikasi harus dengan cepat menanggapi input pengguna dan secara efektif menangani pemrosesan data. |
| Prioritas persyaratan | Tinggi |
| |
|---|
| Identifikasi persyaratan | Rnf2 |
| Nama Persyaratan | Tersedianya |
| Karakteristik | Akses konstan dan waktu tidak aktif minimum. |
| Deskripsi persyaratan | Aplikasi harus tersedia untuk digunakan sebanyak mungkin waktu, dengan waktu tidak aktif minimum. |
| Prioritas persyaratan | Tinggi |
| |
|---|
| Identifikasi persyaratan | RNF3 |
| Nama Persyaratan | Kegunaan |
| Karakteristik | Intuitif dan dapat diakses oleh semua pengguna. |
| Deskripsi persyaratan | Antarmuka pengguna harus intuitif dan mudah digunakan untuk orang tanpa pengalaman sebelumnya dengan aplikasi. |
| Prioritas persyaratan | Rata-rata |
| |
|---|
| Identifikasi persyaratan | RNF4 |
| Nama Persyaratan | Kesesuaian |
| Karakteristik | Ini bekerja pada banyak perangkat dan sistem. |
| Deskripsi persyaratan | Aplikasi harus kompatibel dengan beberapa versi sistem operasi seluler, seperti Android dan iOS, dan beradaptasi dengan baik dengan berbagai ukuran dan resolusi layar. |
| Prioritas persyaratan | Tinggi |
| |
|---|
| Identifikasi persyaratan | RNF5 |
| Nama Persyaratan | Keamanan |
| Karakteristik | Perlindungan dan Enkripsi Data. |
| Deskripsi persyaratan | Aplikasi harus melindungi informasi sensitif pengguna, memastikan bahwa semua data yang dikirim dan disimpan dienkripsi. |
| Prioritas persyaratan | Tinggi |
| |
|---|
| Identifikasi persyaratan | Rnf6 |
| Nama Persyaratan | Skalabilitas |
| Karakteristik | Pertumbuhan pengguna dan pemuatan data yang efektif. |
| Deskripsi persyaratan | Aplikasi harus dapat menangani peningkatan jumlah pengguna dan dalam beban pemrosesan data tanpa kinerja yang merendahkan secara signifikan. |
| Prioritas persyaratan | Rata-rata |
| |
|---|
| Identifikasi persyaratan | Rnf7 |
| Nama Persyaratan | Pemeliharaan |
| Karakteristik | Kode yang terorganisir dan mudah diperbarui. |
| Deskripsi persyaratan | Kode aplikasi harus diatur dengan baik dan didokumentasikan untuk memfasilitasi pembaruan dan pemeliharaan oleh pengembang. |
| Prioritas persyaratan | Rendah |
| |
|---|
| Identifikasi persyaratan | RNF8 |
| Nama Persyaratan | Konsumsi baterai |
| Karakteristik | Efisiensi energi dan konsumsi yang dioptimalkan. |
| Deskripsi persyaratan | Aplikasi harus efisien dalam hal konsumsi baterai, menghindari drainase yang berlebihan saat digunakan aktif atau latar belakang. |
| Prioritas persyaratan | Rata-rata |
| |
|---|
| Identifikasi persyaratan | RNF9 |
| Nama Persyaratan | Manajer Database |
| Karakteristik | Keandalan dan kemampuan manajemen data canggih dengan PostgreSQL. |
| Deskripsi persyaratan | Aplikasi akan menggunakan PostgreSQL sebagai sistem manajemen basis data. |
| Prioritas persyaratan | Tinggi |
| |
|---|
| Identifikasi persyaratan | RNF10 |
| Nama Persyaratan | Kode Pengembangan |
| Karakteristik | Pengembangan terpadu dan multiplatform dengan flutter. |
| Deskripsi persyaratan | Aplikasi akan menggunakan Flutter sebagai kerangka kerja kode pengembangan. |
| Prioritas persyaratan | Tinggi |
Diagram
Diagram Relasional

Legenda meja:
- Jenis: Mengacu pada 3 jenis transaksi ada: pendapatan, pengeluaran, dan tabungan.
- Kategori: Mengacu pada sifat pendapatan/pengeluaran/tabungan
- Jenis: Penghasilan - Kategori: Gaji, bunga, pembayaran untuk biaya ...
- Jenis: Biaya - Kategori: Transportasi, Makanan, Utilitas, Kesehatan, Pendidikan, Hiburan ...
- Jenis: Tabungan - Kategori: Rumah, Mobil, Perjalanan, Kewirausahaan ...
- Penjelasan: Misalnya, dalam catatan jenisnya bisa pendapatan dan kategori bisa gaji
- Kalender: Tabel ini akan terdiri dari banyak tanggal dan akan dikaitkan dengan tabel sebulan. Ini terutama untuk memfasilitasi pembuatan filter dalam aplikasi dan alokasi tanggal untuk pendaftaran dalam tabel pelacak.
- Bulan: Tabel yang mengandung setiap tahun dengan ID yang berbeda. Tabel ini akan memfasilitasi pemrograman filter.
- Tahun: Tabel yang mengandung tahun yang mungkin dalam periode waktu tertentu. Tabel ini akan memfasilitasi pemrograman filter.
- Anggaran: Ini adalah jumlah uang yang direncanakan untuk setiap kategori dan bulan (karena dapat bervariasi antara bulan). Ini adalah tujuan, itu tidak harus dipenuhi.
- Pendaftaran (Pelacakan): Ini adalah tabel utama, di mana semua pendapatan, pengeluaran atau tabungan dicatat, dengan kategori, catatan, dan tanggal detail masing -masing.
- Pengguna: Ini adalah tabel di mana informasi pengguna disimpan, terutama nama dan nama keluarga mereka, di samping kredensial mereka untuk memasukkan akun aplikasi mereka (email dan kata sandi).
Gunakan diagram kasus

Diagram Penyebaran
