Jumat, 08 Mei 2015

Studi Kasus Flow Of Diagram ( Narasi Penjualan )

Setelah membahas simbol dari FOD kini kita akan belajar studi kasus dari narasi penjualan :

Pelanggan menyerahkan data Jualan dan data pelanggan ke bagian administrasi.  Oleh bagian administrasi data Jualan dan data pelanggan dibuat surat Penjualan rangkap dua. Data Jualan, data pelanggan diarsip bagian administrasi. Surat Penjualan lembar pertama diserahkan pelanggan untuk di arsip, dan surat Penjualan lembar ke 2 digunakan oleh bagian administrasi untuk membuat laporan Penjualan sebanyak 2 rangkap yang diserahkan manajer untuk di-acc.  Laporan Penjualan lembar pertama di arsip oleh Manajer, Laporan Penjualan lembar kedua,  dan surat order di arsip oleh bagian administrasi.


Alat Bantu Analisis Sistem

Setelah kemarin kita sudah belajar pengertian definisi analisis sistem, pada postingan kali ini kita akan belajar alat bantu analisis sistem. Salah satu alat bantu sistem yang sering dipakai adalah (Flow Of Document)  atau bagan alir dokumen atau bagan alir formulir yang merupakan bagan alir yang menunjukan arus dari laporan dan formulir termasuk tembusan – tembusannya. Bagan alir dokument ini menggunakan simbol – simbol yang sama dengan bagan alir sistem.
 Berikut simbol simbol yang digunakan :
Nama Simbol
Simbol
DOKUMEN
Menunjukkan input dan output baik untuk proses manual, mekanik / komputer.



KEGIATAN MANUAL
Sistem yang menunjukkan proses yang dilakukan secara manual.


PENGHUBUNG
Digunakan untuk menunjukkan sambungan dari bagian alir yang terputus dari halaman yang masih sama


PERHUBUNGAN
Digunakan untuk menunjukkan sambungan 


GARIS ALIR
Simbol garis alih (flow line simbol) menunjukkan arus dari proses



SIMBOL SIMPANAN OFLINE
File non komputer yang diarsip urut angka (Numerical)
File non komputer yang diarsip urut abjad (Alphabetical)
File non komputer yang diarsip urut tanggal






Sumber : Jogiyanto, Analisa dan Desain Sistem Informasi. Yogyakarta: Andi Offset, 2005.

Selasa, 07 April 2015

Definisi Analisis Sistem

Kegiatan  analisls   sistem  adalah  kegiatan   untuk  melihat   sistem  yang sudah berialan,  melihat bagian mana yang bagus dan tidak bagus,  dan kemudian   mendokumentasikan   kebutuhan yang akan dipenuhi  dalam sistcm yang baru.  Hal tersebut  terlihat sederhana,   namun  sebenarnya tidak.  Banyak hambatan yang akan ditemui  dalam proses tersebut..


Pada banyak proyek  sistem informasi,   proses analisis   dan   desain sering  kali berialan  bersama-sama.  Jadi selama  kegiatan  analisis, kegiatan desain juga  dilakukan. Hal ini dilakukan karena pada banyak kasus,   user  sering   kesulitan   untuk   mendefinisikan   kebutuhan mereka.  Jadi mereka akan lebih mudah  mendefinisikan  kebutuhan, jika   mereka   telah   melihat    gambar   rancangan    sistem   yang   baru, khususnya rancangan  antarrnuka

Sumber : Rosa A. S, Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek. Bandung, Indonesia: Informatika, 2014.

Conversi Rekayasa Perangkat Lunak

