0% found this document useful (0 votes)
352 views48 pages

XXX Ty

Uploaded by

Arya
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
352 views48 pages

XXX Ty

Uploaded by

Arya
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 48

PT PARAMADAKSA TEKNOLOGI NUSANTARA

Software License Activation Phase 2


Functional Specification Document
Author : Emil Kevin Lamsundy
Version : 1.0.0
Last Update : 2021.06.08
Soft Copy Name : FSD_NexTrac2_Fase_2_(Online_Activation)_V1.0.0.docx

Copyright © 2021 PT. Paramadaksa Teknologi Nusantara. All rights reserved. These
materials are confidential and proprietary to PT. Paramadaksa Teknologi Nusantara and
no part of these materials should be reproduced, published in any form by any means,
electronic or mechanical including photocopy or any information storage or retrieval
system nor should the materials be disclosed to third parties without the express written
authorization of PT. Paramadaksa Teknologi Nusantara.
Riwayat Versi
Versi Tanggal Penulis Riwayat
1.0.0 08/06/2021 Emil Kevin  Release Pertama
Lamsundy

Daftar Isi
Riwayat Versi..............................................................................................................................................2
Daftar Isi......................................................................................................................................................3
Daftar Gambar............................................................................................................................................4
Daftar Tabel................................................................................................................................................4
Kaidah Simbol dan Istilah...........................................................................................................................5
Lembar Persetujuan....................................................................................................................................8
1. Pendahuluan........................................................................................................................................9
1.1. Tujuan Dokumen.........................................................................................................................9
1.2. Latar Belakang.............................................................................................................................9
1.3. Simbol dan Singkatan..................................................................................................................9
1.3.1. Tipe Field.............................................................................................................................9
1.4. Tipe Data....................................................................................................................................11
2. Struktur Kebutuhan...........................................................................................................................11
2.1. Gambaran Umum......................................................................................................................11
2.1.1. Deskripsi............................................................................................................................11
2.1.2. Batasan Pembahasan.........................................................................................................11
3. Solusi Kebutuhan...............................................................................................................................11
3.1. Route Plan.................................................................................................................................11
3.1.1. Process Flow Pembuatan Weekly Route plan....................................................................11
3.1.2. Process Flow Edit Weekly Route Plan................................................................................14
3.1.3. Process Flow Delete Weekly Route Plan............................................................................15
3.1.4. CUD Route Plan..................................................................................................................16
3.1.5. Action Control....................................................................................................................22
3.1.6. Route Pricing......................................................................................................................24
3.1.7. Parameter Pada Weekly Route Plan..................................................................................24
3.1.8. Penambahan Tabel Baru Untuk Weekly Route Plan..........................................................26
3.2. Route Plan Armada....................................................................................................................31
3.2.1. Flow Route Plan Armada....................................................................................................31
3.2.2. Pembuatan Menu Route Plan Armada..............................................................................32
3.2.3. Action Control....................................................................................................................35
3.2.4. Pembuatan Table Baru Untuk Route Plan Armada............................................................37
3.3. Synchronize Weekly Routeplan to GroMart..............................................................................38
3.3.1. Penambahan Informasi Estimasi Pengiriman.....................................................................38
3.3.2. Penambahan Tabel untuk Synchronization Route Plan.....................................................39
Daftar Gambar
Figure 1 Flowchart pembuatan Weekly Route Plan pada ND6....................................................................9
Figure 2 Flowchart Proses edit Weekly Route Plan pada ND6...................................................................11
Figure 3 Flowchart delete Weekly Route Plan pada ND6..........................................................................12
Figure 4 Menu Utama Route Plan.............................................................................................................13
Figure 5 Tampilan view map pada sebuah detail rute...............................................................................14
Figure 6 Form header Pembuatan weekly route plan...............................................................................14
Figure 7 Pemilihan hari pada pembuatan weekly route plan....................................................................15
Figure 8 Form weekly route plan details...................................................................................................15
Figure 9 Gambar tampilan map saat pembuatan rute..............................................................................16
Figure 10 Detail hover pada titik customer saat pembuatan weekly route plan.........Error! Bookmark not
defined.
Figure 11 Proses penambahan titik lokasi customer dan non-customer...................................................17
Figure 12 Contoh tampilan pembuatan rute.............................................................................................18
Figure 13 Confirmation dialog save weekly route plan..............................................................................19
Figure 14 Flowchart Route Plan Armada pada ND6...................................................................................27
Figure 15 Tampilan menu utama route plan armada................................................................................28
Figure 16 Detail form route plan armada..................................................................................................29
Figure 17 Penugasan rute pada weekly route plan...................................................................................30
Figure 18 Detail route plan pada google map pada route plan armada....................................................31
Figure 19 Radio button pemilihan tipe replikasi route plan armada.........................................................31

Daftar Tabel
Table 1-1 Tabel Tipe Field............................................................................................................................6
Table 1-2 Tabel Tipe Data............................................................................................................................8
Table 3-1 Tabel Field Description Weekly Route Plan...............................................................................14
Table 3-2 Tabel Action Control Weekly Route Plan...................................................................................19
Table 3-3 Tabel Parameter Weekly Route Plan.........................................................................................21
Table 3-4 Tabel Database routeplan..........................................................................................................22
Table 3-5 Tabel Database routeplandetail.................................................................................................23
Table 3-6 Tabel Database routelocation....................................................................................................24
Table 3-7 Tabel Field Description Route Plan Armada...............................................................................29
Table 3-8 Tabel Action Control Route Plan Armada..................................................................................31
Table 3-9 Tabel Database armadarouteplan.............................................................................................33
Kaidah Simbol dan Istilah
a. Tipe Kolom

Table 1-1 Tipe kolom


Singkatan Keterangan Ilustrasi
TSL Textbox Single Line

TML Textbox Multiple Line

DDL Dropdown List

DDS Dropdown Search

CKB Check Box

RDB Radio Button

LBL Label
DPL Date Pick List
SCH Search
PHT Photo

TGL Toggle Switch

or
LUMLO Look Up Multi Line Option

FUP File Uploader


MAP Map

SGP Signature Pad

PGB Progress Bar


MLS Multi Select

b. Tipe Data

