Pesenan Imas

LATIHAN
MICROSOFT VISUAL BASIC
MEMBUAT PROGRAM PERHITUNGAN UMUR


Aplikasi berikut ini berfungsi untuk melakukan proses perhitungan umur dengan menggunakan bahasa pemrograman Microsoft Visual Basic. Komponen-komponen yang diperlukan sebagai berikut.
- 9 buah label
- 4 buah textbox
- 2 buah DTPicker
- 3 buah commandbutton
- 1 buah timer
- 2 buah shape

Lanjutkan dengan merancang form sebagai berikut :

Lanjutkan dengan melakukan perubahan properties tiap komponen sesuaikan dengan table berikut :
komponen
properties

Label1
caption : program hitung umur

label2
caption : masukkan tanggal lahir

Label3
caption : anda lahir pada hari

Label4
Caption : (dikosongkan)

Name : lbllahir

Label5
Caption : masukkan tanggal batas perhitungan

Label6
Caption : usia Anda adalah

Label7
Caption : tahun

Label8
Caption : bulan

Label9
Caption : hari

DTPicker1
name : DTPicker1

DTPicker2
name : DTPicker2

Command1
name : cmdproses

&Hitung usia

Command2
name : cmdreset

caption : &Reset

Command3
name : cmdtutup

caption : &Tutup form

Shape1
name : shape1

Shape2
Name : shape2

timer1
name : timer1
interval : 1

Tuliskan kode program berikut pada windows code :

Private Sub cmdproses_Click()
Dim TanggalA, tanggalB As Date
Dim hr, bl As Double
Dim UsiaTH, usiabl, usiahr, pesan

TanggalA = DTPicker1.Value
tanggalB = DTPicker2.Value

If (tanggalB <= TanggalA) Then
pesan = MsgBox("tanggal batas perhitungan harus lebih besar dari tanggal lahir !!!",vbCritical, "PERINGATAN")
DTPicker1.SetFocus
Else UsiaTH = DateDiff("yyyy", TanggalA, tanggalB) txttahun.Text = UsiaTH usiabl = DateDiff("m", TanggalA, tanggalB) bl = usiabl Mod 12 txtbulan.Text = bl usiahr = DateDiff("d", TanggalA, tanggalB) hr = usiahr Mod 365 txthari.Text = hr
End If
cmdreset.Enabled = True Cmdproses.Enabled = False
End Sub
Private Sub cmdreset_Click()
DTPicker1.Refresh DTPicker2.Refresh txttahun.Text = "" txtbulan.Text = "" txthari.Text = "" DTPicker1.SetFocus cmdreset.Enabled = False Cmdproses.Enabled = True
End Sub
Private Sub cmdtutup_Click()
Dim pesan As String pesan = MsgBox("Akhiri Program ??", vbQuestion + vbYesNo, "Konfirmasi")
If pesan = vbYes Then
End If
End Sub
Private Sub DTPicker1_Change()
Dim Tanggal As Date
Dim Angkahari
Dim hari nhari = Array("", "MINGGU", "SENIN", "SELASA", "RABU", "KAMIS", "JUMAT", "SABTU") Tanggal = DTPicker1.Value Angkahari = DatePart("w", Tanggal, vbSunday) hari = nhari(Angkahari) lbllahir.Caption = hari
End Sub
Private Sub Timer2_Timer()
If Label1.Enabled = True Then
Label1.Enabled = False
Else
Label1.Enabled = True
End If
DTPicker2.Value = Now
Text1.Text = Time
End Sub

Sejarah Kriptografi

