TERIMAKASIH TELAH BERKUNJUNG SEMOGA BERMANFAAT

Senin, 26 Oktober 2020

Analisis Kelayakan Proyek

 


Hallooo Blogers,, Pada pertemuan kali ini kita akan membahas tentang Analisis Kelayakan Proyek tanpa memperpanjang waktu, mari kita bahas satu per satu..


ANALISIS KELAYAKAN

  • Kelayakan adalah ukuran akan seberapa menguntungkan atau seberapa praktis pengembangan sistem informasi terhadap organisasi.
  • Analisis Kelayakan adalah proses pengukuran kelayakan.
  • Creeping Commitment : pendekatakn kelayakan yang menghendaki kelayakan sebaiknya diukur di sepanjang siklus hidup.
PRA PROYEK
Hal-hal yang perlu diperhatikan dalam penyelidikan awal adalah :
  1. Mencoba memahami dan memperjelas apa yang diharapkan oleh pemakai atau penguna
  2. Menentukan ruang lingkup dari studi sebuah sistem
  3. Menentukan kelayakan dari masing-masing alternatif dengan memperkirakan keuntungan/kerugian yang didapat.
Suatu proyek sistem dimulai dengan adanya masalah atau peluang-peluang untuk meningkatkan bisnis yang sering muncul saat organisasi beradaptasi dengan perubahan. Sekali proyek diajukan, penganalisis sitem bekerja cepat dengan para pembuat keputusan untuk menentukan proyek tersebut layak atau tidak.
Jika proyek disetujui, maka dibuat jadwal kegiatan proyek dengan menggunakan perangkat-perangkat seperti grafik gantt dan diagram Program Evalution dan Review Techniques (PERT) sehingga proyek tersebut dapat diselesaikan tepat waktu.

STUDI KELAYAKAN
Menurut Ahmad Subagyo, “Studi Kelayakan adalah penelitian yang mendalam terhadap suatu ide bisnistentang layak atau tidaknya ide tersebut untuk dilaksanakan”. Adapun yang dimaksud ide bisnis menurutnya adalah bermacam-macam bentuk, antara lain:
  1. Pendirian usaha baru
  2. Pengembangan usaha yang sudah ada, seperti merger, penambahan permodalan, penggantian teknologi, pembukaan kantor baru/cabang/perwakilan dsbnya
  3. Pembelian perusahaan dengan cara akuisisi.
TUJUAN DAN MANFAAT STUDI KELAYAKAN

 - Menghindari Resiko Kerugian

Resiko kerugian untuk masa yang akan datang yang penuh dengan ketidakpastian,dalam hal ini fungsi studi kelayakan untuk meminimalkan resiko baik yang dapatdikendalikan maupun yang tidak dapat dikendalikan.

- Memudahkan Perencanaan

Perencanaan meliputi berapa jumlah dana yang diperlukan, kapan usaha akandijalankan, dimana, bagaimana pelaksanaannya, berapa besar keuntungan yangakan diperoleh serta bagaimana mengawasinya jika terjadi penyimpangan.

- Memudahkan Pelaksanaan Pekerjaan

Dengan rencana yang telah tersusun maka sangat memudahkan pelaksanaan bisnis, pengerjaan usaha dapat dilakukan secara sistematik.

- Memudahkan Pengawasan

Dengan melaksanakan proyek sesuai rencana maka memudahkan untukmelakukan pengawasan terhadap jalannya usaha.

- Memudahkan Pengendalian

Jika dapat diawasi maka jika terjadi penyimpanganakan muidah terdeteksi,sehingga mudah untuk mengendalikan penyimpangan tersebut.


PENGUJIAN KELAYAKAN
  • Kelayakan Operasional (Operational feasibility)
  • Kelayakan Teknis (Technical feasibility)
  • Kelayakan Jadwal (Schedule feasibility)
  • Kelayakan Ekonomis (Economic feasibility)
Kelayakan Operasional (Operational feasibility)
  • Ukuran sebaik apa solusi tersebut akan memenuhi sistem requirement
  • Seberapa baik sistem yang diusulkan mengatasi masalah dan memberikan keuntungan peluang yang teridentifikasi selama fase defenisi ruang lingkup dan fase analisis masalah
  • Seberapa baik sistem yang diusulkan memenuhi sistem requirements yang teridentifikasi dalam fase analisis persyaratan.
Kelayakan Teknis (Technical feasibility)
  • Ukuran kepraktisan solusi teknis tertentu dan ketersedian sumber dan pakar teknis
  • Ditunjuk pada tiga masalah pokok :
  1. Apakah teknologi atau solusi yang diajukan cukup praktis?
  2. Apakah saat ini kita telah mempunyai teknologi yang memadai?
  3. Apakah kita mempunyai pakar teknis yang memadai?
