Rabu, 11 Mei 2016

Aspek-aspek yang perlu diperhatikan dalam membuat Desain Sistem / Software


FASE DISAIN

7.1. PENDAHULUAN

Aktivitas utama dalam Fase Disain adalah membuat top dan medium level dari disain sistem dan mendokumentasikannya dalam Spesifikasi Disain. Aktivitas kedua dimulai dengan melakukan Rencana Test Penerimaan (Acceptance Test Plan / ATP).

ATP adalah sebuah dokumen tes yang akan digunakan untuk mendemonstrasikan seluruh fungsi sistem kepada user pada fase penerimaan.

Terdapat dua langkah dalam mendisain sistem software, yaitu :
 Pertama, bagilah sistem menjadi beberapa komponen secara fungsional.
 Kedua, hubungkanlah komponen-komponen tersebut.

Aspek-aspek yang perlu diperhatikan dalam membuat Desain Sistem / Software

Efektif - Efisien.
Dengan Standar Operating Procedure ( SOP ) yang jelas maka karyawan akan lebih efektif langsung ke tujuan yang dibutuhkan pelanggan tanpa ada delay untuk proses yang berbelit belit. Dengan efektifitas yang baik sudah barang tentu perusahaan anda akan lebih baik citranya di mata customer anda.
Tanggung jawab antara satu karyawan dengan karyawan yang lain akan terlihat secara jelas apabila ada delay di salah satu bagian untuk proses tertentu. Misalnya apakah suatu proses berhenti pada proses perijinan - pergudangan - pengiriman bisa di monitor secara jelas dalam suatu system perangkat lunak. Ini merupakan suatu efisiensi yang besar dalam pengelolaan sebuah kinerja suatu usaha / institusi.

Lebih Hemat
Penerapan Perangkat Lunak ( Software ) yang tepat dapat menghemat pengeluaran misalnya dalam hal pencetakan dokumen.  Dokumen akan dicetak sesuai dengan kebutuhan saja untuk yang membutuhkan. Pihak pimpinan tidak perlu mendapatkan dokumen cetak apabila untuk laporan sesaat saja karena semua informasi sudah bisa di dapatkan melalui Perangkat lunak Anda.
Selain itu dengan Perangkat Lunak yang tepat dapat menghemat biaya komunikasi. Misalnya antara pimpinan dengan bawahan akan melihat data di perangkat lunak dan tanpa komunikasi keduanya juga akan sama sama paham untuk menindaklanjutinya. Begitu juga antara Kantor Cabang dan Kantor Pusat. Hal ini akan mengurangi biaya komunikasi voice antara satu karyawan dengan karyawan lain di beda kantor. Penghematan dalam artian cost telepon dan efisiensi waktu kerja karyawan.

Terdokumentasi
Semua catatan / informasi dari sebuah transaksi dengan pelanggan tidak akan bertebaran kemana mana, karena semua data telah di organisasi dengan baik dengan sebuah database yang menangani transaksi tersebut. Untuk tahun tahun yang sudah berjalan, data tersebut dapat di arsipkan dan di backup untuk kepentingan auditor sewaktu waktu.
 Kredibilitas lebih baik ke Customer
Semua informasi rekam jejak dari customer didokumentasikan dengan baik oleh Perangkat Lunak, dan dengan sistem yang baik informasi tersebut dapat disajikan dalam hitungan detik untuk menunjang kebutuhan informasi ke customer. Customer yang nyaman, akurat dan cepat di layani akan meningkatkan kredibilitas perusahaan / institusi anda.
Akuntable dan Auditable
Informasi mengenai data rekam jejak Pelanggan, Barang, Keuangan, Semuanya bersifat akuntable  (dapat dihitung secara uptodate) tanpa bantuan karyawan misalnya jumlah stok barang A atau Kondisi keuangan pada saat tanggal sekian dapat diketahui dengan sangat mudah.
Selain itu dengan bantuan Perangkat Lunak semua informasi auditable ( Dapat diaudit ) dengan mudah dan terdokumentasi. Misalnya ketidak sesuaian keuangan antara sistem keuangan dengan aslinya dapat ditelusuri dengan mudah sehingga terjadi kejelasan kinerja dari suatu bagian.