Table 1-2 Tipe data


Singkatan Penanda Tipe Data atau Format Deskripsi
NUM (<length>, <decimal length>) Numeric
APB (<length>) Alphabet
APN (<length>) Alphanumeric
DTE (YYYY-MM-DD) Date
DTM (YYYY-MM-DD HH:ii:ss) Date and Time
TME (HH:ii:ss) Time
IMG Image
TXT Text

c. Status Kolom

Table 1-3 Status kolom


Singkatan Arti Deskripsi
M Mandatory Kolom yang wajib diisi
O Optional Kolom yang tidak wajib diisi
D Display 1) Kolom yang hanya berupa informasi
2) Kolom ini tidak dapat diinput atau tidak dapat
diubah
3) Sifat mirip seperti label

C System calculated Kolom yang berisikan nilai yang berasal dari hasil
perhitungan tertentu

d. Tipe Kontrol

Table 1-4 Tipe kontrol


Singkatan Keterangan Ilustrasi
BTN Button
HYP Hyperlink View | Edit
TAB Tab

OPT Option Button


or
ROW Table Row
e. Istilah

Table 1-5 Istilah


Singkatan / Istilah Keterangan
Resource Sistem cloud internal Nexsoft
Tabel Relasi Tabel yang terhubung dengan tabel terkait
Resource Tabel Relasi Sumber resource yang memiliki tabel terkait
Lembar Persetujuan
Dibuat oleh: Diketahui oleh: Disetujui oleh:

(Emil Kevin Lamsundy) (Alex H Wreksoremboko) (Alex H Wreksoremboko)


8 Juni 2021 8 Juni 2021 8 Juni 2021
1. Pendahuluan
1.1. Tujuan Dokumen
Dokumen ini dibuat untuk membantu tim developer dan Quality Assurance (QA) agar
bisa memahami dan mengerti dalam proses pengembangan aplikasi sistem NexTrac2. Dokumen
ini membahas mengenai perubahan yang akan diimplementasikan sebagai bentuk dukungan
kebutuhan bisnis Nexsoft. Isi dari dokumen ini selanjutnya akan digunakan sebagai sumber
untuk pengembangan aplikasi dan testing.

1.2. Latar Belakang


Nexsoft bergerak dalam penyedia layanan penyedia sistem untuk FMCG, terutama dalam
bidang Distribution Management System (DMS). Dengan banyaknya produk perangkat lunak
Nexsoft yang tersebar di customer, tentunya pengontrolan lisensi software semakin dibutuhkan
untuk menjaga keamanan dan pembajakan software.
Saat ini, tentunya Nexsoft telah menerapkan penggunaan product key sebagai lisensi dari
sistem produk perangkat lunak yang ada seperti ND6. Namun, validasi product key ini hanya
dilakukan secara offline sehingga sangat sulit melakukan validasi terhadap pembajakan software.
Dengan adanya kendala ini, maka diperlukan sebuah sistem Software license activation, di mana
customer dapat melakukan aktivasi dan validasi lisensi produk dari Nexsoft secara online.
2. Struktur Kebutuhan
2.1. Gambaran Umum
2.1.1.Deskripsi
Berdasarkan latar belakang tersebut di atas, dapat disimpulkan bahwa yang menjadi
kebutuhan dari pihak Nexsoft untuk dapat menangani online software license activation sehingga
dapat mempermudah proses aktivasi software dan dapat dilakukan validasi lisensi secara berkala.
Untuk menangani soal aktivasi lisensi secara online, akan dikembangkan sebuah sistem
NexTrac2 sebagai pengembangan dari versi sebelumnya, untuk menghasilkan product key dan
menangani proses aktivasi lisensi maupun pengecekan validasi lisensi secara online. Adapun
dalam fase pertama ini, ada beberapa fitur utama yang dikembangkan:
 User Data group and Data scope
Fitur ini akan digunakan untuk mengatur hak akses terhadap data oleh sebuah user.
Terdiri dari data group yang berisi beberapa data scope.
 Migrasi Master Database dari NexTrac untuk keperluan aktivasi lisensi product secara
online
 Master prelicense
Fitur ini akan digunakan untuk membuat prelicense, yaitu master yang berisi data dari
lisensi yang dibeli oleh customer beserta spesifikasi lisensi untuk nantinya dapat
diaktifkan oleh customer secara online untuk menghasilkan lisensi yang aktif.
 License (product key) generator
Fitur ini nantinya akan digunakan untuk menghasilkan product key dari prelicense ketika
user melakukan permintaan untuk mendapatkan product key dalam proses aktivasi
produk.
 Online Software activation
Fitur ini nantinya akan digunakan untuk melakukan aktivasi produk secara online.
 Online / Offline License validation
Fitur ini digunakan oleh sistem untuk melakukan validasi lisensi pada produk. Validasi
ini akan dilakukan secara online dan offline dari sisi produk yang terkait.
 Master synchronization dari NexTrac ke NexTrac2
Fitur ini digunakan untuk sinkronisasi data master dari NexTrac ke NexTrac2
menggunakan NexTrac2 API.
 NexTrac2 API
Nantinya API akan dibuat oleh NexTrac2 sehingga menjadi jalur komunikasi untuk
aplikasi dalam melakukan proses aktivasi dan validasi lisensi, serta registrasi
authentication.

