Sidang Kompre Gw...!! \\^0^//
RUP
NAMA : DESTA FATIHAYATI
NIM : 09061002054
KELAS : IF 6A
Apa yang dimaksud dengan Rational Unified Process?
The Rational Unified Proses adalah Proses Rekayasa Perangkat Lunak. Memberikan suatu pendekatan yang disiplin dalam melaksanakan tugas-tugas dan tanggung jawab dalam pengembangan organisasi. Tujuan nya adalah untuk menjamin produksi perangkat lunak yang berkualitas tinggi yang memenuhi kebutuhan para pengguna akhir, dalam jadwal dan anggaran yang dapat diprediksi.
The Rational Unified Process juga adalah sebuah hasil proses dan sebuah kerangka proses yang dapat diadaptasi dan diperluas untuk disesuaikan dengan kebutuhan organisasi yang mengadopsinya.
The Rational Unified Process memiliki banyak “best practice” dalam pengembangan perangkat lunak secara modern dan cocok untuk project-project dan organisasi-organisasi yang besar, diantaranya :
1. Mengembangkan perangkat lunak secara berulang-ulang,
2. Mengatur persyaratan,
3. Menggunakan komponen berbasis arsitektur,
4. Memvisualisasikan model perangkat lunak,
5. Memverifikasi kualitas software,
6. Mengkontrol perubahan perangkat lunak
Rational Unified Process Sebagai Sebuah Produk
Banyak organisasi perlahan menyadari pentingnya pendefinisian dan dokumentasi proses pengembangan perangkat lunak yang baik untuk mensukseskan project mereka. Mereka menggali pengetahuan mereka dan saling berbagi dengan para pengembang.
The Rational Unified Process membagi banyak karakteristik dengan produk-produk perangkat lunak, antara lain :
- Rational Software mengeluarkan upgrades atau peningkatan secara rutin
- Pengiriman secara online menggunakan teknologi Web
- Dapat di sesuaikan dan dikonfigurasi untuk agar sesuai dengan kebutuhan yang lebih spesifik
- Dapat diintegrasikan dengan banyak perangkat pengembang PL
Pendekatan dalam memperlakukan proses sebagai sebuah produk ini memiliki banyak keuntungan, yaitu :
o Proses ini tdak akan pernah usang
o Semua tim dapat mengakses versi terbaru dari proses via intranet
o Java applets, mengizinkan para pengembang mengetahui panduan dan kebijakan proses dengan segera, termasuk dokumen templet terbaru yang harus mereka gunakan.
o Hyperlink nya menyediakan arah dari satu bagian proses ke proses lainnya
o Lokal, project atau kemajuan proses-proses perusahaan khusus dimasukkan dengan mudah
o masing-masing project dapat mengatur versi dari proses nya sendiri.
Siapa Saja yang Menggunakan Rational Unified Process ?
Lebih dari ribuan perusahaan yang menggunakan The Rational Unified Process di akhir tahun 1999. mereka menggunakannya dalam berbagai aplikasi, baik itu kecil ataupun project yang besar. Lebih dari 50% mereka menggunakan The Rational Unified Process untuk e-business.
Struktur Proses : Dua Dimensi

