clas kuda

public class kuda
{
public static final String jenis_makanan ="rumput";
public static final int jumlh_kaki=4;
public static final String suara="emmah";

public static String maem ()
{
return "kuda maem"+jenis_makanan+"bareng-bareng";

}

public int berat_badan;
public String warna_kulit;
public int umur;
public int tinggi;

public kuda ()
{

}

public kuda (int berat_badan,int umur)
{

this.berat_badan =berat_badan;
this.umur=umur;
this.warna_kulit="pink";

}
public kuda (int berat_badan,int umur,String warna_kulit,int tinggi)
{
this.berat_badan =berat_badan;
this.umur=umur;
this.warna_kulit=warna_kulit;
this.tinggi=tinggi;
}

public int getberat_badan(int berat_badan)
{
return berat_badan;

}
}



class sumbawa extends kuda
{
int berat;
public sumbawa(int berat_badan, int umur)
{
this.berat_badan=berat_badan;
this.umur = umur;
berat = getberat_badan(190);
}
}

Read More......

calculator script

class mobil
{
String type;
String warna;
String bb;
public mobil()
{
}
public mobil(String type,String warna,String bb)
{
this.type = type;
this.warna = warna;
this.bb = bb;
}
void mesin()
{
System.out.println("spesifikasi");
System.out.println(type);
System.out.println(warna);
System.out.println(bb);
}
public String ambil_type()
{
return type;
}
public static void main(String []args)
{
mobil pribadi = new mobil("kijang","biru","bensin");
String t =pribadi.ambil_type();
pribadi.mesin();
System.out.println("mobilku baru:"+t);
}
}





class hewan
{
String jb;
String warna;
public hewan()
{
}
public hewan(String jb,String warna)
{
this.jb = jb;
this.warna = warna;
}
String ambiljb()
{
return jb;
}
String ambilwarna()
{
return warna;
}
public static void main (String []args)
{
hewan hewanku = new hewan("kakak tua","coklat");
System.out.println("identitas hewanku:");
String n = hewanku.ambiljb();
System.out.println("jb:"+n);
System.out.println("warna:"+hewanku.warna);
}
}


"calculator"
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.*;
import javax.swing.JOptionPane;

public class kalkulator extends JFrame implements ActionListener
{
public kalkulator()
{
loadcomponent();
}
JLabel lutama = null ;
JLabel lpertama = null;
JLabel lkedua = null;
JLabel lhasil = null;

JButton JBplus = null;
JButton Jclose = null;
JButton Jkali = null;
JButton Jbagi = null;
JButton Jkurang = null;

JTextField JTpertama = null;
JTextField JTkedua = null;
JTextField JThasil = null;

public void loadcomponent()
{
setTitle("BUDI CALCULATOR");
lutama = new JLabel(" CALCULATOR");
lpertama = new JLabel(" angka I");
lkedua = new JLabel (" angka II");
lhasil = new JLabel (" HASIL");

JBplus = new JButton ("+");
Jkurang = new JButton ("-");
Jclose = new JButton ("EXIT");
Jkali = new JButton ("X");
Jbagi = new JButton (":");


JTpertama = new JTextField (5);
JTkedua = new JTextField(5);
JThasil = new JTextField(5);

Container eko;
eko = getContentPane();
eko.setLayout(new GridBagLayout());
GridBagConstraints budi = new GridBagConstraints();

budi.anchor = GridBagConstraints.WEST;
budi.gridx = 5;
budi.gridy = 5;
eko.add(lutama,budi);
budi.gridy ++;
eko.add(lpertama, budi);
budi.gridx++;
eko.add(JTpertama, budi);
budi.gridy++;
budi.gridx=5;
eko.add(lkedua , budi);
budi.gridx++;
eko.add(JTkedua, budi);
budi.gridy++;
budi.gridx=5;
eko.add(lhasil, budi);
budi.gridx++;
eko.add(JThasil, budi);
budi.gridy++;
budi.gridx=10;
eko.add(JBplus, budi);
budi.gridx++;
eko.add(Jkurang, budi);
budi.gridx++;
eko.add(Jkali, budi);
budi.gridx++;
eko.add(Jbagi, budi);
budi.gridx++;
eko.add(Jclose,budi);
eko.setBackground(Color.yellow);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pack();
setVisible(true);

Jclose.setActionCommand("EXIT");
JBplus.setActionCommand("+");
Jkali.setActionCommand("X");
Jbagi.setActionCommand(":");
Jkurang.setActionCommand("-");

Jclose.addActionListener(this);
JBplus.addActionListener(this);
Jkali.addActionListener(this);
Jbagi.addActionListener(this);
Jkurang.addActionListener(this);
}

public static void main(String []args)
{
kalkulator a =new kalkulator ();
}
public void actionPerformed(ActionEvent e)
{
String a = e.getActionCommand();
if (a=="EXIT")
{
int JTutup = JOptionPane.showConfirmDialog(this,"Are you sure quit application","Close The Calculator",JOptionPane.YES_NO_OPTION);
if (JTutup==0)
{
System.exit(0);
}
}
if (a=="+")
{
int nilai1= Integer.parseInt(JTpertama.getText());
//String s = JTpertama.getText();
int nilai2= Integer.parseInt(JTkedua.getText());
Integer temp = nilai1+nilai2;
String s = temp.toString();
JThasil.setText(s);
}
if (a=="X")
{
int nilai1= Integer.parseInt(JTpertama.getText());
//String s = JTpertama.getText();
int nilai2= Integer.parseInt(JTkedua.getText());
Integer temp = nilai1*nilai2;
String s = temp.toString();
JThasil.setText(s);
}
if (a==":")
{
int nilai1= Integer.parseInt(JTpertama.getText());
//String s = JTpertama.getText();
int nilai2= Integer.parseInt(JTkedua.getText());
Integer temp =nilai1/nilai2;
String s = temp.toString();
JThasil.setText(s);
}
if (a=="-")
{
int nilai1= Integer.parseInt(JTpertama.getText());
//String s = JTpertama.getText();
int nilai2= Integer.parseInt(JTkedua.getText());
Integer temp = nilai1-nilai2;
String s = temp.toString();;
JThasil.setText(s);
}
}
}

Read More......

GRAFIKA KOMPUTER 2D

BAB I
Software Untuk Grafika Komputer
Software untuk menggambar grafik pada komputer ada dua jenis yaitu software
yang bebentuk library atau pustaka pada suatu bahasa pemrograman(paket pemrograman
grafika) dan software yang berbentuk aplikasi khusus. Pada software yang berbentuk
library suatu bahasa pemrograman akan dilengkapi fungsi fungsi grafik yang berasal dari
paket software grafik tersebut yang termasuk contoh dari jenis ini adalah Open Gl yang
dibuat Silicon Graphics.


