Minggu, 09 Oktober 2016

Pengantar Software

Pengantar Software

A.     AWAL PERKEMBANGAN SOFTWARE
Pemograman software pertama tercatat dilakukan oleh Marie Jacquard di prancis (1801) dengan menggunakan Punch-card (sebuah papan yang berlubang-lubang sesuai dengan pola pemintalan sehingga proses pemintalan dapat berjalan secara mekanis dengan punch-card sebagai pengontrol pola). Mesin pemintal ini dikenal dengan Jacquard Lomm yang kini dapat kita saksikan di Museum Ilmu Pengetahuan dan Industri (Museum of Science and Industry) di Manchester Inggris.
Seorang ahli matematika Inggris, Geoerge Boole membuat sebuah penemuan besar. Boole menemukan hubungan antara matematika dan logika dengan logika aljabarnya yang saat ini logika tersebut disebut aljabar BOOLEAN (logika biner).
B.     PERKEMBANGAN SOFTWARE MODERN
John Von Neuman yang menerapkan logika aljabar dalam pemograman komputer di Institue for Advanced Studies pada 1945. Von Neuman mengembangkan dua teknik dalam bahasa pemograman:
1.     Shared program technique, menyatakan hardware computer hasrus simple, menggunakan bahasa pemograman yang rumit, sehingga memudahkan pemograman ulang. Program ini menghasilkan sequential/linear programming (program yang berjalan berurutan dalam satu urutan baku yang kaku).
2.     Conditional control transfer, menyatakan perlu adanya komponen berupa sub-rutin dalam bahasa pemograman. Program ini menghasilkan penerapan libraries yang bisa digunakan secara berulang-ulang oleh program yang berbeda.
Dalam perkembangan software, programmer harus menerjemahkan intruksi ke bahasa mesin (komputer) yang hanya terdiri dari switch on (1) dan off (0) yang disebut kode biner (binary code).
Pada tahun 1949, muncul bahasa Short-Code, yang menuntut programmer menulis kode mesin 0 dan 1 secara langsung, kemudian 3 tahun berselang, pada tahun 1951, muncul compiler(kode pemograman yang digunakan untuk menerjemahkan bahasa manusia ke bahasa mesin) pertama: A-0.
Pasca perang dunia II IBM tahun 1959 mengeluarkan komputasi COBOL (Common Business Oriented Language), sebuah bahasa pemograman yang mudah digunakan dan memiliki struktur seperti bahasa manusia.
Pada tahun 1958 ALGOL (ALGOrithmic Languange) lahir dan merpakan akar dari bahsa pemograman yang ada sekarang seperti pascal, C, C++ dan Java. ALGOL merupakan bahasa pemograman pertama yang memiliki grammar formal yang disebut BNF (Backus-Naar Form).
Pascal lahir pada tahun 1968 yang ditemukan oleh Niklaus Wirth, yang merupakan bahasa pemograman yang sukses, karena memadukan seluruh kebaikan dari ALGOL, FORTRAN, dan COBOL. Sehingga dalam pascal terdapat fitur kombinasi, kemampuan transaksi (input/output) dan fitur matematis yang lengkap.
Bahasa C ditemukan oleh Dennis Ritchie pada tahun 1972 di Bell Labs, New Jersey.
Bahasa C++ dikembangkan dari bahasa C milik Dennis oleh Bjarne Stroustroup pada tahun 1983 yang merupakan bahasa yang paling stabil.
Java lahir pada tahun 1994 dari Sun Microsystem yang dikepalai Bill Joy. Ia memulai Java dalam Stealth Project pada tahun 1991.
Microsoft pun turut masuk ke dalam pasar pemograman web dengan ASP pada tahun 1996 yang merupakan pengembangan Visual Basic. Pada tahun 2002, Microsoft memperkenalkan ASP.Net (dot.net).


                   Software merupakan bahasa yang digunakan untuk mengoperasikan computer. Computer menerima informasi yang diolah selanjutnya perintah tersebut disimpan, ditafsirkan, dan dilaksanakan oleh computer, termasuk konversi informasi menjadi bentuk digital. Kumpulan intruksi tersebut disimpan, ditafsirkan, dan dilaksanakan oleh computer, termasuk konversi informasi menjadi bentuk digital. Kumpulan instruksi tersebut disimpan di piringan magnetis. Untuk menjalankan program computer mengambilnya dari sarana simpan ke RAM (Random Acccess Memory) dan isi instruksi perkembangan sejarahnya bahasa pemograman telah mengalami perubahan kea rah kemajuan beberapa kali.



Pengadaan Software

A.     SISTEM DEVELOPMENT LIFECYCLE (SDLC)
Secara Fundamental, proses SDLC terdiri atas 4 fase:
1.     Fase 1: Perencanaan
          Adalah fase fundamental untuk melakukan pemahaman tentang system informasi/software yang kan dibangun
