Sabtu, 22 Januari 2011

coding,testing&maintenance

Rekayasa dan pemodelan sistem/informasi
Karena perangkat lunak selalu merupakan bagian dari sebuah sistem yang lebih besar, kerja dimulai dengan membangun syarat dari semua elemen sistem dan mengalokasikan beberapa subset dari kebutuhan ke perangkat lunak tersebut.

Analisis kebutuhan perangkat lunak 
Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khususnya pada perangkat lunak. Untuk memahami sifat program yang dibangun, perekayasa perangkat lunak (analis) harus memahami domain informasi, tingkah laku, unjuk kerja, dan antar muka (interface) yang diperlukan. Kebutuhan baik untuk sistem maupun perangkat lunak didokumentasikan dan dilihat lagi dengan pelanggan.

Desain 
Desain perangkat lunak sebenarnya adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda; struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) prosedural. Proses desain menerjemahkan syarat/kebutuhan ke dalam sebuah representasi perangkat lunak yang dapat diperkirakan demi kualitas sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain didokumentasikan dan menjadi bagian dari konfigurasi perangkat lunak.
 
Generasi Kode(Coding)
Desain harus diterjemahkan ke dalam bentuk mesin yang bisa dibaca. Langkah pembuatan kode melakukan tugas ini. Jika desain dilakukan dengan cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis.

Pengujian(Testing) 
Sekali kode dibuat, pengujian program dimulai. Proses pengujian berfokus pada logika internal perangkat lunak, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional – yaitu mengarahkan pengujian untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan.
Testing fokus pada:
  • Logika internal PL:memastikan bahwa semua statement telah diuji (white box ) .
  • Fungsi eksternal :mengarahkan testing untuk menemukan kesalahan-kesalahan bahwa input yang diberikan menghasilkan output sesuai yang diinginkan(black box).

Pemeliharaan(Maintenance)
Perangkat lunak akan mengalami perubahan setelah disampaikan kepada pelanggan. Perubahan akan terjadi karena kesalahan-kesalahan ditentukan, karena perangkat lunak harus disesuaikan untuk mengakomodasi perubahan-perubahan di dalam lingkungan eksternalnya, atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja. Pemeliharaan perangkat lunak mengaplikasikan lagi setiap fase program sebelumnya dan tidak membuat yang baru lagi
Model sekuensial linier adalah paradigma rekayasa perangkat lunak yang paling luas dipakai dan paling tua. Masalah-masalah yang kadang-kadang terjadi ketika model sekuensial linier diaplikasikan adalah :
1.    Jarang sekali proyek nyata mengikuti aliran sekuensial yang dianjurkan oleh model ini. Meskipun model linier bisa mengakomodasi iterasi, model itu melakukannya dengan cara tidak langsung.
2.    Kadang-kadang sulit bagi pelanggan untuk menyatakan semua kebutuhannya secara eksplisit.
3.    Pelanggan harus bersikap sabar. Sebuah versi kerja dari program-program itu tidak akan diperoleh sampai akhir waktu proyek dilalui.
4.    Pengembang sering melakukan penundaan yang tidak perlu. Bradac mendapatkan bahwa pada model ini banyak anggota tim proyek haus menunggu tim yang lain untuk melengkapi tugas yang saling memiliki ketergantungan.
 Masing-masing dari masalah tersebut bersifat riil. Tetapi paradigma siklus kehidupan klasik memiliki tempat yang terbatas namun penting di dalam kerja rekayasa [erangkat lunak. Paradigma itu memberikan template di mana metode analisis, desain, pengkodean, pengujian dan pemeliharaan bisa dilakukan. Siklus kehidupan klasik tetap menjadi model bagi rekayasa perangkat lunak yang paling luas dipakai.

Jenis-jenis maintenance
a)Koreksi (Corection)
b)Adaptasi (Adaptive)
Software dikembangkan sesuai dengan tuntutan perkembangan jaman
c)Adaptasi yang berkembang pada dewasa ini terbagi atas :
i)      Sistem Operasi
à         Pengarahan sistem operasi yang bersifat multi user. Contoh : UNIX
à         Sistem operasi yang bersifat jaringan. Contoh : NOVELL
ii)     RDBMS - Relational DataBase Management System
à         Berkembang dalam bentuk bahasa SQL (Structure Query Language).
iii)    Bahasa
Mengarah pada perkembangan bahasa generasi ke empat (4GL - Fourth Generation Language)
Bahasa 4GL adalah suatu bahasa yang dibuat untuk meningkatkan produktifitas programmer dan end user. Contoh :
a)    INFORMIX - Dapat dijalankan pada PC dengan minimum RAM 4MB + 640KB dan disk sto­r­age > 40MB
b)    ORACLE
c)    INGRES
d)    AS / SET - Digunakan pada IBM AS 400
e)    POWER HOUSE - digunakan pada HR 3000
iv)   Perfective
Menyempurnakan software yang ada biasanya dilakukan karena permin­taan / saran / kritik user.

