Rabu, 25 September 2019

SDLC (System Development Life Cycle)



PENGERTIAN

SDLC  (System Development  Life  Cycle) atau Siklus  Hidup Pengembangan Sistem dalam rekayasa perangkat lunak adalah tahapan-tahapan pekerjaan yang dilakukan oleh analis sistem dan programmer dalam membangun sistem informasi. tahapan yang digunakan adalah :

1. Melakukan survei dan menilai kelayakan proyek pengembangan sistem informasi

2. Mempelajari dan menganalisis sistem informasi yang sedang berjalan

3. Menentukan permintaan pemakai sistem informasi

4. Memilih solusi atau pemecahan masalah yang paling baik

5. Menentukan perangkat keras (hardware) dan perangkat lunak (software)

6. Merancang sistem informasi baru

7. Membangun sistem informasi baru

8. Mengkomunikasikan dan mengimplementasikan sistem informasi baru

9. Memelihara dan melakukan perbaikan/peningkatan sistem informasi baru bila diperlukan

Ada beberapa model pada SDLC, Model yang cukup populer dan banyak digunakan adalah waterfall. Beberapa model lain SDLC misalnya fountain, spiral, rapid, prototyping, incremental, build & fix, dan synchronize & stabilize. Dengan siklus SDLC, proses membangun sistem dibagi menjadi beberapa langkah dan pada sistem yang besar, masing-masing langkah dikerjakan oleh tim yang berbeda. Dalam sebuah siklus SDLC, terdapat enam langkah. Jumlah langkah SDLC pada referensi lain mungkin berbeda, namun secara umum sama. Langkah tersebut adalah :

1. Analisis sistem, yaitu membuat analisis aliran kerja manajemen yang sedang berjalan

2. Spesifikasi kebutuhan sistem, yaitu melakukan perincian mengenai apa saja yang dibutuhkan dalam pengembangan sistem dan membuat perencanaan yang berkaitan dengan proyek sistem

3. Perancangan sistem, yaitu membuat desain aliran kerja manajemen dan desain pemrograman yang diperlukan untuk pengembangan sistem informasi

4. Pengembangan sistem, yaitu tahap pengembangan sistem informasi dengan menulis program yang diperlukan

5. Pengujian sistem, yaitu melakukan pengujian terhadap sistem yang telah dibuat

6. Implementasi dan pemeliharaan sistem, yaitu menerapkan dan memelihara sistem yang telah dibuat

Siklus SDLC dijalankan secara berurutan, mulai dari langkah pertama hingga langkah keenam. Setiap langkah yang telah selesai harus dikaji ulang, kadang-kadang bersama expert user, terutama dalam langkah spesifikasi kebutuhan dan perancangan sistem untuk memastikan bahwa langkah telah dikerjakan dengan benar dan sesuai harapan. Jika tidak maka langkah tersebut perlu diulangi lagi atau kembali ke langkah sebelumnya.


Model - Model SDLC

A. Model Waterfall
Gambar 1. Model Waterfall
Model ini biasa disebut model Waterfall atau model sekuensial linier (sequential linear). Model Waterfall menyediakan pendekatan alur perangkat lunak secara sekuensial/terurut  mulai dari Requirement, Design, Implementation, Verification, dan Maintenance.

1. Requirement Gathering and analysis
Mengumpulkan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun. Fase ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap.

2. Design
Dalam tahap ini pengembang akan menghasilkan sebuah sistem secara keseluruhan dan menentukan alur perangkat lunak hingga algoritma yang detail.

3. Implementation 
Adalah Tahapan dimana seluruh desain diubah menjadi kode kode progam . Kode progam yang dihasilkan masih berupa modul-modul yang akan diintregasikan menjadi sistem yang lengkap.

4. Verification
Adalah client/user menguji apakah sistem tersebut telah sesuai dengan yang disetujui.

5. Maintenance
Yaitu instalasi dan proses perbaikan sistem sesuai yang disetujui.































































































B. Model Prototype
Gambar 2. Model Prototype




Prototype digunakan untuk memungkinkan client/user mengevaluasi sistem yang di rancang di awal oleh developer dan mencobanya sebelum di implementasikan. Hal ini dapat membantu memahami persyaratan pembangunan sistem yang spesifik oleh user dan mungkin belum implementasikan oleh developer selama perancangan produk.

C. Model Rapid Application Development (RAD)
Gambar 3. Model RAD
Model pengembangan yang menggunakan pendekatan orientasi komponen terhadap pengembangan perangkat lunak. Model ini bertujuan mempersingkat waktu yang biasanya diperlukan dalam siklus hidup pengembangan konvensional.

