Posted by : Bayu Wijaya Permana Putra Minggu, 28 Juli 2013



Assalammualaikum sobat, saya akan membahas sedikit tentang rekayasa perangkat lunak, dari mulai sejarah, definisi, komponen software, aplikasi software, diagnosa, sampai cara pembuatan software yang baik. Oke mari kita simak bersama sama !

Sejarah Perkembangan Software

Selama tiga dekade pertama dari era komputerisasi, tantangan utama adalah mengembangkan hardware kom­puter yang dapat mengurangi biaya pengolahan dan penyimpanan data. Selama dekade tahun 1980 an, kemajuan yang pesat dari mikro elektronik menghasilkan kemampuan komputer yang lebih baik pada tingkat biaya yang lebih rendah. Namun masalah sekarang berbeda. Tantangan utama adalah mengurangi biaya dan memperbaiki kualitas solusi berbasis komputer (Solusi yang diimplementasikan dengan mempergunakan software). Software merupakan faktor kunci dalam keberhasilan suatu usaha, software dapat membedakan satu perusahaan dari per­usahan saingannya.


Evolusi software

Tahun-tahun awal :
  1. Batch orientation
  2. Limmited distribution
  3. Custummer software
Era kedua :
  1. Multi user
  2. Real time
  3. Database

Era ketiga :
  1. Distibuted system
  2. Embedded intellegence
  3. Low cost hardware
  4. Consumer infact
Era keempat :
  1. Expert system
  2. A I Machine
  3. Parallel architecture


Tahun-tahun pertama :
1.       Batch Orientation
Suatu orientasi di mana proses dilakukan setelah data dikumpulkan dalam satuan waktu tertentu, atau proses dilakukan setelah data terkumpul, lawan dari batch adalah ONLINE atau Interactive Process.
Keuntungan dari Interactive adalah mendapatkan data yang selalu up to date.
2.       Limmited distribution
Suatu penyebaran software yang terbatas pada perusahaan-perusahaan tertentu.
3.       Custom software
Software yang dikembangkan berdaasarkan perusahaan-perusahaan tertentu.


Era kedua :
1.     Multi user
Suatu sistem di mana satu komputer digunakan oleh beberapa user pada saat yang sama.
2.     Real Time
Suatu sistem yang dapat mengumpulkan, menganalisa dan mentransformasikan data dari berbagai sumber, mengontrol proses dan menghasilkan output dalam mili second.
3.     Database
Perkembangan yang pesat dari alat penyimpan data yang OnLine menyebabkan muncul generasi pertama DBMS (DataBase Management System).
4.      Product Software
Adalah software yang dikembangkan untuk dijual kepada masyarakat luas.

ERA KETIGA  :
1.     Distributed system
Suatu sistem yang tidak hanya dipusatkan pada komputer induk (Host computer), daerah atau bidang lain­nya yang juga memiliki komputer yang ukurannya lebih kecil dari komputer induk. Lawan dari distributed system adalah Centralized System.
2.     Embedded Intelegence
Suatu product yang diberi tambahan “Intellegence” dan biasanya ditambahkan mikroprocessor yang mutak­hir. Contohnya adalah automobil, robot, peralatan diagnostic serum darah.
3.     Low Cost Hardware
harga hardware yang semakin rendah, ini dimungkinkan karena munculnya Personal Computer.
4.     Consummer Inpact
Adanya perkembangan komputer yang murah menyebabkan banyaknya software yang dikembangkan, soft­ware ini memberi dampak yang besar terhadap masyarakat.

ERA KEEMPAT :
1.     Expert system
Suatu penerapan A.I. (Artificial Intellegence) pada bidang-bidang tertentu, misalnya bidang kedokteran, komunikasi, dll.
2.     AI Machine
Suatu mesin yang dapat meniru kerja dari sebagian otak manusia. Misalnya mesin robot, komputer catur.
3.      Parallel Architecture
Arsitektur komputer yang memungkinkan proses kerja LAN paralel, yang dimungkinkan adanya prosesor berbeda dalam satu komputer


Pengertian dan Definisi

Arti Software Engineering :
Ilmu yang mempelajari tehnik pembuatan software yang baik dengan pendekatan tehnik (Engineering ap­proach)


Menurut Fritz Badar mendefinisikan, software engineering adalah disiplin ilmu yang menerapkan prinsip-prinsip engineering agar mendapatkan software yang ekonomis yang dapat dipercaya dan bekerja lebih efisien pada mesin yang se­benarnya.


Arti Software :
1.      Instruksi
Atau program komputer yang ketika dieksekusi akan memberi fungsi dan hasil yang diinginkan.
2.      Struktur data
Yang memungkinkan program memanipulasi informasi
3.      Dokumen
Yang menggambarkan operasi dan penggunaan program


SIFAT DAN KARAKTERISTIK SOFTWARE
1.      Software merupakan elemen sistem logik dan bukan elemen sistem fisik seperti hardware
2.      Elemen itu tidak aus, tetapi bisa rusak.
3.      Elemen software itu direkayasa atau dikembangkan dan bukan dibuat di pabrik seperti hardware
4.      Software itu tidak bisa dirakit.


KOMPONEN SOFTWARE
1.      Bentuk bahasa
Terbagi 2, yaitu
A.     High Level, contoh PASCAL, COBOL, FORTRAN.
B.     Middle Level, contoh C
2.      Bentuk translator
Terbagi 3 , yaitu :
A.     Interpreter
Menerjemahkan dari bahasa tingkat tinggi ke bahasa tingkat rendah secara satu persatu (statemen demi statemen)
B.     Compiler
Menerjemahkan secara keseluruhan, proses lebih cepat dari interpreter
C.     Assembler
Menerjemahkan dari bahasa rakitan ke bahasa mesin
3.    Bentuk mesin :



