Minggu, 29 September 2013

Resume Part 2

Teknik Dokumentasi Aplikasi part-2

PROSES DOKUMENTASI
Ø  Waterfall Model
    Menurut saya, tahapan-tahapan model ini sudah cukup baik dalam artian minimal untuk melakukan SE, maka harus ada tahapan-tahapan ini. Tahapan-tahapan ini jugalah yang digunakan oleh model-model yang lain pada umumnya. Ada filosofi yang mengatakan sesuatu yang sukses diciptakan pertama kali, maka akan terus dipakai di dalam pengembangannya. Hal ini juga berlaku pada waterfall model ini. Mungkin dapat dikatakan bahwa inilah standar untuk melakukan SE.
Akan tetapi, yang mungkin menjadi banyak pertimbangan mengenai penggunaan dari model ini adalah metode sequential-nya. Mungkin untuk awal-awal software diciptakan, hal ini tidak menjadi masalah, karena dengan berjalan secara berurutan, maka model ini menjadi mudah dilakukan. Sesuatu yang mudah biasanya hasilnya bagus. Oleh karena itu model ini sangat populer. Akan tetapi, seiring perkembangan software, model ini tentu tidak bisa mengikutinya. Yang menjadi kelemahan adalah pada pengerjaan secara berurutan tadi, seperti yang sudah saya utarakan sebelumnya. Kelemahan-kelemahan yang lain juga sudah saya utarakan di atas, atau bahkan masih ada yang lainnya.
Dari sini, nantinya akan dikembangkan model-model yang lain, bahkan ada tahap evolusioner dari suatu model proses untuk mengatasi kelemahan-kelemahan tadi. Meskipun secara tahapan masih menggunakan standar tahapan waterfall model. Kesimpulannya adalah ketika suatu project skalanya sedang mengarah kecil bisa menggunakan model ini. Akan tetapi kalau sudah project besar, tampaknya kesulitan jika menggunakan model ini
.
     a.Pendapat ahli
Menurut Pressman, (Pressman, 2005, page 79), dalam rekayasa perangkat lunak, terdapat suatu pendekatan yang disebut Waterfall model.
Nama model ini sebenarnya adalah “Linear Sequential Model”. Model ini sering disebut dengan “classic life cycle” atau model waterfall. Model ini adalah model yang muncul pertama kali yaitu sekitar tahun 1970 sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak dipakai didalam Software Engineering (SE).
Model ini melakukan pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu menuju ketahap analisis, desain, coding, testing dan maintenance.
Model ini merupakan model yang paling banyak dipakai oleh para pengembang software. Ada lima tahap dalam model waterfall, yaitu: Requirement Analysis, System Design, Implementation, Integration & Testing, Operations & Maintenance.
Sesuai dengan namanya waterfall (air terjun) maka tahapan dalam model ini disusun bertingkat, setiap tahap dalam model ini dilakukan berurutan, satu sebelum yang lainnya. Selain itu dari satu tahap kita dapat kembali ketahap sebelumnya. Model ini biasanya digunakan untuk membuat sebuah software dalam skala besar dan yang akan dipakai dalam waktu yang lama.

Tahap – Tahap  Dalam Model Waterfall:
1.      Requirement Analysis
Seluruh kebutuhan software harus bisa didapatkan dalam fase ini, termasuk didalamnya kegunaan software yang diharapkan pengguna dan batasan software. Informasi ini biasanya dapat diperoleh melalui wawancara, survey atau diskusi. Informasi tersebut dianalisis untuk mendapatkan dokumentasi kebutuhan pengguna untuk digunakan pada tahap selanjutnya.
2 System Design
Tahap ini dilakukan sebelum melakukan coding. Tahap ini bertujuan untuk memberikan gambaran apa yang seharusnya dikerjakan dan bagaimana tampilannya. Tahap ini membantu dalam menspesifikasikan kebutuhan hardware dan sistem serta mendefinisikan arsitektur sistem secara keseluruhan.
3.  Implementation
Dalam tahap ini dilakukan pemrograman. Pembuatan software dipecah menjadi modul-modul kecil yang nantinya akan digabungkan dalam tahap berikutnya. Selain itu dalam tahap ini juga dilakukan pemeriksaaan terhadap modul yang dibuat, apakah sudah memenuhi fungsi yang diinginkan atau belum.
4 Integration & Testing
Di tahap ini dilakukan penggabungan modul-modul yang sudah dibuat dan dilakukan pengujian ini dilakukan untuk mengetahui apakah software yang dibuat telah sesuai dengan desainnya dan masih terdapat kesalahan atau tidak.
5.  Operation & Maintenance
Ini merupakan tahap terakhir dalam model waterfall. Software yang sudah jadi dijalankan serta dilakukan pemeliharaan. Pemeliharaan termasuk dalam memperbaiki  kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru.
Kelebihan Waterfall Model
Ketika semua kebutuhan sistem dapat didefinisikan secara utuh, eksplisit, dan benar diawal proyek, maka software engineering dapat berjalan dengan baik dan tanpa masalah.

