Rabu, 26 September 2018

Metode Perancangan Program


METODE PERANCANGAN PROGRAM
----------------------------------------------------

--------------------------------------------------------
| NIM               = 12171332                                     |
| Nama             = Marfanio Yuli Setyanto                |
| Kelas             = 12.3A.35                                       |
| Dosen            = Andrian Eko Widodo,  M. Kom   |
 ------------------------------------------------------------

Kampus           =  Universitas Bina Sarana Informatika

=======================================


1.  Cari kegiatan apa saja yang dilakukan pada setiap langkah SDLC !

SOFTWARE DEVELOPMENT
LIFE CYCLE
(SDLC)

             SDLC adalah serangkaian aktivitas yang dilaksanakan oleh profesional dan pemakai sistem informasi untuk mengembangkan dan mengimplementasikan software (program).



   1.      Perencanaan Sistem ( Systems Planning)
         Fase perencanaan adalah sebuah proses dasar untuk memahami mengapa sebuah sistem itu harus dibangun, dan pada fase ini memang diperlukan analisa kelayakan dengan mencari data atau melakukan proses information gathering kepada para pengguna.
Proses Perencanaan Sistem dapat dikelompokkan dalam 3 proses utama yaitu  :
a.         Merencanakan proyek-proyek sistem yang dilakukan oleh staf perencana sistem
b.     Menentukan proyek-proyek sistem yang akan dikembangkan dan dilakukan oleh komite pengarah
c.         Mendefinisikan proyek-proyek sistem dikembangkan dan dilakukan oleh analis sistem

   2.      Analisis Sistem ( System Analysis )
            Fase analisa adalah sebuah proses investigasi terhadap sistem yang sedang berjalan itu sendiri dengan tujuan untuk mendapatkan jawaban mengenai pengguna sistem, cara kerjanya yaitu sistem dan waktu penggunaan sistem. Dari proses analisa ini akan didapatkan cara untuk membangun sistem baru.
            Didalam tahap analisis sistem terdapat langkah-langkah dasar yang harus dilakukan oleh Analisa Sistem Yaitu :
a.  Identify, yaitu mengidentifikasikan masalah, mengindentifikasikan penyebab   masalah, mengidentifikasikan titik keputusan, mengidentifikasikan personil-personil kunci.
b.  Understand, yaitu memahami kerja dari sistem yang ada, menentukan jenis penelitian, merencanakan jadual penelitian, mengatur jadual wawancara, mengatur jadual observasi, mengatur jadual pengambilan sampel, membuat penugasan penelitian, membuat agenda wawancara, mengumpulkan hasil penelitian
c.  Analyze, yaitu menganalis sistem, menganalisis kelemahan sistem; menganalisis kebutuhan Informasi pemakai / manajemen
d.      Report, yaitu membuat laporan hasil analisis yang tujuan untuk memberi laporan bahwa analisis telah selesai dilakukan


   3.      Perancangan Sistem ( System Design )
            Fase perancangan merupakan proses penentuan cara kerja sistem dalam hal architechture design, interface design, database dan spesifikasi file, dan program design. Hasil dari proses perancangan ini akan didapatkan spesifikasi sistem.
Adapun langkah-langkah dalam tahap perancangan sistem ini meliputi :
a.  Menyiapkan rancangan sistem yang terinci : analis bekerja sama dengan pemakai dan mendokumentasikan rancangan sistem baru dengan alat-alat yang telah dijelaskan dalam modul teknis. Penggambaran dilakukan dari yang besar dan secara bertahap secara rinci dengan pendekatan top-down dan ini biasanya dilakukan untuk rancangan terstruktur (structured design).
b.      Mengidentifikasikan berbagai alternatif konfigurasi sistem : analis harus mengidentifikasikan konfigurasi (bukan merek atau model) peralatan komputer yang akan memberikan hasil terbaik bagi sistem untuk menyelesaikan pemrosesan.
c.  Mengevaluasi berbagai alternatif konfigurasi sistem : analis bekerja bersama manajer mengevaluasi berbagai alternatif dan dipilih yang paling memungkinkan subsistem memenuhi kriteria kinerja, dengan kendala-kendala yang ada.
d.    Memilih konfigurasi yang terbaik : analis mengevaluasi semua konfigurasi subsistem dengan menyesuaikan kombinasi peralatan sehingga semua subsistem menjadi satu konfigurasi tunggal. Setelah dianalisis kemudian direkomendasikan kepada manajer untuk disetujui. Persetujuan dilakukan oleh Komite pengarah SIM.
e.   Menyetujui usulan penerapan : analisis menyiapkan usulan penerapan yang mengikhtisarkan tugas-tugas penerapan yang harus dilakukan, keuntungan yang diharapkan dan biayanya.
f.    Menyetujui atau menolak penerapan sistem: jika keuntungan dari sistem melebihi biayanya, penerapan akan disetujui.

   4.      Implementasi
   Fase implementasi adalah proses pembangunan dan pengujian sistem, instalasi sistem, dan rencana dukungan sistem.