Sedang pada paket aplikasi khusus gambar grafik dibuat tanpa
mengetahui bagaiamanahal itu dapat terjadi, contoh dari jenis ini adalah Blender ataupun
Qcad. Pada Modul ini yang digunakan adalah software jenis pertama dengan
menggunakan fungsi grafik pada Bahasa Pemrograman Pascal.
Note: Semua kode pada modul ini menggunakan prosedur prosedur di
bawah. tambahkan pada setiap awal kode program!.
procedure init;
var gd, gm : integer;
begin
gm:=detect; gd:=0;
InitGraph(gd,gm,'');
if GraphResult <> grOk then
begin
Writeln('Graph driver ',gd,' graph mode ',gm,' not
supported');
Halt(1);
end;
end;
procedure destroy;
begin
closegraph;
end;

BAB II
Output Primitif
1. TITIK
Titik dalam Grafika Komputer bisa didefinisikan sebagai suatu posisi tertentu dalam
suatu sistem koordinat. Sistem koordinat yang dipakai bisa Polar Coordinates atau
Cartesian Coordinates. Biasanya dalam pemrograman grafis, yang paling umum
digunakan adalah Cartesian Coordinates.
Dalam Cartesian Coordinates, titik didefinisikan sebagai kombinasi dua bilangan yang
menentukan posisi tersebut dalam koordinat x dan y (2D)
Contoh Penerapan
Jika kita ingin menempatkan titik­titik A(2,4), B(1,1), C(4,­1.5), D(­4,­2), E(–4,3)
Kita bisa menggambarkan sebagai berikut:
A
B
C D
E
GAMBAR 1 : TITIK DALAM CARTESIAN COORDINATESAda 2 definisi
koordinat dalam komputer terutama dalam Sistem Operasi Windows, yaitu Screen
Coordinate, dan Cartesian Coordinate, keduanya sering membingungkan. Untuk lebih
jelasnya mari kita lihat gambar berikut:S creen Coordinat es
Car t esian Coordinat es
X
Y
Y
X
GAMBAR 2 : PERBEDAAN SCREEN DAN CARTESIAN COORDINATES
Prinsipnya, karena monitor didesain untuk menggambar dari atas ke bawah, maka sumbu
y pada Screen Coordinates dan Cartesian Coordinates berbeda arah, untuk Screen
Coordinates, sumbu Y arahnya ke bawah, sedangkan pada Cartesian Coordinates, sumbu
Y arahnya ke atas. Biasanya dalam rendering pipeline, hal yang terakhir dilakukan
adalah mengkonversi Cartesian Coordinates ke Screen Coordinates.
Dalam Sistem Operasi Linux, koordinat yang dipakai antara Cartesian dan Screen sama,
yaitu Y positif ke atas.
Untuk koordinate 3D, sama dengan 2D, hanya saja ditambah 1 sumbu yaitu sumbu z
(axis­z). Ada beberapa cara untuk menggambarkan sumbu X, Y dan Z, ini. Pertama
dengan sumbu z mengarah ke atas(gambar 3).
X
Y
Z
GAMBAR 3 : KOORDINAT DENGAN Z MENGARAH KE ATAS
dan koordinat dengan koordinat y mengarak ke atas.X
Y
Z
X
Z
Y
GAMBAR 4 : KOORDINAT DENGAN Y MENGARAH KE ATAS
2. Garis
Umumnya persamaan garis lurus pada koordinat kartesius diwujudkan dalam
persamaan garis : y=m.x+b
jika dimisalkan pada dua titik(x0,y0 dan x1,y1) akan dibuat sebuah garis lurus, kita dapat
menentukan nilai “m' dan “b” dengan persamaan berikut:
y1­y0
m= ______
x1­x0
b=y1­m.x1
algoritma untuk menggambar garis pada komputer didasarkan pada dua persamaan di
atas. dimana m adalah gradien atau kemiringan garis tersebut.
1. Algoritma digital differential analyzer(DDA),
Prinsip algoritma ini adalah mengambil nilai integer terdekat dengan jalur garis
berdasarkan atas sebuah titik yang telah ditentukan sebelumnya(titik awal garis).
Algoritma pembentukan garis DDA:
1. Tentukan dua titik yang akan dihubungkan dalam pembentukan garis.
2. Tentukan salah satu titik sebagai awal(x0,y0) dan titik akhir(x1,y1).
3. Hitung dx=x1­x0, dan dy= y1­y0.4. Tentukan langkah, yaitu dengan cara jarak maksimum jumlah penambahan nilai
x maupun nilai y, dengan cara:
­Bila nilai absolut dari dx lebih besar dari absolut dy, maka langkah= absolut
dari dx.
­Bila tidak maka langkah= absolutdari dy
5. Hitung penambahan koordinat pixel yaitu x_increment=dx/langkah, dan
y_increment=dy/langkah
6. Koordinat selanjutnya (x+x_increment, y+y_increment)
7. Posisi pixel pada layar ditentukan dengan pembulatan nilai koordinat tersebut.
8. Ulangi nomor 6 dan 7 untuk menentukan posisi pixel selanjutnya,sampai x=x1
dan y=y1.
Contoh Prosedur DDA dalam pascal:
uses graph,crt;
{tambahkan pada bagian ini prosedur penginisialisasian device,
lihat pada bab 1}
procedure drawLine(xstart,ystart,xend,yend:integer);
var
step,k:integer;
dx,dy:real;
x_inc,y_inc,x,y:real;
begin
dx:=xend-xstart;
dy:=yend-ystart;
x:=xstart;
y:=ystart;
if abs(dx) > abs(dy) then
step:=round(abs(dx))
else
step:=round(abs(dy));
x_inc:=dx/step;
y_inc:=dy/step;
putPixel(round(x),round(y),30);
for k:=1 to step dobegin
x:=x+x_inc;
y:=y+y_inc;
putPixel(round(x),round(y),30);
end;
end;
begin
init;
{menggambar garis dari titik 10,10 ke 500,10}
drawLine(10,10,500,10);
readkey;
destroy;
end.
2. Algoritma garis Bressenham
Tidak seperti Algoritma DDA, Algoritma Bressenham tidak membulatkan nilai
posisi pixel setiap waktu. Algoritma Bressenham hanya menggunakan
penambahan nilai integer yang juga dapat diadaptasi untuk menggambar
lingkaran.
Berikut ini langkah langkah untuk membentuk garis menurut algoritma
Bressenham:
1. Tentukan dua titik yang akan dihubungkan
2. Tentukan salah satu titik di sebelah kiri sebagai titik awal yaitu(x0,y0) dan
titik lainnya sebagai titik akhir(x1,y1).
3. Hitung dx,dy,2dx dan 2dy­2dx.
4. Hitung parameter
p0=2dy­dx
5. Untuk setiap xk sepanjang jalur garis, dimulai dengan k=0,
­ Bila pk < 1="pk+2dy­" 1="pk+2dy­" x="x1" y="y1."> xb then
begin
x:=xb;
y:=yb;
xEnd:=xa;
end
else
begin
x:=xa;
y:=ya;
xEnd:=xb;
end;
putPixel(round(x),round(y),30);
while x < y2="R2." x="0" x="R/√2," p0="5/4­r" k="0," 1="Pk+2xk+1+1" 1="Pk+2xk+1+1­" 1="2xk+2" x="x+xcy=">=y
Contoh algoritma lingkaran midpoint
Untuk menggambarkan algoritma Bressenham dalam pembentukan suatu
lingkaran dengan titik pusat (0,0) dan radius 10, perhitungan berdasarkan pada oktan dari
kuadran pertama di mana x=0 sampai x=y. Nilai parameter dapat ditentukan dengan
P0=1­r =1­10=­9
Koordinat titk awal adalah(x,r)=(0,8).
K Pk (Xk+1,Yk+1) oktan­1
(0,8)
0 ­7 (1,8)
1 ­4 (2,8)
2 1 (3,7)
3 ­6 (4,7)
4 3 (5.6)
5 2 (6,5)
Prosedur algoritma lingkaran midpoint
Input yang digunakan pada prosedur ini adalah koordinat titik pusat dan radius
lingkaran. Posisi pixel ditentukan dengan rutin setPixel.
uses graph,crt;
{tambahkan pada bagian ini prosedur penginisialisasian device,
lihat pada bab 1}
procedure circlePlotPoints(xCenter,yCenter,x,y:integer);
begin
putPixel(xCenter+x, yCenter+y,30);
putPixel(xCenter-x, yCenter+y,30);
putPixel(xCenter+x, yCenter-y,30);putPixel(xCenter-x, yCenter-y,30);
putPixel(xCenter+y, yCenter+x,30);
putPixel(xCenter-y, yCenter+x,30);
putPixel(xCenter+y, yCenter-x,30);
putPixel(xCenter-y, yCenter-x,30);
end;
procedure circleMidPoint (xCenter,yCenter,radius:integer);
var
x,y,p:integer;
begin
x:=0;
y:=radius;
p:=1-radius;
circlePlotpoints(xCenter,yCenter,x,y);
while x<0 d2="konstan" 2="konstan" 2="1" penambahan="" dilakukan="" kecil="" sumbu="" digunakan="" bermacam="" macam="" pertama="" searah="" jam="" sepanjang="" jalur="" kuadran="" pergeseran="" slope="" alternatif="" dimulai="" seleksi="" titik="" berlawanan="" arah="" jarum="" penggeseran="" y="" ke="" unit="" step="" x="" pada="" saat="" kemiringan="" lebih="" besar="" dari="" dengan="" prosesor="" pixel="" dapat="" dihitung="" dalam="" dua="" bagian="" sekaligus="" pembentukan="" menurut="" algoritma="" circle="" midpoint="" ry="" dan="" pusat="" elips="" kemudian="" diperoleh="" hitung="" parameter="" p10="ry" 1="" 4="" rx="" 2="" tentukan="" nilai="" awal="" k="0," untuk="" setiap="" posisi="" xk="" berlaku="" sebagai="" berikut="" bila="" p1k="">< 1="p1k+2ry" 1="p1k+2ry" 1="2ry" 1="2rx">= 2rx
2
y
4. Tentukan nilai parameter pada bagian kedua menggunakan titik terakhir (x0,y0)
yang telah dihitung pada bagian pertama, sebagai berikut
P2
k+1=2ry
2
(xo+1/2)
2
+2rx
2
(yo­1)
2
­ rx
2
ry
2
5. Setiap posisi yk pada bagian kedua, dimulai dengan k=0
­ Bila p2k> 0 maka titik selanjutnya adalah (xk, yk­1)
p2k+1=p2k+2rx
2
yk+1+rx
2
­ Bila tidak, maka titik selanjutnya adalah (xk+1,yk­1) dan
p2k+1=pk+2ry
2
xk+1­2rx yk+1+ry
2
6. Tentukan titik simetris pada ketiga kuadran lainnya7. Gerakkan setiap posisi(x,y) pada garis melingkar dari elisp dengan titik
pusat(xc,yc) dan tentukan nilai koordinat
x=x+xc y=y+yc
8. Ulangi langkah untuk bagian pertama di atas, sehingga 2ry
2
x >= 2rx
2
y
Contoh algoritma elips Midpoint
Untuk menggambarkan algoritma midpoint dalam pembentukan elips dengan titik
pusat(0,0) dan mayor axis rx=6, serta minor axis ry=8, perhitungan berdasarkan pada
kuadran pertama sebagai berikut:, nilai parameter dapat ditentukan
2ry
2
x=0
2ry
2
x=2rx
2
ry
p1o= ry
2
+ rx
2
ry ­1/4 rx
2
=­215
Koordinat titik awal (x,r) =(0,8)
K Pk (Xk+1,Yk+1) oktan­1
(0,8)
0 ­215 (1,8)
1 ­23 (2,8)
2 297 (3,7)
3 241 (4,6)
4 ­108 (5.5)
5 236 (5,4)
6 ­16 (6,3)
7 600 (6,2)
8 492 (6,1)
9 456 (6,0)
Prosedur algoritma elips MidpointProsedur berikut menampilkan posisi pixel pada monitor dengan algorima
Midpoint. Input yang digunakan adalah koordinat titik pusat mayor axis, dan minor axis.
Posisi pixel ditentukan dengan rutin setPixel.
uses graph,crt;
{tambahkan pada bagian ini prosedur penginisialisasian device,
lihat pada bab 1}
procedure elipsPlotPoints(xCenter,yCenter,x,y:integer);
begin
putPixel(xCenter+x, yCenter+y,30);
putPixel(xCenter-x, yCenter+y,30);
putPixel(xCenter+x, yCenter-y,30);
putPixel(xCenter-x, yCenter-y,30);
end;
procedure elipsMidPoint(xCenter,yCenter,Rx, Ry:integer);
var
Rx2,Ry2,x,y,twoRx2,twoRy2,py,px,p:integer;
begin
Rx2:=Rx*Rx;
Ry2:=Ry*Ry;
x:=0;
y:=Ry;
twoRx2:=2*Rx2;
twoRy2:=2*Ry2;
px:=0;
py:=twoRx2*y;
elipsPlotPoints(xCenter,yCenter,x,y);
//bagian1
p:=round(Ry2-(Rx2*Ry)+(0.25*Rx2));
while px<0>0 do
begin
y:=y-1;
py:=py-twoRx2;
if p>0 then
p:=p+(Rx2-py)
else
begin
x:=x+1;
px:=px+twoRy2;
p:=p+Ry2+px-py;
end;
elipsPlotPoints(xCenter,yCenter,x,y);
end;
end;
begin
init;
elipsMidPoint(130,120,120,190);
readkey;
destroy;
end.
6. Fill area primitive
Terdapat dua dasar pendekatan untuk mengisi area pada raster system. Pertama,
menentukan overlap internal untuk scan line yang melintasi area. Metode lain yaitu
dengan memulai dari titik tertentu pada posisi di dalam polygon dan menggambar
dengan arah menyebar ke pinggir, sampai batas polygon.
1. Algoritma scan line Titik potong diurutkan dari kiri ke kanan. Posisi yang berhubungan pada
frame buffer antara sepasang titik potong diberi warna tertentu. Posisi empat
pixel sebagai titik potong antara garis batas polygon ditentukan oleh dua buah
pixel pada koordinat darri x=8 ke x=13 dan dari x=23 ke x=34
2. Algoritma boundary fill.
Metode ini bermanfaat untuk paket aplikasi grafik interaktif dimana titik
dalam dapat dengan mudah ditentukan. Prosedur boundary fill menerima inout
koordinat suatu titik(x,y), warna isi dan garis batas. Dimulai dari titik (x,y),
prosedur memeriksa posisi titik tetangga, yaitu apakah merupakan warna batas.
Bila tidak, maka titik tersebut digambar dengan warna isi. Proses ini dilanjutkan
sampai semua titik pada batas diperiksa. Prosedur berikut menampilkan metode
rekursif mengisi 4 bidang dengan intensitas pada parameter fill.
procedure boundaryFil( x,y,fill,boundary:integer);
var
current:integer;
begin
current:= getPixel(x,y);
if (current <> boundary) and (current <> fill) then
begin
putPixel(x,y,fill);
boundaryFill(x+1,y,fill,boundary);
boundaryFill(x-1,y,fill,boundary);
boundaryFill(x,y+1,fill,boundary);
boundaryFill(x,y-1,fill,boundary);
end;
end;
3. Algoritma flood fill
Pendekatan lain untuk mengisi suatu bidang polygon adalah algorima
flood fill. Metode ini dimulai pada titik (x,y) dan mendefinisikan seluruh pixel
pada bidang tersebut dengan warna yang sama. Bila bidang yang akan diisi warna memiliki beberapa warna. Pertama tama yang dibuata adalah membuat
nilai pixel baru, sehingga smua pixel memiliki warna yang sama. Prosedur
berikut menggambarkan metode flood­fill untuk mengisi warna suatu polygon.
procedure floodFill( x,y,fillColor,oldColor:integer);
begin
if getPixel(x,y) = oldcolor then
begin
putPixel(x,y,fillcolor);
floodFill(x+1,y , fillColor, oldColor);
floodFill(x-1,y , fillColor, oldColor);
floodFill(x,y+1 , fillColor, oldColor);
floodFill(x,y-1 , fillColor, oldColor);
end;
end;BAB III
Transformasi Dua Dimensi
1 Transformasi Dasar
a. Translasi
Translasi dilakukan dengan penambahan translasi pada suatu titik koordinat dengan
translation vector atau shift vector, yaitu(tx, ty). Koordinat baru titik yang ditranslasi
dapat diperoleh dengan menggunakan rumus
x’ = x +tx
y’ = y+ty
translasi adalah transfomasi dengan bentuk yang tetap memindahkan objek apa adanya.
Titik yang akan ditranslasi akan dipindahkan ke lokasi lain menurut garis lurus.
Contoh Translasi
Untuk menggambarkan translasi suatu objek yang berupa segitiga dengan koordinat
A(10,10), B(30,10), dan C(10,30) dengan translation vector (10,20), pertama tama
dihitung koordinat hasil translasi
Titik A
x’A = xA + tx = 10+10 = 20
y’A = yA + ty = 10+20 = 30
Hasil translasi titik A’(20,30)
Titik B
x’B = xB + tx = 30+10 = 40
y’B = yB + ty = 10+20 = 30
Hasil translasi titik B’(40,30)
Titik C
x’C = xC + tx = 10+10 = 20y’C = yC + ty = 30+20 = 50
Hasil translasi titik C’(20,50)
Dengan demikian hasil translasi segitiga dengan koordinat A’(20,30) B’(40,30)
C’(20,50). Segitiga yang baru sama bentuknya dengan segitiga yang lama.
Contoh Program translasi garis (10,10,500,10) dengan vector translasi 20,10
uses graph,crt;
var
x0,y0,x1,y1:integer;
{tambahkan pada bagian ini prosedur penginisialisasian device, lihat
pada bab 1}
procedure drawLine(xstart,ystart,xend,yend:integer);
var
step,k:integer;
dx,dy:real;
x_inc,y_inc,x,y:real;
begin
dx:=xend-xstart;
dy:=yend-ystart;
x:=xstart;
y:=ystart;
if abs(dx) > abs(dy) then
step:=round(abs(dx))
else
step:=round(abs(dy));
x_inc:=dx/step;
y_inc:=dy/step;
putPixel(round(x),round(y),30);
for k:=1 to step do
begin
x:=x+x_inc;
y:=y+y_inc;
putPixel(round(x),round(y),30);
end;
end;procedure transLine(xstart,ystart,xend,yend,xtrans,ytrans:integer; var
xstartout,ystartout,xendout,yendout:integer);
begin
xstartout:=xstart+xtrans;
ystartout:=ystart+ytrans;
xendout:=xend+xtrans;
yendout:=yend+ytrans;
end;
begin
init;
{menggambar garis dari titik 10,10 ke 500,10}
drawLine(10,10,500,10);
transLine(10,10,500,10,20,10,x0,y0,x1,y1);
drawLine(x0,y0,x1,y1);
readkey;
destroy;
end.
Penskalaan
Transformasi skala adalah perubahan ukuran suatu objek. Koordinat baru diperoleh
dengan melakukan perkalian koordinat dengan ascling factor, yaitu(sx,sy) dimana sx
adalh scaling facor untuk sumbu x dam sy adalah scaling factor untuk sumbu y. koordinat
baru titik yang diskala dapat diperoleh dengan
x’ = x.sx
y’= y.sy
scaling factor sx dan sy dapat diberikan sembarang nilai positif. Nilai lebih dari 1
menandakan bahwa sebuah objek diperbesar sedang nilai nilai kurang dari 1
menunjukkan bahwa objek diperkecil.
Contoh penskalaan
Untuk menggambarkan skala suatu objek yang merupakan segiempat dengan
koordinat A(10,10), B(30,10), C(30,20), D(10,20) diskala dengan scaling factor(3,2), pertama tama dihitung koordinat hasil skala satu demi satu, pertama tama dihitung
koordinat hasil skala satu demi satu
Titik A
x’A = xA.sx= 10* 3 =30
y’A = yA.sy=10 * 2=20
Hasil skala titik A’(30,20)
Titik B
x’B = xB.sx= 30* 3 =90
y’B = yB.sy=10 * 2=20
Hasil skala titik B’(90,20)
Titik C
x’C = xC.sx= 30* 3 =90
y’C = yC.sy=20 * 2=40
Hasil skala titik C’(90,40)
Titik D
x’D = xD.sx= 10* 3 =30
y’D = yD.sy=20 * 2=40
Hasil skala titik D’(30,40)
Skala dengan fixed point
Lokasi skala suatu objek dapat dikontrol dengan menentukan titik tertentu
yang disebut fixed point(xf,yf). Koordinat fixed point dapat dapat pada
sembarang posisi. Poligon kemudian diskala relative terhadap fixed point dengan
melakukan skala jarak dari tiap titik terhadap fixed point.Untuk titik dengan
koordinat (x,y) diperoleh(x’,y’) sebagai skala
x’=xf+(x­xf)sx
y’=yf+(y­yf)syContoh Program penskalaan garis (10,10,50,10) dengan skala 2
uses graph,crt;
var
x0,y0,x1,y1:integer;
{tambahkan pada bagian ini prosedur penginisialisasian device,
lihat pada bab 1}
procedure drawLine(xstart,ystart,xend,yend:integer);
var
step,k:integer;
dx,dy:real;
x_inc,y_inc,x,y:real;
begin
dx:=xend-xstart;
dy:=yend-ystart;
x:=xstart;
y:=ystart;
if abs(dx) > abs(dy) then
step:=round(abs(dx))
else
step:=round(abs(dy));
x_inc:=dx/step;
y_inc:=dy/step;
putPixel(round(x),round(y),30);
for k:=1 to step do
begin
x:=x+x_inc;
y:=y+y_inc;
putPixel(round(x),round(y),30);
end;
end;
procedure scaleLine(xstart,ystart,xend,yend,scale:integer; var
xstartout,ystartout,xendout,yendout:integer);
begin
xstartout:=xstart*scale;
ystartout:=ystart*scale;
xendout:=xend*scale;
yendout:=yend*scale;
end;begin
init;
drawLine(10,10,50,10);
scaleLine(10,10,50,10,2,x0,y0,x1,y1);
drawLine(x0,y0,x1,y1);
readkey;
destroy;
end.
Rotasi
Rotasi dua dimensi memindahkan sebuah objek menurut garis melingkar. Untuk
melakukan rotasi diperlukan sudut rotasi a’ dan pivot point(xp,yp). Nilai positif dari
sudut rotasi menentukan arah rotasi berlawanana dengan arah jarum jam. Sedangkan
sudut rotasi negative memutar objek searah dengan jarum jam.
Rumus transformasi untuk rotasi suatu titik(x,y) dengan sudut rotasi a sebagai
berikut:
x’= x cos a­y sin a
y’= y sina+y cos a
Contoh Rotasi
Untuk menggambarkan rotasi suatu objek yang berupa segitiga dengan koordinat
A(10,10), B(30,10), dan C(10,30) dengan sudut rotasi 30’ terhadap titik pusat koordinat
Cartesian (10,10), dilakukan dengan menghitung koordinat hasil rotasi tiap titik satu demi
satu.
Titik A
x’A = xp+(xA­xp) cos 30’ – (yA­yp)sin 30’
=10+(10­10)* 0.9 –(10­10) *0.5=10
y’A = yp+(xA­xp) sin 30’ – (yA­yp)cos 30’
=10+(10­10)*0.5 +(10­10)*0.9=10
Hasil rotasi titik A’(10,10)Titik B
x’B = xp+(xB­xp) cos 30’ – (yB­yp)sin 30’
=10+(30­10)* 0.9 –(10­10) *0.5=28
y’B = yp+(xB­xp) sin 30’ – (yB­yp)cos 30’
=10+(30­10)*0.5 +(10­10)*0.9=20
Hasil rotasi titik A’(28,20)
Titik C
x’C = xp+(xC­xp) cos 30’ – (yC­yp)sin 30’
=10+(10­10)* 0.9 –(30­10) *0.5=0
y’C = yp+(xC­xp) sin 30’ – (yC­yp)cos 30’
=10+(10­10)*0.5 +(30­10)*0.9=28
Hasil rotasi titik A’(0,28)
contoh program merotasi garis dengan pusat rotasi 40,50 dan sudut rotasi 180'
uses graph,crt;
var
x0,y0,x1,y1:integer;
{tambahkan pada bagian ini prosedur penginisialisasian device, lihat
pada bab 1}
procedure drawLine(xstart,ystart,xend,yend:integer);
var
step,k:integer;
dx,dy:real;
x_inc,y_inc,x,y:real;
begin
dx:=xend-xstart;
dy:=yend-ystart;
x:=xstart;
y:=ystart;
if abs(dx) > abs(dy) then
step:=round(abs(dx))
else
step:=round(abs(dy));x_inc:=dx/step;
y_inc:=dy/step;
putPixel(round(x),round(y),30);
for k:=1 to step do
begin
x:=x+x_inc;
y:=y+y_inc;
putPixel(round(x),round(y),30);
end;
end;
procedure
rotateLine(xstart,ystart,xend,yend,xcenter,ycenter:integer;angle:real;
var xstartout,ystartout,xendout,yendout:integer);
begin
xstartout:=round((xcenter+((xstart-xcenter)*cos(angle)))-((ystart-
ycenter)*sin(angle)));
ystartout:=round((ycenter+((xstart-xcenter)*sin(angle)))-((ystart-
ycenter)*cos(angle)));
xendout:=round((xcenter+((xend-xcenter)*cos(angle)))-((yend-
ycenter)*sin(angle)));
yendout:=round((ycenter+((xend-xcenter)*sin(angle)))-((yend-
ycenter)*cos(angle)));
end;
begin
init;
drawLine(10,10,50,10);
rotateLine(10,10,50,10,40,50,180,x0,y0,x1,y1);
drawLine(x0,y0,x1,y1);
readkey;
destroy;
end.
Refleksi
Refleksi adalah transfomasi membuat mirror dari suatu objek. Objek hasil
refleksi dibuat relatif terhadap sumbu dari refleksi dengan memutar 180' terhadap sumbu
refleksi. Sumbu refleksi dapat dipilih pada bidang xy. Jenis jenis refleksi ada berbagai macam tetapi algoritma yang digunakan semua sama tinggal mengubah matriks
transfomasinya saja.
Contoh refleksi terhadap sumbu y=0.
uses graph,crt;
var
x0,y0,x1,y1:integer;
result: array [1..1,1..3] of integer;
matTrans:array [1..3,1..3] of integer;
before: array [1..3,1..3] of integer;
{tambahkan pada bagian ini prosedur penginisialisasian device, lihat
pada bab 1}
procedure drawLine(xstart,ystart,xend,yend:integer);
var
step,k:integer;
dx,dy:real;
x_inc,y_inc,x,y:real;
begin
dx:=xend-xstart;
dy:=yend-ystart;
x:=xstart;
y:=ystart;
if abs(dx) > abs(dy) then
step:=round(abs(dx))
else
step:=round(abs(dy));
x_inc:=dx/step;
y_inc:=dy/step;
putPixel(round(x),round(y),30);
for k:=1 to step do
begin
x:=x+x_inc;
y:=y+y_inc;
putPixel(round(x),round(y),30);
end;
end;
procedure initMatrix;var
i,j:integer;
begin
for i:=1 to 3 do
for j:=1 to 3 do
begin
if i=j then
matTrans[i,j]:=1
else
matTrans[i,j]:=0;
end;
matTrans[3,3]:=-1;
end;
procedure calculateMatrix(xstart,ystart:integer; var
xstartout,ystartout:integer);
var
i,j,k,jumlah:integer;
begin
initMatrix;
before[1,1]:=xstart;
before[1,2]:=ystart;
before[1,3]:=1;
for i:=1 to 3 do
for j:=1 to 3 do
begin
jumlah:=0;
for k:=1 to 3 do
begin
result[i,j]:=jumlah+(matTrans[i,k]*before[k,j]);
end;
end;
xstartout:=result[1,1];
ystartout:=result[1,2];
end;
procedure reflectLine(xstart,ystart,xend,yend:integer; var
xstartout,ystartout,xendout,yendout:integer);begin
calculateMatrix(xstart,ystart,xstartout,ystartout);
calculateMatrix(xend,yend,xendout,yendout);
end;
begin
init;
{menggambar garis dari titik 10,10 ke 500,10}
drawLine(10,10,500,10);
reflectLine(10,10,500,10,x0,y0,x1,y1);
drawLine(x0,y0,x1,y1);
readkey;
destroy;
end.BAB IV
Clipping Titik dan Garis
Clipping adalah pendefinisan gambar di dalam maupun di luar suatu bidang
tertentu. Clipping dapat diaplikasikan pada world coordinate, sehingga hanya isi yang
berada dalam window dipetakan ke device coordinate. Cara lain, world coordinate
lengkap dapat dipetakan ke device coordinate lebih dahulu, kemudian di clip pada batas
viewport.
1. Clipping titik
Pada clip window yang berbentuk segi empat, titik )x,y) akan ditampilkan bila
xwmin <= x <=xwmax ywmin <= y <=ywmax dimana batas clip window(xwmin,xwmax,ywmin,ywmax) dapat berada di dalam batas world coordinate atau viewport coordinate. Bila salah satu tidak terpenuhi maka titik tersebut tidak akan diclip. Contoh Algoritma Clipping titik uses graph,crt; var x,y,xmin,ymin,xmax,ymax:integer; jawab:char; {tambahkan pada bagian ini prosedur penginisialisasian device, lihat pada bab 1} procedure clipPoint(x,y,xmin,ymin,xmax,ymax:integer); begin if (x>=xmin) and (x<=xmax) and (y>=ymin) and (y<=ymax) then begin init; putPixel(x,y,30); readkey; destroy; endelse writeln('Point is not visible'); end; begin jawab:='n'; while jawab = 'n' do begin writeln('enter the coordinates of clipping window '); writeln('enter x(min) y(min)'); read(xmin); readln(ymin); writeln('enter x(max) y(max)'); read(xmax); readln(ymax); writeln('enter the coordinates of point x y'); read(x); readln(y); clipPoint(x,y,xmin,ymin,xmax,ymax); writeln('do yo want to exit (y/n)'); readln(jawab); end end. 2. Clipping Garis Gambar di atas memprlihatkan hubungan antara posisi garis dengan viewport. Bagian bagian garis yang berada di luar viewport tidak akan ditampilkan. Berikut ini algoritma clipping garis yang palibg sering digunakan: 1. Periksa segmen garis untuk menentukan sepenuhnya berada di dalam clip window. 2. Bila tidak, maka dicoba untuk menentukan apakah sepenuhnya di luar window. 3. Bila tidak dapat mengidentifikasi sepenuhnya di dalam, ataupun di luar window, maka dilakukan perhitungan perpotongan dengan satu atau lebih batas clipping. Clipping garis Cohen­SutherlandAlgoritma Cohen­Sutherland merupakan algoritma yang paling populer. Biasanya metode ini mempercepat pemrosesan segmen garis dengan mengurangi jumlah perpotongan yang harus dihitung. Setiap endpoint dari garis dalam suatu gambar dinyatakan dalam 4 digit kode biner yang disebut region code, yang mengidentifikasikan lokasi dari titik relatif terhadap batas clipping yang berbentuk segi empat. Contoh Prosedur Clipping garis Cohen­Sutherland uses graph,crt; var pixels:array[0..1,0..3] of integer; x1,y1,x2,y2,xmin,ymin,xmax,ymax:integer; xn1,xn2,yn1,yn2,m:real; jawab:char; {tambahkan pada bagian ini prosedur penginisialisasian device, lihat pada bab 1} procedure DrawBressLine(xa,ya,xb,yb:integer); var dx,p,dy,xEnd:integer; x,y:real; begin dx:= abs(xb-xa); dy:= abs(yb-ya); p:=2*dy-dx; if xa > xb then
begin
x:=xb;
y:=yb;
xEnd:=xa;
end
else
begin
x:=xa;
y:=ya;
xEnd:=xb;
end;putPixel(round(x),round(y),30);
while x <> ymax then
pixels[0,0]:=1;
if y1xmax then
pixels[0,2]:=1;
if x1ymax then
pixels[1,0]:=1;
if y2xmax then
pixels[1,2]:=1;
if x2 xb then
begin
x:=xb;
y:=yb;
xEnd:=xa;
end
else
begin
x:=xa;
y:=ya;
xEnd:=xb;
end;
putPixel(round(x),round(y),30);
while x <> 0 then
begin
if q < (tL * d ) then clipt:= false; if q < (tU * d ) then tU := q / d; end else if q <> 0 then
begin
x1 := x1+(tL * dx);
y1 := y1+(tL * dy);
end;
DrawBressLine(round(x1),round(y1),round(x2),round(y2));
end;
end;
end;
end;
end;
begin
jawab:='n';
while jawab = 'n' do
begin
writeln('enter the coordinates of clipping window ');
writeln('enter x(min) y(min)');
read(xmin);
readln(ymin);
writeln('enter x(max) y(max)');
read(xmax);
readln(ymax);
writeln('enter the coordinates of line');
writeln('enter X1 Y1');
read(x1);
readln(y1);
writeln('enter X2 Y2');
read(x2);
readln(y2);init;
DrawBressLine(round(x1),round(y1),round(x2),round(y2));
readkey;
destroy;
init;
liang_barsky_line(x1,y1,x2,y2);
readkey;
destroy;
writeln('do yo want to exit (y/n)');
readln(jawab);
end;


