Rabu, 14 September 2011

Permodelan Bisnis


Secara formal, didefinisikan sebagai segala teknik pemodelan yang digunakan untuk mengambarkan model sebuah bisnis. Pemodelan Bisnis dapat digunakan untuk meninjau, meningkatkan, dan membuat sebuah bisnis.Dengan dilakukannya pemodelan bisnis diharapkan kita:
  • Memahami struktur dan dinamika organisasi
  • Memahami masalah-masalah dalam mencapai target organisasi dan menemukan potensi untuk kemajuan organisasi.
  • Yakin bahwa para customer, end user, dan developer mempunyai sebuah pemahaman yang benar mengenai organisasi.
  • Dapat menurunkan/mendapatkan kebutuhan perangkat lunak yang akan kita buat yang diperlukan untuk mendukung pencapaian target organisasi.
Kapan membutuhkan Pemodelan Bisnis?
  • Jika kelompok kerja merupakan kelompok baru dalam organisasi
  • Jika organisasi mengalami re-engineering proses bisnis/ bermaksud menjalankan re-engineering proses bisnis
  • Jika kita akan membangun perangkat lunak yang akan dipergunakan oleh porsi yang significant dari organisasi
  • Jika terdapat aliran kerja yang kompleks dan besar yang tidak didokumentasikan
  • Jika kita merupakan konsultan organisasi yang belum pernah bekerja sama
Kapan tidak memerlukan Pemodelan Bisnis?
  • Jika kita telah memahami struktur, tujuan, visi dan stakeholder dari organisasi
  • Jika kita membangun perangkat lunak yang akan dipergunakan hanya oleh bagian kecil dari organisasi dan tidak akan menimbulkan efek pada keseluruhan bisnis
  • Jika aliran kerja organisasi telah jelas dan didokumentasikan dengan baik
  • Jika tidak terdapat banyak waktu (tapi tidak boleh dijadikan alasan).
Elemen-elemen pemodelan bisnis:
  • Business use-case model, dengan elemen-elemen: Business Actor dan Business Use-case, serta Activity Diagram untuk menjelaskan model business use-case. Berikut gambaran Business Use-case Diagram [Activity Diagram dapat dilihat di sini].
  • Business objek model, dengan elemen-elemen: Business Worker (Pekerja Bisnis), Business Entity (Entitas Bisnis)
Business Object Model: Menggambarkan realisasi business use-case. Mengenali semua orang yang bekerja dan benda yang terlibat dalam bisnis dan bagaimana satu sama lain berhubungan
Business Use-case Model: Merupakan model yang menggambarkan proses bisnis dari sebuah bisnis atau organisasi dan interaksi proses tersebut dengan pihak luar, seperti para customer dan partner. Diperlukan untuk memperjelas konteks bisnis dari perangkat lunak yang akan dibuat, bersifat optional. Diilustrasikan dalam satu atau beberapa business use-case diagram

Sabtu, 10 September 2011

UML Diagram

Unifed Modeling Language adalah seperangkat aturan dan notasi untuk spesifikasi sistem perangkat lunak, dikelola dan dibuat oleh Object Management Group. notasi ini menyediakan satu set elemen grafis untuk pemodelan sistem.

Beberapa diagram dari UML adalah:

1. Use Case Diagram
alat komunikasi tingkat tinggi untuk mewakili persyaratan sistem. Diagram menunjukkan interaksi antara pengguna dan entitas eksternal lainnya dengan sistem yang sedang dikembangkan.

2. Activity Diagram
Menangkap alur dari sebuah sistem, termasuk tindakan utama dan poin keputusan. Diagram ini berguna untuk mendokumentasikan proses bisnis.

3. Class Diagram
Class diagram menggambarkan struktur statis dari kelas dalam sistem anda dan menggambarkan atribut, operasi dan hubungan antara kelas.