Lebih cepat dalam Pengambilan Keputusan.
Dengan perubahan informasi yang cepat diketahui, pihak Executive / Manajemen akan lebih cepat mengambil tindakan terkait dengan kondisi yang sebenarnya. Misalnya Fluktuasi harga barang yang tidak menentu dibanding dengan jumlah stok yang kurang memadai maka pihak manajemen akan mampu untuk menyikapinya dengan responsif.
Informasi Data secara Realtime.
Informasi akan lebih mudah diakses secara Realtime dengan Software / Perangkat Lunak yang sesuai dengan kebutuhan Anda. Contohnya adalah informasi Stok Barang A pada tanggal dan Jam sekian akan lebih mudah memantaunya karena data stok barang merupakan pengurangan pemakaian stok barang.

Otomatisasi System Usaha.
Informasi Pelanggan akan secara otomatis di delegasikan kepada pegawai yang tepat. Dan setiap proses di suatu bagian selesai akan memberikan notifikasi otomatis ke bagian selanjutnya.

Dapat diakses dimana saja dan oleh siapa saja yang berhak.
Informasi dari perangkat lunak tersebut dapat di buat private / dapat diakses oleh orang tertentu saja. Informasi tersebut juga dapat di buat publik untuk bagian tertentu saja sesuai dengan kebutuhan informasi pelanggan atau pihak manajemen lain di kantor pusat.
 Aspek aspek yang perlu diperhatikan dalam membuat Perangkat Lunak
1.      Logika / Alur Program yang Tepat.
2.      Inti dari sebuah software adalah logika 
3.      Bahasa Pemrograman yang sesuai dengan Kebutuhan
Pemilihan Bahasa pemrograman yang sesuai kebutuhan merupakan sesuatu yang penting dilakukan diawal dalam tahapan Analisa kebutuhan pembuatan software. beberapa pertimbanganya adalah sebagai berikut : 
1.      Apakah software tersebut harus dapat diakses oleh siapa saja dan dimana saja.
2.      Berapakah Jumlah transaksi per berapa menitnya untuk software tersebut.
3.      Apakah system tersebut berinteraksi dengan banyak user / ban
4.      Apakah ada sistem otomatisasi seperti tugas yang selalu berjalan setiap jamnya.
5.      Apakah pelanggan mau berinvestasi untuk menggunakan software lisensi seperti    Oracle / Microsoft untuk Database Systemnya.

Sekurity Sistem
Dalam membuat suatu sistem Perangkat Lunak / Software haruslah diperhatikan sisi keamanan dari system tersebut. Mulai dari Setting Server, apabila menggunakan Windows akan banyak sekali virus atau trojan yang siap untuk menghambat keamanan system anda. Apabila menggunakan Server Linux maka harus dikonfigurasi dengan baik karena default dari sistem linux adalah sekuritinya banyak yang terbuka. Oleh karenanya memang harus di cermati dengan seksama sisi ini. Level ini adalah keamanan Jaringan dari suatu sistem
Dari sisi software ada beberapa sisi keamanan yang mungkin akan menjadi celah untuk diretas. Salah satunya adalah karena bug / logika yang kurang sempurna dari developer software tersebut. Oleh karenanya memang harus benar benar diperhatikan rancangan dari sistem tersebut, siapa orang orang yang bertanggung jawab dalam development software tersebut dan bagaimana proses testing terhadap bug tersebut dilakukan. Intinya dalam membuat software tidak hanya asal jadi akan tetapi seberapa bagus logika developer tersebut. Hal ini dapat diketahui dengan portofolio dari developer tersebut.
Ketiga adalah dari sisi Desain Database sebuah software. Apakah desainnya benar benar bagus karena suatu sistem database ini akan menyimpan semua informasi dilingkungan anda. Apabila relasi dan desain datanya kurang begitu sempurna akan menjadikan suatu masalah di kemudian hari.