Read More......

Perbedaan antara RPL dengan Computer Science. . .?

Intinya, computer science berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak, sedangkan RPL berhubungan dengan praktek dalam memproduksi perangkat lunak.
Perbedaan RPL dengan Rekayasa Sistem ?
Rekayasa sistem berkaitan dengan semua aspek dalam pembangunan sistem berbasis komputer termasuk hardware, rekayasa PL dan proses. RPL adalah bagian dari rekayasa sistem yang meliputi pembangunan PL, infrasktruktur, kontrol, aplikasi dan database pada sistem.

Model atau paradigma umum pada proses PL
1. Model air terjun (waterfall) Mengambil kegiatan dasar seperti spesifikasi, pengembangan, validasi, dan evolusi dan merepresentasikannya sebagai fase-fase proses yang berbeda seperti spesifikasi persyaratan, perancangan perangkat lunak, implementasi, pengujian dan seterusnya.
2. Pengembangan evolusioner Pendekatan ini berhimpitan dengan kegiatan spesifikasi, pengembangan, dan validasi. Sistem awal dikembangkan dengan cepat dari spesifikasi abstrak. Sistem ini kemudian di perbaiki dengan masukan dari pelanggan untuk menghasilkan sistem yang memuaskan kebutuhan pelanggan.
3. Pengembangan Sistem Formal Pendekatan ini menghasilkan suatu sistem matematis yang formal dan mentransformasikan spesifikasi ini, dengan menggunakan metode matematik menjadi sebuah program.
4. Pengembangan berdasarkan pemakaian ulang (Reusable)  Teknik ini menganggap bahwa bagian-bagian sistem sudah ada. Proses pengembangan sistem terfokus pada pengintegrasian bagian-bagian sistem dan bukan pengembangannya dari awal.
Biaya Rekayasa Perangkat Lunak
• Umumnya sekitar 60% untuk biaya pengembangan (development) dan 40% biaya pengujian (testing).
• Distribusi biaya yang tepat selama proses perangkat lunak bergantung pada proses yang digunakan dan jenis perangkat lunak yang dikembangkan.
Metode-metode RPL
Pendekatan-pendekatan terstruktur terhadap pengembangan perangkat lunak mencakup model, notasi, aturan, saran pengembangan sistem (rekomendasi), dan panduan proses.
• Deskripsi model sistem Deskripsi model yang harus dikembangkan dan notasi yang digunakan untuk mendefinisikan model-model ini. Ex : model aliran data.
• Aturan Batasan yang berlaku bagi model sistem. Ex : Setiap entitas pada model sistem harus memiliki nama yang unik.
• Rekomendasi Saran dalam membentuk perancangan yang baik. Ex : Tidak ada objek yang memiliki lebih dari tujuh sub-objek yang berhubungan dengannya.
• Panduan Proses Aktifitas yang bisa diikuti untuk mengembangkan model sistem. Ex : Atribut objek harus didokumentasi sebelum mendefinisikan operasi yang berhubungan dengan objek.
CASE (Computer-Aided Software Engineering)
Mencakup berbagai macam program yang digunakan untuk mendukung kegiatan PL seperti analisis persyaratan, pemodelan sistem, debugging, dan pengujian.
Atribut-atribut PL yang baik
Perangkat Lunak seharusnya memberikan user kebutuhan fungsionalitas dan kinerja yang :
• Dapat dipelihara (Maintanability) PL harus dapat memenuhi perubahan kebutuhan user.
• Dapat diandalkan (Dependability) PL harus dapat dipercaya dan tidak menyebabkan kerusakan fisik atau ekonomi jika terjadi kegagalan sistem.
• Efisien PL harus efisien dalam penggunaan sumber daya sistem.
• Kemampupakaian (Usability) PL harus dapat dipakai sesuai dengan yang direncanakan
Tantangan Kunci yang dihadapi RPL ?
• Tantangan Warisan (Legacy) Tantangan memelihara dan meng-update PL sedemikian sehingga biaya yg berlebihan dapat dihindari dan layanan bisnis yg penting tetap dilakukan.
• Tantangan Heterogenitas Tantangan teknik pengembangan untuk membangun perangkat lunak yang dapat diandalkan dan cukup flexibel untuk menghadapi heterogenitas yang ada.
• Tantangan Pengiriman Tantangan mempersingkat waktu kirim sistem besar dan kompleks, tanpa mengurangi kualitas sistem.