Kriptografi adalah suatu ilmu yang mempelajari bagaimana cara menjaga agar data atau pesan tetap aman saat dikirimkan, dari pengirim ke penerima tanpa mengalami gangguan dari pihak ketiga. Menurut Bruce Scheiner dalam bukunya "Applied Cryptography", kriptografi adalah ilmu pengetahuan dan seni menjaga message-message agar tetap aman (secure).
Konsep kriptografi sendiri telah lama digunakan oleh manusia misalnya pada peradaban Mesir dan Romawi walau masih sangat sederhana. Prinsip-prinsip yang mendasari kriptografi yakni:
· Confidelity (kerahasiaan) yaitu layanan agar isi pesan yang dikirimkan tetap rahasia dan tidak diketahui oleh pihak lain (kecuali pihak pengirim, pihak penerima / pihak-pihak memiliki ijin). Umumnya hal ini dilakukan dengan cara membuat suatu algoritma matematis yang mampu mengubah data hingga menjadi sulit untuk dibaca dan dipahami.
· Data integrity (keutuhan data) yaitu layanan yang mampu mengenali/mendeteksi adanya manipulasi (penghapusan, pengubahan atau penambahan) data yang tidak sah (oleh pihak lain).
· Authentication (keotentikan) yaitu layanan yang berhubungan dengan identifikasi. Baik otentikasi pihak-pihak yang terlibat dalam pengiriman data maupun otentikasi keaslian data/informasi.
· Non-repudiation (anti-penyangkalan) yaitu layanan yang dapat mencegah suatu pihak untuk menyangkal aksi yang dilakukan sebelumnya (menyangkal bahwa pesan tersebut berasal dirinya).

Berbeda dengan kriptografi klasik yang menitikberatkan kekuatan pada kerahasiaan algoritma yang digunakan (yang artinya apabila algoritma yang digunakan telah diketahui maka pesan sudah jelas "bocor" dan dapat diketahui isinya oleh siapa saja yang mengetahui algoritma tersebut), kriptografi modern lebih menitikberatkan pada kerahasiaan kunci yang digunakan pada algoritma tersebut (oleh pemakainya) sehingga algoritma tersebut dapat saja disebarkan ke kalangan masyarakat tanpa takut kehilangan kerahasiaan bagi para pemakainya.
Berikut adalah istilah-istilah yang digunakan dalam bidang kriptografi :
Plaintext (M) adalah pesan yang hendak dikirimkan (berisi data asli).
Ciphertext (C) adalah pesan ter-enkrip (tersandi) yang merupakan hasil enkripsi.
Enkripsi (fungsi E) adalah proses pengubahan plaintext menjadi ciphertext.
Dekripsi (fungsi D) adalah kebalikan dari enkripsi yakni mengubah ciphertext menjadi plaintext, sehingga berupa data awal/asli.
Kunci adalah suatu bilangan yang dirahasiakan yang digunakan dalam proses enkripsi dan dekripsi.

Kriptografi itu sendiri terdiri dari dua proses utama yakni proses enkripsi dan proses dekripsi. Seperti yang telah dijelaskan di atas, proses enkripsi mengubah plaintext menjadi ciphertext (dengan menggunakan kunci tertentu) sehingga isi informasi pada pesan tersebut sukar dimengerti.


Enkripsi Password

Password di Linux dibuat dengan menggunakan metode tingkat lanjut dalam enkripsi, yakni DES (Data Encryption Standard). Menurut Federal Processing Standards Publication 46-2, DES didefinisikan sebagai ;
Sebuah algoritma matematika untuk menjalankan enkripsi (enchypering) dan dekripsi (dechypering) informasi koding binary. Enkripsi mengkonversikan data menjadi bentuk yang sulit ditebak, disebut chyper. Proses dekripsi cypher mengkonversikan data kedalam bentuk aslinya, disebut plain-text. (terjemahan bebas)
Enkripsi dan dekripsi dilakukan tergantung pada kunci (key). Kunci ini dibuat berdasarkan masukan dari user pada saat mengetikkan password terdiri dari binary 64 digit. Jika password yang diketikkan kurang dari binary 64 digit, maka DES akan menambahkannya secara otomatis. Dari binary 64 digit, 56 dipergunakan untuk enkripsi, dan 8 dipergunakan untuk cek kesalahan (error checking).
Saat seorang penyusup (atau siapa saja) akan melakukan crack terhadap password di Linux, mereka biasanya mempergunakan kamus (dictionary attack). Saat melakukan crack, penyusup akan mengambil kata-kata dari kamus, kemudian mengenkripsinya dengan DES. Dalam proses ini, kata demi kata diberikan secara terus menerus, kemudian diproses sebagaimana Linux memproses passwordnya. Hasilnya akan dicocokkan dengan daftar yang ada di /etc/passwd. Jika cocok, program cracker akan memberitahukan kepada penyusup, bahwa password sudah berhasil ditemukan.
Untuk meningkatkan keamanan password dalam jaringan Anda, baca kembali sub bab tentang Discretionary Access Control.