Teknologl informasi sosial  atau Social information technology  (social IT)    adalah   faktor   atau   aspek   sosial yang  berkaitan dengan implementasi suatu  teknologl informasi. Sebuah produk perangkat lunak  tidak hanya berkutat di masalah teknologi dan  teknis. Sering sebuah  produk  perangkat lunak  hanya  dibuat berdasarkan  sudut pandang pengembang perangkat lunak  yang memiliki kecenderungan berpola pikir teknis. Sebuah perangkat lunak dianggap berkualitas jika mernenuhi kebutuhan pelanggan (customer) dan sesuai  keinginan  pelanggan (customer). Sering kendala dari pengembangan perangkat lunak bukan berada pada masalah teknis (teknologi perangkat lunak dan perangkat keras) tapi  pada kondisi lingkungan pelanggan,  misalnya ternyata  yang  akan  menjadi   user atau   pemakai  perangkat  lunak belum bisa mengoperasikan komputer, atau keengganan user untuk mengubah kebiasannya bekerja menggunakan perangkat lunak yang baru  atau dari manual menjadi menggunakan perangkat lunak, lingkungan   yang tidak  mendukung   disiplin  (misalnya   untuk  aplikasi keuangan)  maka dari itu perlu adanya analisis  terlebih dahulu di lingkungan pelanggan apakah dapat dijalankan perangkat lunak yang akan dikembangkan,  karena  sebaik  apapun  perangkat  lunak jika tidak mampu  digunakan  di  lingkungan  pelanggan  maka  perangkat   lunak itu  hanya   akan   menjadi    "artifak"  yang   disimpan  di   gudang   atau bahkan  dibuang.

Hal-hal yang harus  dilakukan  sebelum mengembangkan  perangkat lunak  di lingkungan  tertentu maka harus  dicari  tahu pengetahuan   lingkungan   tentang   teknologi   informasi  dan komputer
  •        "social  knowledge"  atau   "local  knowledge"   (pengetahuau mengenai  budaya  lokal)  di lingkungan  yang  akan dikembangkan   perangkat   lunak,   apakah   memungkinkan untuk  dikembangkan  perangkat  lunak
  •     pengetahuan  tentang  apa saja yang bisa dibatasi  dan  yang tidak,   sehingga   saat  pengembangan   perangkat    lunak   dapat mendeflnisikan aturan main dari  perangkat lunak

Setelah perangkat lunak dikembangkan tetap masih diperlukan adanya sosialisasi  perangkat  lunak  dengan  mengadakan pelatihan secara bertahap,  karena meugubah kebiasaan sebuah lingkungan ke sesuatu yang baru tidaklah gampang  dan yang akan menggunakan perangkat  lunak  memillki  karakter  yang berbeda-beda. Memang  tidak harus   menuruti  semua karakrer,   tapi  setidaknya   dapat   dicari   titik tengah  yang dapat  diterima   semua  pihak.  Komunikasi  yang baik antara  pcugernbang   dan  pelanggan  atau  user sangat  dibutuhkan agar terialin  kerja sarna yaug baik dan saling menguntungkan.
Melakukan konversi dari cara kerja yang lama ke cara kerja  yang baru menggunakan  perangkat   lunak  yang  dikembangkan perlu  dilakukan seeara  bertahap,  karena  perubahan yang ekstrim  akan  menghabiskan lebih  banyak  sumber  daya,  dana,  dan  waktu.  Beberapa  cara  konversi adalah  sebagat  berikut:

  • Konversi paralel




Konversi paralel dilakukan  dengan  melakukan beberapa  waktu transisi dimana ada waktu dimana kedua  sistem  (sistem  lama dan sistem baru) berjalan  bersama   untuk keperluan   transisi sampai  sistem  baru  dapat berjalan  mandiri.  Sumber  daya yang dibutuhkan pada konversi paralel akan banyak terkuras pada waktu transisi.

  • Konversi Langsung
konversi langsung   dilakukan    karena   sistem   lama   secara ekstrirn  Iangsung   diganti   dengan  sistem  yang  baru.  Konversi ini   akan   mengalami   waktu   yang  sangat   sulit   di   awal berjalannya   sistem  baru

  • Konversi per fase
konversi per fase dilakukan dengan berpindah per fase  dari sistcm   lama  ke  sistem  baru  misalkan  pada  awal konversi hanya  pada   pekerjaan  memasukkan     data-data   saja,  pada tahap  berikutnya   rnulai  menggunakan  proses  perhitungan, lalu  fase  berikutnya  mulai   rnenggunakan    proses   pelaporan sistem  baru,  dan  seterusnya  (lebih  fokus  pada  per   fungsi sistem)

  • Konversi pilot atau single locatiion