2.1.2.Batasan Pembahasan
Dalam pengembangan sistem NexTrac2 fase 2, tentunya ada beberapa batasan fitur.
Adapun batasan fitur yang dibuat adalah sebagai berikut:
a. Tiap user hanya memiliki 1 data group, dan 1 data group dapat terdiri dari satu atau lebih
data scope.
b. Migrasi master database hanya terkait master yang berkaitan dengan instalasi customer
yaitu salesman, customer, customer installation, dan user login, dan existing data
mengenai lisensi produk. Untuk seluruh database yang berkaitan dengan sistem billing
dari NexTrac, tidak akan dimigrasikan ke NexTrac2
c. Migrasi master database akan mengikuti skema tabel NexTrac2 yang sudah berhubungan
dengan projek Authentication server dan Master Data.
d. Prelicense merupakan master untuk membuat detil lisensi berdasarkan lisensi produk
yang telah dibeli oleh customer. Dalam hal ini dibeli yang dimaksudkan adala secara
sistem telah ditambahkan pada customer installation dan dicetak proforma invoice-nya
pada NexTrac, serta telah dibayarkan oleh customer dan diverifikasi oleh pihak finance.
e. Prelicense dibuat di NexTrac2 untuk nantinya dijadikan acuan untuk menghasilkan
product key saat diminta oleh sistem external untuk menghasilkan product key sebelum
aktivasi.
f. License akan dihasilkan berdasarkan permintaan aktivasi dilakukan dari sisi customer
melalui aplikasi. Detail mengenai lisensi akan dibahas pada subbab selanjutnya.
g. License hanya akan dihasilkan setelah product key sudah dihasilkan oleh sistem
NexTrac2 setelah permintaan dilakukan oleh product yang memiliki client ID yang telah
memiliki prelicense yang valid.
h. Baik Online / Offline validation, akan dilakukan dari sisi aplikasi yang secara berkala
menggunakan scheduler dan jalan pada background process. Nantinya akan dilakukan
validasi lisensi secara berkala untuk sistem menggunakan API NexTrac2. Pada ND6 juga
akan dilakukan pengecekan secara offline secara berkala untuk memastikan apakah
lisensi tersebut valid / tidak dan pengecekan untuk mewajibkan ND6 untuk online secara
berkala.
i. Offline validation hanya akan terbatas pada aplikasi on-premise yaitu ND6, yang
memiliki server sendiri dan bisa jalan secara offline.
j. Data master yang dapat disinkronisasi dari NexTrac hanya data yang berkaitan dengan
customer installation.
k. NexTrac2 API digunakan untuk sinkronisasi data master dari NexTrac, proses aktivasi
lisensi online, registrasi client ID dan authentication, dan validasi lisensi secara online.
l. Data master akan digunakan sebagai referensi profil data orang maupun perusahaan
(customer).
3. Solusi Kebutuhan
3.1. Arsitektur Sistem NexTrac2
Berdasarkan latar belakang dan kebutuhan sistem di atas, NexTrac2 akan dikembangkan
sebagai sistem internal Nexsoft penghubung antar customer dan Nexsoft dalam hal aktivasi
lisensi software sebagai pengembangan dari NexTrac versi yang sekarang di mana NexTrac
hanya mencatat instalasi produk dari setiap customer dan billing (pembelian dan perpanjangan)
license dari customer. Nantinya NexTrac2 akan berdiri sebagai salah satu SaaS (Software as a
Service) untuk menangani mengenai aktivasi lisensi software secara online yang dilakukan oleh
customer melalui produk terkait.

Figure 3-1 Arsitektur sistem NexTrac2

Pada gambar di atas, merupakan arsitektur sistem pada NexTrac2 berikut komponen-nya
dan sistem lain yang berhubungan. Berikut adalah penjelasan dari tiap komponen berikut aksi
yang dapat dilakukan oleh sistem:
Table 3-6 Komponen arsitektur sistem

Komponen Keterangan

Merupakan ND 6 server dari distributor (customer)


ND6 Server ND6 dapat melakukan 2 hal:
 Registrasi Client ID (hanya untuk ND6 yang belum terdaftar di
Authentication / tidak memiliki client ID).
 Request generate product key ke NexTrac2 Melalui NexTrac2 API
 Aktivasi Lisensi secara online.
 Register Socket User NexMile (License NexMile)
NexMile Users Merupakan NexMile user yang terinstal pada perangkat smartphone
salesman yang terdaftar sebagai SFA user.
 Dapat register user NexMile ke NexTrac2 untuk aktivasi license
nexmile terdaftar
NexTrac2 Server NexTrac2 yang berisi sistem NexTrac2.
 Sistem dapat generate Product Key sesuai permintaan dari
customer melalui NexTrac2 API.
 Sistem dapat menangani aktivasi lisensi online sesuai permintaan
dari customer melalui NexTrac2 API
 Sistem dapat request untuk registrasi Authentication untuk ND6.
 Sistem dapat request untuk add resource pada NexCloud API v2
pada saat registrasi Authentication untuk ND6
 Sistem dapat CRUD dan melihat person profile dan company profile
untuk menyimpan profil master NexTrac2 pada Master Database
NexTrac2 API API yang digunakan sebagai jalur komunikasi dari sistem luar pada
NexTrac2
NexCloud v2 API API NexCloud v2 yang akan didaftarkan resource-nya untuk ND 6 yang
belum terdaftar pada Authentication
NexTrac NexTrac versi 1 yang ada sekarang.
 Dapat melakukan sinkronisasi data master terkait untuk aktivasi
lisensi pada NexTrac2
Authentication Authentication server sebagai server untuk melakukan autentikasi login
aplikasi client ke server cloud Nexsoft.
Master Database Master database yang akan menampung data umum yang dapat digunakan
oleh aplikasi Nexsoft untuk menyimpan profil dari orang dan perusahaan.
3.2. Otorisasi User
3.2.1.List Permission User
Table 3-7 Table Permission User Login

Menu
Pembatas
# Menu Menu Menu Aksi Permission Keterangan Menu Terkait
an Aksi
Lv 1 Lv 2 Lv 3

Digunakan untuk akses seluruh


a. Maste Setup All View All master.setup:view halaman pada menu master-setup Master-setup
r
dengan akses aksi view

Digunakan untuk akses seluruh


b. Maste master.setup:view_ halaman pada menu master-setup
Setup All View Own Master-setup
r own dengan akses aksi view untuk data yang
dibuat oleh user terkait

Digunakan untuk akses seluruh


c. Maste Setup All Insert All master.setup:insert halaman pada menu master- setup Master-setup
r
dengan aksi insert

Digunakan untuk akses seluruh


d. Maste Setup All Update All master.setup:update halaman pada menu master- setup Master-setup
r
dengan aksi update
Digunakan untuk akses seluruh
e. Maste master.setup:update halaman pada menu master- setup
Setup All Update All Master-setup
r _own dengan aksi update pada data yang
dibuat oleh user terkait

Digunakan untuk akses seluruh


f. Maste Setup All Delete All master.setup:delete halaman pada menu master- setup Master-setup
r
dengan aksi delete