4. Squence Diagram
Squence diagram secara khusus menjabarkan sebuah Use Case. Diagram ini menunjukkan sejumlah objek dan pesan yang melewati suatu objek.

5. Component Diagram
Komponen diagram digunakan untuk menggambarkan bagaimana komponen suatu sistem yang terhubung bersama di tingkat yang lebih tinggi dari abstraksi dari diagram kelas. Sebuah komponen bisa dimodelkan oleh salah satu atau lebih kelas.

6. Deployment Diagram
Adalah model arsitektur runtime dari sistem dalam pengaturan dunia nyata. Mereka menunjukkan entitas bagaimana perangkat lunak diterapkan ke perangkat fisik.

7. State Machine Diagram Digunakan untuk menggambarkan status transisi dari objek tunggal dalam menanggapi peristiwa.

8. Interaction Overview Diagrams
Merupakan pencangkokan dari Activity Diagram dan Squence Diagram. Disini berupa squence diagram yang dipecah menggunakan notasi activity diagram untuk menunjukkan aliran kontrol

9. Communications Diagram
Mendeskripsikan kumpulan objek yang berinteraksi untuk menjalankan suatu tingkah laku dalam sistem.

RPL (Rekayasa Perangkat Lunak)


Rekayasa perangkat lunak telah berkembang sejak pertama kali ddiciptakan pada tahun 1940-an hingga kini. Focus utama pengembangannya adalah untuk mengembangkan praktek dan teknologi untuk meningkatkan produktivitas para praktisi pengembang perangkat lunak dan kualitas aplikasi yang dapat digunakan oleh pemakai.

Fase Rekayasa Perangkat Lunak:
1. Analisa
2. Perancangan / Design
3. Pengembangan / Development
4. Testing
5. Implementasi / Deployment
6. Maintenance

Tujuan Rekayasa Perangkat Lunak
1. Meningkatkan keakuratan, performance & efficiency produk secara keseluruhan dalam pengembangan.
2. Menerapkan metodologi yang terdefinisi dengan baik untuk resolusi software.
3. Melengkapi secara rasional konflik-konflik dan dokumentasi.

Jumat, 09 September 2011

UML (Unified Modelling Language)

UML adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.

Dengan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walau demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.

Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).




Langkah-Langkah Penggunaan UML

Berikut ini adalah tips pengembangan piranti lunak dengan menggunakan UML:

1. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul.

2. Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat fungsionalitas yang harus disediakan oleh sistem. Kemudian perhalus use case diagram dan lengkapi dengan requirement, constraints dan catatan-catatan lain.

3. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.

4. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga harus disediakan oleh sistem.

5. Berdasarkan use case diagram, mulailah membuat activity diagram.

6. Definisikan objek-objek level atas (package atau domain) dan buatlah sequence dan/atau collaboration diagram untuk tiap alir pekerjaan. Jika sebuah use case memiliki kemungkinan alir normal dan error, buatlah satu diagram untuk masing-masing alir.

7. Buarlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk menjalankan skenario use case.

8. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau domain dipecah menjadi hirarki class lengkap dengan atribut dan metodanya. Akan lebih baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain.

9. Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokan class menjadi komponen-komponen. Karena itu buatlah component diagram pada tahap ini. Juga, definisikan tes integrasi untuk setiap komponen meyakinkan ia berinteraksi dengan baik.

10. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan requirement piranti lunak, sistem operasi, jaringan, dan sebagainya. Petakan komponen ke dalam node.

11. Mulailah membangun sistem. Ada dua pendekatan yang dapat digunakan :
• Pendekatan use case, dengan meng-assign setiap use case kepada tim pengembang tertentu untuk mengembangkan unit code yang lengkap dengan tes.
• Pendekatan komponen, yaitu meng-assign setiap komponen kepada tim pengembang tertentu.

12. Lakukan uji modul dan uji integrasi serta perbaiki model berserta codenya. Model harus selalu sesuai dengan code yang aktual.

13. Piranti lunak siap dirilis.