D. Model Agile
Gambar 4. Model Agile









Ditulis oleh (Widodo Journal : 2006:1) Pada tahun ke 90 an diperkenalkan metodologi baru yang dikenal dengan nama Metode Agile. Metodologi ini sangat revolusioner perubahannya jika dibandingkan dengan metode sebelumnya. Metode Agile dikembangkan karena pada metodologi tradisional terdapat banyak hal yang membuat proses pengembangan tidak dapat berhasil dengan baik sesuai tuntutan user. Saat ini metodologi ini sudah cukup banyak berkembang, diantaranya adalah:

1. eXtreme Programming (XP)

 
Gambar 5. XP

XP Adalah sebuah pendekatan atau model pengembangan perangkat lunak yang mencoba menyederhanakan berbagai tahapan dalam proses pengembangan tersebut sehingga menjadi lebih adaptif dan fleksibel. XP bukan hanya berfokus pada coding tetapi meliputi seluruh area pengembangan perangkat lunak. XP mengambil pendekatan ‘ekstrim’ dalam iterative development.

2. Scrum Methodology
Gambar 6. Scrum
Scrum merupakan framework untuk manajemen pengembangan software dengan karakteristik cekatan dan bersifat iteratif dan incremental. Scrum mendefinisikan dirinya fleksible, strategi pengembangan yang menyeluruh di mana seluruh team bekerja sebagai satu unit dalam mencapai tujuan yang sama.

3. Crystal Family

Gambar 7. Crystal Family
Crystal Family menggunakan warna yang berbeda untuk menunjukkan "berat", untuk menentukan metodologi yang digunakan. Jika proyek tersebut merupakan proyek kecil, maka metodologi seperti Crystal Clear, Crystal Orange atau Crystal Kuning dapat digunakan. Atau jika proyek tersebut merupakan sebuah misi yang kritis dimana dapat membahayakan kehidupan manusia, maka metode Crystal Diamond atau Crystal Sapphire akan digunakan.


4. Dynamic Systems Development Method (DSDM)
Gambar 8. DSDM
Dynamic System Development Method adalah sebuah kerangka kerja yang mengutamakan keterlibatan pengguna secara berkesinambungan dengan pendekatan pengembangan secara berulang dan bertambah, yang menangani proyek secara efektif dan efisien.

5. Adaptive Software Development (ASD)
Gambar 9. ASD
Adaptive Software Development adalah metode yang diajukan oleh Jim Highsmith sebagai teknik untuk membangun software dan sistem yang kompleks. Filosofi yang mendasari metode ini adalah kolaborasi manusia dan tim yang mengatur diri sendiri.

6. Feature Driven Development (FDD)

Gambar 10. FDD

Feature Driven Development adalah proses pengembangan perangkat lunak yang iterative dan incremental. Kerangka kerja ini termasuk termasuk dalam metode Agile yang digunakan untuk mengembangkan perangkat lunak. FDD memadukan sejumlah praktik terbaik yang diakui industri menjadi satu kesatuan yang utuh. Praktik-praktik ini didorong dari perspektif fungsionalitas (fitur) yang dihargai klien. Tujuan utamanya adalah untuk memberikan perangkat lunak yang nyata dan berfungsi berulang kali secara tepat waktu sesuai dengan prinsip di balik Agile Manifesto.

 Jika kita lihat dari beberapa metodologi diatas, Agile bisa berarti tangkas, cepat, atau ringan. Agility merupakan metode yang ringan dan cepat dalam pengembangan perangkat lunak. Agile Alliance mendefinisikan 12 prinsip untuk mencapai proses yang termasuk dalam agility:


  • Prioritas tertinggi adalah memuaskan pelanggan melalui penyerahan awal dan perangat lunak yang bernilai.
  • Menerima perubahan requirements meskipun perubahan tersebut diminta pada akhir pengembangan.
  • Memberikan perankat lunak yang sedangdikerjakan dengan sering,beberapa min ggu atau bulan, dengan pilihan waktu yang paling singkat.
  • Pihak bisnis dan penggembangan harus berkerja sama setiap hari selam penggembangan berjalan.
  • Bangun proyek dengan individu-individu yang bermotivasi tinggi dengan memberikan lingkungan dan dukungan yang diperlukan, dan mempercyai mereka sepenuhnya untuk menyelesaikan pekerjaannya.
  • Metode yang paling efektif dan efisien dalam menyampaikan informasi kepada tim pengembangan adalah dengan komunikasi langsung  face to face.
  • Perangkat lunak yang dikerjakan merupakan pengukur utama kemajuan.
  • Proses agile memberikan proses pengembangan  yang bias ditopang.Sponsor,pengembangan, dan user garus bias menjaga ke-konstanan langkah yang tidak pasti.
  • Perhatian yang harus terus mennerus terhadap rangcangan dan teknik yang baik meningkatkan agility.
  • Keserdahanaan seni untuk meminimalkan jumlah pekerjaan adalah penting
  • Arsitektur,requirements, dan rancangan terbaik muncul dari tim yang mengatur sendiri.
  • Pada interval reguler tertentu,tim merefleksikan bagaimana menjadi lebih efektif, kemudian menyesuaikannya. 


 Kebutuhan Sistem