Kekurangan Waterfall Model
1.      Ketika problem muncul, maka proses berhenti, karena tidak dapat menuju ketahapan selanjutnya. Bahkan jika kemungkinan problem tersebut muncul akibat kesalahan dari tahapan sebelumnya, maka proses harus membenahi tahapan sebelumnya agar problem ini tidak muncul. Hal-hal seperti ini yang dapat membuang waktu pengerjaan software engineering.
2.      Karena pendekatannya secara sequential, maka setiap tahap harus menunggu hasil dari tahap sebelumnya. Hal itu tentu membuang waktu yang cukup lama, artinya bagian lain tidak dapat mengerjakan hal lain selain hanya menunggu hasil dari tahap sebelumnya. Oleh karena itu, seringkali model ini berlangsung lama pengerjaannya.
3.      Pada setiap tahap proses tentunya dipekerjakan sesuai spesialisasinya masing-masing. Oleh karena itu, ketika tahap tersebut sudah tidak dikerjakan, maka sumber dayanya juga tidak terpakai lagi. Oleh karena itu, seringkali pada model proses ini dibutuhkan seseorang yang “multi-skilled”, sehingga minimal dapat membantu pengerjaan untuk tahapan berikutnya.

















Ø  Agile Modeling
Agile Modeling merupakan filosofi tentang bagaimana membangun model, dengan beberapa diantaranya dilakukan secara format dan terperinci dan yang lainnya dilakukan secara samar dan minim. Agile Software Development juga melihat pentingnya komunikasi antara anggota tim, antara orang-orang teknis dan businessmen, antara developer dan managernya. Ciri lain adalah klien menjadi bagian dari tim pembangun software.
Kelebihan dari Agile Modeling:
1.      Meningkatkan kepuasan kepada klien
2.      Pembangunan system dibuat lebih cepat
3.      Mengurangi resiko kegagalan implementasi software dari segi non-teknis
4.      Jika pada saat pembangunan system terjadi kegagalan,kerugian dar segi materi relative kecil.
Kelemahan dari Agile Modeling:
Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima.


 Sumber :



Selasa, 10 September 2013

Teknik Dokumentasi Aplikasi Pert. 1

Tentang Dokumentasi & software
Software adalah sebuah aplikasi atau perangkat lunak yang menghubungkan suatu komputer dengan pengguna, yang biasanya digunakan untuk mengontrol perangkat keras atau bisa juga digunakan untuk mengontrol data, memproses data dan masih banyak lagi lainnya.
Dokumentasi adalah segala sesuatu yang bersifat tertulis dan bergambar yang berisikan penjelasan mengenai suatu hal atau informasi dari suatu peristiwa yang dapat digunakan untuk membantu ingatan atau dapat juga di gunakan sebagai pedoman. contohnya :
•             Dokumentasi yang bisa membuat user mengerti cara menggunakan software
•             Dokumentasi yang bisa membuat user mengerti dan bisa menginstall software dengan   benar
•             Dokumentasi yang bisa membuat user mengerti cara mengkonfigurasi software
•             Dokumentasi yang bisa membuat user mengerti dan paham apa guna software tersebut
Jadi, Software & Dokumentasi ini adalah pentingnya suatu software beserta dokumentasinya, jika tidak maka software tersebut tidak akan ada gunanya. Soalnya, bagaimana pengguna  bisa mengerti apa yang zakan dilakukannya terhadap software tersebut dalam hal cara penggunaan serta fungsinya.
 Dokumentasi Aplikasi