Digunakan untuk akses seluruh


g. Maste master.setup:delete halaman pada menu master- setup
Setup All Delete own Master-setup
r _own dengan aksi delete pada data yang
dibuat oleh user terkait

Digunakan untuk mengakses halaman


h. Maste salesm master.setup.salesm Master-setup-
Setup View All pada menu master-setup-salesman
r an an:view salesman
dengan akses aksi view

Digunakan untuk mengakses halaman


pada menu master-setup-salesman
i. Maste salesm master.setup.salesm Master-setup-
Setup View Own dengan akses aksi view hanya pada
r an an:view_own salesman
data yang sebelumnya ditambahkan
oleh user terkait
Digunakan untuk akses halaman pada
j. Maste salesm master.setup.salesm Master-setup-
Setup Insert All menu master-setup-salesman dengan
r an an:insert salesman
akses aksi insert

Digunakan untuk akses halaman pada


k. Maste salesm master.setup.salesm Master-setup-
Setup Update All menu master-setup-salesman setup
r an an:update salesman
dengan akses aksi update

Digunakan untuk akses halaman pada


menu master-setup-salesman dengan
l. Maste salesm master.setup.salesm Master-setup-
Setup Update All akses aksi update hanya pada data yang
r an an:update_own salesman
sebelumnya ditambahkan oleh user
terkait

Digunakan untuk akses halaman pada


m.Maste salesm master.setup.salesm Master-setup-
Setup Delete All menu master-setup-salesman dengan
r an an:delete salesman
akses aksi delete

Digunakan untuk akses halaman pada


menu master-setup-salesman dengan
n. Maste salesm master.setup.salesm Master-setup-
Setup Delete own akses aksi delete hanya pada data yang
r an an:delete_own salesman
sebelumnya ditambahkan oleh user
terkait
Registr
Digunakan untuk mengakses halaman
o. Maste asi master.setup.registr Master-setup-
Setup View All pada menu master-setup-registrasi
r Nexmil asi_nexmile:view registrasi nexmile
nexmile dengan akses aksi view
e

Grup Digunakan untuk mengakses halaman


p. Maste konsum master.konsumen.gr Master-konsumen-
konsum View All pada menu master-konsumen-grup
r en up_konsumen:view grup konsumen
en konsumen dengan akses aksi view

Digunakan untuk mengakses halaman


Grup master.konsumen.gr pada menu master-konsumen-grup
q. Maste konsum Master-konsumen-
konsum View Own up_konsumen:view_ konsumen dengan akses aksi view
r en grup konsumen
en own hanya pada data yang sebelumnya
ditambahkan oleh user terkait

Grup Digunakan untuk akses halaman pada


r. Maste konsum master.konsumen.gr Master-konsumen-
konsum Insert All menu master-konsumen-grup
r en up_konsumen:insert grup konsumen
en konsumen dengan akses aksi insert

Digunakan untuk akses halaman pada


Grup master.konsumen.gr
s. Maste konsum menu master-konsumen-grup Master-konsumen-
konsum Update All up_konsumen:updat
r en konsumen setup dengan akses aksi grup konsumen
en e
update
Digunakan untuk akses halaman pada
Grup master.konsumen.gr menu master-konsumen-grup
t. Maste konsum Master-konsumen-
konsum Update All up_konsumen:updat konsumen dengan akses aksi update
r en grup konsumen
en e_own hanya pada data yang sebelumnya
ditambahkan oleh user terkait

Grup master.konsumen.gr Digunakan untuk akses halaman pada


u. Maste konsum Master-konsumen-
konsum Delete All up_konsumen:delet menu master-konsumen-grup
r en grup konsumen
en e konsumen dengan akses aksi delete

Digunakan untuk akses halaman pada


Grup master.konsumen.gr menu master-konsumen-grup
v. Maste konsum Master-konsumen-
konsum Delete own up_konsumen:delet konsumen dengan akses aksi delete
r en grup konsumen
en e_own hanya pada data yang sebelumnya
ditambahkan oleh user terkait

Kategor
master.konsumen.ka Digunakan untuk mengakses halaman
w. Maste konsum i Master-konsumen-
View All tegori_konsumen:vi pada menu master-konsumen-kategori
r en konsum kategori konsumen
ew konsumen dengan akses aksi view
en

Digunakan untuk mengakses halaman


Kategor
master.konsumen.ka pada menu master-konsumen-kategori
x. Maste konsum i Master-konsumen-
View Own tegori_konsumen:vi konsumen dengan akses aksi view
r en konsum kategori konsumen
ew_own hanya pada data yang sebelumnya
en
ditambahkan oleh user terkait
Kategor
master.konsumen.ka Digunakan untuk akses halaman pada
y. Maste konsum i Master-konsumen-
Insert All tegori_konsumen:in menu master-konsumen-kategori
r en konsum grup konsumen
sert konsumen dengan akses aksi insert
en

Kategor Digunakan untuk akses halaman pada


master.konsumen.ka
z. Maste konsum i menu master-konsumen-grup Master-konsumen-
Update All tegori_konsumen:up
r en konsum konsumen setup dengan akses aksi grup konsumen
date
en update

Digunakan untuk akses halaman pada


Kategor
master.konsumen.ka menu master-konsumen-grup
aa.Maste konsum i Master-konsumen-
Update All tegori_konsumen:up konsumen dengan akses aksi update
r en konsum grup konsumen
date_own hanya pada data yang sebelumnya
en
ditambahkan oleh user terkait

Kategor
master.konsumen.ka Digunakan untuk akses halaman pada
bb.Maste konsum i Master-konsumen-
Delete All tegori_konsumen:de menu master-konsumen-grup
r en konsum grup konsumen
lete konsumen dengan akses aksi delete
en

Digunakan untuk akses halaman pada


Kategor
master.konsumen.ka menu master-konsumen-grup
cc.Maste konsum i Master-konsumen-
Delete own tegori_konsumen:de konsumen dengan akses aksi delete
r en konsum grup konsumen
lete_own hanya pada data yang sebelumnya
en
ditambahkan oleh user terkait
dd.Maste konsum konsum master.konsumen.k
View All
r en en onsumen:view