Enkripsi Komunikasi Data

Enkripsi komunikasi data
Di dalam Internet (atau intranet) data yang dikirimkan dari satu komputer ke komputer lainnya, pasti melewati komputer-komputer lain. Ambil contoh, pada saat Anda memasukkan password untuk mengecek account email di hotmail, data akan dikirim dalam bentuk teks biasa melewati beberapa host sebelum akhirnya diterima oleh hotmail. Pernahkah Anda berfikir bahwa salah satu dari komputer yang dilewati oleh data Anda dipasangi program sniffer?
Sniffer adalah program yang membaca dan menganalisa setiap protokol yang melewati mesin di mana program tersebut diinstal. Secara default, sebuah komputer dalam jaringan (workstation) hanya mendengarkan dan merespon paket-paket yang dikirimkan kepada mereka. Namun demikian, kartu jaringan (network card) dapat diset oleh beberapa program tertentu, sehingga dapat memonitor dan menangkap semua lalu lintas jaringan yang lewat tanpa peduli kepada siapa paket tersebut dikirimkan.
Kembali ke contoh tadi, jalankan traceroute untuk mengetahui berapa banyak host/komputer yang dilewati data Anda. Lakukan test berikut pada saat komputer sedang online.

Encryp

Encryption is the conversion of datainto a form, called a ciphertext, that cannot be easilyunderstood by unauthorized people. Decryption is theprocess of converting encrypted data back into its original form, so it can be understood.
The use of encryption/decryption is as old as theart of communication. In wartime, a cipher, often incorrectlycalled a "code," can be employed to keep the enemy fromobtaining the contents of transmissions. (Technically, a codeis a means of representing a signal without the intent of keepingit secret; examples are Morse code and ASCII.) Simple ciphersinclude the substitution of letters for numbers, the rotation ofletters in the alphabet, and the "scrambling" of voicesignals by inverting the sideband frequencies. More complexciphers work according to sophisticated computer algorithms thatrearrange the data bits in digital signals.
In order to easily recover the contents of anencrypted signal, the correct decryption key isrequired. The key is an algorithm that "undoes" thework of the encryption algorithm. Alternatively, a computer canbe used in an attempt to "break" the cipher. The morecomplex the encryption algorithm, the more difficult it becomesto eavesdrop on the communications without access to the key.
Encryption/decryption is especially important in wireless communications. This is because wireless circuits are easier to"tap" than their hard-wired counterparts. Nevertheless,encryption/decryption is a good idea when carrying out any kindof sensitive transaction, such as a credit-card purchase online,or the discussion of a company secret between differentdepartments in the organization. The stronger the cipher -- thatis, the harder it is for unauthorized people to break it -- thebetter, in general. However, as the strength ofencryption/decryption increases, so does the cost.
In recent years, a controversy has arisen overso-called strong encryption. This refers to ciphers thatare essentially unbreakable without the decryption keys. Whilemost companies and their customers view it as a means of keepingsecrets and minimizing fraud, some governments view strongencryption as a potential vehicle by which terrorists might evadeauthorities. These governments, including that of the UnitedStates, want to set up a key-escrow arrangement. Thismeans everyone who uses a cipher would be required to provide thegovernment with a copy of the key. Decryption keys would bestored in a supposedly secure place, used only by authorities,and used only if backed up by a court order. Opponents of thisscheme argue that criminals could hack into the key-escrowdatabase and illegally obtain, steal, or alter the keys.Supporters claim that while this is a possibility, implementingthe key escrow scheme would be better than doing nothing toprevent criminals from freely using encryption/decryption