UML


Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah menjadi standar dalam
industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML
menawarkan sebuah standar untuk merancang model sebuah sistem.

Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti
lunak,dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan
jaringan apapun,serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML
juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok
untuk penulisan piranti lunak dalam bahasabahasa berorientasi objek seperti C++, Java,
C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling
aplikasi prosedural dalam VB atau C.
Untuk menguasai UML, sebenarnya cukup dua hal yang harus kita perhatikan:
1. Menguasai pembuatan diagram UML.
2. Menguasai langkah-langkah dalam analisa dan pengembangan dengan UML.

UML mendefinisikan diagram-diagram sebagai berikut:
• use case diagram
• class diagram
• statechart diagram
• activity diagram
• sequence diagram
• collaboration diagram
• component diagram
• deployment diagram
 

Use Case Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem.
Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”.
Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem.
Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create
sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas
manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-
pekerjaan tertentu.
Use case diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah
sistem,mengkomunikasikan rancangan dengan klien, dan merancang test case untuk
semua feature yang ada pada sistem.
Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari
proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan
dipanggil setiap kali use case yang meng-include dieksekusi secara normal.

Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi
fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common.

Contoh use case diagram :



Class Diagram
 Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek
dan merupakan inti dari pengembangan dan desain berorientasi objek.Class
menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan
layanan untuk memanipulasi keadaan tersebut (metoda/fungsi).
Class diagram  menggambarkan struktur dan deskripsi class, package dan objek
beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan
lain-lain.
Class memiliki tiga area pokok :
1. Nama (dan stereotype)
2. Atribut
3. Metoda

Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang
hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus
diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung
resolusi metoda pada saat run-time.
 
Hubungan Antar Class

1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang
memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain.
Panah navigability menunjukkan arah query antar class.

2. Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”).


3. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain
dan mewarisi semua atribut dan metoda class asalnya dan menambahkan fungsionalitas
baru,sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan
adalahgeneralisasi.

4. Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing dari satu class
kepadaclass lain. Hubungan dinamis dapat digambarkan dengan menggunakan
sequence diagramyang akan dijelaskan kemudian.

Contoh class diagram :

Statechart Diagram
state lainnya) suatu objek pada sistem sebagai akibat dari stimuli yang diterima. Pada
umumnya statechart diagram menggambarkan class tertentu (satu class dapat memiliki
lebih dari satu statechart diagram).

Dalam UML,state digambarkan berbentuk segiempat dengan sudut membulat dan 
memiliki nama sesuai kondisinya saat itu. Transisi antar state umumnya memiliki kondisi
guard yang merupakan syarat terjadinya transisi yang bersangkutan, dituliskan dalam
kurung siku. Action yang dilakukan sebagai akibat dari event tertentu dituliskan dengan
diawali garis miring.Titik awal dan akhir digambarkan berbentuk lingkaran berwarna
 penuh dan berwarna setengah. 
 

Activity Diagram

 
Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang
dirancang,bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan
bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel
yang mungkin terjadi pada beberapa eksekusi.
 