Contohnya: konstruksi, instalasi, pengujian dan pengiriman sistem ke dalam produksi (artinya operasi sehari-hari). Implementasi sistem ini mengontruksi sistem informasi yang baru dan menempatkannya ke dalam operasi, dan selanjutnya dilaksanakan tahap pengujian.
Adapun langkah-langkah dalam tahap ini meliputi :
a.    Merencanakan penerapan: sebelum sistem baru digunakan, manajer dan spesialis informasi memahami dengan baik pekerjaan yang diperlukan untuk menerapkan rancangan sistem.
b.    Mengumumkan penerapan: proyek penerapan diumumkan kepada para pegawai dengan cara yang sama seperti penelitian sistem. Tujuannya untuk menginformasikan pegawai mengenai keputusan untuk menerapkan sistem baru dan meminta kerjasama pegawai.
c.      Mendapatkan sumberdaya perangkat keras: rancangan sistem disediakan bagi para pemasok berbagai jenis peralatan komputer yang terdapat pada konfigurasi yang disetujui. Setiap pemasok diberikan request for proposal (RFP).
d.    Mendapatkan sumberdaya perangkat lunak: dapat membuat sendiri oleh programmer dari dokumen yang disiapkan analis sistem atau menggunakan perangkat lunak aplikasi jadi (prewritten application soft ware).
e.      Menyiapkan database: DBA bertanggungjawab untuk semua kegiatanyang berhubungan dengan data, dan ini mencakup persiapan database. 

CONTOH KEGIATAN DILAKUKAN OLEH SDLC :


Metodologi Air Terjun

Metodologi Air Terjun merupakan model klasik yang sederhana dengan aliran sistem yang linier. Output dari setiap tahap merupakan input bagi tahap berikutnya. Model ini pertama kali diperkenalkan oleh Winston Royce tahun 1970, sekarang model ini lebih dikenal dengan Liner Sequential Model. Karakteristik dari metodologi waterfall ini meliputi beberapa bagian, yaitu :

1. Aktivitas mengalir dari satu fase ke fase lainnya secara berurutan.

2. Setiap fase dikerjakan terlebih dahulu sampai selesai, jika sudah selesai baru mulai menuju fase berikutnya.



Tahapan penelitian pada model air terjun meliputi metodologi berupa :

a.  System Engineering : Menetapkan segala hal yang diperlukan dalam pelaksanaan proyek

b. Analisis : Menganalisis hal-hal yang diperlukan untuk pembuatan atau pengembangan perangkat lunak
c.  Design : Tahap penerjemahan dari keperluan atau data yang telah dianalisis ke dalam bentuk  yang mudah dimengerti oleh programmer. Tiga atribut yang penting dalam proses perancangan yaitu : struktur data, arsitektur perangkat lunak dan prosedur rinci / algoritma.
d.  Coding : Menerjemahkan data yang telah dirancang / algoritma ke dalam bahasa pemrograman yang telah ditentukan.     
e.  Testing : Uji coba terhadap program telah dibuat.
f.  Maintenance : Perubahan atau penambahan program sesuai dengan permintaan user.


Kelebihan dari metode Air Terjun :

Metode ini masih lebih baik digunakan walaupun sudah tergolong kuno, daripada menggunakan pendekatan asal-asalan. Selain itu, metode ini juga masih masuk akal jika kebutuhan sudah diketahui dengan baik.



Kekurangan dari metode Air Terjun :