konversi  pilot  dilakukan dengan  melakukau konvcrsi per unit kerja atau per lokasi di dalam sebuah lingkungan kerja, Misalnya pada tahap awal unit kerja yang sistemnya berubah adalah  bagian keuangan,  berikutnya pada bagian  sumber  daya mannsia, dan seterusnya.





Pengembangaan  perangkat  lunak yang berhasil  dan  dapat  diterima dengan baik tidak hanya memperhatikan  masalah teknis, tapi mernperhatikan masalah nonteknis seperti permasalahan  sosial dan mencermati isu-isu yang sedang berkembang di masyarakat.




Sumber : Rosa A. S, Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek. Bandung, Indonesia: Informatika, 2014.

Proses Rekayasa Perangkat Lunak


Berikut tahapan dalam melakukan rekayasa perangkat lunak :



Gambar : Tahapan Umum Rekayasa Perangakat Lunak

Proses - proses pada gambar diatas dapat dilakukan berulang kali samapai perangkat lunak memenuhi kebutuhan pelanggan atau user. Untuk membangun perangkat lunak yang benar - benar baik maka diperlukan tahapan - tahapan rekayasa perangkat lunak. Perangkat lunak yang yang dibangun tanpa melalui tahanapan rekayasa perangkat lunak yang baikmaka akan seperti membuat baju tanpa pola dan rencana model baju yang baik. Dalam membuat sebuah baju, maka dibutuhkan adanya perencanaan model baju yang baik. Setelah pola baju terbentuk maka kain mulai dipotong sesuai pola, baru kemudian dijahit. Jika baju dibuat tanpa pola, maka yang terjadi adalah baju hasil tambal sulam. Seperti halnya pembuatan perangkat lunak tanpa melalui proses rekayasa perangkat lunak " tambal sulam", begitu kurang maka akan di tambal. Tentu   saju  hasil perangkat  lunak  " tambal sulam "  tidak  akan  bagus,    Contoh  lain misalnya sebuah bangunun tanpa  rencana   yang matang, maka yang terjadi adalah baugunan "tambal sularn"  yang akhirnya dirobohkan atau  bahkan roboh karena pembuataanya tanpa perencanan  yang matang.  Misalkan   awalnya dibuat tanpa jendela, lalu  butuh jendela, maka  ditambahkan  jendela. Jika  butuh  tambahan   lantai  ke atas, maka  ditambahkan   lantai,  tanpa   rnelihat     kekuatan     lantai   di bawahnya.   Maka yang terjadi  adalah  bangunan    yang ambruk  jika tidak   mampu  menahan  kebutuhan  tanpa   perencanaan  yang   baik.

Perkembangan teknologi informasi  saat  ini  sangat  mempermudah dan mempercepat  proses rekayasa perangkat lunak  dengan adanya bermacam-macam   tools desain.   tools pengembangan   seperti  IDE (Integrated   Development  Environment),  appllcatinn  framework, dan lain-lain. Hal tersebut sering disalahartikan oleh pengembang perangkat lunak pemula  dan pelanggan/pengguna  perangkat lunak bahwa  pengembangan perangkat  lunak  bisa  diselesaikan   dalam  satu malam.

Anggapan    tersebut  sangat  tidak tepat.  Rekayasa  perangkat  lunak terdiri   dari  beberapa   kegiatan  yang harus   dilakukan . Jika  tahapan- tahapan   tersehut   tidak  dilalui  deugan  baik, hampir   bisa  dipastikan  perangkat   lunak  yang dihasilkan  tidak  akan mempunyai  kualitas  yang baik, Jadi,  tidak  ada perangkat  Junak yang bisa  dihasilkan   dangan baik hanya   dalam   satu    malam    seperti    mitos pembuatan   candi Prambanan   atau mitos  pembuatan Gunung Tangkuban   Perahu.


Proses   perangkat  lunak   (software process)  adalah   sekumpulan aktifitas   yang   memiliki   tujuan    untuk    mengembangkan   atau mengubah  perangkat lunak. Secara umum   proses  perangkat  lunak terdiri dari:

  • Pengumpulan Spesifilcasi (Specification)

Mengetahui  apa  saja  yang  harus  dapat  dikerjakan  sistem pcrangkat lunak dan batasan pengembangan perangkat lunak
  •        Pengembangan (Development)