Kelayakan Jadwal (Schedule feasibility)
  • Melewati tenggat waktu merupakan hal yang problematis, namun mengembangkan sistem yang tidak memadai dapat menjadi malapetaka.
Kelayakan Ekonomi (Economic feasibility)
  • Kelayakan ekonomi dapat memperkirakan biaya dan keuntungan tiap alternatif.
  • Selama fase definisi ruang lingkup, hanyalah menentukan apakah manfaat yang diperoleh dari menyelesaikan persoalan tersebut cukup berharga.
  • Selama fase analisis masalah, estimasi yang lebih baik terhadap manfaat maupun biaya pengembangan.
  • Selama fase analisis keputusan, biaya pengembangan dapat diestimasi dengan lebih baik lagi.
MENGUMPULKAN DATA / FAKTA
Dalam studi kelayakan, analisis sistem mengumpulkan data untuk :
  1. Memperhitungkan keberadaan masalah
  2. Mendefinisikan masalah
  3. Memperhitungkan jangkauan masalah
  4. Mendapatkan informasi untuk melakukan studi kelayakan awal
  5. Meyusun rencana untuk melakukan analisis

Dalam mengumpulkan fakta, hal yang harus dilakukan adalah :
  • Interview
  • Presentasi Internal
  • Pemeriksaan Literatur Internal
  • Pengamatan
  • Pemeriksaan File

Demikian sedikit pembahasan singkat mengenai Analisis Kelayakan Proyek, semoga bermanfaat.... Sampai bertemu dilain waktu..


Referensi :

Senin, 05 Oktober 2020

SDLC : Software Development Life Cycle & Project Life Cycle


Hallo sobat bloger, pada pertemuan kali ini kita akan membahas tentang SDLC dan Project Life Cycle mulai dari pengertian, fungsi dan tahapan-tahapan yang ada didalamnya, oke mari kita bahas satu per satu.

SDLC : Software Development Life Cycle

1. Pengertian

SDLC adalah siklus yang digunakan dalam pembuatan atau pengembangan sistem informasi yang bertujuan untuk menyelesaikan masalah secara efektif. Dalam pengertian lain, SDLC adalah tahapan kerja yang bertujuan untuk menghasilkan sistem berkualitas tinggi yang sesuai dengan keinginan pelanggan atau tujuan dibuatnya sistem tersebut. SDLC menjadi kerangka yang berisi langkah-langkah yang harus dilakukan untuk memproses pengembangan suatu perangkat lunak. Sistem ini berisi rencana lengkap untuk mengembangkan, memelihara, dan menggantikan perangkat lunak tertentu. 

2. Fungsi

Dilihat dari berbagai sisi, SDLC memiliki banyak fungsi, antara lain sebagai sarana komunikasi antara tim pengembang dengan pemegang kepentingan. SDLC juga berfungsi membagi peranan dan tanggung jawab yang jelas antara pengembang, desainer, analis bisnis, dan manajer proyek. Fungsi lain dari SDLC ialah dapat memberikan gambaran input dan output yang jelas dari satu tahap menuju tahap selanjutnya. 

3. Tahapan SDLC




- Perencanaan Sistem (Systems Planning)

Lebih menekankan pada aspek studi kelayakan pengembangan sistem (feasibility study). Aktivitas-aktivitas yang ada meliputi :
  • 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.
- 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.
- 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.
- 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).
- Pengujian Sistem 

Tahap tes SDLC ialah bagian paling penting dalam rangkaian pembuatan sebuah perangkat lunak. Karena sangat tidak mungkin mempublikasikan sebuah software tanpa melalui pengujian terlebih dahulu.

Beberapa pengujian yang harus dilewati, antara lain kualitas kode, tes fungsional, tes integrasi, tes performa, dan tes keamanan.

Untuk memastikan pengujian berjalan teratur dan tidak ada bagian yang terlewati, tes dapat dilakukan menggunakan perangkat Continuous Integration seperti Codeship.

Dari tahap ini, akan dihasilkan perangkat lunak yang telah dites dan siap untuk disebarkan ke dalam proses produksi.


- 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.


4. Model Pengembangan SDLC




Model pengembangan ini sangat penting untuk membantu proses pengembangan perangkat lunak. Terdapat beberapa model pengembangan SDLC yang diikuti oleh berbagai organisasi, yaitu:

- Waterfall Model

Model ini melibatkan penyelesaian satu tahap secara lengkap sebelum melangkah ke tahap berikutnya. Ketika satu tahap selesai langsung dilakukan evaluasi untuk memastikan proyek berjalan sesuai rencana dan layak diteruskan ke tahap berikutnya.