Activity diagram merupakan state diagram khusus, di mana sebagian besar state
adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya
(internal processing).Oleh karena itu activity diagram tidak menggambarkan behaviour
internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih
menggambarkan proses-proses dan jalur-jalur  aktivitas dari level atas secara umum.

Sebuah aktivitas dapat direalisasikan oleh satu
menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana
aktor menggunakan sistem untuk melakukan aktivitas.Sama seperti state, standar UML
menggunakan segiempat dengan sudut membulat untuk menggambarkan aktivitas.
Decision digunakan untuk menggambarkan behaviour pada kondisitertentu.
Untuk mengilustrasikan proses-proses paralel (fork dan join) digunakan titik sinkronisasi
yang dapat berupa titik, garis horizontal atau vertikal.
Activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan
objek mana yang bertanggung jawab untuk aktivitas tertentu.
Contoh activity diagram: 
use case atau lebih. Aktivitas




Sequence Diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar


Component Diagram

Component diagram menggambarkan struktur dan hubungan antar komponen piranti
lunak,termasuk ketergantungan (dependency) di antaranya.Komponen piranti lunak
adalah modul berisi code, baik berisi source code maupun binary code, baik
library maupun executable, baik yang muncul pada compile time, link time, maupun
run time.Umumnya komponen terbentuk dari beberapa class dan/atau package, tapi
dapat juga dari komponen-komponen yang lebih kecil.
Komponen dapat juga berupa interface, yaitu kumpulan layanan yang disediakan
sebuah komponen untuk komponen lain.
Contoh component diagram: 




Deployment Diagram
 
Deployment/physical diagram menggambarkan detail bagaimana komponen di-deploy
dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server
atau piranti keras apa),bagaimana kemampuan jaringan pada lokasi tersebut,spesifikasi
server dan hal-hal lain yang bersifat fisikal.Sebuah node adalah server, workstation,
atau piranti keras lain yang digunakan untuk mendeploy komponen dalam lingkungan
sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga
didefinisikan dalam diagram ini.
Contoh deployment diagram :


Langkah-Langkah Penggunaan UML

Berikut ini adalah tips pengembangan piranti lunak dengan menggunakan UML:

sistem  (termasukpengguna, display, dan sebagainya) berupa message yang
digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu)
dan dimensi horizontal (objek-objek yang terkait).Sequence diagram biasa digunakan
untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan
sebagai respons dari sebuah event untuk menghasilkan output tertentu.
Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan
apa saja yang  terjadi secara internal dan output apa yang dihasilkan.Masing-masing
objek,termasuk aktor, memiliki lifeline vertikal.Message digambarkan sebagai garis
berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message
akan dipetakan menjadi operasi/metoda dari class.Activation bar menunjukkan
lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah
message.


Collaboration Diagram


Collaboration diagram juga menggambarkan interaksi antar objek seperti sequence
diagram,tetapi lebih menekankan pada peran masing-masing objek dan bukan pada
waktu penyampaian message.Setiap message memiliki sequence number, di mana
message dari  level tertinggi memiliki nomor 1.Messages dari level yang sama memiliki
prefiks yang sama.
Contoh collaboration diagram:


Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke 
1. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas
danproses yang mungkin muncul.

2. Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat
fungsionalitas yang harus disediakan oleh sistem. Kemudian perhalus use case
diagram dan lengkapi dengan requirement, constraints dan catatan-catatan lain.

3. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik
sistem.
4. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga
harus disediakan oleh sistem.

5. Berdasarkan use case diagram, mulailah membuat activity diagram.

6. Definisikan objek-objek level atas (package atau domain) dan buatlah sequence
dan/atau collaboration diagram untuk tiap alir pekerjaan. Jika sebuah use case memiliki
kemungkinan alir normal dan error, buatlah satu diagram untuk masing-masing alir.

7. Buarlah rancangan user interface model yang menyediakan antarmuka bagi
pengguna untuk menjalankan skenario use case.

8. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package
atau domain dipecah menjadi hirarki class lengkap dengan atribut dan metodanya. Akan
lebih baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan
interaksi dengan class lain.

9. Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokan class
menjadi komponen-komponen. Karena itu buatlah component diagram pada tahap ini.
Juga,definisikan tes integrasi untuk setiap komponen meyakinkan ia berinteraksi
dengan baik.

10. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan
requirementpiranti lunak, sistem operasi, jaringan, dan sebagainya. Petakan komponen
ke dalam node.

11. Mulailah membangun sistem. Ada dua pendekatan yang dapat digunakan :
*Pendekatan use case, dengan meng-assign setiap use case kepada tim pengembang
tertentu untuk mengembangkan unit code yang lengkap dengan tes.
Pendekatan komponen, yaitu meng-assign setiap komponen kepada tim
pengembang tertentu.

12. Lakukan uji modul dan uji integrasi serta perbaiki model berserta codenya.
Model harus selalu sesuai dengan code yang aktual.

13. Piranti lunak siap dirilis.

Senin, 17 Januari 2011

Structured English

STRUCTURED ENGLISH (SE)

Structured English adalah peralatan pengembangan system yang menggunakan struktur bahasa inggris dan mirip bahasa pemrograman. SE merupakan alat yang efisien untuk menerangkan suatu algoritma dalam bentuk narasi bukan dalam bentuk grafik dan mirip dengan pseudocode. Karena kemiripan tersebut SE dan pseudocode sering tertukar.


Selain kemiripan yang ada, SE dan pseudocode memiliki perbedaan dalam fungsinya. SE digunakan untuk komunikasi antara perancang dengan pemakai dalam menjelaskan algoritma, sedangkan pseudocode digunakan untuk komunikasi antara perancang dengan programmer.

SE sering digunakan dengan DFD untuk mendokumentasikan proses-proses yang ada dalam system. Macam-macam level DFD menerangkan bahwa pemrosesan merupakan teknik yang diaplikasikan dari atas-ke-bawah (top-down). Pada beberapa point, teknik grafik DFD kurang efektif jika dibandingkan dengan teknik narasi, untuk menutup ketidak-efektifan ini maka SE harus diperkenalkan.


SE bukan merupakan alat standar pengembangan system. Tidak ada ketentuan-ketentuan tetap yang harus diikuti oleh pemakai alat ini. Meskipun demikian, ada sejumlah ketentuan yang membedakan SE dengan alat narasi formal seperti pseudocode.

Ketentuan-ketentuan adalah :

1. Gunakan hanya tiga bentuk pemrograman terstruktur, sepeti urutan seleksi/kondisi, dan perulangan/iterasi
2. Gunakan kata kerja bila menerangkan tiap langkah pengolahan
3. Tambahkan kata kerja dengan satu atau lebih objek bila perlu
4. Gunakan nama-nama data yang telah didefinisikan dalam kamus data. Nama-nama ini dapat berupa alur data, data store, struktur data atau elemen data.
5. Gunakan huruf besar untuk semua nama data, sintaks komputer, seperti
START, STOP, IF, THEN dan ELSE.
6. Indent untuk menunjukkan struktur system secara hirarki. Kata-kata pada level hirarki yang sama harus diindentkan dengan jumlah spasi yang sama.
7. Bila dokumentasi dibagi ke dalam beberapa modul, gunakan baris pertama masing-masing modul untuk label pengindentifikasi dan berikan baris kosong diantara modul.
8. Tiap modul harus hanya memiliki point entry dan exit tunggal.

Bila pembuatan SE dilakukan dengan mengikuti ketentuan-ketentuan di atas, maka SE yang akan terbentuk semakin mudah dimengerti dan mudah dikomunikasikan dengan profesional system lainnya.


Bentuk pemrograman terstruktur
Bentuk pemrograman terstruktur yang biasa digunakan pada SE adalah urutan, pilihan dan perulangan.