ee.Maste konsum konsum master.konsumen.k


View Own
r en en onsumen:view_own

ff. Maste konsum konsum master.konsumen.k


Insert All
r en en onsumen:insert

gg.Maste konsum konsum master.konsumen.k


Update All
r en en onsumen:update

master.konsumen.k
hh.Maste konsum konsum
Update All onsumen:update_o
r en en
wn
ii. Maste konsum konsum master.konsumen.k
Delete All
r en en onsumen:delete

master.konsumen.k
jj. Maste konsum konsum
Delete own onsumen:delete_ow
r en en
n

Lokasi
kk.Maste konsum master.konsumen.lo
konsum View All
r en kasi_konsumen:view
en

Lokasi master.konsumen.
ll. Maste konsum
konsum View Own lokasi_konsumen:vie
r en
en w_own

Lokasi master.konsumen.
Maste
mm. konsum
konsum Insert All lokasi_konsumen:ins
r en
en ert
Lokasi master.konsumen.
nn.Maste konsum
konsum Update All lokasi_konsumen:up
r en
en date

Lokasi master.konsumen.
oo.Maste konsum
konsum Update All lokasi_konsumen:up
r en
en date_own

Lokasi master.konsumen.
pp.Maste konsum
konsum Delete All lokasi_konsumen:de
r en
en lete

Lokasi master.konsumen.
qq.Maste konsum
konsum Delete own lokasi_konsumen:de
r en
en lete_own

rr. Maste produk All View All master.produk:view


r
ss. Maste master.produk:view
produk All View Own
r _own

tt. Maste master.produk:inser


produk All Insert All
r t

uu.Maste master.produk:upda
produk All Update All
r te

vv.Maste master.produk:upda
produk All Update All
r te_own

Maste
ww. master.produk:delet
produk All Delete All
r e
xx.Maste master.produk:delet
produk All Delete own
r e_own

yy.Maste Grup master.produk.grup


produk View All
r Produk _produk:view

zz. Maste Grup master.produk.grup


produk View Own
r Produk _produk:view_own

Maste
aaa. Grup master.produk.grup
produk Insert All
r Produk _produk:insert

Maste
bbb. Grup master.produk.grup
produk Update All
r Produk _produk:update
master.produk.grup
ccc.Maste Grup
produk Update All _produk:update_ow
r Produk
n

Maste
ddd. Grup master.produk.grup
produk Delete All
r Produk _produk:delete

Maste
eee. Grup master.produk.grup
produk Delete own
r Produk _produk:delete_own

fff.Maste master.produk.prod
produk Produk View All
r uk:view

Maste
ggg. master.produk.prod
produk Produk View Own
r uk:view_own
Maste
hhh. master.produk.prod
produk Produk Insert All
r uk:insert

iii. Maste master.produk.prod


produk Produk Update All
r uk:update

jjj. Maste master.produk.prod


produk Produk Update All
r uk:update_own

Maste
kkk. master.produk.prod
produk Produk Delete All
r uk:delete

lll. Maste master.produk.prod


produk Produk Delete own
r uk:delete_own
Maste
mmm. Lisensi All View All master.lisensi:view
r

Maste
nnn. master.lisensi:view_
Lisensi All View Own
r own

Maste
ooo. Lisensi All Insert All master.lisensi:insert
r

Maste
ppp. master.lisensi:updat
Lisensi All Update All
r e

Maste
qqq. master.lisensi:updat
Lisensi All Update All
r e_own
rrr.Maste Lisensi All Delete All master.lisensi:delete
r

sss.Maste master.lisensi:delete
Lisensi All Delete own
r _own

ttt.Maste Tipe master.lisensi.tipe_li


Lisensi View All
r Lisensi sensi:view

Maste
uuu. Tipe master.lisensi.tipe_li
Lisensi View Own
r Lisensi sensi:view_own

Maste
vvv. Tipe master.lisensi.tipe_li
Lisensi Insert All
r Lisensi sensi:insert
Maste
www. Tipe master.lisensi.tipe_li
Lisensi Update All
r Lisensi sensi:update

xxx.Maste Tipe master.lisensi.tipe_li


Lisensi Update All
r Lisensi sensi:update_own

Maste
yyy. Tipe master.lisensi.tipe_li
Lisensi Delete All
r Lisensi sensi:delete

zzz.Maste Tipe master.lisensi.tipe_li


Lisensi Delete own
r Lisensi sensi:delete_own

Maste
aaaa. Versi master.lisensi.versi_l
Lisensi View All
r Lisensi isensi:view
Maste
bbbb. Versi master.lisensi.versi_l
Lisensi View Own
r Lisensi isensi:view_own

Maste
cccc. Versi master.lisensi.versi_l
Lisensi Insert All
r Lisensi isensi:insert

Maste
dddd. Versi master.lisensi.versi_l
Lisensi Update All
r Lisensi isensi:update

Maste
eeee. Versi master.lisensi.versi_l
Lisensi Update All
r Lisensi isensi:update_own

ffff.Maste Versi master.lisensi.versi_l


Lisensi Delete All
r Lisensi isensi:delete
Maste
gggg. Versi master.lisensi.versi_l
Lisensi Delete own
r Lisensi isensi:delete_own

Maste
hhhh. Prelisen master.lisensi.prelis
Lisensi View All
r si ensi:view

iiii.Maste Prelisen master.lisensi.prelis


Lisensi View Own
r si ensi:view_own

jjjj.Maste Prelisen master.lisensi.prelis


Lisensi Insert All
r si ensi:insert

Maste
kkkk. Prelisen master.lisensi.prelis
Lisensi Delete All
r si ensi:delete
llll.Maste Prelisen master.lisensi.prelis
Lisensi Delete own
r si ensi:delete_own

Maste
mmmm. Lisensi master.lisensi.lisensi
Lisensi View All
r Produk _produk:view

Maste
nnnn. Lisensi master.lisensi.lisensi
Lisensi Insert All
r Produk _produk:insert

Maste
oooo. Lisensi master.lisensi.lisensi
Lisensi Update All
r Produk _produk:update

master.lisensi.lisensi
Maste
pppp. Lisensi
Lisensi Update own _produk:update_ow
r Produk
n
Lisensi
Maste
qqqq. Master.lisensi.lisensi
Lisensi Nexmil View All
r _nexmile:view
e

