Sabtu, 28 Januari 2012

kegiatan sehari Hari

saya seorang mahasiswa budidarma medan, saya tinggal dijl.sm raja, sebagai anak kos aktifitas sehari-hari saya hanya di mulai dengan pagi hari saya berangkat kuliah. mengikuti pelajaran yang di berikan oleh dosen, jika ada tugas yang di berikan oleh dosen biasanya saya mengerjakan tugas tersebut bersama teman-teman saya.

setelah pulang kuliah saya biasanya menonton televisi sambil makan siang dan sehabis itu saya tidur siang sampai ke jam 15.00 , kemudian saya memebersihkan kamar kos saya lalu saya mandi...
dan pada malam harinya biasanya saya nonton televisi dan terkadang keluar sebentar kekos teman lainya sekedar untuk mengobrol dengan teman-teman.
dan inilah aktifitas saya sehari-hari...

Quis Online No.3

Postingan 2 :
Jawaban Soal No.3 (Linda wati)

Untuk Kasus Lihat disini KASUS

Listing Program
PROGRAM SERVER

Dim ClientIndex As Byte
Dim cRequest As Integer
Dim cData As String
Dim i As Integer
Dim iGD As Integer

Sub MulaiServer()
        WS(0).LocalPort = 3000
        WS(0).Listen
        cRequest = 1
        ClientIndex = 1
End Sub

Private Sub Form_Load()
        MulaiServer
        GD.Rows = 41
        For i = 1 To 40
            GD.Col = 0
            GD.Row = i
            GD.Text = i
        Next i
        iGD = 1
End Sub

Private Sub Timer1_Timer()

    For i = 1 To GD.Rows - 1
        GD.Row = i
        GD.Col = 4
        If GD.Text = "START" Then
            GD.Col = 3
            GD.Text = Time
        End If
    Next i
End Sub

Private Sub Timer2_Timer()
WS.SendData "PAKAI-" & Pakai.Value & "/" & 3000
End Sub

Private Sub WS_ConnectionRequest(index As Integer, ByVal requestID As Long)
        Load WS(cRequest)
        WS(cRequest).Close
        WS(cRequest).Accept requestID
        cRequest = cRequest + 1 '
Timer1.Enabled = True
Timer2.Enabled = True

End Sub

Private Sub WS_DataArrival(index As Integer, ByVal bytesTotal As Long)
        WS(index).GetData cData, vbString, bytesTotal
        Call CekData(index)
       
End Sub

Sub CekData(index)
        Dim kata() As String
        kata = Split(cData, "-")
        Select Case kata(0)
        Case "START"
                        GD.Row = iGD
                        GD.Col = 1
                        GD.Text = kata(1) 'WS(index).RemoteHostIP
                        GD.Col = 2
                        GD.Text = Time
                        GD.Col = 4
                        GD.Text = "START"
                        GD.Col = 5
                        GD.Text = kata(2)
                        iGD = iGD
        Case "STOP"
            For i = 1 To GD.Rows - 1
                GD.Row = i
                GD.Col = 1
                If GD.Text = kata(1) Then
                        GD.Col = 4
                        GD.Text = "STOP"
                End If
            Next i
        End Select
End Sub
       