Laporan Magang

BAB I
PENDAHULUAN

1.1 Latar Belakang
Dalam menghadapi era globalisasi dan persaingan bisnis yang semakin ketat sangatlah diperlukan suatu sistem keamanan untuk mengolah data penggajian sehingga dapat menghasilkan laporan yang efektif dan efisien.
Dengan adanya perkembangan teknologi yang sangat pesat dan semakin meningkatnya persaingan baik dalam dan luar negeri. Komputer sebagai salah satu produk dari perkembangan teknologi sangat diperlukan dalam membantu proses keamanan data penggajian tersebut sehingga dapat meningkatkan produktifitas dan kinerja karyawannya.
Komputer memiliki keamanan untuk mengolah data penggajian tapi sumber daya manusia yang mampu mengamankan data sangatlah sedikit disamping itu juga komputer mempunyai unit penyimpanan data yang bisa menyimpan data cukup lama. PT SPINDO Karawang FACTORY telah melaksanakan komputerisasi dalam pengolahan data penggajian sehingga perhitungan gaji dan pembayarannya dapat dilakukan secara efektif dan efisien namun masih diperlukan pengawasan intern dalam keamanan tersebut.
Berdasarkan uraian tersebut di atas, maka penulis tertarik untuk melakukan penelitian yang berkaitan dengan masalah keamanan pengolahan data penggajian karyawan di PT SPINDO Karawang FACTORY yang akan dituangkan kedalam laporan magang.

1.2 Identifikasi Masalah
Setelah diurakan pada Latar Belakang di atas, maka penulis dapat mengidentifikasi masalah sebagai berikut :
1. Bagaimana membuat sistem keamanan data dengan menggunakan enkripsi?
2. Bagaimana Prosedur Keamanan data penggajian?
3. Apakah dengan enkripsi, data penggajian pada PT SPINDO Karawang FACTORY, data dapat terjaga dengan baik?

1.3 Batasan Masalah
Setelah penulis mengidentifikasikan masalah di atas, maka dalam hal ini penulis mencoba membatasi masalah sehingga judul yang diambil adalah “Keamanan Database dengan enkripsi data untuk mengelola data penggajian pada PT SPINDO Karawang FACTORY” dimana penulis tidak akan mengubah sistem yang lama tetapi memperbaiki sistem yang ada.

1.4 Tujuan Magang
Tujuan Magang ini, yaitu pengumpulan data-data yang sesuai dengan batasan yang dikemukakan di atas, yaitu yang berhubungan dengan Keamanan Database dengan enkripsi data untuk mengelola data penggajian pada PT SPINDO Karawang factory. Untuk mengetahui keamanan data penggajian pada PT SPINDO KARAWANG FACTORY.
1. Untuk mengetahui bagaimana membuat sistem keamanan data dengan menggunakan enkripsi.
2. Untuk mengetahui bagaimana Prosedur Keamanan data penggajian.
3. Untuk mengetahui apakah dengan enkripsi, data penggajian pada PT SPINDO Karawang FACTORY, data dapat terjaga dengan baik.