Struktur urutan. Bila struktur urutan didokumentasikan, entri-entri dituliskan pada margin yang sama satu sama lain, misalkan :

READ
COMPUTE
WRITE


Struktur Pilihan – IF-THEN
Bila struktur pilihan didokumentasikan gunakan format IF-THEN sebagai berikut

IF (kondisi)
     THEN
Tindakan bila kondisi benar
      END IF


Perlu diingat bahwa IF dan END dituliskan pada margin yang sama

Contoh :
IF (JAM = or < 40)
THEN
COMPUTE PEMBAYARAN-KOTOR = TARIF-UPAH . JAM-KERJA
END IF

Dari contoh di atas terlihat bahwa kondisi ditandai dengan tanda kurung

Struktur Pilihan – IF-THEN-ELSE
Gunakan format berikut untuk situasi IF-THEN-ELSE.
IF (kondisi)
THEN
Tindakan bila kondisi benar
ELSE
Tindakan bila kondisi salah
END IF

Perlu diingat bahwa THEN dan ELSE dan aksi benar dan salah ditulis pada margin yang sama. Contoh struktur isi adalah sebagai berikut :
IF (JAM =or < 40)
THEN
COMPUTE PEMBAYARAN-KOTOR = TARIF-UPAH . JAM-KERJA
ELSE
COMPUTE PEMBAYARAN-KOTOR = (TARIF-UPAH . 40) + ((JAM- KERJA . 40) . TARIF-UPAH . 1,5)
END IF
Untuk struktur pilihan, lebih baik mengikuti format
IF (kondisi-1)
THEN
aksi-1
ELSE IF
(kondisi-2)
THEN
aksi-2
ELSE
aksi-3
END IF
END IF

Struktur Perulangan – DO WHILE,
Bila pendokumentasian struktur perulangan dilakukan format DO WHILE akan dapat dilihat seperti format dibawah :
DO WHILE
(kondisi)
Tindakan
END DO

Contoh berikut merupakan perhitungan gaji yang dilaksankan berulang sampai jumlah record dalam file habis. DO WHILE (masih ada record gaji)
COMPUTE GAJI KOTOR
COMPUTE PAJAK PENDAPATAN
COMPUTE GAJI BERSIH
END DO

Struktur Perulangan – DO UNTIL.
Format DO UNTIL akan dapat dibuat seperti format di bawah ini :
DO UNTIL (kondisi)
Tindakan
END DO

Contoh berikut adalah suatu model matematika yang mengaktifkan file persediaan dan mencetak jumlah stock tiap hari sampai jumlah hari yang telah ditentukan tercapai.
DO UNTIL (JUMLAH.HARI = BATAS.HARI)
READ STOCK.AWAL,PEMBELIAN,PENJUALAN
COMPUTE STOCK.AKHIR = STOCK.AWAL +PEMBELIAN-PENJUALAN
WRITE STOCK.AWAL,PEMBELIAN,PENJUALAN,STOCK.AKHIR
END DO

Struktur Perulangan – for .
Format struktur perulangan FOR FOR tiap-item Tindakan
contoh
FOR tiap-record-pegawai
PERFORM
Cetak-slip-gaji

Format-format untuk ketiga struktur ini digunakan oleh banyak programmer ketika menggunakan permrograman terstruktur. SE untuk program perhitungan komisi
START
Pemberian harga awal TOTAL.PENJUALAN, TOTAL.KOMISI = 0
Proses data penjualan
DO UNTIL (akhir file)
PERFORM Baca-data
PERFORM Proses-data PERFORM Cetak-data
END DO

Total akhir
RINT TOTAL.PENJUALAN, TOTAL.KOMISI
STOP

Baca-data
READ RECORD PENJUALAN
Proses-data
IF (JUMLAH.PENJUALAN > 1000000)
THEN
KOMISI = 100000 + (JUMLAH PENJUALAN – 1000000) . 0,15
ELSE
KOMISI = JUMLAH.PENJUALAN . 0,10
END IF
Akumulasikan TOTAL.PENJUALAN, TOTAL.KOMISI