-          Pada kenyataannya, jarang mengikuti urutan sekuensial seperti pada teori. Iterasi sering terjadi menyebabkan masalah baru.

      Sulit bagi pelanggan untuk menentukan semua kebutuhan secara eksplisit.

-          Pelanggan harus sabar, karena pembuatan perangkat lunak akan dimulai ketika tahap desain sudah selesai. Sedangkan pada tahap sebelum desain bisa memakan waktu yang lama.
      Kesalahan di awal tahap berakibat sangat fatal pada tahap berikutnya. 


   2. Jelaskan bagan/struktur paradigma bahasa pemrograman ?




              Paradigma Bahasa Pemrograma

      Paradigma pemrograman  suatu sudut pandang dalam dunia pemrograman dan menjadi suatu pendekatan khusus dalam memecahkan suatu persoalan dalam menyelesaian masalah pemrograman. Ada banyak cara untuk menyelesaikan masalah mengikuti aliran atau “genre” tertentu dari program dan bahasa. Paradigma Bahasa Pemrograman dibagi menjadi 2 yaitu : Imperative dan Declarative 

 Imperative Progrograman

    1.     Paradigma ini didasari oleh konsep mesin Von Newman (stored program concept) sekelompok tempat penyimpanan (memori), yang dibedakan menjadi memori instruksi dan memori data, masing-masing memori tersebut dapat diberi nama dan dinilai, selanjutnya instruksi akan dieksekusi satu persatu secara sekuensial oleh sebuah proses tunggal.

Ada beberapa Impereative dalam Pemrograman :

1.      Prosedural Pemrograman
    Pada pemrograman procedural, program dibedakan antara bagian data dengan bagian instruksi. Bagian instruksi terdiri atas runtutan instruksi yang dilaksanakan satu persatu secara berurutan oleh pemroses. Alur pelaksanaan instruksi dapat berubah karena adanya pencabangan kondisional. Data yang disimpan didalam memori dimanipulasi oleh instruksi secara beruntun atau procedural. Paradigma pemrograman seperti ini dinamakan pemrograman procedural.
Bahasa pemrograman yang termasuk dalam Pemrograman Prosedural, antara lain :
1.      C
2.      GO
3.      Fotran
4.      Pascal
5.      Basic
2.      Object-Oriented Programming.
Bahasa Pemrograman yang termasuk dalam paradigma pemrograman bereriontasikan objek, antara lain:
1.      Python
2.      C++
3.      Objective-C
4.      Smalltalk
5.      Delphi
6.      Java

3.      Pararel Processing Programming
Pararel proses adalah suatu paradigma pemrograman yang memungkinkan eksekusi perintah atau operasi secara bersamaan baik dalam komputer dengan satu(prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU. Secara umum, ini adalah sebuah teknik dimana sebuah masalah dibagi dalam beberapa masalah kecil untuk mempercepat proses penyelesaian masalah.
    1.         DECLARATIVE
      1.       Logic Programming
Pemrograman Logika adalah salah satu paradigma yang didasari oleh logika formal, paradigma ini didasari oleh pendefinisian relasi antar individu yang dinyatakan sebagai predikat. Sebuah program lojik adalah kumpulan aksioma (fakta dan aturan deduksi).
Pada paradigma ini, pemrogram menguraikan sekumpulan fakta dan aturan-aturan ( inference rules). Ketika program dieksekusi, pemakai mengajukan pertanyaan (Query),  dan program akan menjawab apakah pernyataan itu dapat dideduksi dari aturan dan fakta yang ada. Program akan memakai aturan deduksi dan mencocokkan pertanyaan dengan fakta-fakta yang ada untuk menjawab pertanyaan.
Algoritma = Logic + Control
Problem solving = Problem Description + Logical Deduction
di mana “Logika” mewakili program logika dan “Control” merupakan strategi perbedaan pembuktian teori.
Bahasa Pemrograman yang termasuk paradigma logic programming, antara lain :
1.      ALF
2.      Fril
3.      Gödel
4.      Mercury
5.      Oz
6.      Ciao
7.      Visual,
8.      Prolog
9.      XSB
   
  1.    Functional Programming adalah suatu paradigma pemrograman yang setiap pemecahan masalah atau persoalanya diselesaikan menggunakan fungsi. Contoh : LISP, APL, SCHEME.
  2.    Database Programming adalah kumpulan informasi yang di simpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Contoh : SQL.