Rekayasa Perangkat Lunak
1. Perbedaan Software Proses dan software produk
Software Proses
Software proses ialah kegiatan didalam rekayasa perangkat lunak mengembangkan perangkat lunak. Proses perangkat lunak dapat digambarkan sebagai berikut :

Keterangan proses perangkat lunak :
o Kerangka kerja proses umum, di bangun dengan mendefinisikan sejumlah aktifitas kerangka kerja yang bisa diterapkan ke semua proyek perangkat lunak, tanpa melihat ukuran atau kompleksitasnya.
o Sejumlah tugas “Task Sets”, masing-masing berisi kumpulan pekerjaan rekayasa perangkat lunak, kejadian penting , produk perangkat lunak serta point jaminan kualitas. Dengan adanya task set ini, memungkinkan aktifitas framework diadaptasikan dengan karakteristik proyek software dan kebutuhan tim pelaksana
o Aktifitas pendukung yang meliputi : jaminan kualitas perangkat lunak, manajemen konfigurasi perangkat lunak. Aktifitas pendukung tidak tergantung pada aktivitas kerangka kerja dan terjadi pada seluruh proses.


Model Proses Perangkat Lunak
Model proses perangkat lunak digunakan untuk menyelesaikan masalah aktual di dalam sebuah industri dimana pengembang perangkat lunak harus menggabungkan strategi pengembangan yang meliputi : lapisan proses, metode serta alat bantu yang digambarkan dalam setiap fasenya. Model proses untuk rekayasa perangkat lunak, dipilih berdasarkan sifat aplikasi, proyek perangkat lunak, metode, alat bantu yang akan dipakai, kontrol serta penyampaian yang dibutuhkan.

Macam model proses perangkat lunak, yaitu :
1. Model Sekuensial Linier


Model sekuensial linier, sering kali “Classic Life Cycle” atau “Waterfall model”. Pendekatan pengembangan perangkat lunak dimulai pada level sistem dan prosesnya melalui: Analysis, Design, Coding, Testing

2. Model prototyping

Model protyping dikembangkan karena sering terjadi customer menjabarkan objektif umum mengenai perangkat lunak yang diminta, tetapi tidak dapat mendefinisikan input, proses, output yang diminta secara detail. Disisi lain, developer menjadi tidak yakin terhadap efisiensi algoritma, kemampuan adaptasi terhadap sistem operasi, atau bentuk interaksi mesin dengan orang. Untuk mengatasi situasi tersebut, bisa digunakan pendekatan dalam prototyping paradigma


3. Model RAD

Rapid Application Development (RAD) merupakan model proses pengembangan perangkat lunak yang linier sequencial dengan menggunakan siklus pengembangan yang singkat. Model RAD merupakan adaptasi “High-speed” dari model linier sequencial yang pengembangannya dilakukan dengan menggunakan pendekatan komponen-based. Proses RAD memungkinkan untuk membuat “fully functional System” dalam waktu yang sangat singkat (60 – 90 hari).


Software Produk
Rekayasa produk perangkat lunak adalah suatu kegiatan yang tetap dalam proses rekayasa yang mengintegrasikan semua aktivitas rekayasa perangkat lunak untuk menghasilkan produk yang tepat, efektif dan efisien.

Tujuan dari rekayasa produk perangkat lunak yaitu :
* Dapat mendifinisikan, mengintegrasikan kegiatan rekayasa perangkat lunak untuk menghasilkan perangkat lunak
*Menjaga konsistensi kinerja dari kegiatan rekayasa perangkat lunak

Ruang lingkup kegiatan dari rekayasa produk perangkat lunak yaitu :
* kegiatan rekayasa untuk membangun perangkat lunak (software requirement, software design, software code, software testing) sesuai dengan proses yang telah ditetapkan dalam proyek perangkat lunak,
* kegiatan pemeliharaan perangkat lunak

Dokumentasi diperlukan untuk kegiatan rekayasa perangkat lunak mis. Software requirement doc, software design doc, test plan, test prosedure. Dokumen yang ada dibuat dan di review untuk memastikan bahwa setiap tugas yang ada diperoleh dari tugas yang sebelumnya dan dipergunakan untuk tugas selanjutnya. Ketika ada perubahan yang disepakati, seolah-olah kinerja produk perangkat lunak, rencana, komitmen, proses dan aktivitas diperbaiki untuk dipergunakan sebagai acuan untuk persetujuan perubahan

Kegiatan Rekayasa Produk Perangkat Lunak :
Kegiatan Rekayasa Perangkat Lunak dapat dikategorikan dalam 3 fase umum tanpa memandang area aplikasi, ukuran proyek atau kompleksitas. Fase tersebut yaitu:
1. Definition Phase
Merupakan fase awal dari proses pengerjaan perangkat lunak. Pada fase ini, pengembang perangkat lunak melakukan kegiatan identifikasi yang meliputi : informasi apa saja yang harus diproses, fungsi dan kinerja yang digunakan, tingkah laku sistem yang diharapkan, interface yang harus dibuat, kendala desain yang ada, serta kriteria validasi yang diperlukan untuk mendefinisikan keberhasilan sistem

2. Development Phase
Pada fase ini menerjemahkan keperluan yang telah dianalisis ke dalam bahasa pemrograman yang telah ditentukan. Kegiatan yang dilakukan adalah mendefinisikan bagaimana : data disusun, fungsi bisa diimplementasikan sesuai dengan arsitektur software, detik prosedur untuk implemetasi, karakter interface, hasil desain bisa ditranslasikan ke bahasa pemrograman dan cara pengujiannya.
Ada tiga aktivftas teknis yang selalu terjadi:
• Desain software
• Pembuatan Program
• Pengujian Software

3. Maintenance Phase
Pada fase ini, PL telah selesai dan kegiatan difokuskan pada perubahan yang berkaitan dengan adanya koreksi kesalahan, adaptasi dan pengembangan yang dikehendaki user. Ada 4 tipe perubahan:
• Correction, yaitu : mengubah perangkat lunak untuk memperbaiki kesalahan-kesalahan yang ada.
• Adaption, yaitu : modifikasi yang dilakukan terhadap perangkat lunak dikarenakan adanya perubahan lingkungan eksternal (misal: CPU, sistem operasi, aturan bisnis, karakter produk eksternal).
• Enhancement, yaitu : saat perangkat lunak dipakai, user meminta tambahan-tambahan fungsi. Sehingga software dikembangkan dari kebutuhan semula. Prevention / sering disebut software re-enginering, yaitu: harus dilakukan untuk memungkinkan perangkat lunak bisa sesuai dengan keinginan end user. Pada fase ini dilakukan perubahan-perubahan ke program komputer, sehingga program tersebut bisa dikoreksi, beradaptasi dan dikembangkan dengan mudah