Dokumentasi ini meliputi :
1.            Perencanaan (SDP = Software Development Plan), merupakan hal awal yang harus dilakukan ketika akan mengembangkan suatu perangkat lunak.
2.            Requirements Analysis (SRS = Software Requirements Specification),  Tujuan dari SRS adalah untuk melakukan hal berikut: Menentukan kebutuhan fungsional dari sistem, Mengidentifikasi batasan-batasan sistem, Identifikasi pengguna sistem, Menjelaskan interaksi antara sistem dan pengguna eksternal, Menetapkan suatu bahasa yang umum antara klien dan tim program untuk menggambarkan sistem, Memberikan dasar untuk pemodelan use case.
3.            IRS = Interface Requirements Specification
4.            Dokumentasi Perancangan (SDD = Software Design Document)
5.            Dokumentasi Pengujian (STP = Software Test Plan, STRp = Software Test Report)
6.            Dokumentasi yang berhubungan dengan produk (SUM = Software User Manual, SPS = Software Product Specification, VDD = Version Description Document), dll

Suber : http://firmanalex.blogspot.com

Software Crisis
Software saat ini bisa kita dapatkan dari memesan  dari situs penyedia, mendapatkan DVD dari majalah yang terdistribusi atau membeli dari pasar spesifik seperti iTunes sampai mengunduh secara legal ataupun illegal. Sekarang kita berada di era yang memiliki sisi kompleksitas kebutuhan dan ketersediaan yang berlebih (information over flood). Inilah yang menggerakkan penelitian yang terkait software crisis pada era internet.
Pada jaman sebelum ada internet. Pembengan software masih dimiliki oleh kampus dengan kartu plong atau computer 486 yang dipasangkan turbo pascal. Pada saat itu, itulah software crisis yang dikarenakan pengetahuan, aliran informasi yang terbatas, dan mahalnya harga software. Era ini mulai bergeser saat diperkenalkannya system operasi yang dikenal ddengan Windows dan Linux yang bisa terhubung ke software yang dinamakan browser Internet Explorer, Yang menjanjikan teknologi pengembangan perangkat lunak menjadi lebih maju dan effisien.
Software pada masa kini bukanlah suatu komoditas yang berada di laboratorium komputasi atau berada di perkantoran canggih semata. Software kini sudah menyentuh berbagai lini kehidupan dan menyentuh pasar baik yang bersifat vertical (perusahaan) dan horizontal (pengguna langsung).
Rekayasa perangkat lunak adalah suatu tahapan demi tahapan yang dibahas satu demi setu dan memiliki hasil dari setiap tahapannya. Mulai dari pengambilan kebutuhan, analisis, desain, pembuatan kode dan diakhiri dengan pendistribusian aplikasi. Software Development Life Cycle adalah penggambaran secara abstrak langkah apa saja yang dikerjakan untuk membuat software yang lenih terprediksi dari segi hasil dan kualitas. Kita membutuhkan SDLC saat:
1.            Proyek dengan kerangka kerja lebih dari 1 bulan atau bahkan multiyear project
2.            Klien membutuhkan suatu laporan administrative selain source codes dan software
3.            Orang dan tiap orang memiliki role spesifik untuk bekerja fulltime.

SDLC dibutuhkan pada saat :
1.            Mengembangkan software sederhana dengan jangka waktu kurang dari 1minggu
2.            Memiliki pengalaman mengembangkan software yang identic / mirip
3.            Mampu dan paham saat menceritakan secara sederhana mengenai proses bisnis aplikasi yang dikembangka
Masalah dalam mengembangkan perangkat
Masalah dalam pengembangan perangkat lunak mencakup masalah teknis dan non teknis. Masalah non teknis seperti :
             Aspek komunikasi yang kurang baik.
             Pengelolaan sumber daya tidak mencukupi (waktu, dana, dan manusia).
             Manajemen risiko yang tidak terkendali hingga aspek kenyamanan bekerja adalah faktor-faktor kegagalan sebagian besar pengembangan perangkat lunak.
Dalam lapisan software engineering ada tools, method, process, dan quality focus. Tools adalah perangkat bantu yang membantu pengembangan software sehingga menjadi lebih mudah dan produktif. Metode adalah sekumpulan langkah teknis yang dilakukan untuk mengembangkah perangkat lunak. Proses adalah berbagai hal yang dapat dilakukan oleh tim untuk mewujudkan suatu perangkat lunak berkualitas. Quality focus adalah keberfokusan pada kualitas bukan hanya dengan rendahnya kesalahan tetapi juga seberapa besar klien bersedia menerima software yang telah dikembangkan dengan kelebihan dan kekurangannya.

Sumber : http://laskar19.blogspot.com/2013/01/software-crisis.html


Senin, 09 September 2013

Teknik Dokumentasi Aplikasi ( RESUME1 )