Cetak-data
PRINT baris detail


PSEUDOCODE

Pseudocode merupakan suatu alternative dari SE dan mirip dengan beberapa kode pemrograman, seperti COBOL, PL\1, Fortran, PASCAL. Dengan demikian mudah bagi para programmer untuk menggunakan dan mengerti pseudocode, tetapi pseudocode tidak cocok bagi sesorang yang bukan programmer. Apabila SE digunakan, beberapa rincian seperti pembukaan dan penutupan file-file, pemberian harga awal, atau pemakaian flag tidak termasuk dalam bentuk SE, sedangkan pseudocode mengikutsertakan semua hal tersebut.

Seperti halnya SE, pseudocode juga tidak memiliki standar penulisan dan memiliki 3 bentuk pemrograman terstruktur, seperti urutan, seleksi/kondisi dan perulangan/iterasi.
Struktur urutan sintak merupakan kumpulan berbagai pernyataan instruksi input/output yang secara implisit diterapkan dalam pseudocode.

Struktur Pilihan – IF-THEN.
Format struktur pilihan dapat dituliskan sebagai berikut

IF (kondisi) THEN
Tindakan
ENDIF


Struktur Pilihan – IF-THEN-ELSE

IF (kondisi) THEN
Tindakan bila kondisi benar
ELSE
Tindakan bila kondisi salah
ENDIF

Contoh

IF (JAM = or < 40)
THEN COMPUTE PEMBAYARAN-KOTOR = TARIF-UPAH . JAM-KERJA
ELSE
COMPUTE PEMBAYARAN-KOTOR = (TARIF-UPAH. 40) + ((JAM-KERJA – 40) . TARIF-UPAH . 1,5)
ENDIF

Struktur Pilihan – CASE

SELECT keadaan
CASE (nilai 1) PERFORM tindakan 1
CASE (nilai 2) PERFORM tindakan 2
CASE (nilai 3) PERFORM tindakan 3

DEFAULT CASE PERFORM tindakan-n
ENDSELECT

Struktur Perulangan – REPEAT UNTIL
REPEAT
Tindakan
UNTIL (kondisi)

contoh

REPEAT
READ STOCK AWAL, PEMBELIAN, PENJUALAN
COMPUTE STOCK.AKHIR = STOCK.AWAL + PEMBELIAN - PENJUALAN
WRITE STOCK.AWAL, PEMBELIAN, PENJUALAN, STOCK.AKHIR
UNTIL (JUMLAH.HARI = BATAS.HARI)

Struktur Perulangan – DO
DO indeks = awal TO akhir
PERFORM tindakan
ENDDO

contoh
DO JUMLAH PEGAWAI 1 TO 20
PERFORM Cetak-slip.gaji
ENDDO


TABEL KEPUTUSAN 

Tabel keputusan (decision table) adalah tabel yang digunakan sebagai alat bantu untuk menyederhanakan logika struktur keputusan yang betingkat-tingkat di dalam program. Algoritma yang berisi keputusan bertingkat yang banyak sekali dan sangat sulit digambarkan langsung dengan structured English atau pseudocode dan dapat dibuat terlebih dahulu dengan menggunakan tabel keputusan. Dengan demikian tabel keputusan efektif digunakan bilamana kondisi yang akan diseleksi di dalam program jumlahnya cukup banyak dan rumit. Struktur tabel keputusan terdiri dari empat bagian utama yakni :
1.Condition Stub
2.Condition Entry
3.Action Stub
4. Action Entry
Langkah-langkah dalam pembuatan table keputusan ini adalah sebagai berikut :
1. Menentukan kondisi yang akan diseleksi
2. Menentukan jumlah kemungkinan kejadian yang akan terjadi, yaitu sebanyak N = 23 = 8
3. Menentukan tindakan yang akan dikerjakan
4. Mengisi condition entry, diisi sedemikian rupa, sehingga semua kemungkinan kejadian bisa terwakili.
5. Mengisi action entry, diisi kolom demi kolom dari kolom pertama sampai kolom ke N.