2. Cara Menilai sebuah software
Pengukuran Kualitas Software:
1. Product (Diukur Berdasarkan Factor dan Criteria Produk)
* Taxonomy McCall
* ISO 9126
2. Process (Diukur dari Kematangan Development Process)
* CMM, SPICE, BOOTSTRAP
* ISO 9001


Mengukur Development Process [Capability Maturity Model (CMM), SEI]
1. Level 1 – Initial , tanpa prosedur dan planning, tidak konsisten
2. Level 2 – Repeatable, ada manajemen, jaminan kualitas, prosedur, individual performance tanpa model formal
3. Level 3 – Defined, proses terdefinisi, dan mengarah ke perbaikan proses secara kualitatif
4. Level 4 – Managed, perbaikan dan prediksi proses secara kuantitatif
5. Level 5 – Optimizing, memperbaiki proses secara berkesinambungan, inovatif, direncanakan, dianggarkan dan integral dalamproses organisasi


3. Kegiatan Perawatan Perangkat lunak
kegiatan difokuskan pada perubahan yang berkaitan dengan adanya koreksi kesalahan, adaptasi dan pengembangan yang dikehendaki user.



4. Cara Menetapkan harga perangkat lunak
Untuk menetapkan harga perangkat lunak dapat memperhatikan :
* kompleksitas perangkat lunak
* bahasa pemrograman yang dipergunakan
* lama pengerjaan perangkat lunak
* jaminan kualitas perangkat lunak
* Supporting yang diberikan oleh pengembang perangkat lunak



Read More......

REKAYASA PERANGKAT LUNAK

• adalah suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh aspek produksi perangkat lunak.
• mengadopsi pendekatan yang sistematis dan terorganisir terhadap pekerjaannya dan menggunakan tool yang sesuai serta teknik yang ditentukan berdasarkan masalah yang akan dipecahkan, kendala pengembangan dan sumber daya yang tersedia



Proses Perangkat Lunak
• Suatu proses model adalah suatu representasi abstrak suatu model yang menampilkan suatu deskripsi suatu proses dari beberapa perspektif tertentu,
• Merupakan aktifitas yang saling terkait (koheren) untuk menspesifikasikan, merancang, implementasi dan pengujian sistem perangkat lunak.
• Sekumpulan aktifitas yang memiliki tujuan untuk pengembangan ataupun evolusi perangkat lunak :
o Aktifitas generic dalam semua proses perangkat lunak adalah:
o Spesifikasi – apa yang harus dilakukan oleh perangkat lunak dan batasan/kendala pengembangannya
o Pengembangan – proses memproduksi sistem perangkat lunak
o Validasi – pengujian perangkat lunak terhadap keinginan penggunak
o Evolusi – perubahan perangkat lunak berdasarkan perubahan keinginan.

Model Proses Perangkat Lunak
Suatu representasi proses perangkat lunak yang disederhanakan, dipresentasikan dar perspektif khusus, Contoh perspektif proses :
• Perspektif Alur-kerja (workflow) - barisan kegiatan
• Perspektif Alur Data (Data flow) – alur informasi
• Perspektif Peran/Aksi – siapa melakukan apa.

Biaya rekayasa perangkat lunak
• Sekitar 60% untuk biaya pengembangan, 40% biaya pengujian. Untuk perangkat lunak berbasis pengguna (custom), biaya evolusi biasanya melebihi biaya pengembangan.
• Biaya beragam tergantung pada tipe sistem yang akan dikembangkan dan kebutuhan sistem seperti unjuk kerja dan kehandalan sistem,
• Distribusi biaya bergantung pada model pengembangan yang digunakan.

Metode Rekayasa Perangkat Lunak
Pendekatan terstruktur pengembangan termasuk model sistem, notasi, perancangan dan petunjuk pemrosesan,
• Deskripsi Model: deskripsi pemodelan dengan grafik,
• Aturan: Batasan yang digunakan pada model sistem
• Rekomendasi: nasihat bentuk perancangan yang baik,
• Petunjuk proses: Aktifitas yang harus diikuti,

Atribut Perangkat Lunak yang baik :
• seharusnya memberikan pengguna kebutuhan fungsionalitas dan unjuk kerja yang dapat di rawat, berguna, Maintanability (Dapat Dirawat)
• harus dapat memenuhi perubahan kebutuhan, Dependability
• harus dapat dipercaya, Efisien
• harus efisien dalam penggunaan resource, Usability
• harus dapat digunakan sesuai dengan yang direncanakan

Spesifikasi Perangkat Lunak

Proses untuk menentukan pelayanan (servis) apa yang dibutuhkan dan kendala-kendala pengoperasian sistem serta pengembangannya,
• Proses Rekayasa Kebutuhan
o Studi Kelayakan
o Analisis kebutuhan
o Spesifikasi Kebutuhan
o Validasi spesifikasi

• Perancangan dan Implementasi Perangkat Lunak
o Proses konversi sistem spesifikasi ke sistem yang dapat dieksekusi langsung
o Perancangan Perangkat Lunak
o Perancangan Struktur Perangkat Lunak
o Implementasi
o Translasi struktur ke dalam bentuk program
o Aktifitas perancangan dan implementasi dapat saling berinteraksi
• Aktifitas dalam Perancangan:
o Perancangan Arsitektur
o Spesifikasi Abstrak
o Perancangan Interface
o Perancangan Komponen
o Perancangan Struktur Data
o Perancangan Algoritma

Proses Perancangan Perangkat Lunak

• Metode Perancangan
o Pendekatan sistematis untuk merancang perangkat lunak
o Perancangan biasanya didokumentasikan dengan model grafik
o Beberapa model yang dapat digunakan:
 Data Flow Model
 Model relasi atribut entitas
 Model terstruktur
 Model Object
• Pemrograman dan Debug
o Translasi perancangan ke dalam pemrograman dan menghilangkan error dari program
o Pemrograman adalah aktifitas personal – tidak terdapat model program generic
o Pemrogram melakukan beberapa program testing untuk menemukan fault dalam program dan menghilangkan fault tersebut dalam proses debug.
• Validasi Perangkat Lunak
o Verifikasi dan validasi bertujuan menunjukkan bahwa sistem sesuai dengan spesifikasinya dan yang diinginkan pengguna
o Melibatkan proses pengujian dan review sistem
o Pengujian sistem melibatkan eksekusi sistem dengan menggunakan kasus tes yang ditentukan dari spesifikasi data real yang akan diproses oleh sistem.
• Stage Pengujian Perangkat Lunak
o Unit Testing: Pengujian Komponen-komponen secara individu
o Modul Testing: Pengujian terhadap komponen yang saling berhubungan,
o Sub-system Testing: Pengujian terhadap module-module sistem yang saling berhubungan. Fokus pada pengujian interface.
o System Testing: Pengujian keseluruhan sistem,
o Acceptance Testing: Pengujian yang dilakukan oleh pengguna untuk melihat apakah sistem sudah dapat diterima.

• Evolusi Sistem
o Perangkat lunak pada dasarnya sangat fleksibel dan mudah berubah
o Karena adanya perubahan kebutuhan melalui perubahan proses bisnis dan teknologi, maka perangkat lunak yang mendukung kegiatan bisnis tersebut juga mengalamai perubahan
o Walaupun demikian diharapkan perubahan proses bisnis tersebut berdampak pada perubahan yang sedikit terhadap perangkat lunak (re-engineering).

Model Pengembangan system
• Model Air Terjun (Water Fall)
• Fase Model Air Terjun
o Analisis Kebutuhan dan pendefinisiannya
o Perancangan sistem dan Perangkat Lunak
o Implementasi dan unit testing
o Integrasi dan pengujian sistem
o Pengoperasian dan perawatan
• Proses kembali ke state sebelumnya untuk mengantisipasi perubahan setelah proses menuju ke suatu state di bawahnya adalah sangat sulit.
• Masalah pada Model Air Terjun :
o Partisi projek ke stages yang berbeda tidak fleksibel.
o Hali ini mengakibatkan sulitnya untuk merespon perubahan kebutuhan pengguna
o Oleh sebab itu model ini hanya cocok digunakan apabila kebutuhan pengguna sudah dimengerti dengan baik,
• Model Pengembangan yang berevolusi (Evolutionary Development)
• Pengembangan yang berdasarkan penyidikan, tujuannya untuk mengaktifkan pengguna dan memperolah model final berasal dari initial spesifikasi awal. Seharusnya diawali dengan kebutuhan yang sudah dimengerti,
• Throw-away prototyping, tujuannya adalah untuk memahami kebutuhan sistem. Biasanya diawali dengan pemahaman kebutuhan yang minim.
• Permasalahan dalam model pengembangan yang berevolusi:
o Kekurangan visibilitas proses
o Model sistem biasanya tidak terstruktur
o Membutuhkan kemampuan khusus (mis: bahasa pemrograman rapid prototyping).
• Pemakaian model pengembangan yang berevolusi
o Untuk sistem interaktif yang kecil atau menengah
o Untuk salah satu bagian dari sistem yang besar (mis. User Interface)
o Untuk sistem yang digunakan tidak terlalu lama (short lifetime).
• Model Pendekatan pengembangan sistem Formal
• Berbasiskan pada transformasi spesifikasi secara matematik melalui representasi yang berbeda untuk suatu program yang dapat dieksekusi,
• Trasformasi menyatakan spesifikasi program
• Menggunakan pendekatan ‘Cleanroom’ untuk pengembangan.
• Model Pengembangan menggunakan konsep Re-use (Penggunaan Ulang)
• Proses dengan metode Iterasi
• Model Iterasi dapat digunakan pada model proses generic, terdapat dua pendekatan :
o Pengembangan Incremental
o Model Spiral
• Model Pengembangan Incremental
• Pengembangan sistem berdasarkan model sistem yang dipecah sehingga model pengembangannya secara increament/bertahap
• Kebutuhan pengguna diprioritaskan dan priritas tertinggi dimasukkan dalam awal increment
• Setelah pengembangan suatu increment dimulai, kebutuhan dibekukan dulu hingga increment berikutnya dimulai
• Keuntungan
o Nilai penggunan dapat ditentukan pada setiap increament sehingga fungsionalitas sistem disediakan lebih awal,
o Increment awal berupa prototype untuk membantu memahami kebutuhan pada increment berikutnya,
o Memiliki risiko lebih rendah terhadap keseluruhan pengembagan sistem,
o Prioritas tertinggi pd pelayanan sistem adalah yang paling diuji.
• Model Pengembangan Spiral
• Proses direpresentasikan sebagai model spiral (bukan berupa barisan aktfitas yang dapat ditrack mundur)
• Setiap loop dalam model spiral menyatakan fase proses,
• Tidak terdapat fase tertentu seperti spesifikasi atau perancangan, tetapi loop dalam spiral ditentukan pada apa yang dibutuhkan,
• Sektor pada model Spiral
o Menentukan Tujuan
o Mengidentifikasikan spesifikasi tujuan setiap fase
o Menilai Resiko dan Pengurangannya
o Resiko dinial dan aktifitas ditempatkan untuk mengurangi resiko kunci
o Pengembangan dan validasi
o Suatu model pengembangan sistem dipilih dari model generic
o Perencanaan
o Project di review dan fase spiral berikutnya direncanakan


Read More......

Pengertian Komunikasi data dan Informasi
Pada saat ini kegiatan Data Processing sudah semakin luas, baik yang berorientasi kepada ilmu pengetahuan, komersil/bisnis maupun kegiatan pemerintahan, sehingga data yang diolahpun akan bermacam-macam sesuai dengan bidang pekerjaan tersebut. Dari keterangan diatas dapat diambil kesimpulan bahwa data tersebut merupakan bahan yang akan diolah menjadi suatu bentuk yang lebih berguna dan lebih mempunyai arti. Sedangkan informasi adalah hasil pengolahan data atau hasil proses dari data tersebut. Proses perubahan dari data menjadi informasi merupakan
Fungsi utama dari pengolahan data. Cara pengolahan data menjadi informasi tersebut bisa bermacam-macam misalnya secara manual (sempoa), mekanis (register), elektris (kalkulator) dan elektronik (komputer).