User Interface yang bagus dan mudah untuk digunakan.
Interaksi antara software dengan pengguna juga sangat penting untuk diperhatikan. Hal ini akan meningkatkan efektifitas dan efisiensi kinerja dari pengguna software itu sendiri dan sistem secara keseluruhan.
Desain tampilan yang baik - urutan / flow program yang benar merupakan pertimbangan yang harus diperhatikan benar benar dalam proses development sebuah software.

Kesesuaian dengan Kebutuhan
Suatu sistem software haruslah dapat sesuai dengan kebutuhan pelanggan yang memesannya dengan sempurna. Misalnya  untuk akuntansi haruslah dapat menghitung barang barang yang kena pajak dan tidak dikenai pajak dengan sempurna.
Sistem software bukanlah input data - output data. Proses adalah Kuncinya.
Sistem software yang baik tidaklah hanya proses memasukkan / Input data saja kemudian meng-outputkannya saja. Akan tetapi "Proses" transformasi dari data menggunakan rumus - aturan - kaidah kaidah yang berkaitan untuk satu pengguna dan pengguna lainnya adalah suatu hal yang harus diperhitungkan. 

Desain sistem yang modular yang terintegrasi.
Dalam membuat sistem software lebih baik apabila antara satu bagian dengan bagian yang lain terintegrasi secara modular. Misalnya dalam suatu restoran bagian dapur dan penjualan terintegrasi secara sempurna. Dapur mengetahui stok yang masih tersedia sehingga dapat mempersiapkan lebih dini. dalam mengetahui stok tersebut akan lebih baik informasinya melalui software dibandingkan melalui media cetak seperti cetak excel. Inilah yang disebut dengan terintegrasi. 
Selain itu sistem ini haruslah modular. Perubahan dari sistem proses penjualan haruslah minor perubahan pada proses di dapur. Hal ini akan lebih memudahkan apabila akan dikembangkan ke bagian sebelumnya misalnya pergudangan dsb.

Multi User Multi Privillege
Setiap pengguna dari sistem software haruslah mengakomodasi kebutuhan dari pengguna penggunanya. Kebutuhan Penjualan tentulah berbeda dengan kebutuhan pengguna dapur / pergudangan. Kebutuhan User A sebagai karyawan penjualan tentulah berbeda dengan user B yang memiliki wewenang sebagai Pimpinan dalam suatu perusahaan.
Fleksibilitas pengaturan dari masing masing pengguna dengan hak hak aksesnya merupakan sesuatu yang harus diperhatikan dalam software yang baik





Sumber :

http://puspita93.blogspot.co.id/2016/05/pengelolaan-proyek-si-software.html

Kegiatan Sebelum Fase Desain



Perlukah dilakukan kegiatan disain sebelum melakukan pemrograman?
Jika ya, apa saja yang harus dipersiapkan sebelum memulai kegiatan tersebut. Jelaskan.

Ya Perlu
Sebelum memulai kegiatan Fase Desain adalah kegiatan Fase Definisi dan Fase Analisis
Ada 7 fase pada proyek software:
- Definition
- Analysis
- Design
- Programming
- Sistem Test
- Acceptance
- Operation

Analogi ’Membangun rumah’ untuk proyek perangkat lunak

Fase definisi :
- Membuat daftar seluruh permasalahan (requirement document)
- Memperkiraan biaya dan waktu dalam bentuk proposal

Fase analisis :
- Mendata seperti apa rumah yang dibutuhkan user (spesifikasi fungsional)
- Input, output dan antarmuka antara rumah dan user

Fase desain
- Tujuan merancang adalah membagi sistem ke dalam komponen-komponen fungsioanal kemudian menghubungkannya secara efisien
- Dibuat oleh arsitek dalam bentuk blueprint (spesifikasi desain)

Fase penrograman
- Membangun rumah sebenarnya (kontaraktor, tukang batu, tukang kayu, ahli litrik)
- Bekerja sesuai blueprint (spesifikasi desain)

Fase pengujian
- Pengujian bertahap hingga menyeluruh

Fase penerimaan
- User melihat rumah yang lengkap dan menguji tiap peralatan/tombol bekerja baik
- Jika user puas ia akan membayar biaya pembangunan tersebut.