Waterfall Model, disebut juga model klasik, memiliki beberapa tahap utama, yaitu analisis dan rekayasa sistem, perancangan, penulisan program, pengujian, dan pemeliharaan.

- V-Shaped Model

Model ini fokus pada proses eksekusi dengan cara berurutan. Hampir sama dengan model waterfall, tetapi lebih menekankan pada tahap pengujian. Prosedur pengujian pada model ini bahkan ditulis sebelum kode program dibuat.

- Incremental Model

Model ini melibatkan beberapa siklus pengembangan. Siklus-siklus tersebut dibagi ke dalam pengulangan-pengulangan kecil. Pengulangan tersebut dapat diatur dengan mudah dan melewati serangkaian tahap termasuk pengaturan, desain, penerapan, dan pengujian.


Project Life Cycle



Siklus proyek atau lebih dikenal dengan nama project life cycle merupakan tahapan yang dilalui proyek mulai dari inisiasi sampai tahap akhir. Setiap proyek memiliki ukuran dan tolak ukur tertentu. Siklus hidup proyek kemudian biasanya dipantau berdasarkan grafik level biaya terhadap waktu. Seperti pada saat memulai proyek, biaya yang dibutuhkan sangat rendah, kemudian biaya terus meningkat hingga tahap pengerjaan proyek. Setelah pengerjaan proyek selesai, biaya yang dibutuhkan menurun. Untuk itulah dalam project life cycle terdapat fase khusus yang memberi arahan tertentu dalam cara mengelola secara baik dan maksimal. Project Life Cycle terdiri dari 5 tahap dalam fase Single Phase Proyek yang aktifitasnya berjalan secara berurutan, tanpa pengulangan aktifitasSelain itu juga terdapat fase Phase-to-Phase Relationships. Fase ini merupakan gabungan dari beberapa fase.

1. Single Phase Proyek

Single Phase Proyek merupakan aktifitas dalam manejemen proyek yang berjalan secara berurutan, tanpa pengulangan aktifitas sekalipun. Dalam urutan aktifitas pada fase ini yaitu tahap Initiating Processes, Planning Processes, Executung Processes, dan Closing Processes.

- Initiating Processes

Output tahap inisiasi diantaranya dokumen proyek yang berisikan nama proyek, biaya proyek dan penunjukan manejer proyek. Dokumen ini akan dijadikan acuan dasar oleh manejer proyek untuk melakukan proses proyek selanjutnya. 

- Planning Processes 

Tahap perencanaan merupakan tahap yang paling penting yang membutuhkan banyak waktu dan SDM yang terlibat sesuai dengan besar kecilnya proyek. Output dari tahap ini diantaranya struktur dan tim proyek, gambar detail desain, skop pekerjaan, data teknis, jadwal proyek, jadwal pekerja, jadwal material / pembelanjaan, prosedur-prosedur, dan hal-hal detail lainnya. Tahap perencanaan ini merupakan kunci keberhasilan tahap proyek selanjutnya.

- Executing Processes

Tahap eksekusi dan kontrol biasanya dijalankan bersamaan, dan tahap ini merupakan tahap dilaksanakannya proyek dalam memulai dari pembelanjaan sampai konstruksi yang mengacu pada output dari tahap perencanaan. Output dari tahap ini diantaranya produk atau hasil kerja proyek, dokumen kontrol mulai dari kontrol administrsi, kontrol kualitas, kontrol tenaga kerja, kontrol material, kontrol jadwal, sampai pada kontrol keuangan proyek, laporan-laporan, risalah rapat, hasil tes dan inspeksi dan lain-lain yang menggambarkan pelaksanaan proyek. Segala hal dalam tahap ini harus terdokumentasikan dengan baik untuk keperluan tahap selanjutnya.

- Closing Processes

Tahap closing atau penyelesaian proyek merupakan tahap akhir dari sebuah proyek, tahap ini terdiri dari serahterima dan masa perawatan, serahterima umumnya dibagi dua tahap, tahap pertama setelah pekerjaan konstruksi selesai dan siap digunakan dan selanjutnya setelah masa perawatan selesai. Output dari tahap ini adalah final dokumen yang berisikan semua dokumen kontrol dalam tahap konstruksi, gambar fina selesainya pengerjaan proyek, manual operasi dan berita acara serah terima. 

Sehingga closing apabila benar – benar dilakukan secara baik akan saling menguntungkan dalam hal kepercayaan yang menjadi sebuah ikatan antara owner dan dan pemegang project. 

2. Phase - to - Phase Relationship