Pengertian Komunikasi data dan Informasi
Pada saat ini kegiatan Data Processing sudah semakin luas, baik yang berorientasi kepada ilmu pengetahuan, komersil/bisnis maupun kegiatan pemerintahan, sehingga data yang diolahpun akan bermacam-macam sesuai dengan bidang pekerjaan tersebut. Dari keterangan diatas dapat diambil kesimpulan bahwa data tersebut merupakan bahan yang akan diolah menjadi suatu bentuk yang lebih berguna dan lebih mempunyai arti. Sedangkan informasi adalah hasil pengolahan data atau hasil proses dari data tersebut. Proses perubahan dari data menjadi informasi merupakan
Fungsi utama dari pengolahan data. Cara pengolahan data menjadi informasi tersebut bisa bermacam-macam misalnya secara manual (sempoa), mekanis (register), elektris (kalkulator) dan elektronik (komputer).

Pengertian Komunikasi Data.
Komunikasi data adalah transmisi data elektronik melalui beberapa media. Media tersebut dapat berupa kabel koaksial, fiber optik, mikrowave dan sebagainya. Sistem yang memungkinkan terjadinya transmisi data seringkali disebut jaringan komunikasi data. Jaringan ini merupakan komponen penting dari informasi yang dilakukan oleh masyarakat sekarang.

Fungsi sistem komunikasi data:
1. Harus dapat memberikan informasi kepada orang yang tepat pula.

TINJAUAN KOMUNIKASI DATA
Pengertian Data dan Informasi.
Pada saat ini kegiatan Data Processing sudah semakin luas, baik yang berorientasi kepada ilmu pengetahuan, komersil/bisnis maupun kegiatan pemerintahan, sehingga data yang diolahpun akan bermacam-macam sesuai dengan bidang pekerjaan tersebut. Dari keterangan diatas dapat diambil kesimpulan bahwa data tersebut merupakan bahan yang akan diolah menjadi suatu bentuk yang lebih berguna dan lebih mempunyai arti. Sedangkan informasi adalah hasil pengolahan data atau hasil proses dari data tersebut. Proses perubahan dari data menjadi informasi merupakan DATA

Pengertian Komunikasi Data.
Komunikasi data adalah transmisi data elektronik melalui beberapa media. Media tersebut dapat berupa kabel koaksial, fiber optik, mikrowave dan sebagainya. Sistem yang memungkinkan terjadinya transmisi data seringkali disebut jaringan komunikasi data. Jaringan ini merupakan komponen penting dari informasi yang dilakukan oleh masyarakat sekarang.

Fungsi sistem komunikasi data:
1. Harus dapat memberikan informasi kepada orang yang tepat pula.
2. Sistem komunikasi data harus memperoleh data bisnis sementara data tersebut dibuat.
3. Sistem komunikasi data memungkinkan orang dan bisnis yang mempunyai lokasi geografis berlainan dapat saling berkomunikasi.

Komponen dasar sistem komunikasi data.
Sistem komunikasi data dapat dibagi menjadi tiga komponen utama:
1. Sumber komunikasi.
2. Media komunikasi.
3. Penerima (kadang-kadang disebut sink atau host).

Pengenalan jaringan komunikasi data.
Jaringan adalah seri dari beberapa point yang dihubungkan oleh beberapa jenis saluran komunikasi. Tiap point (disebut Node) adalah komputer, walaupun ia dapat terdiri dari peralatan pengubah, printer, mesin FAX atau alat lain. Jaringan komunikasi data merupakan kumpulan sirkuit komunikasi data yang dikelola sebagai kesatuan tunggal. Kumpulan jaringan komunikasi data dan orang yang memasukkan data, yang menerima data dan yang mengelola serta mengendalikan jaringan membentuk sistem komunikasi.

Komunikasi melalui satelit.
Walaupun ada sistem komunikasi bergerak selular teresterial, sistem ini hanya efisien untuk melayani daerah berpenduduk padat. Sistem selular konvensional, secara ekonomis tidak memungkinkan untuk komunikasi bergerak di daerah pedesaan, dimana kepadatan populasi dan kebutuhan akan komunikasi bergerak sangat rendah.
Pemanfaatan sistem komunikasi satelit telah memberikan kemampuan bagi manusia untuk berkomunikasi dan mendapatkan informasi dari berbagai penjuru dunia secara simultan tanpa memperhatikan jarak relatifnya.

Transmisi satelit.
Komponen dasar dari transmisi satelit adalah stasiun bumi, yang digunakan untuk mengirim dan menerima data, dan satelit, kadang-kadang disebut transponder. Satelit menerima sinyal dari stasiun bumi (up-link), memperkuat sinyal tersebut, mengubah frekuensi, dan mentransmisikan kembali data ke stasiun bumi penerima yang lain (down-link). Bila perubahan dalam frekuensi terjadi maka up-link tidak akan menganggu down-link.

Dalam transmisi satelit, terjadi penundaan atau delay, karena sinyal harus berjalan keluar ke ruang angkasa dan kembali lagi ke bumi. Waktu delay biasanya adalah 0,5 detik. Ada juga delay tambahan yang disebabkan oleh waktu yang dibutuhkan sinyal untuk berjalan ke sepanjang stasiun bumi. Seperti telah dijelaskan sebelumnya, satelit menggunakan frekuensi yang berbeda untuk menerima dan mentransmisi. Jangkauan frekuensi adalah antara 4 sampai 6 GHz, yang juga disebut C-band; 12 sampai 14 GHz disebut Ku-band dan 20 sampai 30 GHz. Bila nilai frekuensi turun, maka ukuran dish-antena yang dibutuhkan untuk menerima dan mentransmisi sinyal harus bertambah besar.

Ku-band digunakan untuk mentransmisi program televisi antara jaringan dan stasiun televisi perseorangan. Karena sinyal yang ada dalam Ku-band mempunyai frekuensi yang lebih tinggi maka panjang gelombangnya diperpendek. Hal ini memungkinkan stasiun penerima dan transmisi untuk mengkonsentrasikan sinyal dan menggunakan dish-antena yang lebih kecil.

Keamanan merupakan masalah bagi komunikasi satelit, sebab sangat mudah untuk menangkap transmisinya, karena ia berjalan melalui udara terbuka. Dalam beberapa hal, pengurai (scrambler) digunakan untuk mendistorsi sinyal sebelum ia dikirimkan ke satelit dan penyusun (descrambler) yang ada pada stasiun penerima digunakan untuk menghasilkan kembali sinyal asli.

Pengertian Bandwidth
Bandwidth adalah besaran yang menunjukkan seberapa banyak data yang dapat dilewatkan dalam koneksi melalui sebuah network. Lebar pita atau kapasitas saluran informasi. Kemampuan maksimum dari suatu alat untuk menyalurkan informasi dalam satuan waktu detik.

Dikenal juga dengan perbedaan atau interval, antara batas teratas dan terbawah dari suatu frekuensi gelombang transmisi dalam suatu kanal komunikasi. Satuan yang digunakan Hertz untuk sirkuit analog dan detik dalam satuan digital.

Jalur lebar analog diukur dalam unit Hertz (Hz) atau kitaran second. Jalur lebar digital pula merujuk kepada jumlah atau volume data yang dilewatkan melalui satu saluran komunikasi yang diukur dalam unit bit per second (bps) tanpa melibatkan gangguan.

Istilah lebar jalur (bandwith) sepatutnya tidak dikelirukan dengan istilah jalur (band), seperti pada telepon tanpa kabel, contohnya beroperasi pada jalur 800MMHz. Lebar jalur ialah ruang yang digunakan pada jalur tersebut. Dalam komunikasi tanpa wayar, ukuran atau lebar jalur salurannya memberi kesan kepada transmisi. Sejumlah data yang mengalir melalui satu saluran sempit mengambil masa yang lebih lama berbanding sejumlah data yang sama apabila mengalir menerusi satu saluran yang lebih lebar.

Samakah Bandwidth dengan kecepatan?
Jawabannya: Bandwidth dengan kecepatan itu berbeda.
Mari kita lihat sebagai berikut. Informasi dialirkan melalui berbagai media. Misalnya kita pilih kabel sebagai media. Sehingga informasi dialirkan melalui kabel tersebut. Karena informasi bisa “dialirkan” melalui kabel, kita bisa mengasumsikan kabel ini sebagai pipa tempat informasi disalurkan.

Nah, bandwidth seperti diungkapkan di atas adalah kemampuan maksimum dari pipa untuk mengalirkan data dalam waktu satu detik. Sedangkan kecepatan, adalah jarak yang ditempuh dari suatu satuan waktu, misalnya dalam satu detik.
Misalnya server anda terhubung melalui kabel telepon anda menghubungkan terhubung dengan modem ke Internet Service Provider (ISP) dengan bandwidth 56kbps. Semakin lebar bandwidth yang ada tentu data yang dilewatkan akan semakin besar.

Saluran ini dibagi menjadi dua, Narrowband (jalur sempit) dan Wideband (jalur lebar).
Lihat juga : Transmission, Digital data transmission, Full duplex, Half duplex, Narrowband, Parallel transmission, Simplex, Synchronous transmission, Wideband, dan broadband.
Pengertian lain dari Bandwidth (disebut juga Data Transfer atau Site Traffic) adalah data yang keluar+masuk/upload+download ke account anda.

Contoh: Ketika anda menerima/mengirim email, asumsikan besarnya email yang diterima/dikirim adalah 4 KB, berarti secara teori, untuk bandwidth 1.000 MB (1.000.000 KB) anda bisa *kirim* 250.000 email atau berbagai variasi antara kirim/terima, misalnya 100.000 kirim, 150.000 terima. Ini hanya contoh untuk penjelasan bandwidth, pada kenyataannya, data yang keluar masuk ke account bisa datang dari pengunjung (yang mendownload halaman website ke PC-nya), atau anda upload gambar/file ke account dan sebagainya.
Bandwidth/Site Traffic dihitung per bulan & bisa dilihat di cPanel.

Jika anda mengenal Telkom Speedy, Bandwidth ini cara kerjanya sama dengan Kuota di Telkom Speedy. Hanya saja yang menjadi acuan bagi perhitungan kuota Telkom Speedy adalah data yang keluar/masuk ke PC/Modem ADSL anda, sedangkan di hosting acuannya adalah data yang keluar/masuk ke account.



Read More......

TEKNIK SIMULASI

PENDAHULUAN
• TUJUAN MEMPELAJARI SIMULASI
Melalui kuliah ini diharapkan kita dapat
mempelajari suatu sistem dengan
memanfaatkan komputer untuk meniru (to
simulate) perilaku sistem tersebut
CARA MEMPELAJARI SISTEM
• Sistem dapat dipelajari dengan pengamatan langsung atau pengamatan pada model dari sistem tersebut.
• Model dapat diklasifikasikan menjadi model fisik dan model matematik
• Model matematik ada yang dapat diselesaikan dengan solusi analitis, ada yang tidak. Bila solusi analitis sulit didapatkan maka digunakan SIMULASI



SISTEM
Eksperimen
dengan sistem
sebenarnya
Eksperimen
dengan model
Model Matematik
Model Fisik
SIMULASI
Solusi Analitis



SISTEM
Sekumpulan obyek yang tergabung dalam suatu interaksi dan inter-dependensi yang teratur. Sistem dibedakan menjadi dua tipe yaitu sistem diskrit dan sistem kontinu.
• MODEL
Penyederhanaan dari sistem yang akan dipelajari.
• SIMULASI
Suatu prosedur kuantitatif, yang menggambarkan sebuah sistem, dengan mengembangkan sebuah model dari sistem tersebut dan melakukan sederetan uji coba untuk memperkirakan perilaku sistem pada kurun waktu tertentu.

DEFINISI – DEFINISI :
Klasifikasi simulasi dalam tiga dimensi:
• Model Simulasi Statik vs. Dinamik
Model statik: representasi sistem pada waktu tertentu. Waktu tidak berperan di sini.
Contoh: model Monte Carlo.
Model dinamik: merepresentasikan sistem dalam perubahannya terhadap waktu.
Contoh: sistem conveyor di pabrik.
• Model Simulasi Deterministik vs. Stokastik
Model deterministik: tidak memiliki komponen probabilistik (random).
Model stokastik: memiliki komponen input random, dan menghasilkan output yang random pula.
• Model Simulasi Kontinu vs. Diskrit
Model kontinu: status berubah secara kontinu terhadap waktu, mis. gerakan pesawat terbang.
Model diskrit: status berubah secara instan pada titik-titik waktu yang terpisah, mis. jumlah customer di bank.




