Senin, 24 September 2012

TUGAS 1 – ETIKA PROFESI


JENIS JENIS UML

UML mendefinisikan diagram-diagram sebagai berikut:
1.       Use Case Diagram
Use Case diagram adalah gambar dari beberapa atau seluruh aktor dan use case dengan tujuan mengenali interaksi mereka dalam suatu sistem. Oleh karena itu, use case diagram dapat membantu menganalisa kebutuhan suatu sistem. Dalam use case diagram terdapat istilah seperti aktor, use case dan use case relationship.

2.       Kelas Diagram
Kelas Diagram berfungsi untuk menjelaskan tipe dari object sistem dan hubungannya dengan object yang lain. Object adalah nilai tertentu dari setiap attribute kelas entity. Pada penggambaran kelas diagram ada dikenal dengan kelas analisis yaitu kelas ber-stereotype. Tapi yang biasanya dipakai adalah kelas diagram tanpa stereotype.


3.       Statechart Diagram
Statechart diagram digunakan untuk memodelkan perilaku dinamis satu kelas atau objek. Statechart diagram memperlihatkan urutan keadaan sesaat (state) yang dilalui sebuah objek, Kejadian yang menyebabkan sebuah transisi dari suatu state atau aktivitas kepada yang lainnya.Statechart diagram khusus digunakan untuk memodelkan tahap-tahap diskrit dari sebuah siklus hidup objek,sedangkan Activity diagram paling cocok untuk memodelkan urutan aktifitas dalam suatu proses.



 4.       Activity Diagram
Activity Diagram berupa flow chart yang digunakan untuk memperlihatkan aliran kerja dari sistem. Notasi yang digunakan dalam activity diagram adalah sebagai berikut:
·         Activity
Notasi yang menggambarkan pelaksanaan dari beberapa proses dalam aliran pekerjaan.
·         Transition
Notasi yang digunakan untuk memperlihatkan jalan aliran kontrol dari activity ke activity.
·         Decision
Notasi yang menandakan kontrol cabang aliran berdasarkan decision point.
·         Synchronization Bars
Aliran kerja notasi ini menandakan bahwa beberapa aktivitas dapat diselesaikan secara bersamaan (pararel)


5.       Sequence Diagram
Sequence diagram menjelaskan interaksi objek yang disusun berdasarkan urutan waktu. Secara mudahnya sequence diagram adalah gambaran tahap demi tahap yang seharusnya dilakukan untuk menghasilkan sesuatu sesuai dengan use case diagram.



6.       Component Diagram
Component diagram berfungsi untuk menggambarkan komponen run-time dan executable yang dibuat untuk sistem. Komponen saling berelasi menggunakan depedecy relation (Hubungan ketergantungan, yang ditandai dengan garis putus-putus). Komponen run-time memperlihatkan pengelompokan kelas untuk run-time library seperti Java Applet, Active-X Component dan Dynamic Libraries. Komponen executable memperlihatkan interface dan memanggil dependencies beberapa executable. Interface kelas diperlihatkan seperti lollypop.


7.       Deployment Diagram
Deployment Diagram memperlihatkan konfigurasi pada jalannya proses run-time elements  dan proses software yang ada pada diagram. Run-time elements menggambarkan node yang berkoneksi menandakan adanya komunikasi diantaranya. Diagram ini membantu tim untuk mengerti sistem topology.




8.       Communication Diagram
    Communication diagram adalah memfokuskan pada komunikasi yang berhubungan dengan struktur dari objek yang terlibat dalam suatu tugas. Communication diagram bersama dengan sequence diagram adalah termasuk dalam diagram interaksi.




9.       Object Diagram
        Object Diagram menggambarkan objek-objek yang ada dan hubungan diantaranya.


10.    Package Diagram
        Package Diagram menggambarkan dekomposisi dari sistem menjadi unit-unit dan hubungan ketergantungannya.



11.    Composite Structure
        Diagram Composite struktur adalah dekomposisi runtime sebuah class.




12.    Interaction Overview
        Interaction Overview menunjukan layout dari activity diagram untuk memodelkan alur dari logic dalam sekumpulan interaksi.



13.    Timing Diagram
        Timing Diagram perubahan statis yang menekankan pada waktu sebenarnya. Diagram Timing adalah untuk interaksi antar objek,penekanan pada timing.




WATERFALL MODEL
Waterfall Model adalah sebuah metode pengembangan software yang bersifat sekuensial dan terdiri dari 5 tahap yang saling terkait dan mempengaruhi seperti terlihat pada gambar berikut.


Keterkaitan dan pengaruh antar tahap ini ada karena output sebuah tahap dalam Waterfall Model merupakan input bagi tahap berikutnya, dengan demikian  ketidaksempurnaan hasil pelaksanaan tahap sebelumnya adalah awal ketidaksempurnaan tahap berikutnya. Memperhatikan karakteristik ini, sangat penting bagi tim pengembang dan perusahaan untuk secara bersama-sama melakukan analisa kebutuhan dan desain sistem sesempurna mungkin sebelum masuk ke dalam tahap penulisan kode program. Berikut adalah penjelasan detail dari masing-masing tahap dalam Waterfall model.
  1. Analisa kebutuhan.