Dalam fase ini merupakan gabungan dari beberapa fase. Fase ini terdiri dari dua jenis, yaitu sequential relationship yang memiliki makna bahwa setiap fase didalamnya dikerjakan secara berurutan. Dan overlapping relationship yang memiliki makna tentang tumpang tindih antar fase, misalnya fase selanjutnya dilakukan sebelum fase saat ini selesai dikerjakan.  

Demikian pemaparan materi tentang SDLC : Software Development Life Cycle & Project Life Cycle. Terima Kasih semoga bermanfaat dan sampai jumpa di lain waktu.  








Referensi :

Selasa, 29 September 2020

Proyek, Manajemen dan Manajemen Proyek Perangkat Lunak

    


    Haloo... Selamat datang, pada kali ini kita akan membahas tentang tiga judul pokok besar diatas, mulai dari definisi, karakteristik dan lain sebagainya.. Oke tampa panjang lebar mari kita bahas satu per satu. 

1. Apa itu Proyek.?
    Proyek adalah sebuah aktivitas usaha yang cukup kompleks, dilakukan secara tidak rutin, memiliki jangka waktu, keterbatasan anggaran dan sumber daya serta memiliki standarisasi tersendiri atas produk yang di hasilkan. Dengan adanya keterbatasan untuk mengerjakan sebuah proyek maka perusahaan harus dapat mengatur segala sumber daya yang ada agar dapat menjalankan kegiatan proyek secara sinkron sehingga tujuan proyek dapat tercapai.

Tujuan Proyek
   Larson menjelaskan bahwa tujuan proyek paling utama adalah memuaskan kebutuhan pelanggan. Kesamaan dan karakteristik dari proyek dapat membantu untuk membedakan antara satu proyek dengan proyek lainnya.

Beberapa karakteristik proyek adalah :

  • Adanya penetapan tujuan
  • Masa hidup dapat didefinisikan dari awal hingga akhir.
  • Melibatkan beberapa orang atau profesional
  • Melakukan aktivitas yang belum pernah dilakukan
  • Waktu, biaya serta kebutuhan sangat spesifik.

Ciri-Ciri Proyek

     Berdasarkan dari beberapa pebahasan materi pengertian proyek dan tujuan proyek diatas maka dapat dilihat ciri-ciri proyek, yaitu :

  • Sistem berada di dalam satu siklus
  • Memiliki sifat yang dinamis
  • Hanya terdapat satu aktivitas yang tidak terulang dalam satu aktivitas.
  • Memiliki batasan waktu, biaya serta kualitas tertentu
  • Terdapat banyak kegiatan yang saling terkait
  • Dapat melibatkan berbagai sumber daya, keahlian serta teknologi.
  • Di pengeruhi oleh lingkungan.

Jenis-Jenis Proyek

    Menurut Soeharto (1999), terdapat jenis-jenis proyek yaitu :

1. Proyek Engineering-Konstruksi

Dapat Terdiri dari pengkajian kelayakan, desain engineering, pengadaan, serta konstruksi.

2. Proyek Engineering-Manufaktur

Tujuan dari membuat produk baru, meliputi pengembangan produk, manufaktur, perakitan, uji coba fungsi dan operasi produk yang dihasilkan.

3. Proyek Penelitian dan Pengembangan

Jenis proyek ini memiliki tujuan untuk melakukan penelitian dan pengembangan dalam rangka menghasilkan produk tertentu.

4. Proyek Pelayanan Manajemen

Proyek pelayanan manajemen tidak memberikan hasil dalam bentuk fisik namun berupa laporan akhir, contohnya merancang sistem informasi manajemen.

5. Proyek Kapital

Proyek kapital adalah proyek yang memiliki kaitan dengan penggunaan dana kapital untuk investasi.

6. Proyek Radio Telekomunikasi

Memiliki tujuan untuk membangun jaringan telekomunikasi yang dapat menjangkau area yang luas dengan biaya minimal.

7. Proyek Konservasi Bio Diversity

Proyek konservasi bio diversity adalah proyek yang memiliki kaitan dengan upaya pelestarian lingkungan.


2. Manajemen dan Manajemen Proyek

    Manajemen secara umum adalah suatu upaya untuk mencapai suatu tujuan dengan sumber daya seminimal mungkin (efisien). Sementara itu, proyek adalah rencana pekerjaan dengan suatu target pencapaian tertentu yang diselesaikan dalam rentang waktu tertentu.

    Secara kolektif, manajemen proyek​ adalah suatu pendekatan/metode untuk​ mengelola suatu proyek dengan efektif dan efisien. Sistem ini hadir sebagai perangkat untuk membantu mengelola kegiatan-kegiatan berbentuk proyek, misalnya proyek konstruksi. Tanpanya, suatu proyek akan sulit dieksekusi baik dari segi biaya, waktu, atau bahkan kualitasnya.