o Dimensi pertama digambarkan secara horizontal. Dimensi ini mewakili aspek-aspek dinamis dari pengembangan perangkat lunak. Aspek ini dijabarkan dalam tahapan pengembangan atau fase. Setiap fase akan memiliki suatu major milestone yang menandakan akhir dari awal dari phase selanjutnya. Setiap phase dapat berdiri dari satu beberapa iterasi. Dimensi ini terdiri atas Inception, Elaboration, Construction, dan Transition.
o Dimensi kedua digambarkan secara vertikal. Dimensi ini mewakili aspek-aspek statis dari proses pengembangan perangkat lunak yang dikelompokkan ke dalam beberapa disiplin.
Perangkat Lunak Best Practice dalam The Rational Unified Process
1. Pengembangan Berulang Ulang
o Memudahkan dalam mengakomodasi perubahan kebutuhan
o Pengintegrasian bukan lah masalah karena di lakukan secara berulang-ulang.
o Pendekatan ini dapat mengatasi resiko lebih dini
o memfasilitasi penggunaan kembali
2. Mengatur Persyaratan
- Lebih baik dalam mengendalikan project yang kompleks
- Meningkatkan kualitas software dan kepuasan pelanggan
- Mengurangai biaya dan penundaan project
- Meningkatkan komunikasi tim
3. Arsitektur dan Penggunaan Komponen
- Dalam mendefinisikan modul-modul, komponen nya harus diidentifikasi, didesign, di bangun
- Komponen dapat dikembangkan lagi untuk dipergunakan kembali
- Dengan adanya infrastruktur yang baik dapat mendukung konsep untuk komponen perangkat Lunak
Permodelan dan UML
Permodelan membantu dalam mengerti dan mengatasi problem dan solusi. The Unified Modeling Language (UML) adalah bahasa grafis untuk memvisualisasikan. menspesifikkan. mengkonstruksi dan mendokumentasikan system. UML yang pada awalnya diciptakan oleh Rational Software, dan saat ini dikelola oleh standar organisasi Object Management Group (OMG).
Terdapat 3 ciri-ciri penting dari RUP yang cukup bermanfaat :
o Use case berperan penting dalam pengembangan project
o Dapat digunakan sebagai kerangka proses yahg di tempelkan atau diperluas oleh organisasi yang mengadopsi
o kebutuhan perangkat pembangunan PL sangat dibutuhkan untuk mendukung proses
PERANGKAT LUNAK PENGHITUNG PAJAK PRIBADI MENURUT PASAL 25
untuk:
KANTOR PAJAK
Dipersiapkan oleh:
Kelompok 4 :
Adril Tabrani (09061002012)
Asvina Natasari (09061002040)
Desta Fatihayati (09061002054)
Franz Pardede (09061002030)
FAKULTAS ILMU KOMPUTER
JURUSAN TEKNIK INFORMATIKA
UNIVERSITAS SRIWIJAYA
BAB I
Pendahuluan
Tujuan
Perangkat Lunak ini dibuat untuk memudahkan petugas perpajakan dalam melakukan pencatatan dan transaksi-transaksi lainnya yang berhubungan dengan pajak terutama pajak penghasilan yang berdasarkan pasal 25. Dengan meningkatnya jumlah penduduk yang memiliki kewajiban membayar pajak maka otomatis para wajib pajak yang ingin melakukan transaksi perpajakan akan semakin meningkat. Jika para petugas pajak tidak mampu mengimbangi permintaan setiap wajib pajak dengan baik maka proses perpajakan tidak akan berjalan dengan lancar. Dan tujuan untuk memberikan pelayanan dan fasilitas yang baik kepada para wajib pajak tidak akan tercapai.
Oleh karena itu di perlukan sebuah perangkat lunak yang dapat memudahkan kerja para petugas pajak dalam melakukan transaksi-transaksi perpajakan.
Lingkup Masalah
· Software ini diberi nama Perangkat Lunak Penghitung Biaya Pajak Berdasarkan Pasal 25.
· Software ini akan di gunakan oleh para petugas pajak di kantor pajak dan di installkan ke dalam komputer. Komputer akan di beri suatu software/perangkat lunak untuk melakukan transaksi perpajakan. Dimana petugas akan menerima masukan penghasilan dari wajib pajak dan juga petugas sudah memiliki database tentang wajib pajak, database ini harus sudah di peroleh dari wajib pajak sebelumnya. Dan sesuai dengan penghasilan wajib pajak maka software ini akan melakukan perhitungan pajak berdasarkan pasal 25.
Definisi, Singkatan, dan Akronim
· tunj_jabatan : tunjangan yang di dapatkan wajib pajak berdasarkan jabatannya
· dana_pensiun : dana yang di dapatkan karena wajib pajak telah pensiun
· penghasilan1tahun : penghasilan utama / tetap wajib pajak selama 1 tahun
· penghasilan_netto :
· status : status wajib pajak (kawin/tidak kawin)
· NPWP : Nomor Pokok Wajib Pajak
· Wajib pajak : orang yang memiliki kewajiban untuk membayar pajak
· Dana_pensiun : dana yang dipersiapkan untuk digunakan setelah pension, dana ini bisa ada dan bisa pula tidak dan besarnya tidak ditentukan
· pph : pajak penghasilan
· pph_pasal25 : pajak penghasilan menurut pasal 25, dalam kasus ini pajak untuk orang pribadi
· wp_sendiri : wajib pajak dengan status belum menikah
· wp_kawin : wajib pajak dengan status sudah menikah
· ptkp : pendapatan tidak kena pajak
BAB II
Deskripsi Global Perangkat Lunak
Software ini akan akan meminta wajib pajak memasukkan data penghasilan dan data diri wajib pajak.
Data penghasilan merupakan data tentang penghasilan yang di terima oleh wajib pajak yang berisi tentang penghasilan wajib pajak selama 1 tahun, tunjangan-tunjangan wajib pajak, serta dana pensiun jika ada. Lalu data penghasilan ini akan di baca dan di simpan ke dalam data store penghasilan.
Data wajib pajak merupakan data tentang wajib pajak, berupa nama, tempat lahir, dan data-data lainnya serta NPWP nya. Kemudian data wajib pajak ini akan di baca dan di simpan ke dalam data store wajib pajak.
Pada waktu akan melakukan perhitungan pajak (pph_pasal25), sebelumnya akan di baca data penghasilan dari data store penghasilan dan juga akan di baca data wajib pajak dari data store wajib pajak.
Setelah proses perhutngan pajak maka selanjutnya akan di simpan ke dalam data store pph_pasal25, setelah di simpan maka selnjutnya akan di cetak laporan nya yang nantinya akan di gunakan oleh kantor pajak.
Proses percetakan ini di perlukan sebagai dokumen yang nantinya berguna bagi kantor pajak.
2.1 Perspektif Produk
Software ini dibuat menggunakan C++ Builder.
2.2 Fungsi Produk
Perhitungan pajak akan menjadi sangat rumit bila dikerjakan secara manual. Pegawai pajak harus mencari data wajib pajak, menghitung besar penghasilannya per tahun, dan menghitung penghasilan tidak kena pajaknya (PTKP), sehingga hal ini akan sangat memakan waktu. Dengan adanya software ini, pegawai pajak tidak perlu lagi menghitung secara manual karena data wajib pajak sudah dimasukkan ke dalam data base pada software ini, sehingga saat ada wajib pajak yang hendak membayar pajak, pagawai pajak hanya perlu memasukkan nomor pokok wajib pajak tersebut dan kemudian data wajib pajak akan ditampilkan berikut besarnya pajak yang harus dibayar oleh wajib pajak.
2.3 Karateristik Pengguna
Sasaran pengguna software ini adalah petugas pajak. Dengan adanya software ini, petugas pajak bisa mengetahui data wajib pajak, baik itu data diri wajib pajak ataupun besarnya pajak yang harus dibayar oleh wajib pajak tersebut. Selain itu, petugas pajak juga bisa mendaftarkan wajib pajak melalui software ini.
2.4 Batasan-batasan
Software ini hanya dirancang untuk melakukan perhitungan pajak, mengetahui data wajib pajak, dan mendaftarkan wajib pajak.
2.5 Asumsi dan Kebergantungan
Untuk menggunakan software ini syarat utama yang dibutuhkan adalah terhubungnya program exe dengan komputer yang telah memiliki sistem operasi yang mendukung akses program C++ Builder, sehingga jika sistem operasi dan C++ Builder tidak tersedia maka secara otomatis software juga tidak akan berfungsi.
Software ini salah satu cara untuk memudahkan pegawai pajak dalam perhitungan PPh menurut pasal 25.
Dalam perancangan software ini ada factor factor yang mempengaruhi kebutuhan software. Sesuai dengan perkembangan teknologi, jika dibutuhkan proses up grade pada software ini, maka akan berpengaruh pada proses lainnya. Jika system operasi yang digunakan pada handphone tersebut di ubah, maka akan ada proses lainnya yang di ubah pula. Jika di perlukan fasilitas media handphone yang lebih hi – tech, maka akan berpengaruh pula pada proses perancangan software ini.
BAB III
DESKRIPSI RINCI KEBUTUHAN
3.1 Kebutuhan antarmuka eksternal
Antarmuka pemakai
· Perangkat lunak menyediakan tiga menu pilihan.
· Menu pertama untuk mengecek besarnya pajak yang harus dibayar oleh wajib pajak dimana data wajib pajak sudah dimasukkan ke dalam data base terlebih dahulu.
· Petugas pajak harus memasukkan nomor pokok wajib pajak (NPWP).
· Setelah itu akan keluar besarnya penghasilan, banyaknya tanggungan, dan besarnya pajak yang harus dibayar.
· Bila NPWP yang dimasukkan salah (tidak ada pada database), akan tampil pesan “NPWP belum terdaftar” serta pilihan untuk mendaftar atau kembali ke menu sebelumnya.
· Menu kedua adalah menu pembayaran.
· Bila wajib pajak hendak membayar pajak, petugas pajak dapat memasukkan NPWP dan kemudian akan tampil besarnya pajak yang harus dibayar serta pilihan untuk membayar atau kembali k eke tampilan sebelumnya.
· Bila NPWP salah, akan tampil pesan “NPWP tidak ada pada database” dan pilihan untuk kembali ke tampilan sebelumnya.
· Menu ketiga adalah menu untuk mendaftarkan orang pribadi menjadi wajib pajak.
· Data yang harus diisi antara lain nama, no id, pekerjaan, penghasilan, tanggungan, alamat, dan status.
· Bila semua data telah diisi, wajib pajak tersebut akan mendapat nomor pokok wajib pajak (NPWP).
3.2 Analisis Sistem Berjalan
Perangkat lunak penghitung pajak pribadi menurut pasal 25 ini hanya dapat menghitung jumlah pajak pribadi, tidak dapat digunakan untuk menghitung jumlah pajak suatu badan usaha.
· Perangkat lunak meyediakan 3 menu pilihan.
· Menu 1
3.3 Rancangan Sistem Aplikasi
Untuk mempermudah dalam pembuatan mesin perangkat lunak ini maka disusun suatu system dengan menggunakan Data Flow Diagram (DFD) dan Entity Relationshif Diagram (ERD).
3.3.1 Data Flow Diagram Konteks (Level 0)