Langkah-langkah berurut yang perlu dilakukan dalam fase ini adalah sebagai berikut.
a.      Identifikasi peluang, tantangan dan hambatan
b.     Analisa kelayakan: dari sisi teknis, ekonomi dan organisasi
c.      Pembuatan rencana kerja dan lingkup kerja
d.     Pembuatan rencana alokasi staf
e.      Pembuatan rencana pengendalian internal
Keluaran atau deliverable dari fase ini adalah:
a.      Dokumen setail system
b.     Analisi kelayakan
c.      Rencana kerja
d.     Perencanaan staf
e.      Asesmen risiko
f.      Rencana penjaminan kualitas
Dapat kita lengkapi dengan dokumen perencanaan proyek dan dokumen persyaratan yang terdiri dari
a.      Persyaratan fungsional (Functional Requirement Document) kemudian
b.     Dokumen keamanan dan pengendalian internal (Security and Internal Control Requirement)
c.      Dokumen persyaratan data (Data Requirement Document)

2.     Fase 2: Analisis
Fase ini adalah fase perencanaan pengembangan system. Fase ini menjawab pertanyaan siapa, apa, kapan, dan simana system informasi/software akan dijalankan.
     Langkah-langkah yang perlu dilakukan secara berurutan dalam fase ini adalah sebagai berikut.
a.      Penentuan pendekatan analisis
b.     Penentuan persyaratan dan kelayakan
c.      Pembuatan model proses
d.     Pembuatan model data

3.     Fase 3: Desain Sistem
Fase dimana seluruh persyaratan yang dikehendaki untuk dijalankan oleh software diterjemahkan ke dalam bahasa system informasi. Fase ini mejawab pertanyaan tentang bagaimana system bekerja.
     Disini ita membuat spesifikasi untuk system, subsistem, program dan database, dengan urutan langkah-langkah sebagai berikut.
a.      Perencanaan system fisik
b.     Perencanaan diagram alur data
c.      Desain arsitektur system
d.     Struktur tampilan antar muka (interface)
e.      Penentuan data format dan denormalisasi data
f.      Perancangan sturktur dan spesifikasi program

Dari fase ini yang dikeluarkan akan menjadi masukan bagi proses berikut adalah:
a.      Dokumen model proses fisik
b.     Data model
c.      Spesifikasi system
d.     Desain arsitektur
e.      Spesifikasi hardware dan hardware
f.      Desain antar muka
g.      Desain penyimpanan data
h.     Desain program

4.     Fase 4: inmplementasi
Hasil akhir dari fase ini adalah system terinstal. Langkah-langkah yang harus kita lakukan secara berurutan di fase ini adalah sebagai berikut.
a.      Pembuatan system: terdiri dari proses pemograman dan pengujian
b.     Instalasi system dan pelatihan
c.      Perawatan (maintenance) system
d.     Audit data review pasca implementasi

Dalam fase ini kelyarannya yang kan menutup proses SDLC terdiri dari:
a.      Perencanaan pengujian program
b.     Program jadi
c.      Dokumentasi
d.     Rencana konversi
e.      Encana pelatihan
f.      Rencana perawatan system
g.      Laporan pendukung lain
h.     Laporan audit pasca implementasi

Ada beberapa metode yang direapkan dalam pengadaan software yaitu metode waterfall, parallel, berfase dan prototyping, serta metode agile.

    
     Kemudian perbaikan terhadap system dilakukan dengan memulai desain dan implementasi lagi sampai terbentuk system versi kedua. Begitu seterusnya sampai system dianggap stabil dan hanya memerlukan penyempurnaan minor.
     Metode prototyping adalah proses analisa, desain dan implementasi dilakukan berulang sampai system selesai.

     Metode terakhir adalah metode agile yang merupakan metode yang sat ini makin berkembang sejalan dengan tuntutan system informasi.

B.     MEMILIH METODE PENGEMBANGAN SISTEM/SOFTWARE YANG TEPAT
Sebelum menentukan metode yang kita gunakan dalam pengembangan system/software, berikut kriteria-kriteria yang perlu diperhatikan:
Persyaratan yang jelas dari pengguna. Jika tidak ada kejelasan yang pasti dari persyaratan, maka metode prototyping dan agile adalah metode yang tepat.
Familiaritas dengan teknologi. Dalam pengembangan system yang menerapkan teknologi baru,sebaiknya menggunakan metode prototyping dan berfase.
Komleksitas system. Disrankan menggunakan metode waterfall, parallel, dan berfase
Tuntutan kehandalan system. Dalam hal ini prototyping adalah pilihan yang terbaik. Karena dalam prototyping, sebuah system kan terus-menerus diperbaharui sampai ia mencapai kondisi optimal.
Waktu pengembangan yang sempit. Metode prototyping dan agile adalh metode yang tepat karena keduanya yang paling fleksibel dan mampu melakukan penyesuaianperubahan system secara cepat.
Tantangan ketepatan waktu. Karena banyaknya hambatan dalam penyelesaian system informasi secara tepat waktu, metode prototyping dan agile adalah metode yang lebih tepat.