Pengembangan  perangkat lunak untuk  menghasilkan  sistem pcrangkat lunak
  •          Validasi (Validation)

Memeriksa apakah    perangkat  lunak   sudah    memenuhi keinginan    pelanggan (customer).
  •          Evolusi (Ewlution)

Mengubah   perangkat  lunak   nntuk   memenuhj perububan kebutuhan pelanggan (customer).

Sumber : Rosa A. S, Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek. Bandung, Indonesia: Informatika, 2014.

Minggu, 05 April 2015

Tantangan Rekayasa perangkat Lunak

Ternyata dalam melakukan rekayasa perangkat lunak memiliki tantangan, tantangan yang dihadapi dari proses rekayasa perangkat lunak, adalah sebagai berikut :

1.        Tantangan warisan dimana perangkat lunak dikembangkan selama bertahun - tahun oleh orang - orang yang berbeda, hal ini dapat menyebabkan ketidakpahaman atau perubahan tujuan pembuatan dari perangkat lunak.

2.        Tantangan heterogenitas dimana perangkat lunak harus dapat beradaptasi dengan teknologi yang terus berkembang dengan semakinluaasnya lingkungan distribusi perangkat lunak.


3.        Tantangan pengiriman bahwa perangkat lunak dengan skala besar dan kompleks sekalipun dapat sampai ke tangan pelanggan dengan cepat dan kualitas tetap terjaga.


Sumber : Rosa A. S, Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek. Bandung, Indonesia: Informatika, 2014.

Kategori Rekayasa Perangkat Lunak

Postingan kali ini akan membahas tentang kategori maupun fase - fase dari perangkat lunakbeserta tantangan nya.

Pada rekayasa perangkat lunak dikategorikan ke dalam tiga buah kategori umum, setiap fase dialamatkan pada 1 pertanyaan atau lebih yang diajukan sebelumnya.

1.        Fase pendefinisian fokus pada "what"
Yang artinya harus mencari tahu atau mengidentifikasi informasi apa yang harus di proses, sepertiapa fungsi dan performasni yang diinginkan, seperti apa perilaku sistem yang diiinginkan, apa kriteria validasi yang dibutuhkan untuk mendefinisikan sistem.

2.        Fase pengembangan yang fokus pada "how"
Yang artinya selama tahap pengembangan perangkat lunak seorang perekayasa perangkat lunak berusaha untuk mendefinisikan bagaimana data distruktur dan bagaimana fungsi yang dibutuhkan diimplementasikan, bagaiman karakter antar muka tampilan, bagaimana desain di translasikan ke bahasa pemrograman, dan bagaimana pengujiannya.

3.        Fase pendukung (support phase)
Fase ini berfokus pada perubahan yang terasosiasi pada perbaikan kesalahan, adaptasi yang dibutuhkan pada lingkungan perangkat lunak yang terlibat, dan perbaikan yang terjadi akibat perubahan kebutuhan pelanggan, pada fase pendukung terdapat 4 tipe perubahan, yaitu :

a.         Koreksi (correction)
meski terdapat jaminan kualitas yang terbaik, kecacatan atau keinginan pelanggan yang tidak terpenuhi oleh perangkat lunak. Pemeliharaan dengan memperbaiki kecacatan tersebut.
b.         Adaptasi (Adaption)
Pada saat tertentu lingkungan asli (contoh CPU, sistem operasi, karakteristik produk luar) dimana perangkat lunak dikembangkan akan mengalami perubahan . Pemeliharaan ini merupakan tahap untuk memoodifikasi perangkat lunak agar mengakomodasi perubahan lingkungan luar dimana pernagkat lunak dijalankan.
c.         Perbaikan (Enchancement)
Sejalan dengan digunakan perangkat lunak, maka pelanggan atau pemakainya akan mengenali fungsi tambahan yang dapat memberikan manfaat.
d.        Pencegahan (prevention)
Keadaan perangkat lunak komputer sangat di mungkinkan untuk perubahan, maka pemeliharaan pencegahan, atau disebut daur ulang sistem harus dikondisikan untuk mengakomodasi perubahan kebutuhan yang diinginkan oleh pemakainnya.


Sumber : Rosa A. S, Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek. Bandung, Indonesia: Informatika, 2014.