Fase operasi
- Rumah ditempati dan diberi garansi satu periode tertentu
- Fase ini tidak mengikutsertakan perawan berupa perubahan dan peningkatan


FASE DEFINISI
Memahami Masalah User

2.1. PENDAHULUAN
Tujuan dari fase definisi adalah untuk memahami dengan baik masalah-masalah yang dihadapi oleh user dalam memperkirakan biaya dan waktu penyelesaian proyek.
Ada 3 aktifitas utama yang harus dilakukan dalam Fase Definisi :

Pertama
Anda harus memahami dengan baik masalah-masalah yang dihadapi oleh user dan apa saja yang dibutuhkan untuk menyelesaikan masalah tersebut (KEBUTUHAN).

Kedua Anda harus memutuskan proyek akan dilaksanakan atau tidak.
Jika keputusannnya adalah melaksanakan proyek tersebut, Anda harus dapat menganalisis semua risiko-risiko yang mungkin terjadi yang dapat menggagalkan proyek tersebut. Analisis ini sangat membantu dalam penulisan PROPOSAL yang berisi rincian menganai proyek apa yang akan ditawarkan, kapan, dan berapa biayanya (termasuk biaya untuk risiko-risiko yang mungkin terjadi).

Tulislah beberapa dokumen dan temukan beberapa kejadian penting pada akhir fase ini.
Pertama, menulis Requirement Document (RD), yaitu dokumen yang berisi rincian kebutuhan user. Dokumen RD harus jelas dan lengkap, sehingga Tim Proyek (Project Tem (PT)) dapat memahami seluruh masalah-masalah yang dihadapi oleh user dan dapat memperkirakan biaya penyelesaian proyek tersebut.. Kejadian penting pertama yang akan Anda hadapi berupa persetujuan atau penandatanganan dokumen RD oleh User dan Tim Proyek.
Selanjutnya, menulis Pendahuluan Perencanaan Proyek (Preliminary Project Plan (PPP)). PPP merupakan langkah pertama dalam merencanakan langkah-langkah berikutnya yang harus diambil untuk mengembangkan produk dan sumber-sumber apa saja yang dibutuhkan untuk setiap langkahnya. Rencana tersebut menggambarkan berapa lama sumber-sumber tersebut akan diperlukan dan berapa banyak biaya yang akan dikeluarkan.

Ketiga
Anda harus memberikan perkiraan-perkiraan ini kepada user dalam bentuk PROPOSAL.
Seberapa jauh perkiraan-perkiraan tersebut dapat dipertanggung jawabkan ? Ada dua alasan dalam hal ini. Pertama, kita tidak begitu ahli dalam memperkirakan sesuatu. Kedua, perkiraan-perkiraan tersebut dibuat pada saat masih dalam tahap pendefinisian masalah, dimana pada saat itu baru sebagian kecil informasi yang kita peroleh dari masalah yang sedemikian luas.

Jika anda tidak yakin dengan kebutuhan-kebutuhan yang telah digambarkan secara akurat dalam dokumen RD, disarankan untuk membagi proyek tersebut menjadi 2 tahap : Fase Analisis sebagai proyek pertama diikuti dengan fase sebelumnya sebagai proyek kedua.

Pada saat pendefinisian, proposal anda hanya akan menjadi analisis saja, dan ini disebut PROPOSAL ANALISIS. Setelah analisis akan ada PROPOSAL PENGEMBANGAN (Lihat bab 3). Kedua hal ini disebut dengan dua fase proposal. Kejadian penting yang terdapat disini adalah pembelian proposal oleh user.


 FASE ANALISIS
6.1. PENDAHULUAN
Tujuan dari fase analisis adalah mendefinisikan secara tepat apa yang dapat dilakukan sistem untuk user, dan bagaimana sistem tersebut menyesuaikan dengan lingkungan user.
Aktivitas utama (kejadian penting) dari fase ini adalah untuk menghasilkan dokumen yang menjelaskan arti lingkungan sistem, disebut Functional Specifications (FS) / Spesifikasi Fungsi.