1.5 Manfaat Magang
Manfaat Magang ini berguna bagi beberapa bagian antara lain :
1. Bagi Penulis
Penelitian ini berguna dalam hal menambah ilmu pengetahuan dan pengalaman praktis dengan membandingkan teori yang didapat di bangku kuliah dengan di lapangan.
2. Bagi Intansi
Hasil penelitian ini diharapkan dapat digunakan sebagai bahan pertimbangan bagi intansi dalam aktifitas dan pengalaman yang penulis miliki.
3. Bagi Perkembangan Ilmu Pengetahuan
Diharapkan hasil penelitian ini dapat menjadi reperensi yang bermanfaat bagi yang melakukan penelitian sehingga dapat menjadi masukan agar penelitian selanjutnya menjdi lebih sempurna.


1.6 Lokasi dan Waktu Magang
Dalam penelitian Magang ini penulis memilih obyek di PT SPINDO KARAWANG FACTORY yang berlokasi di Jalan Mitra Raya II Blok F2, Parungmula, Ciampel Karawang 41361 Indonesia dan kegiatan tersebut berlangsung dari tanggal 10 Oktober 2008 sampai dengan sekarang.

BAB II
TINJAUAN PUSTAKA

2.1 Landasan Teori
Kriptografi adalah suatu ilmu yang mempelajari bagaimana cara menjaga agar data atau pesan tetap aman saat dikirimkan, dari pengirim ke penerima tanpa mengalami gangguan dari pihak ketiga. Menurut Bruce Scheiner dalam bukunya "Applied Cryptography", kriptografi adalah ilmu pengetahuan dan seni menjaga message-message agar tetap aman (secure).
Konsep kriptografi sendiri telah lama digunakan oleh manusia misalnya pada peradaban Mesir dan Romawi walau masih sangat sederhana. Prinsip-prinsip yang mendasari kriptografi yakni:
a. Kerahasiaan (Confidelity) yaitu layanan agar isi pesan yang dikirimkan tetap rahasia dan tidak diketahui oleh pihak lain (kecuali pihak pengirim, pihak penerima / pihak-pihak memiliki ijin). Umumnya hal ini dilakukan dengan cara membuat suatu algoritma matematis yang mampu mengubah data hingga menjadi sulit untuk dibaca dan dipahami.
b. Keutuhan Data (Data integrity) yaitu layanan yang mampu mengenali/mendeteksi adanya manipulasi (penghapusan, pengubahan atau penambahan) data yang tidak sah (oleh pihak lain).
c. Keotentikan (Authentication) yaitu layanan yang berhubungan dengan identifikasi. Baik otentikasi pihak-pihak yang terlibat dalam pengiriman data maupun otentikasi keaslian data/informasi.
d. Anti Penyangkalan (Non-repudiation) yaitu layanan yang dapat mencegah suatu pihak untuk menyangkal aksi yang dilakukan sebelumnya (menyangkal bahwa pesan tersebut berasal dirinya).
Berbeda dengan kriptografi klasik yang menitikberatkan kekuatan pada kerahasiaan algoritma yang digunakan (yang artinya apabila algoritma yang digunakan telah diketahui maka pesan sudah jelas "bocor" dan dapat diketahui isinya oleh siapa saja yang mengetahui algoritma tersebut), kriptografi modern lebih menitikberatkan pada kerahasiaan kunci yang digunakan pada algoritma tersebut (oleh pemakainya) sehingga algoritma tersebut dapat saja disebarkan ke kalangan masyarakat tanpa takut kehilangan kerahasiaan bagi para pemakainya.
Berikut adalah istilah-istilah yang digunakan dalam bidang kriptografi :
a) Plaintext adalah pesan yang hendak dikirimkan (berisi data asli).
b) Ciphertext adalah pesan ter-enkrip (tersandi) yang merupakan hasil enkripsi.
c) Enkripsi adalah proses pengubahan plaintext menjadi ciphertext.
d) Dekripsi adalah kebalikan dari enkripsi yakni mengubah ciphertext menjadi plaintext, sehingga berupa data awal/asli.
e) Kunci adalah suatu bilangan yang dirahasiakan yang digunakan dalam proses enkripsi dan dekripsi.