Tujuan Manajemen Proyek

    Manajemen proyek memiliki sejumlah tujuan, di antaranya:​

  • Menyelesaikan tepat waktu

Dengan adanya hal tersebut, proyek akan selalu dimonitor supaya dapat selesai dalam waktu yang telah ditentukan. Pengawasan seperti ini melancarkan pengerjaan proyek.

  • Menjaga anggaran

Anggaran merupakan salah satu aspek yang dikaji dalam manajemen ini. Dengan pengkajian tersebut, akan dicari jumlah anggaran seminimal mungkin, tetapi masih dapat menunjang tercapainya kriteria proyek yang telah ditentukan di awal (efektif dan efisien).

  • Menjaga kualitas

Sebagaimana telah disinggung pada poin sebelumnya, kriteria proyek yang ditentukan di awal harus tercapai. Artinya, manajemen proyek juga membuat standar kualitas dari suatu proyek sehingga ia tidak dikerjakan secara seenaknya saja.

  • Melancarkan proyek

Pada akhirnya, proyek yang ideal adalah proyek yang selesai sesuai dengan perencanaan awal, baik dari segi waktu, anggaran, maupun kualitas. Manajemen ini membantu pengerjaan proyek supaya selesai dengan lancar sesuai dengan rencana awal.

Sasaran Manajemen Proyek

    Sasaran manajemen proyek​ adalah sebagai berikut:​

  1. Menyelesaikan dan mengembangkan proyek sesuai dengan anggaran biaya dan tenggat waktu yang telah ditentukan sekaligus dalam kualitas/spesifikasi sesuai dengan yang telah disepakati di awal.
  2. Meningkatkan nama baik pelaksana proyek berdasarkan kualitas hasil proyek.
  3. Menciptakan suasana kerja kondusif untuk mendukung kelancaran aktivitas proyek. Hal ini meliputi ketersediaan keadaan, sarana-prasarana, dan keselamatan kerja.
  4. Menjaga keharmonisan antar pihak dalam proyek sehingga seluruh pihak terlibat akan memberikan yang terbaik untuk proyek yang sedang dijalankan.
Ruang Lingkup Manajemen Proyek

    Hal-hal yang termasuk ke dalam domain ruang lingkup manajemen proyek​ adalah sebagai berikut:

  1. Waktu proyek dimulai
  2. Perencanaan lingkup proyek
  3. Pendefinisian ruang lingkup proyek
  4. Verifikasi proyek dan kontrol ketika proyek sedang dijalankan

3. Manajemen Proyek Perangkat Lunak
  Manajemen Proyek Perangkat Lunak adalah suatu proses kegiatan untuk melakukan perencanaan, pengorganisasian, pengarahan, dan pengontrolan sumber daya untuk membuat suatu perangkat lunak atau program komputer, serta mencapai tujuan tertentu dalam batasan waktu, ruang lingkup, dan biaya.

Tujuan
  • Untuk menetapkan dasar, tujuan, kebutuhan, batasan, dan hasil akhir proyek.
  • Untuk mengelola penggunaan sumber daya, agar proyek berjalan dengan lancar.
  • Untuk menghasilkan perangkat lunak yang memiliki performa optimal, efisien, dan sukses mencapai tujuan.
  • Untuk mengatur waktu penyelesaian proyek.
  • Untuk memperoleh keuntungan dari proyek perangkat lunak yang telah dilaksanakan.
Stakeholder
– Client
Client adalah pemilik serta pemberi proyek. Tugas client adalah menentukan kebutuhan perangkat lunak yang akan dibuat.

– Project Manager
Project Manager adalah ketua dari team proyek yang bertanggung jawab untuk mengelola sumber daya yang ada untuk mencapai tujuan proyek.

– Programmer
Programmer adalah individu yang mengimplementasikan, mengemas, dan memodifikasi algoritma serta struktur data, yang dituliskan dalam sebuah bahasa pemrograman tertentu.

– Designer
Designer adalah individu yang merencanakan, merancang, mengembangkan, dan menerapkan sistem informasi baru yang mengintegrasikan teknologi hardwaresoftware, dan jaringan.

– Analyst
Analyst adalah individu yang menghimpun kasus proses bisnis yang akan dikonversikan menjadi suatu aplikasi perangkat lunak dan disajikan dalam bahasa atau spesifikasi teknis yang mudah dimengerti oleh programmer.

– End User
End User (pengguna) adalah individu yang menggunakan dan memanfaatkan perangkat lunak yang telah dibangun dari suatu proyek. End User juga dapat diperankan oleh client atau pemilik proyek.

– Investor
Investor adalah pihak penyedia dana untuk membiayai proyek agar dapat berjalan dengan baik.

