Senin, 25 September 2017

Kecerdasaan Buatan (Artificial Intelligence)

Pada saat sekarang ini orang-orang mungkin tidak lagi asing dengan istilah kecerdasan buatan atau artificial intelligence (AI). Kita sering menemukan kata-kata ini diberbagai hal yang berhubungan dengan komputer mau itu lewat televisi, artikel atau hanya sekedar terbaca di brosur promosi produk. Nah, tapi apa kalian tau apa sebenarnya kecerdasan buatan itu?.

Kecerdasan buatan adalah cabang ilmu pengetahuan yang memungkinkan kita untuk menciptakan sebuah sistem logika berfikir yang menyerupai logika berfikir manusia normal yang selanjutnya akan ditanamkan dalam sebuah mesin (komputer) yang berguna untuk menyelesaikan berbagai masalah yang kompleks dengan cara yang tentu saja manusiawi. Dikatakan manusiawi karena manusia pada dasarnya memiliki sifat empati yang dapat mempengaruhi pola pikir mereka baik dalam menyelesaikan masalah atau bahkan mengambil sebuah keputusan. Jadi dengan kata lain, kecerdasan buatan ini bertujuan untuk menciptakan sebuah mesin (komputer) agar dapat melakukan sebuah pekerjaan sebaik yang dilakukan oleh manusia. Kecerdasan buatan ini sendiri diharapkan dapat menunjang kinerja manusia dimasa depan karena mesin(komputer) tidak lagi hanya sebatas "mesin hitung" karena telah diberikan fungsi penalaran, pengambilan keputusan, serta memiliki pola pikir seperti manusia.

Karena kecerdasan buatan ini, "mungkin" saja dimasa depan kita tidak akan lagi mengenal komputer yang ada pada saat ini dikarenakan bentuknya mungkin akan berubah secara signifikan. Signifikan maksudnya adalah komputer dimasa depan bisa saja akan berbentuk menyerupai manusia asli dengan alat gerak lengkap, punya kelima indera, memiliki wajah, kulit, rambut dan mungkin saja kita bahkan tidak dapat membedakan komputer dan manusia asli. Hal ini mungkin saja atau bahkan benar-benar akan terjadi dilihat dari sangat pesatnya perkembangan komputer dan ilmu pengetahuan tentang teknologi sekarang ini. Tapi apapun yang akan terjadi kedepannya, semoga saja semua perkembangan ini benar-benar akan berdampak baik dan akan memajukan kesejahteraan manusia dimasa yang akan datang.

Jadi, bagaimana menurut kalian? Apakah kecerdasan buatan ini bagus untuk dikembangkan dan membawa dampak baik kedepannya atau malah sebaliknnya? Mari saling berbagi pendapat bersama-sama melalui kolom komentar >.< !!

Sekian, Terimakasih-
®y-

Rabu, 26 April 2017

PERANCANGAN SISTEM TERSTRUKTUR (Stuctured Analisys and Design / SSAD)

A. Penjelasan tentang Perancangan Sistem Terstruktur (Structured Analisys and Design / SSAD)
Perancangan Sistem Terstruktur merupakan hasil turunan dari pemrograman terstruktur yang dikenalkan pada tahun 1970, merupakan pendekatan formal untuk memecahkan masalah-masalah yang ada menjadi bagian-bagian kecil sehingga lebih mudah diatur dan dihubungkan kembali sehingga dapat menjadi satu. Sehingga dapat dikatakan bahwa Perancangan Sistem Terstruktur merupakan aktifitas mengubah hasil yang didapat pada tahap analisis kedalam tahap perancangan untuk selanjutkan diimplementasikan. Perancangan ini menggunakan alat-alat (tools) dan teknik-teknik yang memudahkan dalam pengembangan sistem yang akan dibuat, jadi hasil yang akan diperoleh adalah sistem yang definisi strukturnya  baik dan jelas.

Tools yang digunakan dalam Perancangan Sistem Terstruktur antara lain:
  • DFD (Data Flow Diagram)
  • ERD (Entity Relationship Diagram)
  • Kamus Data
  • State Transition Diagram (STD)
Sedangkan bahasa pemrograman yang banyak digunakan adalah C, C#, Pascal dll.

Pada Perancangan Sistem Terstruktur terdapat dua pendekatan yang digunakan yaitu pendekatan berorientasi proses dan pendekatan berorientasi data, yang mana tujuan dari kedua pendekatan ini adalah untuk mengidentifikasikan semua atribut data  yang dibutuhkan oleh sistem yang sedang dikembangkan.

B. Ciri-Ciri Utama Perancangan Sistem Terstruktur
Setiap hal pasti memiliki beberapa ciri khas yang dapat membedakan, sama hal nya juga dengan perancangan sistem. Ciri-ciri utama perancangan sistem terstruktur adalah:
  • Merancang berdasarkan modul
  • Bekerja dengan pendekatan top-down
  • Kegiatan dilakukan secara paralel
  • Dilakukan secara iterasi
C. Kelebihan dan Kekurangan Perancangan Sistem Terstruktur
Sama seperti ciri khas, setiap hal juga pasti memiliki kelebihan dan kekurangan masing-masing dan berikut adalah kelebihan dan kekurangan dari Perancangan Sistem Terstruktur.

- Kelebihan Perancangan Sistem Terstruktur
1. Milestone (batu loncatan) diperlihatkan dengan jelas.
2. Merupakan pendekatan visual sehingga lebih mudah dimengerti oleh pengguna atau programmer.
3. Menggunakan analisis grafis dan tool seperti DFD, sehingga perancangan sistem terstruktur menjadi lebih baik dan bagus untuk digunakan.
4. Merupakan metode yang diketahui secara umum pada berbagai industry.
5. Metode ini sudah sangat matang dan layak untuk digunakan karena sudah diterapkan sejak lama.
6. Memungkinkan untuk melakukan validasi antara berbagai kebutuhan.