Private Sub WS_Error(index As Integer, ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
        WS(index).Close
End Sub


PROGRAM CLIENT

Dim IPS As String
Dim User As String

Private Sub Command1_Click()
    WS.SendData "START-" & User & "-
Linda Wati"
End Sub

Private Sub Command2_Click()
    WS.SendData "STOP-" & User
End Sub

Private Sub Form_Load()
    IPS = "127.0.0.1"
    User = WS.LocalIP
    WS.Connect IPS, 3000
End Sub

Private Sub WS_DataArrival(ByVal bytesTotal As Long)
WS.GetData xKirim, vbString, bytesTotal
Call CheckData
End Sub

Sub CheckData()
xdata1 = Split(xKirim, "-")
xdata2 = Split(xdata1(1), "/")

Select Case xdata1(0)
    Case "PAKAI"
    mulai.Value = xdata2(0)
    selesai.Value = xdata2(1)
    pakai.Value = xdata2(2)
    biaya.Text = (Val(Hour(pakai.Value) * 60) + Val(Minute(pakai.Value) * 50))
    End Select

Quis Online No.2

Postingan 1 :
jawaban no.2 (linda wati)

Untuk Kasus Lihat disini KASUS

Listing Program


SERVER

MODULE
Public db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public rs2 As New ADODB.Recordset
Public SQL As String
Sub opendb()
    If db.State = adStateOpen Then db.Close
    db.CursorLocation = adUseClient
    db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Sony\My Documents\belajar server\test2.mdb;Persist Security Info=False"
End Sub
Sub clearform(f As Form)
    Dim ctl As Control
    For Each ctl In f
        If TypeOf ctl Is TextBox Then ctl.Text = ""
        If TypeOf ctl Is ComboBox Then ctl.Text = ""
    Next
End Sub
Sub center(f As Form)
    f.Move (Screen.Width - f.Width) / 2, (Screen.Height - f.Height) / 4
   
End Sub
Sub rubahcmd(f As Form, L0 As Boolean, L1 As Boolean, L2 As Boolean, L3 As Boolean)
    f.cmdproses(0).Enabled = L0
    f.cmdproses(1).Enabled = L1
    f.cmdproses(2).Enabled = L2
    f.cmdproses(3).Enabled = L3
End Sub


LISTING PROGRAM SERVER

Private Sub cmdproses_Click(Index As Integer)
Select Case Index
    Case 0
        Call hapus
        kode.SetFocus
    Case 1
        If cmdproses(1).Caption = "&Simpan" Then
            Call prosesDB(0)
        Else
            Call prosesDB(1)
        End If
    Case 2
        X = MsgBox("yakin RECORD barang akan dihapus...!", vbQuestion + vbYesNo, "barang")
        If X = vbYes Then prosesDB 2
        Call hapus
        kode.SetFocus
    Case 3
        Call hapus
        kode.SetFocus
    Case 4
    Unload Me
End Select
       
End Sub

Sub hapus()
kode.Enabled = True
clearform Me
Call rubahcmd(Me, True, False, False, False)
cmdproses(1).Caption = " &Simpan"
End Sub


Private Sub Form_Load()
Call opendb
Call hapus
mulaiserver
End Sub
Sub prosesDB(log As Byte)

Select Case log
    Case 0
        SQL = "INSERT INTO barang(kode,nama,harga)" & _
        "values('" & kode.Text & _
        "','" & nama.Text & _
        "','" & harga.Text & "')"
    Case 1
        SQL = "UPDATE barang SET nama='" & nama.Text & "'," & _
            "harga='" & harga.Text & "' " & _
            "WHERE kode='" & kode.Text & "'"
    Case 2
        SQL = "DELETE  FROM barang WHERE kode='" & kode.Text & "'"
    End Select
MsgBox "Pemrosesan  record Database telah berhasil....!!", vbInformation, "Data Barang"
    db.BeginTrans
    db.Execute SQL, adCmdTable
    db.CommitTrans
    Call hapus
    Adodc1.Refresh
    kode.SetFocus

End Sub
Sub tampilbarang()
    On Error Resume Next
    kode.Text = rs!kode
    nama.Text = rs!nama
    harga.Text = rs!harga
   
End Sub


Private Sub kode_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
    If kode.Text = "" Then
        MsgBox "Masukkan Kode Barang!", vbInformation, "Barang"
        kode.SetFocus
        Exit Sub
End If
SQL = " SELECT * FROM barang WHERE kode='" & kode.Text & "'"
If rs.State = adStateOpen Then rs.Close
rs.Open SQL, db, adOpenDynamic, adLockOptimistic
If rs.RecordCount <> 0 Then
    tampilbarang
    Call rubahcmd(Me, False, True, True, True)
    cmdproses(1).Caption = "&Edit"
    kode.Enabled = False

    Else
        X = kode.Text
        Call hapus
        kode.Text = X
        Call rubahcmd(Me, False, True, False, True)
          cmdproses(1).Caption = "&Simpan"
End If
nama.SetFocus
End If
  
End Sub

Sub mulaiserver()
ws.LocalPort = 1000
ws.Listen
End Sub

Private Sub ws_ConnectionRequest(ByVal requestID As Long)
ws.Close
ws.Accept requestID
Me.Caption = "server-client" & ws.RemoteHostIP & "connect"

End Sub

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim xkirim As String
Dim xData1() As String
Dim xData2() As String
ws.GetData xkirim, vbString, bytesTotal

xData1 = Split(xkirim, "-")
Select Case xData1(0)
    Case "SEARCH"
    SQL = " delete * FROM barang " & _
    " where kode= '" & xData1(1) & "'"
    SQL = "SELECT * FROM barang WHERE kode='" & xData1(1) & "'"
    If rs.State = adStateOpen Then rs.Close
rs.Open SQL, db, adOpenDynamic, adLockOptimistic
If rs.RecordCount <> 0 Then
    ws.SendData "RECORD-" & rs!nama & "/" & rs!harga
   
    Else
        ws.SendData "NOTHING-DATA"
    End If
    Case "INSERT"
   
    Case "EDIT"
   
    Case "DELETE"
    SQL = " delete * FROM barang " & _
    " where kode= '" & xData1(1) & "'"
    db.BeginTrans
    db.Execute SQL, adCmdTable
    db.CommitTrans
    Adodc1.Refresh
    ws.SendData "DEL-xxx"
   
    Case "UPDATE"
    db.BeginTrans
    db.Execute xData1(1), adCmdTable
    db.CommitTrans
   End Select
End Sub
Hasil Program





CLIENT

MODULE
Public db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public rs2 As New ADODB.Recordset
Public SQL As String
Sub opendb()
    If db.State = adStateOpen Then db.Close
    db.CursorLocation = adUseClient
    db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\Sriwahyu-a562c3\vb2\vb\test.mdb;Persist Security Info=False"
End Sub
Sub clearform(f As Form)
    Dim ctl As Control
    For Each ctl In f
        If TypeOf ctl Is TextBox Then ctl.Text = ""
        If TypeOf ctl Is ComboBox Then ctl.Text = ""
    Next
End Sub
Sub center(f As Form)
    f.Move (Screen.Width - f.Width) / 2, (Screen.Height - f.Height) / 4
   
End Sub
Sub rubahcmd(f As Form, L0 As Boolean, L1 As Boolean, L2 As Boolean, L3 As Boolean)
    f.cmdproses(0).Enabled = L0
    f.cmdproses(1).Enabled = L1
    f.cmdproses(2).Enabled = L2
    f.cmdproses(3).Enabled = L3
End Sub


LISTING PROGRAM SERVER

Private Sub cmdproses_Click(Index As Integer)
Select Case Index
    Case 0
        Call hapus
        kode.SetFocus
    Case 1
        If cmdproses(1).Caption = "&Simpan" Then
            Call prosesDB(0)
        Else
            Call prosesDB(1)
        End If
    Case 2
        X = MsgBox("yakin RECORD barang akan dihapus...!", vbQuestion + vbYesNo, "barang")
        If X = vbYes Then prosesDB 2
        Call hapus
        kode.SetFocus
    Case 3
        Call hapus
        kode.SetFocus
    Case 4
    Unload Me
End Select
       
End Sub

Sub hapus()
kode.Enabled = True
clearform Me
Call rubahcmd(Me, True, False, False, False)
cmdproses(1).Caption = " &Simpan"
End Sub


Private Sub Form_Load()
Call opendb
Call hapus
mulaiserver
End Sub
Sub prosesDB(log As Byte)

Select Case log
    Case 0
        SQL = "INSERT INTO barang(kode,nama,harga)" & _
        "values('" & kode.Text & _
        "','" & nama.Text & _
        "','" & harga.Text & "')"
    Case 1
        SQL = "UPDATE barang SET nama='" & nama.Text & "'," & _
            "harga='" & harga.Text & "' " & _
            "WHERE kode='" & kode.Text & "'"
    Case 2
        SQL = "DELETE  FROM barang WHERE kode='" & kode.Text & "'"
    End Select
MsgBox "Pemrosesan  record Database telah berhasil....!!", vbInformation, "Data Barang"
    db.BeginTrans
    db.Execute SQL, adCmdTable
    db.CommitTrans
    Call hapus
    Adodc1.Refresh
    kode.SetFocus

End Sub
Sub tampilbarang()
    On Error Resume Next
    kode.Text = rs!kode
    nama.Text = rs!nama
    harga.Text = rs!harga
   
End Sub


Private Sub kode_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
    If kode.Text = "" Then
        MsgBox "Masukkan Kode Barang!", vbInformation, "Barang"
        kode.SetFocus
        Exit Sub
End If
SQL = " SELECT * FROM barang WHERE kode='" & kode.Text & "'"
If rs.State = adStateOpen Then rs.Close
rs.Open SQL, db, adOpenDynamic, adLockOptimistic
If rs.RecordCount <> 0 Then
    tampilbarang
    Call rubahcmd(Me, False, True, True, True)
    cmdproses(1).Caption = "&Edit"
    kode.Enabled = False

    Else
        X = kode.Text
        Call hapus
        kode.Text = X
        Call rubahcmd(Me, False, True, False, True)
          cmdproses(1).Caption = "&Simpan"
End If
nama.SetFocus
End If
  
End Sub

Sub mulaiserver()
ws.LocalPort = 1000
ws.Listen
End Sub

Private Sub ws_ConnectionRequest(ByVal requestID As Long)
ws.Close
ws.Accept requestID
Me.Caption = "server-client" & ws.RemoteHostIP & "connect"

End Sub

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim xkirim As String
Dim xData1() As String
Dim xData2() As String
ws.GetData xkirim, vbString, bytesTotal

xData1 = Split(xkirim, "-")
Select Case xData1(0)
    Case "SEARCH"
    SQL = " delete * FROM barang " & _
    " where kode= '" & xData1(1) & "'"
    SQL = "SELECT * FROM barang WHERE kode='" & xData1(1) & "'"
    If rs.State = adStateOpen Then rs.Close
rs.Open SQL, db, adOpenDynamic, adLockOptimistic
If rs.RecordCount <> 0 Then
    ws.SendData "RECORD-" & rs!nama & "/" & rs!harga
   
    Else
        ws.SendData "NOTHING-DATA"
    End If
    Case "INSERT"
   
    Case "EDIT"
   
    Case "DELETE"
    SQL = " delete * FROM barang " & _
    " where kode= '" & xData1(1) & "'"
    db.BeginTrans
    db.Execute SQL, adCmdTable
    db.CommitTrans
    Adodc1.Refresh
    ws.SendData "DEL-xxx"
   
    Case "UPDATE"
    db.BeginTrans
    db.Execute xData1(1), adCmdTable
    db.CommitTrans
   End SelectEnd Sub

 Hasil Program







Jumat, 20 Januari 2012

Tugas Client -Server (data pegawai)


1.      Pengertian jaringan Client – Server
Server adalah komputer yang menyediakan fasilitas bagi komputer- komputer lain di dalam jaringan
client adalah komputer-komputer yang menerima atau menggunakan fasilitas yang disediakan oleh server.
Server di jaringan tipe client-server disebut dengan Dedicated Server karena murni berperan sebagai server yang menyediakan fasilitas kepada workstation dan server tersebut tidak dapat berperan sebagai workstation.

2.      Program server
Langkah - langkah pembuatan program server yang menggunakan program Microsoft Office Acces 2003 dan program Microsoft Visual Basic 6.0 yaitu :
a.       Rancanglah pembuatan data base pada program Microsoft Office Acces 2003.
Nama database            : Laporan data pengawai
Nama table                  : Data
Start, program, pilih Microsoft Office Acces 2003. Pada sebelah kanan bawah tampilan terdapat icon – icon. Klik create a new file. Ketik blank database. Lalu ketik nama database Mahasiswa dengan nama tabel data. Double klik table data isilah field name dan data typenya. Seperti tampilan dibawah ini.
b. Start, program, pilih Microsoft Visual Basic 6.0, Microsoft Visual Basic 6.0, standard Exe, klik Open

c. Rancang tampilan pada Form Login.

Ketik listing program pada form login.
Private Sub Command1_Click()
If user.Text = "lindawati" And password.Text = "0902146" Then
MDIForm1.Show
ElseIf user.Text = "" & password.Text = "" Then
MsgBox "Silahkan masukkan password login", vbCritical, "info"
user.SetFocus
Else
MsgBox "Password yang anda inputkan salah", vbCritical, "info"
user.Text = ""
password.Text = ""
End If
End Sub

Private Sub Command2_Click()
Unload Me
End Sub

Private Sub Form_Load()
user.Text = ""
password.Text = ""
password.PasswordChar = "*"
End Sub 
 d. Rancang tampilan pada Form MDIForm1
 
Ketik listing program pada form MDIForm1.
Private Sub e_Click()
Unload Me
End Sub

Private Sub ldm_Click()
datapegawai.Show
End Sub

Private Sub MDIForm_Load()

End Sub

Rancang tampilan seperti tampilan dibawah ini dengan menggunakan Microsoft Visual Basic 6.0.
e.       Ketik listing program pada Form1.

Private Sub cmdproses_Click(Index As Integer)
Select Case Index
    Case 0
        Call hapus
        nip.SetFocus
    Case 1
        If cmdproses(1).Caption = "&Simpan" Then
            Call prosesDB(0)
        Else
            Call prosesDB(1)
        End If
    Case 2
        X = MsgBox("yakin RECORD data akan dihapus...!", vbQuestion + vbYesNo, "data")
        If X = vbYes Then prosesDB 2
        Call hapus
        nip.SetFocus
    Case 3
        Call hapus
        nip.SetFocus
    Case 4
    Unload Me
End Select
       
End Sub

Sub hapus()
nip.Enabled = True
clearform Me
Call rubahcmd(Me, True, False, False, False)
cmdproses(1).Caption = " &Simpan"
End Sub
Private Sub Form_Load()
Call opendb
Call hapus
mulaiserver
End Sub
Sub prosesDB(log As Byte)
Select Case log
    Case 0
        SQL = "INSERT INTO data(nip,nama,Golongan,alamat)" & _
        "values('" & nip.Text & _
        "','" & nama.Text & _
        "','" & Golongan.Text & _
        "','" & alamat.Text & "')"
    Case 1
        SQL = "UPDATE data SET nama='" & nama.Text & "'," & _
            "Golongan='" & Golongan.Text & "' " & _
            "alamat='" & alamat.Text & "' " & _
            "WHERE nip='" & nip.Text & "'"
    Case 2
        SQL = "DELETE  FROM data WHERE nip='" & nip.Text & "'"
    End Select
MsgBox "Pemrosesan  record Database telah berhasil....!!", vbInformation, "data"
    db.BeginTrans
    db.Execute SQL, adCmdTable
    db.CommitTrans
    Call hapus
    Adodc1.Refresh
    nip.SetFocus

End Sub
Sub tampildata()
    On Error Resume Next
    nip.Text = rs!nip
    nama.Text = rs!nama
    Golongan.Text = rs!Golongan
    alamat.Text = rs!alamat
   
End Sub
Sub mulaiserver()
ws.LocalPort = 1000
ws.Listen
End Sub


Private Sub nip_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
    If nip.Text = "" Then
        MsgBox "Masukkan nip!", vbInformation, "data"
        nip.SetFocus
        Exit Sub
End If
SQL = " SELECT * FROM data WHERE nip='" & nip.Text & "'"
If rs.State = adStateOpen Then rs.Close
rs.Open SQL, db, adOpenDynamic, adLockOptimistic
If rs.RecordCount <> 0 Then
    tampildata
    Call rubahcmd(Me, False, True, True, True)
    cmdproses(1).Caption = "&Edit"
    nip.Enabled = False

    Else
        X = nip.Text
        Call hapus
        nip.Text = X
        Call rubahcmd(Me, False, True, False, True)
          cmdproses(1).Caption = "&Simpan"
End If
nip.SetFocus
End If
End Sub

Private Sub ws_ConnectionRequest(ByVal requestID As Long)
ws.Close
ws.Accept requestID
Me.Caption = "server-client" & ws.RemoteHostIP & "connect"

End Sub

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim xkirim As String
Dim xData1() As String
Dim xData2() As String
ws.GetData xkirim, vbString, bytesTotal

xData1 = Split(xkirim, "-")
Select Case xData1(0)
    Case "SEARCH"
    SQL = " delete * FROM data " & _
    " where nip= '" & xData1(1) & "'"
    SQL = "SELECT * FROM data WHERE nip='" & xData1(1) & "'"
    If rs.State = adStateOpen Then rs.Close
rs.Open SQL, db, adOpenDynamic, adLockOptimistic
If rs.RecordCount <> 0 Then
    ws.SendData "RECORD-" & rs!nama & "/" & rs!Golongan & "/" & rs!alamat
   
    Else
        ws.SendData "NOTHING-DATA"
    End If
    Case "INSERT"
        db.BeginTrans
        db.Execute xData1(1), adCmdTable
        db.CommitTrans
        Adodc1.Refresh
        ws.SendData "INSERT-XXX"
       
    Case "UPDATE"
        db.BeginTrans
        db.Execute xData1(1), adCmdTable
        db.CommitTrans
        Adodc1.Refresh
        ws.SendData "UPDATE-XXX"
       
    Case "DELETE"
    SQL = " delete * FROM data " & _
    " where nip= '" & xData1(1) & "'"
    db.BeginTrans
    db.Execute SQL, adCmdTable
    db.CommitTrans
    Adodc1.Refresh
    ws.SendData "DEL-xxx"
   End Select
End Sub
f.       Ketik listing program pada Module.
Klik kanan pada Form1, pilih add, Module, open. Double klik pada tampilan Module, lalu ketikkan listing programnya.

Public db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public rs2 As New ADODB.Recordset
Public SQL As String
Sub opendb()
                If db.State = adStateOpen Then db.Close
                db.CursorLocation = adUseClient                 db.Open”Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\belajarserver\server\mahasiswa.md;                Persist Security Info=False"
End Sub

Sub clearform(f As Form)
                Dim ctl As Control
                For Each ctl In f
                If TypeOf ctl Is TextBox Then ctl.Text = ""
                If TypeOf ctl Is ComboBox Then ctl.Text = ""
                                Next
End Sub

Jumat, 07 Oktober 2011

Pengertian Multiuser

Sistem Multi-User adalah suatu sistem dimana lebih dari satu user menggunakan secara bersama satu atau lebih perangkat keras, piranti lunak dan data/ informasi , orang dan prosedur melalui masing-masing komputer atau workstation.
Tujuan Sistem Multi-User :
l Meningkatkan produktivitas dan efektivitas SDM
2 Meningkatkan produktivitas dan efektivitas organisasi
3 Meningkatkan Layanan kepada mereka yang tergantung pada sistem Multi-User.
Pengertian Jaringan Komunikasi :
l Jaringan memungkinkan manusia dan organisasi-organisasi untuk mengirim dan menggunakan secara bersama data dan informasi dengan melampaui pembatas jarak.
2 Komunikasi adalah proses pengirim data dan informasi melalui jaringan komunikasi.
3 Jaringan Komunikasi merupakan seperangkat lokasi-lokasi yang terdiri dari perangkat keras, program dan informasi yang terhubung satu sama lain sebagai satu sistem yang mengirim dan menerima data / informasi.
l Node adalah station komunikasi di dalam jaringan.
Peran Jaringan Komunikasi :
l Mengirim dan menerima pesan secara Elektronik.
2 Pertemuan Elektronik
3 Sharing dan Pendistribusian Informasi
4 Penyediaan Informasi

Konsep Sistem Client-Server

Pendahuluan
Diawal perkembangannya perangkat komputer adalah barang yang mahal dan mewah. Pengembangan dan pengoperasiannya rumit dan terpusat. Namun seiring dengan berjalannya waktu yang tadinya proses tersentralisasi dikembangakan menjadi proses terdistribusi sampai pada end user. Hal ini sangat dipengaruhi oleh adanya perkembangan teknologi LAN (Local Area Network) di pertengahan tahun 1980 an. Dengan LAN sebuah PC dapat melakukan komunikasi satu dengan lainnya dan dapat saling berbagi resource baik perangkat keras ataupun database. LAN mampu memberikan interkonektivitas yang tidak pernah ada sebelumnya. Untuk dapat melakukan hal tersebut dibutuhkan sebuah komputer pemproses yang memfasilitasi dan melayani proses sharing semua resource yang ada. Perangkat ini disebut dengan Server. Untuk melakukan Sharing File biasanya dibutuhkan sebuah File Server begitu juga untuk sharing Printer dibutuhkan sebuah Printer Server. Namun ternyata hal seperti ini belumlah cukup. Jumlah PC yang bertambah dengan sangat cepat seiring dengan berkembangnya sebuah organisasi. Jumlah end user dan client juga bertambah banyak. Kebutuhan akan perangkat menjadi bertambah pula, tidak hanya membutuhkan sebuah printer server, juga dibutuhkan server-server lainnya seperti server pengolahan gambar, server pengolahan suara, dan lainnya. Server-server ini dengan database dan applikasinya harus dapat diakses oleh beberapa PC, ataupun diakses oleh sebuah komputer mainframe melalui sebuah LAN. Sistem seperti ini disebut Sistem Client Server seperti digambarkan pada Gambar 1 dibawah ini.
Gambar 1. Skema Sistem Client-Server
Komponen dan Fungsi Sistem Client Server
Gambaran umum konfigurasi Client Server diperlihatkan pada gambar 2. Dengan pendekatan Client Server setiap PC dapat melakukan secara independen sebuah pemrosesan lokal dan mensharing perangkat enterprise melalui LAN. Untuk kasus yang lebih luas kemampuan akses dapat dilakukan melalui MAN (Metropolita Area Network) atau WAN (Wide Area Network). Sebuah database dan program applikasi enterprise misalnya diletakan pada sebuah server dimana setiap end user dapat melakukan akses melalui Client Processor, LAN dan Server seperti pada gambar 3.
Gambar-2 Host Sistem dan Sistem Client Server
User
User disini adalah end user yang mengakses client untuk mendapatkan sebuah layanan. End user bisa saja seorang manager perusahaan, professional, karyawan di sebuah perusahaan, atau pelanggan. Ada timbul sedikit kerancuan. Pelanggan dalam sebuah bisnis atau perdagangan disebut dengan client, tapi client ini adalah manusia, jangan dibingungkan dengan istilah client pada pemrosesan komputer. Dapat kita katakan sebuah user atau end user adalah ketika melakukan proses akhir menggunakan sistem client server.
Gambar 3. Komponen Sistem Client Server
Client
Client dapat berupa sebuah pemproses yang powerful atau dapat juga berupa terminal tua dengan kemampuan proses yang terbatas. Secara mendasar client adalah sebuah PC dengan sistem operasinya sendiri. Sebagian besar pemrosesan banyak dilakukan di sebuah server dimana bagian-bagian dalam lingkup pekerjaannya ditentukan oleh program komputer, inilah yang menyebabkan sistem client server berbeda dengan sistem transaksi tradisional. Sistem client server memungkinkan sebuah teknologi dan applikasinya digunakan bersamaan. Applikasi disini termasuk didalamnya adalah pemroses pesan seperti e-mail, pemproses file lokal seperti DBMS untuk browsing dan penghitungan, atau sharing resource seperti sistem image processing, sistem optical character, sistem advance grafic processing, plotter warna, atau sebuah printer. Perangkat-perangkat ini bisa saja berasal dari berbagai vendor yang ada. Untuk memfasilitasi query pemprosesan dari client, sebagian besar sistem client server menggunkaan Structured Query Language (SQL) yang merupakan struktur bahasa tingkat tinggi. SQL dengan database relationalnya adalah standar de facto untuk hampir sebagian besar sistem client server. Salah satu komponen terpenting sistem client server adalah User Interface (UI), yang digunakan user untuk berkomunikasi. Bagi user yang seorang programmer, UI tidak mesti user friendly, tapi untuk end user yang bukan programmer sangat dibutuhkan UI yang user friendly. Dibutuhkan Graphical User Interface (GUI) untuk end user karena GUI menampilkan grafis untuk melakukan akses dengan icon-icon tanpa perlu memasukan perintah pemrograman. Kedepannya GUI tidak hanya digunakan untuk menggantikan akses perintah pemprograman tapi juga digunakan untuk grafik, voice, video, animasi, untuk selanjutnya menjadi sebuah teminal multimedia.
Network dan Transmisi
Server dan client dapat terkoneksi dengan sebuah media transmisi. Media transmisi ini dapat berupa kabel, wireless, atau fiber. Dengan media ini memungkinkan sebuah perusahaan untuk melakukan enterprice network lebih besar dalam sebuah workgroup atau departemen. Untuk itu dibutuhkan interoperability sebagai contoh operasi dan pertukaran informasi yang heterogen melalui berbagai perangkat software dalam jaringan. Esensinya adalah keterbukaan dalam melakukan pertukaran baik komponen dan software yang berasal dari vendor yang berbeda-beda. Dengan interoperability baik vendor dan customer akan mendapatkan keuntungan.
Interoperability memberikan dampak pada arsitektur jaringan. Awal sebuah arsitektur jaringan adalah SNA namun arsitektur ini bersifar proprietary dan tidak terbuka dengan vendor lainnya. Kemudian sebagian besar orang beralih ke OSI yang di standarkan oleh ISO (International Standards Organization). OSI banyak di gunakan di Eropa namun kurang berkembang di Amerika Serikat. Di Amerika Serikat muncul TCP/IP yang kemudian di dukung oleh Unix User Group.
Servers
Konektivitas adalah hal yang terpenting namun bukan satu-satunya faktor untuk mendapatkan efisiensi dan efektivitas sharing resource yang dimiliki. Dibutuhkan sebuah perangkat yang memiliki kemampuan mengontrol software, menjalankan program applikasi, dan mengakses database dengan mudah dan cepat. Untuk itulah diperlukan sebuah Server. Sebuah Server harus mendukung spesifikasi yang mendukung resource sharing seperti Network Server Operating System, Multiple User Interface, GUI (Graphic User Interface), dialog oriented cleint – server languange seperti SQL dan database arsitektur. Saat ini resuorce bisa tersebar secara spasial tidak hanya berada dalam batasan sebuah negara namun sudah antar negara yang membutuhkan interkoneksi yang tinggi.
Beberapa software dapat diperoleh dari vendor atau software house. Software tersebut bisa bersifat mainframe centric (sentral) atau PC server centric. Namun selain semua hal yang tersedia pada paket software tersebut tetap dibutuhkan in house sofware development. Juga perlu untuk mengintegrasikan sistem client server dengan sistem informasi yang telah ada dan menggunakan sistem tersebut tidak hanya sebagai end user tapi juga bekerja diantara group end user.
Server melakukan pemprosesan mirip dengan pemrosesan yang ada disisi client. Namun ada sedikit perbedaan, biasanya sebuah server tidak mempunyai User Interface karena didesain untuk networking, memproses database dan memproses applikasi. Pembeda antara pemrosesan client dan server ada pada tanggungjawab dan fungsi dari pemrosesan yang dilakukan. Sebagai contoh sebuah server dapat bertindak sebagai repository dan penyimpanan informasi dalam kasus pada file server. Tipe dari Server tergantung pada kebutuhan dan tujuan sistem. Dalam beberapa kasus sebuah server harus mampu melakukan multitaskting (membentuk multi fungsi secara simultan), menggunakan multiple operating system, lebih portable, memiliki skalabilitas, dan memiliki waktu respon yang cepat untuk melakukan teleprosesing. Dengan kapabilitas seperti itu menjadikan server memiliki harga yang relatif mahal. Penyebab mahalnya harga server adalah :
  1. Network Management
  2. Gateway function termasuk akses keluar dan e-mail publik
  3. Penyimpanan
  4. File Sharing
  5. Batch processing
  6. Bulletin Board access
  7. Facsimile transmission
Pemrosesan Database
Beberapa prinsip pemrosesan data pada server termasuk didalamnya adalah integritas, sekuriti, dan recovery data. Enterprise data yang dibutuhkan oleh sebuah perusahaan membutuhkan sebuah integrasi, pengaksesan data yang di kendalikan dan kelola dengan securiti yang baik, dan recovery data dapat dilakukan jika terjadi kegagalan sistem.
Beberapa data management dilakukan secara otomatis. Biasanya dilakukan oleh DBMS yang berada di Server yang mengontrol akses diantara pemprosesan multiple sistem dan mengintegrasikan akses data melalui network management.
Pemrosesan Applikasi
Data digunakan oleh program applikasi yang mana sebagian besarnya berada di server. Ada beberapa applikasi client server yang disediakan oleh vendor. Tools applikasi ini menjadikan pengembangan sistem client-server menjadi lebih kompetitif. Pengembangan applikasi client-server dapat dilakukan dengan beberapa cara yakni :
  1. Fungsi pemprosesan didistribusikan diantara client dan server. Porsi dari client dijalankan oleh end user dengan menggunakan bahasa pemrograman database seperti SQL yang memberikan semacam request data dan kemudian mengekstrak data tersebut dari lokasinya dimana semua proses tersebut dikontrol oleh sistem operasi.
  2. UI dan GUI menjadi lebih sering digunakan karena tingkat kemudahan penggunaan menjadi lebih penting.
  3. Digunakannya Advance networking seperti LAN
  4. Code generator juga digunakan, Metodelogi Objeck Oriented akan menambah tingkat penggunan.
  5. Tools pengembangan seperti SQL Server, FLOWMARK, Progress, ObjectView, Oracle menjadi sangat diperlukan
Ketika sebuah applikasi diproses dan permintaan akan data dilakukan oleh client, maka hasilnya dikirimkan melalui LAN. Hasil dari applikasi tersebut dapat saja dilakukan perubahan bentuk untuk mendapatkan tampilan yang lebih baik. Semuanya ini dilakukan di sisi client oleh end user melalui UI (User Interface). Diagram skematik pendekatan client server ditunjukan pada gambar 4.
Gambar 4- Applikasi Sistem Client Server
Keuntungan Sistem Client Server
  1. Mengurangi tanggung jawab dan biaya overhead
  2. Kontrol biaya operasional dan pengembangan yang lebih mudah
  3. Waktu respon yang lebih baik dalam pemrosesan.
  4. Akses data yang lebih besar bagi perusahaan. Sistem Client server mengamankan transaksi data dan menyimpannya pada server untuk kemudian dapat di sharing, dimanipulasi, dianalisa secara lokal.
  5. Memungkinkan pendistribusian proses dari tersentralisasi menjadi desktop computing
  6. Menawarkan kooperatif prosesing antara individu dan group antar departemen, geografis dan zona waktu.
  7. Rewriting software pada sistem client server memberikan keuntungan untuk mendapatkan sistem yang terintegrasi dan memberikan efisiensi.
  8. Menawarkan friendlu interface pada end user khususnya pada knowledge worker dan customer.
  9. Keterlibatan yang lebih untuk end user pada implementasi IT.
  10. Arsitektur terbuka dan sistem terbuka memberikan fleksibilitas dalam memilih konfigurasi hardware yang berbeda, network, dan DBMS dari berbagai vendor.
Hambatan Implementasi Sistem Client Server
Organisasi
  1. Skill personel yang kurang memadai untuk implementasi sistem client server.
  2. Anti perubahan terhadap teknologi baru.
  3. Biaya konversi
  4. Membutuhkan koordinasi dan kontrol yang lebih pada end user.
Teknologi
  1. Membutuhkan infrastruktur LAN dan WAN
  2. Skill dan peralatan yang belum memadai
  3. Belum adanya pemahaman dan pengalaman dalam merencanakan sistem client server
  4. Tidak tersedianya produk dan tools pengembangan sistem client server
  5. Sedikitnya applikasi client server
  6. Sedikitnya standar nasional dan internasional untuk sistem client server.