Kriptografi itu sendiri terdiri dari dua proses utama yakni proses enkripsi dan proses dekripsi. Seperti yang telah dijelaskan di atas, proses enkripsi mengubah plaintext menjadi ciphertext (dengan menggunakan kunci tertentu) sehingga isi informasi pada pesan tersebut sukar dimengerti.
Contoh :
Bila kita menginput data Nomor Induk Karyawan (NIK) = RJ001 yang disebut plaintext atau data yang dikirim maka hasil enkripsi (ciphertext) menjadi XQ89; sedangkan untuk proses dekripsi mengembalikan data XQ89; menjadi RJ001.
Proses tersebut bisa dilihat pada gambar 0.2 dibawah ini :
enkripsi
contoh proses enkripsi dan dekripsi
Basis Data (database) adalah kumpulan dari data yang saling berhubungan satu dengan yang lainnya tersimpan di perangkat keras komputer dan digunakan perangkat lunak tertentu untuk memanipulasinya dengan menggunakan perangkat paket yang disebut dengan DBMS (Database Manajemen System). Database mempunyai dua spesifikasi yaitu :
a) Database Physical
Bagaimana data tersebut tersimpan dalam media magnetic (Disket, Harddisk)
b) Database Logical
Menggambarkan relasi atau hubungan antara file yang ada.
Penggajian atau gaji adalah biaya pekerja atau upah yang diberikan kepada karyawan yang telah menyelesaikan pekerjaan sesuai dengan standar perusahaan.

2.2 Model Analisis
MSA atau Modern Structure Analysis adalah salah satu metodologi yang digunakan untuk pengembangan sebuah system. Diciptakan oleh Edward Yourdon dan terdapat dalam bukunya Modern Structure Analysis pada tahun 1989.
Ada tiga periode evolusi teknik dan ide pada bidang analisa sistem, yaitu :
1. Conventional System Analysis, sebelum 1970. Susah dibaca, susah dimengerti dan sulit dimaintain secara virtual
2. Classical Structured Analysis, mulai pertengahan 70an hingga pertengahn 80an sebagaimana dijelaskan oleh Demarco (1978) dan Gane Sarson (1977). Awal dari bentuk pemodelan grafis. Memodelkan implementasi sistem saat ini sebelum memodelkan sistem yang baru
3. Modern Structured Analysis. (1989), metodologi yang lebih menekankan kepada penggunaan model grafis dari penganalisaan sistem.
Perangkat Struktur Analisis (Structured Analysis Tools)
a. Dataflow Diagram (DFD)
Model Perangkat (Modelling tools) yang dapat menggambarkan sistem sebagai proses, fungsi, menghubungkan satu dengan yang lain oleh “pipelines” dan “holding tank” dari data.
Komponen Dataflow Diagram (DFD)
1. Proses
2. Flow
3. External Entity
4. Data Store
b. Entity Relationship Diagram (ERD)
Sebuah teknik permodelan data yang menggambarkan desain dari penyimpanan data dari sistem pada level abstraksi tingkat tinggi.
Empat komponen utama sebuah ERD :
1. Object Types
2. Relationship
3. Assosiative object type indicators
4. Supertype / subtype indicators
c. State-Transition Diagram
Menitikberatkan pada perilaku ketergantungan waktu dari system (time dependent behavior).
Sampai saat ini, permodelan dari prilaku ketergantungan waktu sistem manjadi penting hanya untuk kategori khusus dari sistem yang dikenal dengan sistem real-time.
Contoh dari sistem real-time adalah process control, telephone, switching system, high speed data acquisition system, dan millitary command and control system.
d. Struktur Chart
Struktur Chart digunakan sebagai alat untuk menggambarkan logika (yang lebih jelas dari pada DFD) sehingga programmer atau pengembang lebih mudah mengimplementasikannya dalam program.
Dalam analisa sistem keempat model (modeling) diatas harus harus konsisten dan kompatibel satu dengan lainnya.