Untuk mempermudah menganalisis sebuah sistem dibutuhkan dua jenis kebutuhan. Kebutuhan fungsional dan kebutuhan nonfungsional. Kebutuhan fungsional adalah kebutuhan yang berisi proses-proses apa saja yang nantinya dilakukan oleh sistem. Sedangkan kebutuhan nonfungsional adalah kebutuhan yang mengarah pada perilaku yang dimiliki oleh sistem. 


 
-  Sekian Terimakasih :)  -

Sabtu, 21 September 2019

Sistem Informasi




PENDAHULUAN

Sistem informasi (Information System) bisa diartikan sebagai sekumpulan komponen yang saling berhubungan, mengumpulkan atau mendapatkan, memproses, menyimpan dan mendistribusikan informasi untuk menunjang pengambilan keputusan dan pengawasan dalam suatu organisasi serta membantu pengguna mengambil keputusan.

Informasi dalam suatu lingkungan sistem informasi harus mempunyai persyaratan umum sebagai berikut :

  • Harus diketahui oleh penerima sebagai referensi yang tepat 
  • Harus sesuai dengan kebutuhan yang ada dalam proses pembuatan / pengambilan keputusan
  • Harus mempunyai nilai kejut, yaitu hal yang sudah diketahui sebaiknya jangan diberikan
  • Harus dapat menuntun pemakai untuk membuat keputusan. Suatu keputusan tidak selalu menuntut adanya tindakan.
Sistem informasi juga harus mempunyai beberapa sifat seperti :
  • Pemprosesan informasi yang efektif. Hal ini berhubungan dengan pengujian terhadap data yang masuk, pemakaian perangkat keras dan perangkat lunak yang sesuai
  • Manajemen informasi yang efektif. Dengan kata lain, operasi manajemen, keamanan dan keutuhan data yang ada harus diperhatikan
  • Keluwesan. Sistem informasi hendaknya cukup luwes untuk menangani beberapa macam operasi
  • Kepuasan pemakai. Hal yang paling penting adalah pemakai mengetahui dan puas terhadap sistem informasi. 

Pengertian Analisis Sistem

Analisis sistem merupakan penjabaran dari suatu sistem informasi yang utuh ke dalam berbagai macam bagian komponennya dengan maksud agar kita dapat mengidentifikasi atau mengevaluasi berbagai macam masalah maupun hambatan yang akan timbul pada sistem sehingga nantinya dapat dilakukan penanggulangan, perbaikan atau juga pengembangan.
 
 
 Gambar 1. Analisis Sistem Informasi

Tujuan Analisis Sistem

Tujuan analisis sistem informasi yakni utuk merancang sistem baru maupun menyempurnakan sistem yang sudah ada sebelumnya. Berikut ini, tujuan dari analisis keuangan diantaranya yakni :
  • Kita dapat Membuat keputusan jika sistem saat ini bermasalah ataupun juga tidak berfungsi dengan baik & hasil analisisnya akan digunakan sebagai dasar untuk memperbaiki sistem.
  • Mengetahui ruang lingkup pekerjaan yang akan dapat ditandatangani
  • Mengidentifikasi masalah atau mencari pemecah masalahnya
  • Mempelajari sistem yang sedang berjalan saat ini.

 

Fungsi Analisis Sistem
  • Adapun beberapa fungsi analisis sistem yang diantaranya yakni:
  • Kita Dapat mengidentifikasikan berbagai macam masalah dari pemakai .
  • Kita akan Menentukan secara jelas mengenai sasaran yang harus dicatat untuk dapat memenuhi kebutuhan user.
  • Dapat memilih metode alternatif dalam akan memecahkan masalah pada sistem.
  • Dapat merencanakan ataupun menerapkan rancangan sistem sesuai dengan apa yang diinginkan user.

Langkah - Langkah Analisa Sistem