Klasifikasi simulasi dalam tiga dimensi:
Model yang akan dipelajari selanjutnya adalah diskrit, dinamik, dan stokastik, dan disebut model simulasi discrete-event.
• Simulasi discrete-event:
pemodelan sistem dalam perubahannya terhadap waktu di mana variabel-variabel status berubah secara instan pada titik-titik waktu yang terpisah.
Penggunaan Simulasi :
• Alternatif terakhir, bila cara lain tak dapat digunakan.
Pada kenyataannya, berdasarkan hasil riset di US tahun 1971, dari 1000 perusahaan :
20 % (paling banyak) menggunakan teknik Simulasi,
• 21% menggunakan Linier Programming,
• 2% menggunakan Inventori dan sisanya menggunakan berbagai teknik-teknik lain.
Mengapa Perlu Simulasi ?
1. Simulasi adalah satu-satunya cara yang dapat
digunakan untuk mengatasi masalah, jika
sistem nyata sulit diamati secara langsung
Contoh : Jalur penerbangan pesawat ruang angkasa atau satelit.
2. Solusi Analitik tidak bisa dikembangkan, karena
sistem sangat kompleks.
3. Pengamatan sistem secara langsung tidak
dimungkinkan, karena :
- sangat mahal
- memakan waktu yang terlalu lama
- akan merusak sistem yang sedang berjalan.
Kekurangan Simulasi :
1.Simulasi tidak akurat.
Teknik ini bukan proses optimisasi dan tidak menghasilkan sebuah jawaban tetapi hanya menghasilkan sekumpulan output dari sistem pada berbagai kondisi yang berbeda. Dalam banyak kasus, ketelitiannya sulit diukur.
2.Model simulasi yang baik bisa jadi sangat mahal, bahkan sering dibutuhkan waktu bertahun-tahun untuk mengembangkan model yang sesuai.

Kekurangan Simulasi :
3.Tidak semua situasi dapat dievaluasi dengan simulasi
Hanya situasi yang mengandung ketidak-pastian yang dapat dievaluasi dengan simulasi. Karena tanpa komponen acak semua eksperimen simulasi akan menghasilkan jawaban yang sama.
4.Simulasi menghasilkan cara untuk mengevaluasi solusi, bukan menghasilkan cara untuk memecahkan masalah.
Jadi sebelumnya perlu diketahui dulu solusi atau pendekatan solusi yang akan diuji.
Aplikasi Studi Simulasi
• Design dan analisa sistem manufaktur
• Mengetahui kebutuhan sofware dan hardware untuk sebuah sistem komputer.
• Mengevaluasi sistem persenjataan baru, dalam bidaang militer
• Menentukan pengaturan dalam sistem inventory/persediaan.
• Mendesign sistem transportasi
• Mendesign sistem komunikasi
• Mengevaluasi sistem pelayanan dalam bidang perbankan.
• Mengevaluasi sistem ekonomi dan finansial.
Pendekatan Tiga Langkah untuk membangun Model Simulasi yang valid dan dapat dipercaya
• Langkah 1.
Membangun sebuah model dengan usaha melibatkan informasi semaksimal mungkin.
• Berdiskusi dengan para ‘pakar’ sistem
• Melakukan observasi terhadap sistem
• Memanfaatkan Teori yang ada
• Memanfaatkan hasil dari Model simulasi yang sama dan relevan
• Menggunakan pengalaman atau intuisi


• Memanfaatkan Teori yang ada
• Memanfaatkan hasil dari Model simulasi yang sama dan relevan
• Menggunakan pengalaman atau intuisi
• Langkah 2.
Menguji asumsi-asumsi model secara empiris
Jika distribusi probabilitas secara teoritis cocok dengan observasi dan digunakan sebagai input untuk model simulasi, dapat diuji dengan pembuatan grafik dan uji goodness-of-fit
Jika beberapa himpunan data diobservasi untuk fenomena random yang sama, maka perbaikan dari penggabungan data tersebut dapat ditentukan dengan uji Kruskal-Wallis
Salah satu utiliti yang sangat berguna adalah analisis sensitivitas
• Langkah 3.
Menentukan seberapa representatif data output Simulasi
VALIDASI, VERIFIKASI, DAN DISAIN SIMULASI
• Verifikasi:
Menentukan program komputer simulasi bekerja sebagaimana mestinya, yaitu sama dengan men-debug program komputer.
Verifikasi memeriksa penerjemahan model simulasi konseptual (mis., flowchart dan asumsi-asumsi) menjadi program yang berjalan dengan benar.
• Validasi:
Berkenaan dengan menentukan apakah model konseptual simulasi (bukan program komputer) merupakan representasi yang akurat dari sistem yang dipelajari.
Jika model simulasi dan hasilnya diterima oleh manajer/client sebagai valid, dan digunakan sebagai alat bantu dalam pengambilan keputusan, berarti model tersebut credible.
Waktu dan hubungan dari Validasi dan Verifikasi :






Sistem

Model Konseptual

Program Simulasi

Tersedia hasil yang ‘Benar’

Implemen-tasi hasil
Validasi
Validasi
Verifikasi
Establish kepercayaan

Analisa & Data 1,2,3
Pemrograman 4
Menjalankan Model 5,6,7,8,9
Memberikan Hasil 10


Prinsip-prinsip Pemodelan Simulasi yang Valid
Umumnya tidak diperlukan adanya korespondensi satu-satu antara setiap elemen sistem dengan elemen model.
Acuan untuk menentukan tingkat detil model simulasi:
- Di awal studi, definisikan dengan hati-hati:
1. isu yang akan diteliti
2. pengukuran kinerja untuk evaluasi
3. konfigurasi sistem alternatif
- Gunakan analisis “pakar” dan analisis sensitifitas untuk membantu menentukan tingkat detil model.
- Mulailah dengan detil tingkat “menengah”, yang dapat diubah jika perlu.
Prinsip-prinsip Pemodelan Simulasi yang Valid
- Jangan mulai dengan terlalu banyak detil, tetapi model tersebut juga harus punya tingkat detil yang cukup agar credible.
- Tingkat detil model harus konsisten dengan jenis data yang tersedia.
- Waktu dan biaya merupakan faktor utama dalam menentukan detil model.
- Jika jumlah faktor (aspek yang diteliti) pada studi cukup besar, gunakan model simulasi “kasar” atau model analitik untuk mengidentifikasi faktor-faktor yang penting sebelum mengembangkan moel simulasi yang detil.

Verifikasi Program Komputer Simulasi
Delapan teknik yang dapat digunakan untuk
mendebug program komputer dari model simulasi:
• Teknik 1:
Dalam mengembangkan model simulasi, tulis dan debug program komputer dalam bentuk modul atau subprogram.
• Teknik 2:
Disarankan agar lebih dari satu orang membaca program komputer jika model simulasi yang dikembangkan besar. Penulis program itu sendiri mungkin tidak dapat memberikan kritik yang baik.
Verifikasi Program Komputer Simulasi
• Teknik 3:
Jalankan simulasi dengan beberapa setting parameter input dan lihat apakah outputnya masuk akal.
• Teknik 4:
Lakukan “trace”, di mana status sistem yang disimulasi, yaitu: daftar event, variabel status, cacahan statistik, dsb., dicetak setelah masing-masing event terjadi dan dibandingkan dengan perhitungan manual untuk melihat apakah program bekerja sebagaimana mestinya.
• Teknik 5:
Jika mungkin, model harus dijalankan dengan asumsi-asumsi yang disederhanakan di mana karakteristik yang sebenarnya diketahui atau dapat dihitung dengan mudah.
Verifikasi Program Komputer Simulasi
• Teknik 6:
Pada beberapa model simulasi, akan sangat menolong jika ada animasi output simulasi yang dapat diteliti.
• Teknik 7:
Tuliskan mean dan varians sampel untuk setiap distribusi probabilitas input simulasi dan bandingkan dengan mean dan varians yang diinginkan (mis., historikal).
Langkah ini menentukan apakah nilai-nilai input dibangkitkan dengan benar dari distribusi-distribusi tsb.
• Teknik 8:
Gunakan paket simulasi untuk memperkecil jumlah baris kode yang dibutuhkan.
Pandangan Umum Mengenai Validasi
1.Ekperimen dengan model simulasi merupakan pengganti dari eksperimen dengan sistem yang ada atau yang diusulkan. Dengan demikian, tujuan ideal dari validasi adalah menjamin bahwa model simulasi cukup baik sehingga dapat digunakan untuk mengambil keputusan bagi sistem.
2. Kemudahan atau kesulitan proses validasi bergantung pada kompleksitas sistem yang dimodelkan dan apakah versi sistem tersebut sudah ada.
3. Model simulasi dari sistem yang kompleks hanya dapat merupakan pendekatan sistem yang sebenarnya.
Pandangan Umum Mengenai Validasi
4.Model simulasi harus selalu dikembangkan untuk sekumpulan tujuan tertentu. Model yang valid untuk satu tujuan belum tentu valid untuk tujuan lainnya.
5. Catatan asumsi-asumsi model simulasi harus di-update secara teratur, dan akhirnya menjadi laporan akhir.
6. Model simulasi harus divalidasi relatif terhadap ukuran-ukuran kinerja yang nanatinya dipakai untuk pengambilan keputusan.

Pandangan Umum Mengenai Validasi
7.Validasi bukan sesuatu yang harus diusahakan setelah model simulasi selesai dikembangkan, melainkan, pengembangan model dan validasi harus dilakukan bersama-sama sepanjang studi simulasi.
8. Umumnya tidak mungkin melakukan validasi statistik antara data output model dan data output sistem ybs (jika ada), bergantung pada sifat data tsb.

Pembangkit Bilangan Acak
(Random Number Generator)
• CARA MEMPEROLEH :
• ZAMAN DAHULU, dgn cara :
• Melempar dadu
• Mengocok kartu

• ZAMAN MODERN (>1940), dgn cara :
membentuk bilangan acak secara numerik/ aritmatik(menggunakan komputer) , disebut “Pseudo Random Number” (bilangan pseudo acak).


• PEMBANGKIT BILANGAN ACAK, HARUS :
• Berdistribusi uniform(0,1) dan tidak berkorelasi antar bilangan.
• Membangkitkan cepat, storage tidak besar
• Dapat di “reproduce”
• Periode besar, karena mungkin bil.acak dibangkitkan berulang


Pseudo Random Number Generator
• METODE KONGRUEN MULTIPLIKATIF
Xn = (aXn-1) modulo m
Dimana :
• Bil. Pseudo dimulai dgn nilai awal X0 yang disebut benih.
• a & m : bilangan bulat positif tertentu
• aXn-1 dibagi dgn m dan sisanya diambil sebagai nilai Xn


Pseudo Random Number Generator
• Agar Xn berprilaku acak yang dapat dipertanggungjawabkan :

• Modulo m dipilih sebesar mungkin untuk memperbesar periode
• a dipilih agar korelasi antar Xn minimum
• Benih Xo: bil. Bulat positif ganjil, Xo< x0="">

Read More......

KOMUNIKASI
Konsep Dasar Komunikasi :
• Perkembangan Teknologi Informasi (TI)
menyebabkan perubahan terhadap cara pandang
manusia terhadap suatu informasi
• Informasi merupakan isi (content) yang dibawa oleh
proses komunikasi
• Informasi harus terjamin kesahihan dan validitasnya



Informasi
• Mengandung muatan-muatan data yang dijadikan
sebagai the meaning of content dalam komunikasi
• Kumpulan bit-bit data yang mempunyai makna
tertentu, yang diolah dengan cara tertentu dan
dikomunikasikan dengan cara tertentu (sudut pandang
informatika)
Informasi sebagai view of point
• Bagaimana informasi bisa diolah sehingga bisa
dimanfaatkan secara optimal, misal ditemukan saat
dibutuhkan
• Bagaimana validitas dan kebenaran informasi bisa
dijamin
• Bagaimana informasi rahasia bisa diamankan
Komputer dan Informasi
 Komputer sebagai penghasil informasi ?
 Komputer sebagai pengolah informasi ?
 Komputer sebagai sarana komunikasi informasi ?
 Komputer sebagai alat validasi informasi ?
 Komputer sebagai pengontrol informasi ?
Era Komputerisasi Informasi
 The computer is the centre of information processing :
o Komputer sebagai penghasil dan pengolah
informasi
o Komputer tersebut bebas dari gangguan sistem
dan keamanan
The secure is the first
Komunikasi Data
Komunikasi data adalah merupakan bagian dari telekomunikasi yang secara khusus berkenaan dengan transmisi atau pemindahan data dan informasi diantara komputer-komputer dan piranti-piranti yang lain dalam bentuk digital yang dikirimkan melalui media komunikasi data.
Komponen Komunikasi Data
• Pengirim, adalah piranti yang mengirimkan data
• Penerima, adalah piranti yang menerima data
• Data, adalah informasi yang akan dipindahkan
• Media pengiriman, adalah media atau saluran yang digunakan
untuk mengirimkan data
• Protokol, adalah aturan-aturan yang berfungsi untuk
mentelaraskan hubungan
Diagram Model Komunikasi Sederhana