2.3 Metode Pengumpulan Data
Pada saat melakukan penelitian dalam upaya untuk mengumpulkan data maka penulis menggunakan metode pengumpulan data dengan cara :
a) Observasi
Metode ini dilakukan melalui pengamatan langsung tanpa menggunakan alat-alat lain
b) Wawancara
Melakukan tanya jawab antara penulis dengan narasumber tentang masalah dibidang yang diteliti.
c) Studi Literatur
Data yang diperoleh dari buku-buku yang berkaitan dengan pembuatan Laporan ini.
d) Analisis Data
Suatu pengolahan hasil penelitian yang akan dikumpulkan untuk menghasilkan suatu informasi yang akurat untuk dapat diambil kesimpulannya.
e) Analisis dan Perancangan
Untuk menganalisa sistem keamanan data pengolahan data penggajian yang akan dijadikan sebagai bahan pembahasan Laporan Magang penulis menggunakan alat analisa dan perancangan seperti Flow Map,Context Diagram, dan Data Flow Diagram.
2.4 Metode Pengembangan Sistem
Model waterfall dikenal juga dengan SDLC (System Development Life Cycle) yang digunakan pada tahun 1970 an. Model waterfall ini mempunyai keunggulan dan kelemahannya antara lain sebagai berikut :
A. Keunggulan
1) Setiap tahap dikerjakan dengan lengkap dan jelas.
2) Dokumentasi sangat baik
B. Kelemahan
1) Pengembangan software tahap demi tahap berurutan relatif memakan waktu.
2) Pengguna sulit untuk mendapatkan gambaran sistem yang akan dibuat.
Pada prinsipnya pemodelan sistem waterfall pengembangannya dilakukan secara sistematis dan terarah dari tahap sistem, secara berurutan melalui tahap analisa, tahap desain sistem, coding, testing dan maintenance dan dapat kembali ketahap awal apabila semua tahapan pengembangan sistem telah dilalui. Pemodelan seperti ini juga dikenal sebagai model sekuensial linear “Linear Sequential model” (Pressman, 1997). Tahap-tahap pengembangan sistem dapat digambarkan dalam diagram berikut :
Gambar 0.3
Model waterfall atau model linear sequential” (Pressman, 1997)
Gambar 0.4
Pemodelan Waterfall
Langkah-langkah yang penting dalam model ini adalah :
a) Penentuan dan analisis spesifikasi
Jasa, kendala dan tujuan dihasilkan dari konsultasi dengan pengguna sistem. Kemudian semuanya itu dibuat dalam bentuk yang dapat dimengerti oleh user dan staf pengembang.
b) Desain sistem dan perangkat lunak
Proses desain sistem membagi kebutuhan-kebutuhan menjadi sistem perangkat lunak atau perangkat keras. Proses tersebut menghasilkan sebuah arsitektur sistem keseluhan. Desain perangkat lunak termasuk menghasilkan fungsi sistem perangkat lunak dalam bentuk yang mungkin ditransformasi ke dalam satu atau lebih program yang dapat dijalankan.
c) Implementasi dan ujicoba unit
Selama tahap ini desain perangkat lunak disadari sebagai sebuah program lengkap atau unit program. Uji unit termasuk pengujian bahwa setiap unit sesuai spesifikasi.
d) Integrasi dan ujicoba sistem
Unit program diintegrasikan dan diuji menjadi sistem yang lengkap untuk menyakinkan bahwa persyaratan perangkat lunak telah dipenuhi. Setelah ujicoba, sistem disampaikan ke curtomer.
e) Operasi dan pemeliharaan
Normalnya, ini adalah phase yang terpanjang. Sistem dipasang dan digunakan.
Pemeliharaan termasuk pembetulan kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru ditemukan.