Langkah-langkah dalam tahap analisa sistem hampir sama dengan  proyek-proyek sistem yang akan dibesarkan di tahap perencanaan sistem. Perbedaannya terletak pada ruang-ruang lingkup tugasnya. Di analisa sistem, tugas ruang lingkup lebih terperinci. Di analisa sistem ini, penelitian yang akan dilakukan oleh analis sistem adalah penelitian terinci, sedangkan di perencanaan sistem sifatnya hanyalah penelitian pendahuluan. Di dalam tahap analisa sistem terdapat beberapa langkah-langkah dasar yang harus dilakukan oleh analis sistem, yaitu sebagai berikut :

  • Identify, merupakan pengidentifikasian masalah
  • Understand, merupakan pemahaman kerja dari sistem yang ada
  • Analyze, merupakan penganalisaan sistem
  • Report, merupakan pembuatan laporan hasil analisis

A. Komponen  Sistem  Informasi 
Sistem informasi terdiri dari komponen - ­komponen yang disebut blok bangunan (building blok), yang terdiri dari komponen input, komponen model, komponen output, komponen teknologi,  komponen hardware, komponen software, komponen basis data, dan komponen kontrol. Semua  komponen tersebut saling berinteraksi satu dengan yang lain membentuk suatu kesatuan untuk  mencapai sasaran. Berikut jenis - jenis komponennya:

1. Komponen input
Input mewakili data yang masuk kedalam sistem informasi. Input disini termasuk metode dan media  untuk menangkap data yang akan dimasukkan,  yang dapat berupa dokumen dokumen dasar.

2. Komponen model
Komponen ini terdiri dari kombinasi prosedur, logika, dan model matematik yang  akan memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah ditentukan untuk menghasilkan keluaran yang diinginkan.

3. Komponen output
Hasil dari sistem informasi adalah keluaran yang merupakan informasi yang berkualitas dan dokumentasi yang berguna untuk semua pemakai sistem.

4. Komponen teknologi
Teknologi merupakan “tool box” dalam sistem informasi, Teknologi digunakan untuk menerima input, menjalankan model, menyimpan dan mengakses data, menghasilkan atau
mengirimkan keluaran, dan membantu pengendalian dari sistem secara keseluruhan.

5. Komponen hardware
Hardware berperan penting sebagai suatu media penyimpanan vital bagi sistem informasi. Yang berfungsi  sebagai tempat untuk menampung database atau lebih mudah dikatakan sebagai sumber data dan informasi untuk  memperlancar dan mempermudah kerja dari sistem informasi.
 Gambar 1. Hardware

6. Komponen software
Software berfungsi sebagai tempat untuk mengolah,menghitung dan memanipulasi data yang  diambil dari hardware untuk menciptakan suatu informasi.


Gambar 2. Software
7. Komponen basis data
Basis data (database) merupakan kumpulan data yang saling berkaitan dan berhubungan satu  dengan yang lain, tersimpan di pernagkat keras komputer dan menggunakan perangkat lunak untuk memanipulasinya. Data perlu disimpan dalam basis data untuk keperluan penyediaan informasi lebih lanjut. Data di dalam basis data perlu diorganisasikan sedemikian rupa supaya informasi yang dihasilkan berkualitas. Organisasi basis data yang baik juga berguna  untuk efisiensi kapasitas penyimpanannya. Basis data diakses atau dimanipulasi menggunakan perangkat lunak paket yang disebut DBMS (DataBase Management  System).

8. Komponen kontrol
Banyak hal yang dapat merusak sistem informasi, seperti bencana alam, api, temperatur, air, debu, kecurangan atau­ kegagalan sistem itu  sendiri, ketidak efisienan, sabotase  dan lain sebagainya. Beberapa pengendalian perlu dirancang dan diterapkan untuk meyakinkan  bahwa hal - ­hal yang dapat  merusak sistem dapat dicegah ataupun bila terlanjur terjadi kesalahan - ­kesalahan dapat langsung cepat diatasi.


B. Elemen-Elemen Sistem Informasi
Sistem informasi terdiri dari elemen - ­elemen yang terdiri dari Orang, Prosedur, Perangkat keras, Perangkat lunak, Basis data, Jaringan komputer dan Komunikasi data. Semua elemen ini merupakan komponen fisik.

1. Orang
Orang atau personil yang di maksudkan yaitu operator komputer, analis sistem, programmer, personil data entry, dan manajer sistem informasi/EDP

2. Prosedur
Prosedur merupakan elemen fisik. Hal ini di sebabkan karena prosedur disediakan dalam bentuk fisik seperti buku panduan  dan instruksi. Ada 3 jenis prosedur yang dibutuhkan, yaitu instruksi untuk pemakai, instruksi  untuk penyiapan masukan, instruksi pengoperasian untuk karyawan pusat komputer.