3.2.2.List Data Scope


Table 3-8 Table list Datascope

Jenis Pembatas
# Scope Digunakan untuk Keterangan
data an

- Secara default telah tersedia pada master scope


a.
All All nexsoft:ALL Data Group - scope ini menandakan bahwa user dapat mengakses
data tanpa pembatasan tertentu
- Secara default telah tersedia pada master scope
- digunakan untuk membatasi akses data berdasarkan
BTL account
b. - makna: user mendapat akses data tanpa pembatasan
Region All nexsoft.btl_account_id:ALL Nexsoft data group
BTL account
- atau dapat diartikan data yang terkait dengan BTL
account akan diambil seluruhnya tanpa pembatasan btl
account
- Scope ini terbentuk ketika data BTL account dibuat
- id_btl_account = id data dari data btl account
- digunakan untuk membatasi akses data berdasarkan
Nexsoft data group BTL account
c. BTL nexsoft.btl_account_id:id_btl
Tertentu dan Data group - makna: user mendapat akses data dengan pembatasan
account _account
(Client data group) BTL account berdasarkan id_btl_account
- atau dapat diartikan data yang terkait dengan BTL
account akan diambil hanya sesuai dengan
id_btl_account
- Secara default telah tersedia pada master scope
- digunakan untuk membatasi akses data berdasarkan
Asset Owner
Asset - scope ini digunakan untuk nexsoft data group
d.
owner All nexsoft.asset_owner_id:ALL Nexsoft data group - makna: user mendapat akses data tanpa pembatasan
(Master) asset owner
- atau dapat diartikan data yang terkait dengan asset
owner akan diambil seluruhnya tanpa pembatasan asset
owner
- Scope ini terbentuk ketika data asset owner (master)
pada nexsoft website dibuat
- id_asset_owner = id data dari data asset owner
- digunakan untuk membatasi akses data berdasarkan
Asset
e. nexsoft.asset_owner_id:id_as asset owner
owner Tertentu Nexsoft data group
set_owner - makna: user mendapat akses data dengan pembatasan
(Master)
asset owner berdasarkan id_asset_owner
- atau dapat diartikan data yang terkait dengan asset
owner akan diambil hanya sesuai dengan
id_asset_owner
Asset nexsoft.btl_account_id._and: Nexsoft data group - Scope ini terbentuk ketika data BTL account dibuat
All
owner {nexsoft.btl_account_id:id_bt dan Data group - id_btl_account = id data dari data btl account
- digunakan untuk membatasi akses data berdasarkan
BTL account dan asset owner
- makna: user mendapat akses data dengan pembatasan
BTL account berdasarkan id_btl_account dan tanpa
pembatasan asset owner
(Per BTL l_account,
(Client data group) - atau dapat diartikan data yang terkait dengan asset
account) nexsoft.asset_owner_id:ALL}
owner akan diambil seluruhnya tanpa pembatasan asset
owner pada btl account yang sesuai dengan
id_btl_account
- scope ini akan muncul pada scope dari data group
(client data group)

- Scope ini terbentuk ketika data Asset owner didaftarkan


pada BTL account tertentu (pada client website)
- id_btl_account = id data dari data btl account
- id_asset_owner = id data dari data asset owner
- digunakan untuk membatasi akses data berdasarkan
BTL account dan asset owner
Asset nexsoft.btl_account_id._and:
Nexsoft data group - makna: user mendapat akses data dengan pembatasan
owner {nexsoft.btl_account_id:id_bt
Tertentu dan Data group asset owner tertentu (sesuai id_asset owner) pada BTL
(Per BTL l_account,nexsoft.asset_own
(Client data group) account tertentu (sesuai id_btl_account)
account) er_id:id_asset_owner}
- atau dapat diartikan data yang terkait dengan asset
owner akan diambil hanya sesuai dengan id_asset owner
dan yang berada pada btl account id tertentu (sesuai
id_btl_account)
- scope ini akan muncul pada scope dari data group
(client data group)

nexsoft.btl_account_id._and: - Scope ini terbentuk ketika data BTL account dibuat


Nexsoft data group
{nexsoft.btl_account_id:id_bt - id_btl_account = id data dari data btl account
Team All dan Data group
l_account, - digunakan untuk membatasi akses data berdasarkan
(Client data group)
nexsoft.team_id:ALL} BTL account dan team
- makna: user mendapat akses data dengan pembatasan
BTL account berdasarkan id_btl_account dan tanpa
pembatasan team
- atau dapat diartikan data yang terkait dengan team
akan diambil seluruhnya tanpa pembatasan team pada
btl account yang sesuai dengan id_btl_account
- Scope ini terbentuk ketika data Team didaftarkan pada
BTL account tertentu
- id_btl_account = id data dari data btl account
- id_team = id data dari data team
- digunakan untuk membatasi akses data berdasarkan
nexsoft.btl_account_id._and:
Nexsoft data group BTL account dan team
{nexsoft.btl_account_id:id_bt
Team Tertentu dan Data group - makna: user mendapat akses data dengan pembatasan
l_account,nexsoft.team_id:id
(Client data group) team tertentu (sesuai id_team) pada BTL account
_team}
tertentu (sesuai id_btl_account)
- atau dapat diartikan data yang terkait dengan team
akan diambil hanya sesuai dengan id_team dan yang
berada pada btl account id tertentu (sesuai
id_btl_account)
- Scope ini terbentuk ketika data BTL account dibuat
- id_btl_account = id data dari data btl account
- digunakan untuk membatasi akses data berdasarkan
nexsoft.btl_account_id._and: BTL account dan asset category
{nexsoft.btl_account_id:id_bt Nexsoft data group - makna: user mendapat akses data dengan pembatasan
Asset
All l_account, dan Data group BTL account berdasarkan id_btl_account dan tanpa
category
nexsoft.asset_category_id:AL (Client data group) pembatasan asset category
L} - atau dapat diartikan data yang terkait dengan asset
category akan diambil seluruhnya tanpa pembatasan
asset category pada btl account yang sesuai dengan
id_btl_account
- Scope ini terbentuk ketika data Asset category
didaftarkan pada BTL account tertentu
- id_btl_account = id data dari data btl account
- id_asset_category = id data dari data asset category
- digunakan untuk membatasi akses data berdasarkan
nexsoft.btl_account_id._and:
Nexsoft data group BTL account dan asset category
Asset {nexsoft.btl_account_id:id_bt
Tertentu dan Data group - makna: user mendapat akses data dengan pembatasan
category l_account,nexsoft.asset_cate
(Client data group) asset category tertentu (sesuai id_asset_category) pada
gory_id:id_asset_category}
BTL account tertentu (sesuai id_btl_account)
- atau dapat diartikan data yang terkait dengan asset
category akan diambil hanya sesuai dengan
id_asset_category dan yang berada pada btl account id
tertentu (sesuai id_btl_account)
3.2.3.Data Group
3.2.3.1. Flow Proses Data Group
3.2.3.1.1. Flow Penambahan Data Group
3.2.3.1.2. Flow Perubahan Data Group
3.2.3.1.3. Flow Penghapusan Data Group
3.2.3.2. CRUD Data Group
3.2.3.2.1. Create Data Group
3.2.3.2.2. Update Data Group
3.2.3.2.3. Delete Data Group