Aplikasi Software


1.      Sistem Software
Adalah sekumpulan program yang ditulis untuk melayani atau menunjang program lainnya. Beberapa sistem software seperti compiler, editor, komponen-komponen sistem operasi, driver dan prosesor telekomunikasi.
2.      Real Time software
Software yang mengukur, menganalisis dan mengontrol kejadian yang sesungguhnya terjadi di dunia. Ele­men-elemen real time software terdiri dari :
A.     Komponen pengumpul data
Yang mengumpulkan dan menyusun informasi dari lingkungan external.
B.     Komponen analisis
Yang mentransformasikan informasi yang diperlukan oleh aplikasi
C.     Komponen kontrol
Yang memberikan respon kepada lingkungan external
D.     Komponen monitor
Yang mengkoordinasi semua komponen-komponen lainnya, sehingga respons real time yang berkisar 1 milisecond sampai 1 menit dapat dipertahankan.
Perlu dicatat bahwa istilah real time berbeda dari istilah interactive atau time sharing.  Sistem real time harus memberikan respons pada waktu yang ditentukan, sedangkan pada sistem interactive atau time sharing respons time biasanya melebihi batas waktu yang ditentukan tanpa merusak hasil.
3.      Business software
Software yang palinmg banyak digunakan dalam bidang aplikasi software. Software ini digunakan oleh manajemen untuk mengambil kepitusan ( Decision Making ) dalam bidang bisnis. Contoh :
à         DAC EASY ACCOUNTING
à         FINANCE MANAJER
4.      Engineering and sciencetific software
Software yang dicirikan dengan algoritma numerik, aplikasinya berkisar dari astronomi sampai vulkanologi, dari analis ketegangan otomotif sampai dinamika orbit ruang angkasa. Software ini banyak digunakan dalam bidang engineering dan science. Contoh
à         CAD / CAM ( Computer Aided Design / Computer Aided Manufacture - Ssimulasi sistem )
5.      Emdebed software
Suatu software disimpan dalam memori tetap - ROM - Read Only Memory, dan digunakan untuk mengon­trol product dan sistem software ini dijalankan dengan berbagai fungsi terbatas.
6.      PC software (Personal Computer)
Software yang banyak digunakan di komputer pribadi (PC). Contoh :
  1. Word Processing                     :           WS, WP
  2. Spreadsheet                             :           Lotus, Supercalc
  3. Computer Graphics                :           Printshop, Print Magic
  4. Games                                     :           Paoman, Load Runner
  5. DBMS                                     :           Dbase III+, Foxbase, Clipper
  6. Network                                  :           LAN, Novell

7.      Artificial Intelegence software
Software yang banyak menggunakan algoritma non numerik dalam memecahkan masalah kompleks yang tidak dapat dianalisis dengan analisis komputasi biasa. Saat ini bidang AI yang paling aktif adalah expert system atau knowledge base system. Bidang aplikasi lain dari software AI adalah pengenalan citra dan suara ( image and voice pattern recognition ), teorema pembuktian dan permainan / games.

Pembuatan Software yang Baik
Dalam membuat softrare yang baik, ada beberapa cara dan tahapan :
1.      Fase Perencanaan (Planning) :
a)      Rencana software
b)      Analisa kebutuhan software
c)      Analisa cost banefit (Salah satu bagian dari studi kelayakan)
2.      Fase Pengembangan (Development) :
a)      Coding
b)      Testing
Macam-macam test program :
i)        Unit test (Test per modul)
ii)      Integreated test (Test penggabungan dari modul-modul yang telah diuji)
iii)    Validated test (Diuji dengan data sebenarnya)
iv)    System test (Test dilakukan dengan lingkungan sebenarnya)
v)      Topdown test (Test gabungan dari atas ke bawah)
vi)    Bottom up test (Test gabungan dari bawah ke atas)
3.      Fase Pemeliharaan (Maintenance) :
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

Sekian sekilas pengenalan rekayasa perangkat lunak. Akhir kata saya ucapkan terima kasih telah mengikuti materi pengenalan rekayasa perangkat lunak, semoga dapat bermanfaat dan menambah motivasi sobat untuk terus berusaha menjadi seorang yang mampu menguasai pemograman dan menjadi programmer handal, seperti yang saya cita cita kan. Amiin Ya Rabbal Alamin...

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Welcome to BIG !!!

Butuh Solusi IT ?

Service Komputer/ Laptop ? atau Installasi Jaringan Komputer ? atau Solusi Algoritma dan Pemrogramman ? atau Pembuatan Aplikasi Android/ Web/ Dekstop ?

Contact Me
Call or Message
+6285 8715 000 98

Find BIG on Facebook

You Can Support BIG !

BIG adalah media informasi berbasis web dalam blog yang memberikan berbagai macam informasi, tutorial, dan ilmu pengetahuan, terutama dalam bidang IT dan Pemrogramman

Anda bisa memberikan donasi melalui transfer langsung ke rekening dibawah ini! Berapapun jumlah donasi yang Anda kirim saya ucapkan terima kasih banyak dan akan sangat bermanfaat agar blog ini semakin berkembang.

Bank :
No. Rekening : 0307429851
A/N : Bayu Wijaya Permana Putra

Popular Post

Copyright © 2013 Bayyz Informatics Gallery. Diberdayakan oleh Blogger.

Followers

- Copyright © Big Informatics Gallery by Bayu Wijaya Permana Putra - Powered by Blogger - Supported by Google -