By : Agung surya permana
(5108100504)
Latar belakang
Rumusan masalah Permasalahan yang diangkat dalam menyelesaikan tugas akhir ini adalah: • Bagaimana mengimplementasikan metode arsitektur SOA dari hasil analisis dan desain SOAP untuk rekayasa perangkat lunak General Ledger dan Cash Managment. • Bagaimana memanfaatkan metode SOA untuk menghasilkan komponen-komponen servis General Ledger dan Cash Managment yang reusable, scalable dan maintainable. • Bagaimana mengimplementasikan SOA dengan Web Services.
Batasan masalah • Lingkungan pemrograman yang dipakai menggunakan Framework .Net Platform, dengan NHibernate yang dapat diimplementasikan pada semua sistem operasi dan sangat mendukung implementasi Service Oriented Architecture (SOA). • Perangkat lunak General Ledger dan Cash Managment yang dibangun adalah manajemen keuangan secara generic, dengan harapan bisa memenuhi kebutuhan umum General Ledger dan Cash Management sektor swasta.
Tinjauan pustaka
Service Oriented Analysis and Design (SOAD) •
Service Oriented Analysis and Design (SOAD), Digunakan untuk merepresentasikan dan mendesain sebuah service yang berbasis SOA. Dalam mendesain SOAD, proses perangcangan system dibagi menjadi tiga layar, yaitu :
Layering SOAD •
•
•
Layar Bisnis, menggambarkan pengelompokan layanan bisnis sesuai dengan proses dan fungsionalitas bisnis. layer bisnis dibagi menjadi 3 bagian yaitu : – Functional domain, yang menggambarkan sistem yang dirancang dan didesain, – Bisnis proses, yang menggambarkan proses bisnis yang terjadi dari sistem yang akana dirancang, – Bisnis service, yang menggambarkan layanan bisnis yang dikelompokkan berdasarkan bisnis prosesnya. Layar Service, menggambarkan realisasi dari layanan bisnis yang diterjemahkan dalam suatu service yang kemudian dibangun untuk menunjang jalannya sistem. Service direalisasikan dalam bentuk web service yang kemudian bida digunakan oleh aplikasi end-user. Layar Komponen, menggambarkan komponen pendukung dari suatu service yang didesain, komponen merupakan kumpulan dari class yang digunakan untuk membangun service sehingga dapat berjalan dalam sistem.
Services oriented architecthure (SOA) • Service Oriented Architecture (SOA) merupakan suatu arsitektur perangkat lunak yang memprensentasikan fungsi dalam bentuk services berdasarkan pendekatan services oriented.
Domain Driven Design (DDD) • Domain Driven Design (DDD) adalah sebuah pendekatan berorientasi obyek untuk merancang perangkat lunak berdasarkan bisnis domain, dengan unsur-unsur dan perilaku, dan hubungan antara mereka.
Arsitektur konseptual layer: •User Interface (or Presentation Layer) Bertanggung jawab untuk menampilkan informasi kepada pengguna dan menafsirkan perintah pengguna. •Application Layer Mendefinisikan fungsi perangkat lunak yang seharusnya dilakukan dan mengarahkan ekspresif obyek domain untuk bekerja dengan baik. •Domain Layer (or Model Layer) Bertanggung jawab untuk mewakili konsep-konsep bisnis, informasi tentang situasi bisnis, dan aturan-aturan bisnis. •Infrastructure Layer Generik menyediakan kemampuan teknis yang mendukung lapisan yang lebih tinggi: pengiriman pesan untuk aplikasi, kegigihan untuk domain.
Web Service • Web services adalah sistem pertukaran informasi berbasis XML dengan menggunakan media internet untuk interaksi antara aplikasi Teknologi ini merupakan standar yang diadopsi oleh banyak vendor perangkat lunak, karena memiliki standar terbuka
UDDI diakses menggunakan memungkinkan mendeteksi
SOAP mengikat ke
WSDL
mendiskripsikan
Web Services
memungkinkan adanya komunikasi antara
Web Service Description Language (WSDL) • Web Services Description Language (WSDL) adalah bahasa berbasis XML yang digunakan untuk mendeskripsikan web services. Adanya WSDL memungkinkan kita mengetahui jenis deskripsi layanan yang disediakan dan fungsifungsi apa saja yang dimiliki sebuah aplikasi web service
Struktur umum dari WSDL adalah sebagai berikut : • Elemen interface merepresentasikan interface dari web service, dan terdiri atas operasi-operasi yang dimiliki oleh web service dengan tag operation. • Elemen message merepresentasikan semua input dan output message dari operation. Sebuah message dapat terdiri atas satu parameter atau lebih. Untuk itu digunakan komponen part. • Elemen service menyimpan koleksi dari endpoint, yang menyimpan alamat fisik dan informasi protokol. Setiap komponen endpoint dapat mereferensi elemen binding, dan lalu dihubungkan dengan informasi endpoint pada operasi tertentu. • Elemen binding mengasosiasikan dirinya dengan konstruksi operation.
Simple Object Access Protocol (SOAP) • Simple Object Access Protocol merupakan protokol untuk menukarkan pesan berbasis XML dalam jaringan komputer. Umumnya SOAP melalui protokol HTTP. Struktur pesan SOAP adalah sebagai berikut:
Enterprise Resource Planning (ERP) • Enterprise Resource Planning (ERP) merupakan sistem informasi yang mendukung sistem online, registrasi transaksi secara realtime, penanganan data dan laporan yang berhubungan proses bisnis perusahaan melalui database terpusat, sering disebut sebuah arsitektur Client-Server.
Functional Domain • Cash Bank – – – –
Currency Management Bank Management Giro Management Cheque Management
• General Ledger – – – –
Account Management Accounting Period Journal Report
Domain Model Layer FunctionalDomain.Core
Arsitektur Perangkat Lunak Presentation Layer FunctionalDomain.Web
Web Service Layer FunctionalDomain.Service.Web
Application Service Layer FunctionalDomain.Service.Application
Data Access Layer FunctionalDomain.Data
ORM NHibernate Database Oracle 11g
• Web Service Layer, layer ini bertanggung jawab atas implementasi web service yang disediakan • Presentation Layer, pada layer ini diimplementasikan hal-hal yang berhubungan dengan implementasi user interface • Application Service Layer, layer ini berisi implementasi business logic dari suatu aplikasi • Domain Model layer, layer ini bertanggung jawab atas implementasi class dan data transfer object yang digunakan • Data Access Layer, layer ini bertanggung jawab untuk hubungan langsung dengan database. Pada bagian ini seluruh koneksi database akan diimplementasikan
TerimaKasih