Proyek Perangkat Lunak Lebih bermasalah atau sering gagal
Beberapa faktor penyebab kegagalan yang sering terjadi dalam pengembangan proyek perangkat lunak.

  • Poor User Input
  • Stakeholder Conflichts
  • Vague Requirement
  • Poor Cost and Schedule Estimation
  • Skills That Do Not Match The Job
  • Hidden Cost of Going "Lean and Mean"
  • Failure to Plan
  • Communication Breakdown
  • Poor Architecture
  • Late Failure Warning Signals

    Itulah beberapa pemaparan tentang Proyek, Manajemen, Manajemen Proyek serta Manajemen Proyek Perangkat Lunak. 




Referensi :
  • https://www.pahlevi.net/pengertian-proyek/
  • http://agathaputria.blogspot.com/2018/02/tugas-1-manajemen-proyek-perangkat.html
  • https://accurate.id/marketing-manajemen/pengertian-manajemen-proyek/
  • https://luchakamala.wordpress.com/2017/02/19/rangkuman-manajemen-proyek-perangkat-lunak/
  • https://yayuk05.wordpress.com/2007/10/01/faktor-faktor-penyebab-kegagalan-proyek-perangkat-lunak/

Sabtu, 16 Mei 2020

Pengantar UML | Analisis dan Perancangan Sistem


Halo, selamat datang kembali di blog saya...



Pada pertemuan kita kali ini kita akan membahas tentang UML, apa itu UML? UML adalah singkatan dari Unfied Modeling Language. Nah sebelum kita masuk kemateri tersebut kita harus tau dulu apa perbedaan antara pemodelan dan blueprint, lebih singkatnya pemodelan ialah perancangan suatu objek tertentu sedangkan blueprint tersebut adalah pengaplikasian dari pemodelan.

A. Pendahuluan
  • Pemodelan (modelling ) adalah proses merancang piranti lunak sebelum melakukan pengkodean (coding). Model piranti lunak dapat dianalogikan seperti pembuatan blueprint pada pembangunan gedung
  • Membuat model dari sebuah sistem yang kompleks sangatlah penting karena kita tidak dapat memahami sistem semacam itu secara menyeluruh.
  • Semakin kompleks sebuah sistemsemakin penting pula penggunaan teknik pemodelan yang baik.
B. Segitiga Menjadi Sukses
  • Kesuksesan suatu pemodelan piranti lunak ditentukanoleh tiga unsur, yang kemudian terkenal dengan sebuansegitiga sukses.
  • Ketiga unsur tersebut adalah metode pemodelan(notation), proses ( process) dan tool yang digunakan.
  • Memahami notasi pemodelan tanpa mengetahui carapemakaian yang sebenarnya (proses) akan membuatproyek gagal. Dan pemahaman terhadap metodepemodelan dan proses disempurnakan denganpenggunaan tool yang tepat
C. Sejarah Singkat UML

UML dimulai secara resmi pada Oktober 1994, ketika Rumbaugh menggabungkan kekuatan dengan Booch. Mereka berdua lalu bekerja bersama di Relational Software Cooperation. Proyek ini memfokuskan pada penyatuan metode booch dan Rumbaught (OMT). Pada bulan Oktober 1995, UML merilis versi 0.8 dan pada waktu yang sama juga Jacobson bergabung dengan Rational. Cakupan dari UML pun semakin meluas. Kemudian dibangunlah persatuan untuk UML dengan beberapa organisasi yang akan menyumbangkan sumber dayanya untuk bekerja, mengembangkan dan melengkapi UML.

Banyak partner yang berkontribusi pada UML 1.0, diantaranya Digital Equipment Corporation, Hawlett-Packard, I-Logix, IBM, ICON Computing, MCI Systemhouse, Microsoft, Oracle, Relation, Texas Instruments dan Unisys. Dari kolaborasi ini dihasilkan UML 1.0 yang merupakan bahasa pemodelan yang ditetapkan secara baik, expressive, kuat dan cocok untuk lingkungan masalah yang luas. Dan pada Januari 1997, UML dijadikan sebagai standar bahasa pemodelan.

D. Pengantar UML

UML (Unified Modeling Language) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented).

UML sendiri juga memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponenkomponen yang diperlukan dalam sistem software.

UML adalah salah satu tool / model untuk merancang pengembangan software yang berbasis object oriented.

UML sebagai sebuah bahasa yang memberikan vocabulary dan tatanan penulisan kata-kata dalam ‘MS Word’ untuk kegunaan komunikasi. Sebuah bahasa model adalah sebuah bahasa yang mempunyai vocabulary dan konsep tatanan / aturan penulisan serta secara fisik mempresentasikan dari sebuah sistem.