- Kekurangan Perancangan Sistem Terstruktur
1. Terlalu berfokus pada orientasi proses.
2. Memiliki manajemen langsung yang sangat sedikit terkait dengan Perancangan Sistem Terstruktur.
3. Interaksi antara analisis atau pengguna tidak komprehensif.
4. Sangat sulit bagi pengguna untuk melakukan evaluasi.
5. Sulit untuk memutuskan ketika ingin menghentikan dekomposisi dan mulai membuat sistem.
6. Tidak selalu memenuhi kebutuhan pengguna.
7. Tidak dapat memenuhi kebutuhan terkait bahasa pemrograman berorientasi objek.

-Pertanyaan :
"Apa yang sebaiknya dilakukan jika mendapat kesulitan saat memecahkan masalah kompleks (menjadi bagian-bagian kecil) yang dihadapi?"

Sabtu, 25 Februari 2017

Pengertian Dan Tahapan Dalam System Development Life Cycle (SDLC)

System Development Life Cycle (SDLC) adalah segala bentuk proses, tahapan, langkah atau siklus yang dilalui oleh  Analis Sistem dalam pembuatan, pengubahan, dan perawatan serta metodologi yang digunakan untuk pengembangan pada sebuah sistem.

Dapat dikatakan juga SDLC merupakan alur kerja baku dalam pembuatan sistem. SDLC bukan hanya semata diperlukan dalam tahap pembuatan atau pengembangan sebuah sistem namun juga mencakup tahap maintenance yang sangat penting dalam sebuah sistem.

Dalam SDLC sendiri bisa menggunakan berbagai macam metodologi. Metodologi-metodologi yang dapat digunakan dalam SDLC antara lain: Metodologi Waterfall (Air Terjun), Metodologi Spiral, Rapid Application Development (RAD), dan Prototyping. Masing-masing metodologi memiliki kelebihan dan kekurangannya masing-masing. Namun, dalam SDLC kebanyakan cenderung menggunakan metolodi Waterfall. Hal ini dikarenakan kelebihan metodologi Waterfall sebagai berikut:
1. Proses pengembangan sangat terstruktur dan sistematik.
2. Melalui definisi kebutuhan, sehingga kesenjangan yang terjadi antara kebutuhan dan sistem yang dihasilkan dapat diminimalisir.
3. Menghasilkan petunjuk arah pengembangan yang jelas bagi manajemen.

SDLC menggunakan metodologi  waterfall perlu waktu cukup panjang dalam pengembangannya, hal ini dikarenakan jika satu tahap belum selesai dikerjakan maka kita tidak bisa melangkah untuk mengerjakan tahap selanjutnya. Hal ini lah yang merupakan kelemahan dalam penggunaan SDLC. Berikut adalah contoh metodologi 'Waterfall'.



SDLC dibagi menjadi 5 tahap, yaitu Perencanaan Sistem (System Planning), Analisis Sistem (System Analysis), Perancangan Sistem (System Design), Implementasi Sistem (System Implementation), Pemeliharaan Sistem (System Maintenance).


Tahap-tahap diatas akan dijelaskan sebagai berikut.

A. Perencanaan Sistem (Systems Planning)
Pada tahap ini ditekankan pada aspek studi kelayakan pengembangan sistem (feasibility study).
Hal-hal yang dilakukan adalah :
• Pembentukan dan konsolidasi tim pengembang.
• Mendefinisikan tujuan dan ruang lingkup pengembangan.
• Mengidentifikasi apakah masalah-masalah yang ada bisa diselesaikan melalui pengembangan sistem.
• Menentukan dan evaluasi strategi yang akan digunakan dalam pengembangan sistem.
• Penentuan prioritas teknologi dan pemilihan aplikasi.

B. Analisis Sistem (Systems Analysis)
Analisa sistem adalah tahap di mana dilakukan beberapa aktivitas berikut:
• Melakukan studi literatur untuk menemukan suatu kasus yang bisa ditangani oleh sistem.
• Brainstorming dalam tim pengembang mengenai kasus mana yang paling tepat dimodelkan dengan sistem.
• Mengklasifikasikan masalah, peluang, dan solusi yang mungkin diterapkan untuk kasus tersebut.
• Analisa kebutuhan pada sistem dan membuat batasanĂ‚ sistem.
• Mendefinisikan kebutuhan sistem. 

C. Perancangan Sistem (Systems Design)
Pada tahap ini, features dan operasi-operasi pada sistem dideskripsikan secara detail. Aktivitas-aktivitas yang dilakukan adalah:
• Menganalisa interaksi obyek dan fungsi pada sistem.
• Menganalisa data dan membuat skema database.
• Merancang user interface.

D. Implementasi Sistem (Systems Implementation)
Tahap berikutnya adalah implementasi yaitu mengimplementasikan rancangan dari tahap-tahap sebelumnya dan melakukan uji coba. Dalam implementasi, dilakukan aktivitas-aktivitas sebagai berikut:
• Pembuatan database sesuai skema rancangan.
• Pembuatan aplikasi berdasarkan desain sistem.
• Pengujian dan perbaikan aplikasi (debugging).

E. Pemeliharaan Sistem (Systems Maintenance)

Dilakukan oleh admin yang ditunjuk untuk menjaga sistem tetap mampu beroperasi secara benar melalui kemampuan sistem dalam mengadaptasikan diri sesuai dengan kebutuhan.

--------------------------------------------------------------------------------------------------------------------------