Analisa kebutuhan merupakan tahap pertama yang menjadi dasar proses pembuatan Tailor-made software selanjutnya. Kelancaran proses pembuatan software secara keseluruhan dan kelengkapan fitur software yang dihasilkan sangat tergantung pada hasil analisa kebutuhan ini. Untuk memperoleh informasi tentang proses bisnis dan kebutuhan perusahaan, umumnya tim pengembang melakukan wawancara, diskusi dan survey. Dalam proses wawancara, diskusi dan survey diperlukan komunikasi yang intensif dan terbuka antara tim pengembang dan tim counter-partner dari perusahaan. Selain itu, peran aktif dari manajemen sebagai pihak yang memahami seluk beluk perusahaan secara komprehensif juga diperlukan agar diperoleh informasi proses bisnis dan daftar kebutuhan perusahaan yang lengkap. Beberapa perusahaan membantu memperlancar penyelesaian tahap ini dengan terlebih dahulu menyusun scope of work software yang akan dibuat sebagai acuan kerja tim pengembang. Hasil analisa kebutuhan yang tidak lengkap berpotensi menyebabkan beberapa permasalahan yang tidak diharapkan, antara lain : waktu pembuatan software menjadi lebih lama, proses dalam software tidak sesuai dengan proses bisnis dan software tidak dapat memenuhi semua kebutuhan perusahaan. Untuk meminimalkan risiko ini, disarankan perusahaan melakukan konfirmasi pemahaman tim pengembang tentang proses bisnis dan kebutuhan perusahaan dengan cara meminta resume hasil analisa kebutuhan dan menyempurnakannya bersama tim pengembang jika diperlukan.

  1. Desain sistem.
Desain sistem merupakan tahap penyusunan proses, data, aliran proses dan hubungan antar data yang paling optimal untuk menjalankan proses bisnis dan memenuhi kebutuhan perusahaan sesuai dengan hasil analisa kebutuhan. Dokumentasi yang dihasilkan dari tahap desain sistem ini antara lain : System Flow, Data Flow Diagram (DFD) dan Entity Relationship Diagram (ERD). System Flow merupakan bagan aliran dokumen dari satu bagian perusahaan ke bagian lain baik secara manual maupun melalui Sistem Informasi. Data Flow Diagram adalah diagram yang menunjukan aliran data di antara pengguna, proses dan database yang terkait dengan software. Entity Relationship Diagram merupakan diagram yang menunjukan bagaimana data dan informasi software akan di simpan di dalam database beserta dengan hubungan antar data. Seperti halnya tahap analisa kebutuhan, pada saat desain sistem selesai dibuat sebaiknya desain yang sudah dibuat pengembang didiskusikan dan disempurnakan oleh tim pengembang bersama dengan tim counter-partner dan manajemen perusahaan.

  1. Penulisan kode program.
Penulisan kode program merupakan tahap penerjemahan desain sistem yang telah dibuat ke dalam bentuk perintah-perintah yang dimengerti komputer dengan mempergunakan bahasa pemrograman, middleware dan database tertentu di atas platform yang menjadi standar perusahaan. Bahasa pemrograman yang saat ini populer digunakan antara lain : Microsoft Visual Basic .Net untuk pembuatan software dalam kategori Desktop Application, PHP untuk pembuatan software dalam kategori Web Application dan Java untuk pembuatan software yang dapat berjalan di atas beberapa platform sistem operasi / multiplatform. Database yang saat ini banyak dipergunakan antara lain : ORACLE dan Microsoft SQL Server 2005 untuk kebutuhan penyimpanan data dalam jumlah besar, fitur keamanan data yang handal dan penggunaan oleh banyak pengguna, MySQL dan PosgreSQL untuk kebutuhan penyimpanan data di sistem operasi Linux dan Microsoft Access untuk penyimpanan data dalam jumlah yang tidak terlalu besar untuk memenuhi kebutuhan personal. Berbeda dengan 2 tahap sebelumnya, pada tahap penulisan kode program ini keterlibatan perusahaan tidaklah terlalu besar.

  1. Pengujian program.
Pengujian software dilakukan untuk memastikan bahwa software yang dibuat telah sesuai dengan desainnya dan semua fungsi dapat dipergunakan dengan baik tanpa ada kesalahan. Pengujian software biasanya dilakukan dalam 2 atau 3 tahap yang saling independen, yaitu : pengujian oleh internal tim pengembang, pengujian oleh divisi Quality Assurance dan pengujian oleh pengguna di perusahaan. Dalam tahap ini, perusahaan harus memastikan bahwa kerangka / skenario pengujian software dibuat dengan lengkap meliputi semua proses, kebutuhan dan pengendalian yang ada di dalam dokumen analisa kebutuhan dan desain sistem.

  1. Penerapan program.
Penerapan program merupakan tahap dimana tim pengembang menerapkan / meng-install software yang telah selesai dibuat dan diuji ke dalam lingkungan Teknologi Informasi perusahaan dan memberikan pelatihan kepada pengguna di perusahaan. Pada saat melaksanakan pelatihan perusahaan harus yakin bahwa semua karyawan benar-benar menguasai Sistem Informasi yang dibuat sesuai dengan tugas, kewenangan dan tanggung-jawabnya. Untuk mendukung penguasaan ini pada waktu operasional harian setelah pelatihan, perusahaan sebaiknya memastikan pengembang telah memberikan buku User Manual dari Sistem Informasi yang dibuat.

File dalam bentuk power point dan wordnya dapat diunduh pada laman berikut :
1.Power Point : 
http://www.4shared.com/file/UVWLVnJ-/PRESENTASI_TUGAS_1_waterfall _13_jenis_UML.html
2. Word :
http://www.4shared.com/file/uITfrklh/TUGAS_1_waterfall_jenis_uml_word.html



Veronika Trianita - 41810010068