UML adalah sebuah bahasa standard untuk pengembangan sebuah software yang dapat menyampaikan bagaimana membuat dan membentuk model-model, tetapi tidak menyampaikan apa dan kapan model yang seharusnya dibuat yang merupakan salah satu proses implementasi pengembangan software.

UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database. Begitu juga mengenai pendokumentasian dapat dilakukan seperti; requirements, arsitektur, design, source code, project plan, tests, dan prototypes.

Untuk dapat memahami UML membutuhkan bentuk konsep dari sebuah bahasa model, dan mempelajari 3 (tiga) elemen utama dari UML seperti building block, aturan-aturan yang menyatakan bagaimana building block diletakkan secara bersamaan, dan beberapa mekanisme umum (common).

E. Konsep Dasar UML

UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C. Seperti bahsa-bahasa lainnya, UML mendefinisikan notasi dan sytax/semantik.

Notasi UML merupakan sekumpul bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefenisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notas UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya. Grady Booch OOD (Object-Oriented Design), Jim Rumbaught OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering)

F. Building Blocks

Tiga macam yang terdapat dalam building block adalah :
  • Benda/Things, adalah abstraksi yang pertama dalam sebuah model
  • Hubungan/Relationships, sebagai alat komunikasi dari benda-benda,
  • Bagan/Diagrams. sebagai kumpulan / group dari benda-benda/things.
Benda/Things

Adalah hal yang sangat mendasar dalam model UML, juga merupakan bagian paling statik dari sebuah model, serta menjelaskan elemenelemen lainnya dari sebuah konsep dan atau fisik. Bentuk dari beberapa benda/thing adalah sebagai berikut:
  • Classes, yang diuraikan sebagai sekelompok dari object yang mempunyai atribute, operasi, hubungan yang semantik. Sebuah kelas mengimplementasikan 1 atau lebih interfaces. Sebuah kelas dapat digambarkan sebagai sebuah persegi panjang, yang mempunyai sebuah nama, atribute, dan metoda pengoperasiannya.
  • Interfaces, merupakan sebuah antar-muka yang menghubungkan dan melayani antar kelas dan atau elemen. ‘Interface’ / antar-muka mendefinisikan sebuah set / kelompok dari spesifikasi pengoperasian, umumnya digambarkan dengan sebuah lingkaran yang disertai dengan namanya. Sebuah antar-muka berdiri sendiri dan umumnya merupakan pelengkap dari kelas atau komponen.
  • Collaboration, yang didefinisikan dengan interaksi dan sebuah kumpulan / kelompok dari kelas-kelas/elemen-elemen yang bekerja secara bersama-sama. Collaborations mempunyai struktur dan dimensi. Pemberian sebuah kelas memungkinkan berpartisipasi didalam beberapa collaborations dan digambarkan dengan sebuah ‘elips’ dengan garis terpotong-potong.
  • Use cases, adalah rangkaian/uraian sekelompok yang saling terkait dan membentuk sistem secara teratur yang dilakukan atau diawasi oleh sebuah aktor. ‘use case’ digunakan untuk membentuk tingkah-laku benda/ things dalam sebuah model serta di realisasikan oleh sebuah collaboration. Umumnya ‘use case’ digambarkan dengan sebuah ‘elips’ dengan garis yang solid, biasanya mengandung nama.
  • Nodes, merupakan fisik dari elemen-elemen yang ada pada saat dijalankannya sebuah sistem, contohnya adalaha sebuah komputer, umumnya mempunyai sedikitnya memory dan processor. Sekelompok komponen mungkin terletak pada sebuah node dan juga mungkin akan berpindah dari node satu ke node lainnya. Umumnya node ini digambarkan seperti kubus serta hanya mengandung namanya.
Hubungan / Relationship

Ada 4 macam hubungan didalam penggunaan UML, yaitu;
  • Dependency, adalah hubungan semantik antara dua benda/things yang mana sebuah benda berubah mengakibatkan benda satunya akan berubah pula. Umumnya sebuah dependency digambarkan sebuah panah dengan garis terputus-putus.
  • Association, hubungan antar benda struktural yang terhubung diantara obyek. Kesatuan obyek yang terhubung merupakan hubungan khusus, yang menggambarkan sebuah hubungan struktural diantara seluruh atau sebagian. Umumnya assosiation digambarkan dengan sebuah garis yang dilengkapi dengan sebuah label, nama, dan status hubungannya.
  • Generalizations, adalah menggambarkan hubungan khusus dalam obyek anak/child yang menggantikan obyek parent / induk . Dalam hal ini, obyek anak memberikan pengaruhnya dalam hal struktur dan tingkah lakunya kepada obyek induk. Digambarkan dengan garis panah.
  • Realizations, merupakan hubungan semantik antara pengelompokkan yang menjamin adanya ikatan diantaranya. Hubungan ini dapat diwujudkan diantara interface dan kelas atau elements, serta antara use cases dan collaborations. Model dari sebuah hubungan realization.