Setelah mengerjakan FS, anda kini memiliki pengetahuan yang lebih dibandingkan pada Fase Definisi, sehingga anda harus meninjau ulang rencana permulaan proyek dan perkiraan awal.
Aktivitas ketiga, menuliskan development proposal / proposal pengembangan, dan akan dikerjakan jika dua metode proposal akan dilakukan. Hal tersebut akan ditulis setelah FS. Isi dan garis besar proposal pengembangan sama dengan proposal analisis, kecuali bahwa proposal pengembangan dikerjakan dengan menggunakan lima tahap dari pengembangan.

Dalam fase analisis “Anda harus menghadapi apa yang akan dilakukan, bukan mengenai bagaimana hal tersebut akan dilakukan, karena fase disain akan membahasnya”. Pada fase ini anda juga harus menetahui bagaimana fungsi utama yang dikerjakan sistem. Dengan kata lain, TOP LEVEL DISIGN (TLD) harus dibuat. Ide TLD ini adalah penting sehingga tanggung jawab atas kesulitan yang luar biasa atau mustahil terjadi dapat dihindari

6.2. ALIRAN DATA YOURDON / METODE ANALISIS BUBBLE CHART (THE YOURDON DATA-FLOW/BUBBLE CHART METHOD OF ANALYSIS)
Edward Yourdon menemukan sebuah metode grafik untuk mendokumentasikan dan mengendalikan proses analisis yang menjadi sangat populer
Pendefinisian User
Analis bersama-sama dengan user mengembangkan diagram seperti pada gambar 6.1. Mereka mulai dengan membuat daftar semua user yang akan memiliki hubungan dengan sistem. Termasuk user tidak langsung seperti STUDENT.

Kemudian mereka menggambar garis panah untuk semua input dari dan output untuk masing-masing user, garis diberi nama dengan informasi atau data yang melewatinya.

Garis panah tersebut mewakili aliran informasi (STUDENT REGISTRAR melalui telepon), aliran data (REGISTRAR COMPUTER lewat terminal) atau kejadian perpindahan secara fisik dari bagian-bagian (WAREHOUSE CLASSROOM ships material).
Inilah sebabnya mengapa diagram ini disebut diagaram „aliran data‟. Kemudian analis dan user mengidentifikasi informasi umum yang disimpan oleh sistem (informasi kursus, informasi murid, informasi material) dan menuliskannnya ke dalam lingkaran.

Pendefinisian Antarmuka User
User dan Analis menjelaskan setiap bagian yang diwakili oleh garis panah, yang merupakan aliran data antara user dan sistem. Hal ini akan mengontrol penjelasan mengenai semua menu, formulir, laporan, perintah-perintah dan pesan-pesan – dengan kata lain merupakan „tampilan antarmuka user‟ pada sistem.

Tujuan dari proses ini adalah :
 Pertama untuk menjelaskan tampilan antarmuka pada komputer.
 Kedua untuk memperoleh pemahaman yang umum dari bisnis user. Seringkali user belajar mengenai bisnisnya sendiri dari tipe analisis ini.

6.3. SPESIFIKASI FUNGSI (THE FUNCTIONAL SPECIFICATIONS / FS)
FS menjelaskan semua tingkah laku sistem dalam bentuk cerita dan gambar. Definisikan antarmuka user seperti di atas, menu-menu, perintah-perintah, respon, laporan dan pesan-pesan dijelaskan sebanyak mungkin. Setiap perubahan di dalam lingkungan user karena sistem baru akan dijelaskan. Semua pengiriman, termasuk hardware, software, pelatihan, dokumentasi dan garansi dirinci.

Sebagai tambahan pada proposal, FS juga merupakan kontrak antara User dengan Tim Proyek (PT). Sejumlah uang yang besar mungkin dipertaruhkan, dan user membutuhkan lebih rinci tantang apa yang dapat diberikan dibandingkan apa yang ada di proposal. FS mungkin akan dinegosiasikan dan ditinjau kembali, dan ketika persetujuan dicapai proposal harus ditanda tangani oleh kedua belah pihak.


sumber :
http://liapsa.staff.gunadarma.ac.id/Downloads/folder/0.2