Protokol
Protokol dapat diartikan sebagai sebuah aturan yang mendefinisikan beberapa fungsi yang ada dalam sebuah jaringan komputer, misalnya mengirim pesan, data, informasi dan fungsi lain yang harus dipenuhi oleh sisi pengirim dan sisi penerima agar komunikasi dapat berlangsung dengan benar, walaupun sistem yang ada dalam jaringan tersebut berbeda sama sekali
Komponen Protokol
1 Aturan atau prosedur, mengatur pembentukan/pemutusan
hubungan
2. Format atau bentuk, mengatur proses transfer data representasi
pesan
3. Kosakata (vocabulary), jenis pesan dan makna masing-masing
pesan
Fungsi Protokol
Secara umum fungsi dari protokol adalah untuk menghubungkan sisi pengirim dan sisi penerima dalam berkomunikasi serta dalam bertukar informasi agar dapat berjalan dengan baik dan benar.
Susunan Protokol
Protokol jaringan disusun oleh dalam bentuk lapisan-lapisan (layer). Hal ini mengandung arti supaya jaringan yang dibuat nantinya tidak menjadi rumit.


Pembagian Model Layer OSI


Remote Procedure Call (RPC)
Remote Procedure Call (RPC) adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain.
Kelebihan RPC
• Relatif mudah digunakan :
Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat berkonsentrasi pada software logic, tidak perlu memikirkan low level details seperti socket, marshalling & unmarshalling.
• Robust (Sempurna):
Sejak th 1980-an RPC telah banyak digunakan dlm pengembangan mission-critical application yg memerlukan scalability, fault tolerance, & reliability.

Kekurangan RPC
• Tidak fleksibel terhadap perubahan: - Static relationship between
client & server at run-time.
• Berdasarkan prosedural/structured programming yang sudah
ketinggalan jaman dibandingkan OOP.
Prinsip RPC dalam program Client-Server

Read More......

Komunikasi Data

1. Komunikasi Data
Komunikasi data adalah merupakan bagian dari telekomunikasi yang secara khusus
berkenaan dengan transmisi atau pemindahan data dan informasi diantara komputer-
komputer dan piranti-piranti yang lain dalam bentuk digital yang dikirimkan melalui
media komunikasi data. Data berarti informasi yang disajikan oleh isyarat digital.
Komunikasi data merupakan baguan vital dari suatu masyarakat informasi karena
sistem ini menyediakan infrastruktur yang memungkinkan komputer-komputer dapat
berkomunikasi satu sama lain.

1.1 Komponen Komunikasi Data
• Pengirim, adalah piranti yang mengirimkan data
• Penerima, adalah piranti yang menerima data
• Data, adalah informasi yang akan dipindahkan
• Media pengiriman, adalah media atau saluran yang digunakan untuk
mengirimkan data
• Protokol, adalah aturan-aturan yang berfungsi untuk menyelaraskan
hubungan.


2. Perbedaan Sinyal/Isyarat Analog Dengan Digital
2.1 Sinyal Analog
Sinyal analog adalah sinyal data dalam bentuk gelombang yang yang kontinyu,
yang membawa informasi dengan mengubah karakteristik gelombang.


Dua parameter/karakteristik terpenting yang dimiliki oleh isyarat analog adalah
amplitude dan frekuensi. Isyarat analog biasanya dinyatakan dengan gelombang sinus,
mengingat gelombang sinus merupakan dasar untuk semua bentuk isyarat analog. Hal
ini didasarkan kenyataan bahwa berdasarkan analisis fourier, suatu sinyal analog dapat
diperoleh dari perpaduan sejumlah gelombang sinus.
Dengan menggunakan sinyal analog, maka jangkauan transmisi data dapat
mencapai jarak yang jauh, tetapi sinyal ini mudah terpengaruh oleh noise. Gelombang
pada sinyal analog yang umumnya berbentuk gelombang sinus memiliki tiga variable
dasar, yaitu amplitudo, frekuensi dan phase.
• Amplitudo merupakan ukuran tinggi rendahnya tegangan dari sinyal analog.
• Frekuensi adalah jumlah gelombang sinyal analog dalam satuan detik.
• Phase adalah besar sudut dari sinyal analog pada saat tertentu.


2.2 Sinyal Digital
Sinyal digital merupakan sinyal data dalam bentuk pulsa yang dapat mengalami
perubahan yang tiba-tiba dan mempunyai besaran 0 dan 1. Sinyal digital hanya
memiliki dua keadaan, yaitu 0 dan 1, sehingga tidak mudah terpengaruh oleh derau,
tetapi transmisi dengan sinyal digital hanya mencapai jarak jangkau pengiriman data
yang relatif dekat.
Biasanya sinyal ini juga dikenal dengan sinyal diskret. Sinyal yang mempunyai dua
keadaan ini biasa disebut dengan bit. Bit merupakan istilah khas pada sinyal digital.


Sebuah bit dapat berupa nol (0) atau satu (1). Kemungkinan nilai untuk sebuah bit
adalah 2 buah (21
). Kemungkinan nilai untuk 2 bit adalah sebanyak 4 (22
), berupa 00,
01, 10, dan 11. Secara umum, jumlah kemungkinan nilai yang terbentuk oleh
kombinasi n bit adalah sebesar 2n
buah.



3. Protokol
Protokol adalah sebuah aturan yang mendefinisikan beberapa fungsi yang ada dalam
sebuah jaringan komputer, misalnya mengirim pesan, data, informasi dan fungsi lain
yang harus dipenuhi oleh sisi pengirim dan sisi penerima agar komunikasi dapat
berlangsung dengan benar, walaupun sistem yang ada dalam jaringan tersebut berbeda
sama sekali. Protokol ini mengurusi perbedaan format data pada kedua sistem hingga
pada masalah koneksi listrik.
Standar protokol yang terkenal yaitu OSI (Open System Interconnecting) yang
ditentukan oleh ISO (International Standart Organization).

3.1 Komponen Protokol
1. Aturan atau prosedur
• Mengatur pembentukan/pemutusan hubungan
• Mengatur proses transfer data
2. Format atau bentuk
• representasi pesan


3. Kosakata (vocabulary)
• Jenis pesan dan makna masing-masing pesan

3.2 Fungsi Protokol
Secara umum fungsi dari protokol adalah untuk menghubungkan sisi pengirim dan
sisi penerima dalam berkomunikasi serta dalam bertukar informasi agar dapat berjalan
dengan baik dan benar. Sedangkan fungsi protokol secara detail dapat dijelaskan
berikut:
• Fragmentasi dan reassembly
Fungsi dari fragmentasi dan reasembly adalah membagi informasi yang dikirim
menjadi beberapa paket data pada saat sisi pengirim mengirimkan informasi
dan setelah diterima maka sisi penerima akan menggabungkan lagi menjadi
paket informasi yang lengkap.
• Encaptulation
Fungsi dari encaptulation adalah melengkapi informasi yang dikirimkan dengan
address, kode-kode koreksi dan lain-lain.
• Connection control
Fungsi dari Connection control adalah membangun hubungan (connection)
komunikasi dari sisi pengirim dan sisi penerima, dimana dalam membangun
hubungan ini juga termasuk dalam hal pengiriman data dan mengakhiri
hubungan.
• Flow control
Berfungsi sebagai pengatur perjalanan datadari sisi pengirim ke sisi penerima.
• Error control
Dalam pengiriman data tak lepas dari kesalahan, baik itu dalam proses
pengiriman maupun pada waktu data itu diterima. Fungsi dari error control
adalah mengontrol terjadinya kesalahan yang terjadi pada waktu data
dikirimkan.



• Transmission service
Fungsi dari transmission service adalah memberi pelayanan komunikasi data
khususnya yang berkaitan dengan prioritas dan keamanan serta perlindungan
data.

3.3 Susunan Protokol
Protokol jaringan disusun oleh dalam bentuk lapisan-lapisan (layer). Hal ini
mengandung arti supaya jaringan yang dibuat nantinya tidak menjadi rumit. Di dalam
layer ini, jumlah, nama, isi dan fungsi setiap layer berbeda-beda. Akan tetapi tujuan
dari setiap layer ini adalah memberi layanan ke layer yang ada di atasnya. Susunan dari
layer ini menunjukkan tahapan dalam melakukan komunikasi.
Antara setiap layer yang berdekatan terdapat sebuah interface. Interface ini
menentukan layanan layer yang di bawah kepada layer yang di atasnya. Pada saat
merencanakan sebah jaringan, hendaknya memperhatikan bagaimana menentukan
interface yang tepat yang akan ditempatkan di antara dua layer yang bersangkutan.

3.4 Standarisasi Protokol (ISO 7498)
ISO (International Standard Organization) mengajukan struktur dan fungsi protocol
komunikasi data. Model tersebut dikenal sebagai OSI (Open System Interconnection)
Reference Model.
Terdiri atas 7 layer (lapisan) yang mendefinisikan fungsi. Untuk tiap layernya dapat
terdiri atas sejumlah protocol yang berbeda, masing-masing menyediakan pelayanan
yang sesuai dengan fungsi layer tersebut.
1. Application Layer: interface antara aplikasi yang dihadapi user and resource
jaringan yang diakses. Kelompok aplikasi dengan jaringan:
• File transfer dan metode akses
• Pertukaran job dan manipulasi
• Pertukaran pesan




2. Presentation Layer: rutin standard me-presentasi-kan data.
• Negosiasi sintaksis untuk transfer
• Transformasi representasi data
3. Session Layer: membagi presentasi data ke dalam babak-babak (sesi)
• Kontrol dialog dan sinkronisasi
• Hubungan antara aplikasi yang berkomunikasi
4. Transport Layer:
• Transfer pesan (message) ujung-ke-ujung
• Manajemen koneksi
• Kontrol kesalahan
• Fragmentasi
• Kontrol aliran
5. Network Layer: Pengalamatan dan pengiriman paket data.
• Routing
• Pengalamatan secara lojik
• setup dan clearing (pembentukan dan pemutusan)
6. Data-link Layer: pengiriman data melintasi jaringan fisik.
• Penyusunan frame
• Transparansi data
• Kontrol kesalahan (error-detection)
• Kontrol aliran (flow)
7. Physical Layer: karakteristik perangkat keras yang mentransmisikan sinyal
data.

4. Router, Bridge dan Repeater
4.1 Router
Router adalah merupakan piranti yang menghubungkan dua buah jaringan yang
berbeda tipe maupun protokol. Dengan router dapat dimungkinkan untuk :
• Menghubungkan sejumlah jaringan yang memiliki topologi dan protokol yang
berbeda.
• Menghubungkan jaringan pada suatu lokasi dengan jaringan pada lokasi yang
lain.
• Membagi suatu jaringan berukuran besar menjadi jaringan-jaringan yang
lebih kecil dan mudag untuk dikelola.
• Memungkinkan jaringan dihubungkan ke internet dan informasi yang tersedia
dapat diakses oleh siapa saja.
• Mencari jalan terefisien untuk mengirimkan data ke tujuan.
• Melindungi jaringan dari pemakai-pemakai yang tidak berhak dengan cara
membatasi akses terhadap data-data yang tidak berhak untuk diakses.




4.2 Bridge
Bridge adalah jenis perangkat yang diperlukan jika dua buah jaringan bertipe sama
(ataupun bertopologi berbeda) tetapi dikehendaki agar lalu lintas lokal masing-masing
jaringan tidak saling mempengaruhi jaringan yang lainnya. Bridge memiliki sifat yang
tidak mengubah isi maupun bentuk frame yang diterimanya, disamping itu bridge
memiliki buffer yang cukup untuk menghadapi ketidaksesuaian kecepatan pengiriman
dan penerimaan data.



Gambar. Fungsi Bridge pada jaringan

Adapun alasan menggunakan bridge adalah sebagai berikut :
• Keterbatasan jaringan, hal ini terkait erat dengan jumlah maksimum stasiun,
panjang maksimum segmen, dan bentang jaringan
• Kehandalan dan keamanan lalu lintas data, bridge dapat menyaring lalu lintas data
antar dua segmen jaringan
• Semakin besar jaringan, performa atau unjuk kerja semakin menurun
• Bila dua sistem pada tempat yang berjauhan disambungkan, penggunaan bridge
dengan saluran komunikasi jarak jauh jauh lebih masuk akal dibandingkan dengan
menghubungkan langsung dua sistem tersebut

4.3 Repeater
Repeater adalah piranti yang berfungsi untuk memperbaiki dan memperkuat sinyal
atau isyarat yang melewatinya, Dua sub jaringan yang dilewatkan pada repeater
memiliki protokol yang sama untuk semua lapisan. Repeater juga berfungsi untuk
memperbesar batasan panjang satu segmen. Sehingga dapat digunakan untuk
memperpanjang jangkauan jaringan.


Read More......
Template by : kendhin x-template.blogspot.com