3.3. Master dan Migrasi Master dari NexTrac


3.3.1.Master NexTrac2
Dalam menunjang seluruh fitur Software License Activation pada NexTrac2 dibutuhkan
master data. Master ini nantinya akan digunakan sebagai data penunjang dalam pembuatan
prelicense, license customer maupun menangani billing system yang akan dikembangkan pada
fase selanjutnya.
3.3.1.1. Master Client Mapping
Master ini akan digunakan untuk menampilkan data mapping antara client ID dengan
customer site. Dengan master ini kita dapat mengetahui siapa dan product apakah yang
menggunakan suatu client ID.
// Tampilan Master
3.3.1.2. Master Salesman
Master ini akan digunakan untuk menyimpan data salesman yang ada pada NexTrac2.
Data salesman ini merupakan data salesman internal Nexsoft. Master salesman akan menyimpan
data profil salesman ke dalam Master Database. Nantinya master salesman ini akan melakukan
CRUD langsung ke Master Database untuk data profil salesman.
// Tampilan master salesman
3.3.1.3. Master Product
Master ini akan digunakan untuk menyimpan data produk lisensi yang ada pada
NexTrac2. Produk ini mengandung detail mengenai harga, dan detail dari lisensi produk tersebut.
//Tampilan master produk
3.3.1.4. Master Product Group
Master ini digunakan untuk menyimpan grup produk yang ada pada NexTrac2. Master
grup produk ini nantinya akan digunakan pada master produk. Grup produk ini akan digunakan
untuk menggolongkan sebuah lisensi produk dalam suatu grup, contohnya lisensi ND6, lisensi
user ND6 pada group produk NEXDIST.
// Tampilan master produk
3.3.1.5. Master Customer
Master ini digunakan untuk menyimpan data customer dari Nexsoft. Satu customer akan
memiliki beberapa customer site. Customer berisi 3 sub bagian:
 Data master customer (customer profile)
Data customer yang berisi informasi profil dari perusahaan beserta keterangan salesman
dan asal dari customer tersebut. Data profil dari customer nantinya akan disimpan dalam
Master Database.
//Tampilan dari master customer
 Customer contact
Data kontak dari customer yang berisi nama dan profil kontak dari customer. Data
contact person ini nantinya disimpan dalam Master Database.
// Tampilan dari customer contact
 Customer Installation
Data instalasi produk dari customer. Master ini akan menyimpan data installasi
3.3.1.6. Master Customer Group
3.3.1.7. Master customer Category
3.3.1.8. Master Region
3.3.1.9. Master Prelicense
3.3.1.10. Master License
3.3.1.11. Master Lisensi NexMile
3.3.1.12. Master Registrasi Nexmile
3.3.2.Migrasi Master dari NexTrac
3.3.2.1. Migrasi Master User
3.3.2.2. Migrasi Master Login Type
3.3.2.3. Migrasi Master Menu
3.3.2.4. Migrasi Master Menu Parent
3.3.2.5. Migrasi Master Menu Service
3.3.2.6. Migrasi Master Salesman
3.3.2.7. Migrasi Master Product
3.3.2.8. Migrasi Master Product Group
3.3.2.9. Migrasi Master Customer
3.3.2.10. Migrasi Master Customer Installation
3.3.2.11. Migrasi Master Customer Group
3.3.2.12. Migrasi Master customer Category
3.3.2.13. Migrasi Master Region
3.3.2.14. Migrasi Data Lisensi ND6 dari Admin
3.3.2.15. Migrasi Lisensi NexMile
3.3.2.16. Migrasi Registrasi Nexmile
3.3.3.Sinkronisasi Master dari NexTrac
3.3.3.1. Flow dari Sinkronisasi Master NexTrac
3.3.3.2. Sinkronisasi Master Salesman
3.3.3.3. Sinkronisasi Master Product
3.3.3.4. Sikronisasi Master Product Group
3.3.3.5. Sinkronisasi Master Customer
3.3.3.6. Sinkronisasi Master Customer Installation
3.3.3.7. Sinkronisasi Master Customer Group
3.3.3.8. Sinkronisasi Master customer Category
3.3.3.9. Sinkronisasi Master Region
3.3.3.10. Penambahan API untuk Sinkronisasi Master
3.3.4.Sinkronisasi Profile Master Database
3.3.4.1. Sinkronisasi Person Profile
3.3.4.2. Sinkronisasi Company Profile
3.3.5.Pembuatan Tabel Terkait Master NexTrac2
3.4. Aktivasi Lisensi
3.4.1.Product License Generator
3.4.1.1. Flow License Generator
3.4.1.2. Algoritma Generate Product Key
3.4.1.3. Penambahan API untuk Request Generate Product Key
3.4.2.Aktivasi Lisensi Online
3.4.2.1. Flow Aktivasi Lisensi Online

3.4.2.2. Flow Registrasi Authentication dan Aktivasi Lisensi NexMile