Software Crisis
Software Crisis terjadi dikarenakan oleh ketidakmampuan untuk mengembangkan proyek yang diinginkan karena masalah-masalah berikut:
* Over budget -> lemahnya estimasi
* Over time
* Low quality (SDM)
* Perangkat lunak versi seragam -> tim pecah
* Teknik dan rule tidak jelas

Aplikasi adalah
suatu subkelas software komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Sedangkan Software adalah program komputer yang berfungsi sebagai sarana interaksi antara pengguna dan perangkat keras.Contoh aplikasi: pengolah kata, lembar kerja, dan pemutar media.


Dokumentasi adalah segala sesuatu yang tertulis, bergambar dan terekam yang berisikan penjelasan mengenai suatu hal atau informasi dari suatu peristiwa yang digunakan untuk membantu ingatan dan atau dapat dijadikan pedoman.


Dokumentasi Aplikasi ini meliputi:

- Perencanaan (SDP=Software Development Plan) ? ketika fase perencanaan
- Requirements Analysis (SRS=Software Requirements Specification)
- IRS=Interface Requirements Specification
- Dokumentasi Perancangan (SDD=Software Design Document)
- Dokumentasi Pengujian (STP=Software Test Plan, STRp=Software Test Report)
- Dokumentasi yang berhubungan dengan produk (SUM=Software User Manual, SPS=Software Product Specification, VDD=Version Description Document)
- Dokumen lainnya

Keperluan Dokumentasi pada suatu Proyek Pengembangan Sistem:

- Pendefinisian

Tertuang dalam suatu Statement of Work (SOW) yang terdiri dari: Pengantar, Tujuan dan obyektif, Scope, Asumsi, User, Sumber Daya, Milestone untuk penjadwalan, Pembiayaan, Amandemen, Tanda tangan. Tujuan SOW, yaitu:

  • Menjelaskan biaya dan jadwal serta asumsi utama proyek
  • Menjelaskan peranan dan tanggung jawab
  • Mengukuhkan definisi hal yang akan dicapai proyek
  • Mendorong diselesaikannya proyek tersebut karena adanya .kesepakatan tertulis dalam dokumen tersebut
Perencanaan
Beberapa hal yang mencakup dokumentasi dalam perencanaan:


.Menyusun Work Breakdown Structure(WBS) yang berisi daftar rencana kerja yang
tersusun berdasarkan dekomposisi fungsional sistem, dasar estimasi (alokasi sumber daya, penyusunan jadwal, perhitungan biaya), serta pertimbangan pelaksanaan proyek.

  • Mengestimasi Pelaksanaan Proyek.
  • Alokasi Sumber Daya: Mengatur utilitas kerja dari sumber daya
  • Perhitungan Biaya: Biaya dibandingkan dengan yang ada di SOW
  • Jadwal Kerja: Bart Chart dan Network Diagram (PERT)
  • Penentuan Resiko: Menentukan kemungkinan resiko serta dampak dari resiko tersebut

Organisasi

Dalam pengorganisasian bebrapa hal yang perlu di dokumentasikan meliputi:
  • Struktur Team: peran, tanggung jawab, hubungan pelaporan
  • Dokumentasi: perangkat dokumen teknis seperti Manual on-line, laporan status dan jadwal
  • Pertemuan: status review meeting, Checkpoint review meeting, Staff meeting
Pengawasan 
Dalam pengawasan juga dibutuhkan dokumentasi antar lain:


  • Status Collection dan Assessment: data tentang progres pekerjaan menuju milestone
  • Change Control: evaluasi pelaksanaan teknis dan jadwal, yang meliputi: perubahan yang terjadi, dampak finasial, cara penanganan dampak
  • Corrective Action: revisi pedekatan yang dilakukan untuk pencapaian tujuan sesuai SOW.

Penyelesaian Proyek Dokumentasi dalam penyelesaian Proyek yaitu:

  • Laporan transisi dari perancangan ke implementasi
  • Identifikasi unjuk kerja proyek (tingkat keberhasilan yang dicapai)
  • Menggambarkan tendensi antar personal yang terlibat

Leading

Dalam Leading juga terdapat dokumentasi sebagai berikut:

  • Membuat visi proyek yang jelas
  • Efektifitas komunikasi
  • Menjaga motivasi yang tinggi
  • Menjaga fokus dan visi
  • Menyediakan lingkungan yang mendukung
  • Mendorong penyusun team

Sumber:


http://perbendaharaan.wordpress.com/page/2/