Bagan/Diagram

UML sendiri terdiri atas pengelompokkan diagram-diagram sistem menurut aspek atau sudut pandang tertentu. Diagram adalah yang menggambarkan permasalahan maupun solusi dari permasalahan suatu model. UML mempunyai 9 diagram, yaitu; use-case, class, object, state, sequence, collaboration, activity, component, dan deployment diagram.
  • Use Case Diagram, menggambarkan sekelompok use cases dan aktor yang disertai dengan hubungan diantaranya. Diagram use cases ini menjelaskan dan menerangkan kebutuhan / requirement yang diinginkan/ dikehendaki user/pengguna, serta sangat berguna dalam menentukan struktur organisasi dan model dari pada sebuah sistem.
  • Class Diagram, yang memperlihatkan struktur statis dari kelas actual didalam sistem.
  • Object Diagram, yang merupakan varian dari kelas diagram yang memperlihatkan lebih detail banyaknya obyek yang mengintantiasi (instances) kelas.
  • State Diagram, yang memperliatkan semua keadaan (state) yang dapat dimiliki oleh kelas dan event yang dapat merubah keadaan tersebut.
  • Sequence Diagram, yang memperlihatkan kolaborasi dinamik antara objek-objek dengan suatu urutan pesan (a sequence of message) antar objek tersebut.
  • Collaboration Diagram, yang memperlihatkan kolaborasi dinamik antar objek tanpa memperhatikan aspek waktu.
  • Activity Diagram, yang memperlihatkan aliran urutan aktifitas.
  • Component Diagram, yang memperlihatkan struktur fisik dari source code dalam terminology code components. Komponen berisi informasi tentang logical class dapat berupa komponen source code, komponen biner atau komponen yang dapat dieksekusi.
  • Deployment Diagram, yang memperlihatkan arsitektur fisik dari hardware dan software pada sistem.
G. Diagram Dalam UML

Pemecahan masalah utama dari Object Oriented biasanya dengan penggambaran dalam bentuk model. Model abstrak (semu) merupakan gambaran detail dari inti masalah yang ada, umumnya sama seperti refleksi dari problem yang ada pada kenyataan. Beberapa modeling tool yang dipakai adalah bagian dari dasar UML, kependekan dari United Modeling Language.
  • Diagram Use Case
  • Diagram Class
  • Diagram Package
  • Diagram Sequence
  • Diagram Collaboration
  • Diagram StateChart
  • Diagram Activity
  • Diagram Deployment 
Semakin kompleks bentukan sistem yang akan dibuat, maka semakin sulit komunikasi antara orang-orang yang saling terkait dalam pembuatan dan pengembangan software yang akan dibuat. Pada masa lalu, UML mempunyai peranan sebagai software blueprint (gambaran) language untuk analisis sistem, designer, dan programmer. Sedangkan pada saat ini, merupakan bagian dari software trade (bisnis software). UML memberikan jalur komunikasi dari sistem analis kemudian designer, lalu programmer mengenai rancangan software yang akan dikerjakan.

Salah satu pemecahan masalah Object Oriented adalah dengan menggunakan UML. Oleh karena itu orang-orang yang berminat dalam mempelajari UML harus mengetahui dasar-dasar mengenai Object Oriented Solving (pemecahan masalah OO). Tahap pertama, pembentukan model. Model adalah gambaran abstrak dari suatu dasar masalah. Dan dunia nyata atau tempat dimana masalah itu timbul bisa disebut dengan domain. Model mengandung obyek-obyek yang beraktifitas dengan saling mengirimkan messages (pesan-pesan). Obyek mempunyai sesuatu yang diketahui (atribut /attributes) dan sesuatu yang dilakukan (behaviors atau operations). Attributes hanya berlaku dalam ruang lingkup obyek itu sendiri (state). Lalu “blue print” dari suatu obyek adalah Classes (kelas). Obyek merupakan bagian-bagian dari kelas.

H. Tools UML
  • Rational Rose (www.rational.com)
  • Together (www.togethersoft.com)
  • Object Domain (www.objectdomain.com)
  • Jvision (www.object-insight.com)
  • Objecteering (www.objecteering.com)
  • MagicDraw (www.nomagic.com/magicdrawuml)
  • Visual Object Modeller (www.visualobject.com)
  • StarUML (www.staruml.org) 















Referensi :