3.4.2.3. Flow Pembatalan Registrasi Lisensi NexMile
3.4.2.4. Penambahan API untuk Aktivasi Lisensi
3.4.3.Validasi Lisensi
3.4.3.1. Validasi Lisensi Online
3.4.3.2. Validasi Lisensi Offline
3.4.4.Pembuatan Tabel untuk Lisensi
3.5. User Role
Table 3-9 Table Permission pada Online Activation

Menu
Pembatas
# Menu Menu Menu Aksi Permission Keterangan Menu Terkait
an Aksi
Lv 1 Lv 2 Lv 3
- Tidak ada dalam pemilihan hak akses Admin
di halaman role, tetapi setiap role yang
ditambahkan, otomatis akan
rrrr. mendapatkan permission ini
Admin All All View Own admin:view_own
- Digunakan untuk mengakses seluruh
halaman yang berkaitan dengan admin
dengan akses aksi update data diri
sendiri (profile dan atau sandi)
- Tidak ada dalam pemilihan hak akses admin
di halaman role, tetapi setiap role yang
ditambahkan, otomatis akan
ssss. mendapatkan permission ini
Admin All All Update Own admin:update_own
- Digunakan untuk mengakses seluruh
halaman yang berkaitan dengan admin
dengan akses aksi update data diri
sendiri (profile dan atau sandi)
- Tidak ada dalam pemilihan hak akses Admin-pengguna
di halaman role, tetapi setiap role yang
ditambahkan, otomatis akan
tttt.Admin Penggu admin.pengguna:up mendapatkan permission ini
All Update Own
na date_own - Digunakan untuk mengakses seluruh
halaman pada admin-pengguna dengan
hak akses update untuk data diri sendiri
(profile dan atau sandi)
- Tidak ada dalam pemilihan hak akses Admin-pengguna-
di halaman role, tetapi setiap role yang pengguna
ditambahkan, otomatis akan
uuuu. Penggu Penggu admin.pengguna.pe mendapatkan permission ini
Admin Update Own
na na ngguna:update_own - Digunakan untuk mengakses halaman
admin-pengguna-pengguna dengan hak
akses update untuk data diri sendiri
(profile dan atau sandi)
- Tidak ada dalam pemilihan hak akses Admin-kredit
di halaman role, tetapi setiap role yang
vvvv. ditambahkan, otomatis akan
Admin Kredit All View All admin.kredit:view
mendapatkan permission ini
- Digunakan untuk mengakses halaman
kredit
master
Digunakan untuk akses seluruh
Maste
wwww. All All View All Master:view halaman pada menu master dengan
r
akses aksi view

master
Digunakan untuk akses seluruh
Maste
xxxx. halaman pada menu master dengan
All All View Own Master:view_own
r akses aksi view untuk data yang dibuat
oleh user terkait

master
Digunakan untuk akses seluruh
Maste
yyyy. All All Insert All Master:insert halaman pada menu master dengan
r
aksi insert
master
Digunakan untuk akses seluruh
Maste
zzzz. All All Update All Master:update halaman pada menu master dengan
r
aksi update

master
Digunakan untuk akses seluruh
Maste
aaaaa. halaman pada menu master dengan
All All Update Own Master:update_own
r aksi update pada data yang dibuat oleh
user terkait

master
Digunakan untuk akses seluruh
Maste
bbbbb. All All Delete All Master:delete halaman pada menu master dengan
r
aksi delete

master
Digunakan untuk akses seluruh
Maste
ccccc. halaman pada menu master dengan
All All Delete Own Master:delete_own
r aksi delete pada data yang dibuat oleh
user terkait

Master-konsumen
Digunakan untuk akses seluruh
Maste
ddddd. Konsu Master.konsumen:vi
All View All halaman pada menu master-konsumen
r men ew
dengan akses aksi view
Master-konsumen
Digunakan untuk akses seluruh
Maste
eeeee. Konsu Master.konsumen:vi halaman pada menu master-konsumen
All View Own
r men ew_own dengan akses aksi view untuk data yang
dibuat oleh user terkait

Master-konsumen
Digunakan untuk akses seluruh
Maste
fffff. Konsu Master.konsumen:in
All Insert All halaman pada menu master-konsumen
r men sert
dengan aksi insert

Master-konsumen
Digunakan untuk akses seluruh
Maste
ggggg. Konsu Master.konsumen:u
All Update All halaman pada menu master-konsumen
r men pdate
dengan aksi update

Master-konsumen
Digunakan untuk akses seluruh
Maste
hhhhh. Konsu Master.konsumen:upd halaman pada menu master-konsumen
All Update Own
r men ate_own dengan aksi update pada data yang
dibuat oleh user terkait

Master-konsumen
Digunakan untuk akses seluruh
iiiii.Maste Konsu Master.konsumen:del
All Delete All halaman pada menu master-konsumen
r men ete
dengan aksi delete
Master-konsumen
Digunakan untuk akses seluruh
jjjjj.Maste Konsu Master.konusmen:del halaman pada menu master-konsumen
All Delete Own
r men ete_own dengan aksi delete pada data yang
dibuat oleh user terkait

Master-konsumen-
pemetaan klien
Digunakan untuk akses halaman menu
Maste
kkkkk. Konsu Pemeta Master.konusmen.pe
View All master-konsumen-pemetaan klien
r men an klien metaan_klien:view
dengan akses aksi view

Master-konsumen-
pemetaan klien
Digunakan untuk akses halaman menu
lllll.Maste Konsu Pemeta Master.konusmen.pe
Update All master-konsumen-pemetaan klien
r men an klien metaan_klien:update
dengan aksi update

Master-konsumen-
pemetaan klien
Pemeta Master.konusmen.pe Digunakan untuk akses halaman menu
Maste Konsu
mmmmm. PKCE
an klien View All metaan_klien_pkce:vi master-konsumen-pemetaan klien
r men ew
PKCE PKCE dengan akses aksi view

Master-konsumen-
pemetaan klien
Pemeta Master.konusmen.pe Digunakan untuk akses halaman menu
Maste
nnnnn. Konsu PKCE
an klien Update All metaan_klien_pkce:up master-konsumen-pemetaan klien
r men date
PKCE PKCE dengan aksi update
3.6. Penambahan Tabel Penunjang Lainnya

You might also like