Komputer adalah seperangkat piranti eletronik yang memungkinkan pemakai computer mengolah informasi secara otomatis dan sesuai instruksi yang diberikan oleh pemakai. Computer secara otomatis akan menerima-menyimpan-mengolah-mengomunikasikan data maupun informasi. Computer dapat beroperasi karena dilengkapi software.



Latihan!
Jelaskan beberapa pengertian yang digunakan dalam aplikasi perangkat lunak: data, field (ruas), record (rekaman, cantuman), file (berkas), dan template!
Tes Formatif 1
Pilihlah satu jawaban yang paling tepat!
1)       Computer dapat dioperasionalkan apabila telah dilengkapi dengan software. Software adalah ….
A.            Perangkat lunak yang menjadi tempat interaksi manusia dan computer
B.            Fasilitas antarmuka pada computer
C.            Sebagai database informasi
D.            Puluhan computer yang terkoneksi
2)      George Boole menemukan formulasi sebagai landasan yang sangat mempengaruhi bahasa pemograman, teori Boolean, yaitu ….
A.            Logika merupakan bagian dari matematika
B.            Terkenoksinya sejumlah computer harus memiliki bahasa pemograman yang sama
C.            Agar dapat diakses denagn mudah data harus tersimpan dalam satu database
D.            Penulisan instruksi dengan menggunakn urutan 0 dan 1
3)   Salah satu teknik bahasa pemograman yang dikembangkan oleh Von Neuman adalah ….
A.            Conditional control transfer
B.            Machine code
C.            Assembly language
D.            COBOL
4)   Larry wall mengembangkan bahasa yang bisa digunakan untuk pemograman internet atau pemograman web. bahasa tersebut adalah ….
A.            Visual basic
B.            COBOL
C.            PERL
D.            PASCAL
5)   Bahsa pemograman pertama yang memiliki grammar formal adalah ….
A.            ALGOL
B.            FORTRAN
C.            COBOL
D.            BASIC



Latihan
Jelaskan beberapa pengertian yang digunakan dalam aplikasi perangkat lunak: data, field (ruas), record (rekaman, cantuman), file (berkas), dan template!

a.       Data adalah sesuatu yang belum mempunyai arti bagi penerimanya dan masih memerlukan adanya suatu pengolahan.
b.      Kumpulan dari karakter yang membentuk satu arti, yaitu tempat atau kolom yang terdapat dalam suatu tabel untuk mengisikan nama-nama (data) field yang akan di isikan.
c.       Record (rekaman, cantuman) adalah kumpulan field yang sangat lengkap, dan biasanya dihitung dalam satuan baris.
d.      File (berkas) adalah kumpulan berbagai informasi yang berhubungan dan juga tersimpan di dalam secondary storage, secara konsep file memiliki beberapa tipe ada yang bertipe Data terdiri dari numeric, character dan binary. Lalu ada juga file yang bertipe program
e.       Template adlah dokumen atau file yang berisikan model-model tambahan yang akan muncul pada saat proses pembuatan dokumen lain.

LATIHAN
Dalam pengadaan software terdapat satu siklus yang standar berlaku dalam setiap proses pengadaan software,jelaskan Software Development LifeCycle (SDLC) atau alur hidup pengembangan software
Jawaban:
Siklus Hidup Pengembangan Sistem) atau Systems Life Cycle (Siklus Hidup Sistem), dalam rekayasa sistem dan rekayasa perangkat lunak,Adalah proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut. Konsep ini umumnya merujuk pada sistem komputer atau informasi. SDLC juga merupakan pola yang diambil untuk mengembangkan sistem perangkat lunak, yang terdiri dari tahap-tahap: rencana(planning),analisis (analysis), desain (design), implementasi (implementation), uji coba (testing) dan pengelolaan (maintenance). Dalam rekayasa perangkat lunak angsyat Ä, konsep SDLC mendasari berbagai jenis metodologi pengembangan perangkat lunak. Metodologi-metodologi ini membentuk suatu kerangka kerja untuk perencanaan dan pengendalian pembuatan sistem informasi, yaitu proses pengembangan perangkat lunak. Terdapat 3 jenis metode siklus hidup sistem yang paling banyak digunakan, yakni: siklus hidup sistem tradisional (traditional system life cycle), siklus hidup menggunakan prototyping (life cycle using prototyping), dan siklus hidup sistem orientasi objek (object-oriented system life cycle).
 

Tidak ada komentar:

Posting Komentar