Gambar : Data Flow Diagram Konteks
3.3.2 
Data Flow Diagram Nol (Level 1)
Gambar : Data Flow Diagram Nol
3.3.3 Diagram Rinci
Diagram Rinci Proses 2

3.3.3 ERD

3.3.5 Kamus data :
I). Kamus Data Untuk Penyimpanan Data (Data Store)
1]. Wajib pajak
wajib_pajak= @NPWP + nama + tempat_lahir + tgl_lhr + bln_lhr + thn_lhr + jenis_kelamin + agama + alamat + status + penghasilan
NPWP = 1{character}12
nama = 1{character}20
tempat_lahir = 1{character}20
tgl_lhr = [1|2|3|4|5|…|31]
bln_lhr=[januari| februari| maret| april| mei| juni| juli| agustus| September| oktober| nopember|desember]
thn_lhr = [1945|1946|…]
jenis_kelamin = [laki-laki|perempuan]
agama = [islam|Kristen katolik|Kristen protestan|hindu|budha]
alamat = nama_jalan + no_rumah
nama_jalan = 1{character}20
no_rumah = 1{digit}5
status =[kawin|tidak kawin]
tanggungan = [0|1|2|3]
penghasilan = @kode_penghasilan + pendapatan_1_thn + tunj_jabatan + dana-pensiun + no_slip_gaji
kode_penghasilan = [1|2|3|4|5]
pendapatan_1_thn = 7{number}13
tunj_jabatan = 6(digit)10
dana-pensiun = 6(digit)10
no_slip_gaji = 3{digit}6
digit = [0|1|2|…|9]
digit = [0|1|2|…|9]
character = [0|1|2|…|9|a|b|…|z|A|B|…|Z|.|,|:]
2]. pph_pasal25
pph_pasal25 = @NPWP + persen + PKP
persen = [0,05|0,1|0,15|0,25|035]
PKP = peng_netto + PTKP
peng_netto = peng_1thn – biaya_jbtn + dana_pensiun
biaya_jbtn = 0,05 + peng_1thn + 1.298.000
PTKP = [TK/0|TK/1|TK/2|TK/3|K/1|K/2|K/3|K/I/1|K/I/2|K/I/3]
peng_1thn = 1{digit}13
dana_pensiun = 1{digit}13
TK/0 = 13.200.000
TK/1 = 14.400.000
TK/2 = 15.600.000
TK/3 = 16.800.000
K/1 = 14.400.000
K/2 = 15.600.000
K/3 = 16.800.000
K/I/1 = 27.600.000
K/I/2 = 28.800.000
K/I/3 =30.000.000
digit = [0|1|2|…|9]
character = [0|1|2|…|9|a|b|…|z|A|B|…|Z|.|,|:]
II). Kamus Data Untuk Aliran Data Masuk
1]. Data Wajib pajak
Data_wajib_pajak= @NPWP + nama + tempat_lahir + tgl_lhr + bln_lhr + thn_lhr + jenis_kelamin + agama + alamat + status + penghasilan
NPWP = 1{character}12
nama = 1{character}20
tempat_lahir = 1{character}20
tgl_lhr = [1|2|3|4|5|…|31]
bln_lhr=[januari| februari| maret| april| mei| juni| juli| agustus| September| oktober| nopember|desember]
thn_lhr = [1945|1946|…]
jenis_kelamin = [laki-laki|perempuan]
agama = [islam|Kristen katolik|Kristen protestan|hindu|budha]
alamat = nama_jalan + no_rumah
nama_jalan = 1{character}20
no_rumah = 1{digit}5
status =[kawin|tidak kawin]
tanggungan = [0|1|2|3]
penghasilan = @kode_penghasilan + pendapatan_1_thn + tunj_jabatan + dana-pensiun + no_slip_gaji
kode_penghasilan = [1|2|3|4|5]
pendapatan_1_thn = 7{number}13
tunj_jabatan = 6{digit}10
dana-pensiun = 6{digit}10
no_slip_gaji = 3{digit}6
digit = [0|1|2|…|9]
digit = [0|1|2|…|9]
character = [0|1|2|…|9|a|b|…|z|A|B|…|Z|.|,|:]
2.] Data PTKP baru
PTKP = [TK/0|TK/1|TK/2|TK/3|K/1|K/2|K/3|K/I/1|K/I/2|K/I/3]
TK/0 = 6{digit}10
TK/1 = 6{digit}10
TK/2 = 6{digit}10
TK/3 = 6{digit}10
K/1 = 6{digit}10
K/2 = 6{digit}10
K/3 = 6{digit}10
K/I/1 = 6{digit}10
K/I/2 = 6{digit}10
K/I/3 = 6{digit}10
digit = [0|1|2|…|9]
III) . Kamus Data Untuk Aliran Data Keluar
1]. data_pph_pasal25 = @NPWP + persen + PKP
persen = [0,05|0,1|0,15|0,25|035]
PKP = peng_netto + PTKP
peng_netto = peng_1thn – biaya_jbtn + dana_pensiun
biaya_jbtn = 0,05 + peng_1thn + 1.298.000
PTKP = [TK/0|TK/1|TK/2|TK/3|K/1|K/2|K/3|K/I/1|K/I/2|K/I/3]
peng_1thn = 1{digit}13
dana_pensiun = 1{digit}13
TK/0 = 13.200.000
TK/1 = 14.400.000
TK/2 = 15.600.000
TK/3 = 16.800.000
K/1 = 14.400.000
K/2 = 15.600.000
K/3 = 16.800.000
K/I/1 = 27.600.000
K/I/2 = 28.800.000
K/I/3 =30.000.000
digit = [0|1|2|…|9]
character = [0|1|2|…|9|a|b|…|z|A|B|…|Z|.|,|:]
3.3.6 Spesifikasi Proses
1). Nomor proses : 1.2*
Nama proses : simpan data_wajib pajak
Masukan : data wajib pajak
Keluaran : -
Uraian : proses me-input data wajib pajak berguna untuk mencatat semua data-data wajib pajak
Begin
Open file wajib_pajak
Get kode penghasilan
Do while not EOF
Input penghasilan
Endo
End
Close penghasilan
Return
2). Nomor proses : 1.1*
Nama proses : baca data_wajib_pajak
Masukan : data wajib_pajak
Keluaran : -
Uraian : proses membaca data wajib pajak berguna untuk mencatat semua data-data wajib pajak
Begin
Open file wajib pajak
Get kode wajib pajak
Do while not EOF
Read file wajib pajak using kode_ wajib pajak then
wajib pajak = wajib pajak.kode_ wajib pajak
Tampilkan record wajib pajak
Endif
Endo
End
Close wajib pajak
Return
3). Nomor proses : 2.0*
Nama proses : menghitung pph pasal 25
Masukan : data penghasilan
Keluaran : -
Uraian : digunakan untuk menghitung besarnya pph pasal 25
Begin
Open file penghasilan
Get no_slip_gaji
Do while not EOF
Read file penghasilan using no_slip_gaji then
If penghasilan = penghasilan.no_slip_gaji
Tampilkan record pph_pasal25
Else
Input pph_pasal25
Endif
Endo
End
Close pph_pasal25
Return
4). Nomor proses : 3.0*
Nama proses : cetak laporan pph pasal 25
Masukan : baca data pph pasal 25
Keluaran : lap_pph_pasal25
Uraian : laporan data pph pasal 25 ini dibuat untuk mengetahui besarnya pph pasal 25 setiap wajib pajak
Begin
Open file pph_pasal25
Do while not EOF
Read file pph_pasal25 using NPWP then
If NPWP ada then
Tampilkan data pph_pasal25
Endif
Cetak lap_ pph_pasal25
Endo
End
Close pph_pasal25
Return
5). Nomor proses : 4.0*
Nama proses : update_PTKP
Masukan : -
Keluaran : PTKP_baru
Uraian : PTKP_baru diinput admin bila besar PTKP mengalami perubahan
Begin
Read Data_PTKP_baru
End
Return
3.3.7 Design Interface

Gbr 1. Tampilan pada form Index

Gbr 2. Tampilan pada form admin.

Gbr 3. Tampilan pada form Perhitungan Pajak

Gbr 4. Tampilan pada form Input data wajib pajak