3. Perangkat keras
Perangkat keras bagi suatu sistem informasi terdiri atas komputer (pusat pengolah, unit masukan/keluaran), peralatan penyiapan data, dan terminal masukan/keluaran.

4. Perangkat lunak
Perangkat lunak dapat dibagi dalam 3 jenis  utama yaitu :
A. Sistem perangkat lunak umum, seperti sistem pengoperasian dan sistem manajemen data yang memungkinkan pengoperasian sistem komputer.
B. Aplikasi perangkat lunak umum, seperti model analisis  dan keputusan.
C. Aplikasi pernagkat lunak yang terdiri atas program yang secara spesifik dibuat untuk setiap aplikasi.

5. Basis data
File yang berisi program dan data dibuktikan dengan adanya media penyimpanan secara fisik seperti diskette, hard disk, magnetic tape, dan sebagainya. File juga meliputi keluaran tercetak  dan catatan lain diatas kertas, mikro film, antaralain sebagainya.

6. Jaringan komputer
Jaringan komputer adalah sebuah kumpulan komputer, printer dan peralatan lainnya yang terhubung  dalam satu kesatuan. Informasi dan data bergerak melalui kabel­ - kabel atau tanpa kabel sehingga  memungkinkan pengguna jaringan komputer dapat saling bertukar dokumen dan data.

C. Jenis-Jenis Sistem Informasi
Sistem informasi pada dasarnya bisa terbagi menjadi beberapa jenis. Jenis-jenis dari sistem informasi tersebut biasanya terdiri dari spesifikasi dan juga fungsi tertentu yang ada di dalam suatu perusahaan atau organisasi. Paling tidak ada 7 jenis sistem informasi yang saat ini banyak diimplementasikan di beberapa perusahaan ataupun organisasi.

1. Sistem Informasi Manajemen

Sesuai dengan namanya, sistem informasi manajemen merupakan salah satu pengimplementasian dari sistem informasi yang digunakan pada sasaran kalangan manajerial. Kalangan manjerial merupakan  individu yang memiliki posisi di dalam sebuah organisasi dan lingkup pekerjaan yang bertugas untuk melakukan manajemen pada suatu divisi atau bagian di dalam organisasi dan juga perusahaan.

2. Sistem Informasi Eksekutif

Sistem informasi eksekutif berarti merupakan sebuah sistem informasi yang dikembangkan dan juga diimplementasikan untuk memberikan kemudahan arus informasi suatu organisasi atau perusahaan kepada mereka yang berada pada level eksekutif.

3. Sistem Informasi Akuntansi
Sistem informasi akuntansi atau SIA merupakan salah satu pengimplementasian dari sistem informasi manajemen, yang berhubungan dengan kegiatan akuntansi dan juga penghitungan dari sebuah perusahaan ataupun organisasi. Seperti kita ketahui, akuntansi merupakan proses yang dilakukan untuk melihat kondisi kesehatan keuangan dan finansial, serta bagaimana suatu sistem keuangan di dalam sebuah perusahaan atau organisasi dapat berjalan.

4. Sistem Informasi Keuangan
Sistem informasi keuangan terkadang merupakan salah satu implementasi dari sistem informasi yang berada di bawah naungan manajemen, namun terkadang sistem informasi keuangan juga merupakan sistem informasi yang berdiri sendiri. Ada beberapa perusahaan yang melibatkan pihak manajemen dalam membantu proses pengaturan keuangan perusahaan, dan ada yang tidak. Sehingga hal ini tergantung dari budaya organisasi dari perusahaan tersebut.

5. Sistem Informasi Manufaktur
Bagi perusahaan yang bergerak di bidang manufaktur dan juga produksi, terutama produksi barang, maka sistem informasi manufaktur merupakan salah satu jenis sistem informasi yang wajib dimilki. Sistem informasi manufaktur kebanyakan digunakan dan juga diimplementasikan pada bagian produksi perusahaan yang bergerak di bidang produksi.

6. Sistem Informasi Sumber Daya Manusia
Jenis sistem informasi yang berikutnya adalah sistem informasi sumber daya manusia alias SDM. Sesuai dengan namanya, biasanya sistem informasi ini berhubungan dengan bagian personalia, atau HR dari suatu perusahaan dan juga organisasi.

7. Sistem Informasi Pemasaran
Jenis sistem informasi berikutnya yang banyak diimplementasikan adalah jenis sistem informasi pemasaran. Jenis sistem informasi ini sangat penting terutama bagi bagian pemasaran suatu perusahaan.




- Sekian, Terimakasih :) -