contoh tabel

dfd&erd

Data Flow Diagram (DFD)
Rancangan Data Flow Diagram.
Data Flow Diagram (DFD) merupakan alat yang cukup popular untuk menggambarkan arus data didalam sistem secara terstruktur dan jelas.Lebih lanjut DFD juga merupakan dokumentasi dari sistem yang baik.
Tiga alasan yang menyebabkan sebaiknya dilakukan pemodelan sistem, yaitu:
  • Dapat melakukan perhatian pada hal-hal penting dalam sistem tanpa mesti terlibat
  • terlalu jauh.
  • Mendiskusikan perubahan dan koreksi terhadap kebutuhan pemakai dengan resiko
  • dan biaya minimal.
  • Menguji pengertian penganalisa sistem terhadap kebutuhan pemakai dan membantu
  • pendesain sistem dan pemrogram membangun sistem.
Tetapi ada banyak bentuk model yang dapat digunakan dalam perancangan sistem antara
lain model narasi, model prototype, model grafis dan lain-lain. Dalam hal ini tidak jadi
masalah model mana yang akan digunakan, yang jelas harus mampu merepresentasikan
visualisasi bentuk sistem yang diinginkan pemakai, karena sistem akhir yang dibuat bagi pemakai akan diturunkan dari model tersebut.

External Entity (Kesatuan Luar).
kesatuan diluar sistem yang akan memberikan input atau menerima output dari sistem,
dapat berupa orang, organisasi, sumber informasi lain atau penerima akhir dari suatu
laporan.
Bentuk dari eksternal entity diantaranya adalah sebagai berikut:
  • Suatu kantor, departemen atau divisi dalam perusahaan tetapi di luar sistem yang
  • sedang dikembangkan.
  • Orang/sekelompok orang di organisasi tetapi di luar sistem yang sedang
  • dikembangkan.Suatu organisasi atau orang yang berada di luar organisasi seperti misalnya
  • langganan, pemasok, dll.
  • Sistem informasi yang lain di luar sistem yang sedang dikembangkan.
  • Sumber asli dari suatu transaksi.
  • Penerima akhir dari suatu laporan yagn dihasilkan oleh sistem.
Data Flow (Arus Data).
Disimbolkan dengan anak panah, dimana arus data mengalir diantara proses, simpanan
data. Arus data ini menunjukkan arus dari data yang dapat berupa masukan untuk sistem
atau hasil dari proses sisem dan dapat berbentuk sebagai berikut :
· Formulir atau dokumen yang digunakan perusahaan
· Laporan tercetak yang dihasilkan sistem
· Output dilayar komputer
· Masukan untuk komputer
· Komunikasi ucapan
· Surat atau memo
· Data yang dibaca atau direkam di file
· Suatu isian yang dicatat pada buku agenda
· Transmisi data dari suatu komputer ke komputer lain
Konsep dari Data Flow :
1. Konsep paket dari data (packet of data)
Bila dua atau lebih data mengalir dari suatu sumber yang sama ke tujuan yang
sama, maka harus dianggap sebagai suatu arus data tunggal.
2. Konsep arus data menyebar (diverging data flow)
Menunjukkan sejumlah tembusan dari arus data yang sama dari sumber yang
sama ke tujuan yang berbeda.
3. Konsep arus data mengumpul (converging data flow)
Menunjukkan beberapa arus data yang berbeda dari sumber yang berbeda
bergabung bersama-sama menuju ke tujuan yang sama.
4. Konsep suber dan tujuan arus data
Semua arus data harus dihasilkan dari suatu proses atau menuju ke suatu proses
(dapat salah satu atau kedua-duanya, yaitu berasal dari suatu proses menuju ke
bukan suatu proses atau berasal dari bukan suatu proses menuju ke suatu proses
atau berasal dari suatu proses dan menuju ke suatu proses).
download disini ya
http://www.ziddu.com/download/13361515/Dfd_erd.rar.html