web viewlayanan abstraksi - beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika...

25
Aplikasi Enterprise Integrasi (EAI) didefinisikan sebagai penggunaan sistem perangkat lunak dan komputer prinsip arsitektur untuk mengintegrasikan satu set aplikasi komputer perusahaan. Ikhtisar Aplikasi Enterprise Integrasi (EAI) adalah kerangka integrasi terdiri dari kumpulan teknologi dan jasa yang membentuk middleware untuk memungkinkan integrasi sistem dan aplikasi di seluruh perusahaan. Aplikasi manajemen rantai pasokan (untuk mengelola persediaan dan pengiriman), pelanggan aplikasi manajemen hubungan (untuk mengelola pelanggan sekarang dan potensial), kecerdasan aplikasi bisnis (untuk mencari pola dari data yang ada dari operasi), dan jenis lain dari aplikasi (untuk mengelola data seperti data sumber daya manusia, kesehatan, komunikasi internal, dll) biasanya tidak dapat berkomunikasi dengan satu sama lain untuk berbagi data atau aturan bisnis. Untuk alasan ini, aplikasi tersebut kadang-kadang disebut sebagai pulau silo otomatisasi atau informasi. Kurangnya komunikasi menyebabkan inefisiensi, data dimana identik disimpan di beberapa lokasi, atau proses langsung tidak akan otomatis. Integrasi aplikasi enterprise (EAI) adalah proses menghubungkan aplikasi tersebut dalam satu organisasi bersama dalam rangka untuk menyederhanakan dan mengotomatisasi proses bisnis sejauh mungkin, sementara pada saat yang sama menghindari harus membuat perubahan besar terhadap aplikasi yang ada atau struktur data . Dalam kata-kata dari Grup Gartner, EAI adalah "terbatas berbagi data dan proses bisnis antara setiap aplikasi yang terhubung atau sumber data dalam perusahaan." [1] Salah satu tantangan besar EAI adalah bahwa berbagai sistem yang perlu dihubungkan bersama sering berada pada sistem operasi yang berbeda, menggunakan solusi database yang berbeda dan bahasa komputer yang berbeda, dan dalam beberapa kasus adalah warisan sistem yang tidak lagi didukung oleh vendor yang awalnya diciptakan mereka. Dalam beberapa kasus, sistem tersebut dijuluki "sistem cerobong asap" karena mereka terdiri dari komponen yang telah macet bersama-sama dengan cara yang membuatnya sangat sulit untuk memodifikasi mereka dengan cara apapun. [Sunting] konektivitas Meningkatkan Unbalanced scales.svg Netralitas dari artikel ini adalah sengketa. Silakan lihat diskusi di halaman pembicaraan. Harap jangan hapus pesan ini sampai sengketa

Upload: phamnguyet

Post on 30-Jan-2018

225 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

Aplikasi Enterprise Integrasi (EAI) didefinisikan sebagai penggunaan sistem perangkat lunak dan komputer prinsip arsitektur untuk mengintegrasikan satu set aplikasi komputer perusahaan.

Ikhtisar

Aplikasi Enterprise Integrasi (EAI) adalah kerangka integrasi terdiri dari kumpulan teknologi dan jasa yang membentuk middleware untuk memungkinkan integrasi sistem dan aplikasi di seluruh perusahaan.

Aplikasi manajemen rantai pasokan (untuk mengelola persediaan dan pengiriman), pelanggan aplikasi manajemen hubungan (untuk mengelola pelanggan sekarang dan potensial), kecerdasan aplikasi bisnis (untuk mencari pola dari data yang ada dari operasi), dan jenis lain dari aplikasi (untuk mengelola data seperti data sumber daya manusia, kesehatan, komunikasi internal, dll) biasanya tidak dapat berkomunikasi dengan satu sama lain untuk berbagi data atau aturan bisnis. Untuk alasan ini, aplikasi tersebut kadang-kadang disebut sebagai pulau silo otomatisasi atau informasi. Kurangnya komunikasi menyebabkan inefisiensi, data dimana identik disimpan di beberapa lokasi, atau proses langsung tidak akan otomatis.

Integrasi aplikasi enterprise (EAI) adalah proses menghubungkan aplikasi tersebut dalam satu organisasi bersama dalam rangka untuk menyederhanakan dan mengotomatisasi proses bisnis sejauh mungkin, sementara pada saat yang sama menghindari harus membuat perubahan besar terhadap aplikasi yang ada atau struktur data . Dalam kata-kata dari Grup Gartner, EAI adalah "terbatas berbagi data dan proses bisnis antara setiap aplikasi yang terhubung atau sumber data dalam perusahaan." [1]

Salah satu tantangan besar EAI adalah bahwa berbagai sistem yang perlu dihubungkan bersama sering berada pada sistem operasi yang berbeda, menggunakan solusi database yang berbeda dan bahasa komputer yang berbeda, dan dalam beberapa kasus adalah warisan sistem yang tidak lagi didukung oleh vendor yang awalnya diciptakan mereka. Dalam beberapa kasus, sistem tersebut dijuluki "sistem cerobong asap" karena mereka terdiri dari komponen yang telah macet bersama-sama dengan cara yang membuatnya sangat sulit untuk memodifikasi mereka dengan cara apapun.[Sunting] konektivitas MeningkatkanUnbalanced scales.svgNetralitas dari artikel ini adalah sengketa. Silakan lihat diskusi di halaman pembicaraan. Harap jangan hapus pesan ini sampai sengketa diselesaikan. (Maret 2011)

Jika integrasi diterapkan tanpa mengikuti pendekatan EAI terstruktur, koneksi point-to-point tumbuh di seluruh organisasi. Dependensi ditambahkan secara spontan, sehingga dalam kekacauan kusut yang sulit untuk mempertahankan. Hal ini sering disebut sebagai spaghetti, kiasan kepada setara pemrograman kode spageti. Sebagai contoh:

Jumlah koneksi yang diperlukan untuk memiliki sepenuhnya dihubungkan koneksi point-to-point, dengan poin n, diberikan oleh \ frac {n (n-1)} {2}. Jadi, untuk aplikasi sepuluh sepenuhnya terintegrasi point-to-point, \ frac {10 \ times9} {2}, atau 45 sambungan point-to-point diperlukan.

Namun, EAI bukan hanya tentang berbagi data di antara aplikasi, tetapi berfokus pada berbagi data usaha baik dan proses bisnis. Analis Middleware menghadiri EAI melibatkan mengamati sistem sistem, yang melibatkan masalah besar antar-disiplin dengan beberapa skala, heterogen, sistem terdistribusi yang tertanam dalam jaringan di berbagai tingkat.[Sunting] Tujuan

EAI dapat digunakan untuk tujuan yang berbeda:

    Data integrasi: Memastikan bahwa informasi dalam beberapa sistem disimpan konsisten. Hal ini juga

Page 2: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

dikenal sebagai Enterprise Information Integration (EII).    kemerdekaan Vendor: kebijakan bisnis Ekstrak atau aturan dari aplikasi dan mengimplementasikannya dalam sistem EAI, sehingga bahkan jika salah satu aplikasi bisnis diganti dengan aplikasi vendor yang berbeda itu, aturan bisnis tidak harus kembali diterapkan.    fasad Umum: Sebuah sistem EAI dapat front-end sekelompok aplikasi, menyediakan antarmuka akses tunggal yang konsisten ke aplikasi ini dan melindungi pengguna dari harus belajar untuk menggunakan paket perangkat lunak yang berbeda.

[Sunting] Pola[Sunting] pola Integrasi

Ada dua pola yang menerapkan sistem EAI:

Mediasi (intra-komunikasi)    Di sini, sistem EAI bertindak sebagai perantara atau broker antara (interface atau berkomunikasi) beberapa aplikasi. Setiap kali sebuah peristiwa menarik terjadi dalam aplikasi (misalnya, informasi baru dibuat, transaksi baru selesai, dll) modul integrasi dalam sistem EAI diberitahu. Modul ini kemudian menjalar perubahan terhadap aplikasi lain yang relevan.Federasi (inter-komunikasi)    Dalam hal ini, sistem EAI bertindak sebagai fasad menyeluruh di beberapa aplikasi. Acara Semua panggilan dari 'dunia luar' ke salah satu aplikasi yang depan berakhir oleh sistem EAI. Sistem EAI dikonfigurasi untuk mengekspos hanya informasi yang relevan dan interface dari aplikasi yang mendasari ke dunia luar, dan melakukan semua interaksi dengan aplikasi yang mendasari atas nama pemohon.

Kedua pola sering digunakan secara bersamaan. Sistem EAI sama bisa menjaga berbagai aplikasi di sync (mediasi), sedangkan melayani permintaan dari pengguna eksternal terhadap aplikasi ini (federasi).[Sunting] Akses pola

EAI mendukung kedua pola akses asinkron dan sinkron, mantan yang khas dalam hal mediasi dan yang terakhir dalam kasus federasi.[Sunting] pola Lifetime

Operasi integrasi bisa berumur pendek (misalnya data tetap sinkron di dua aplikasi yang dapat diselesaikan dalam waktu satu detik) atau panjang-hidup (misalnya salah satu langkah yang bisa melibatkan sistem EAI berinteraksi dengan aplikasi alur kerja manusia untuk persetujuan dari pinjaman yang mengambil jam atau hari untuk menyelesaikan).[Sunting] Topologi

Ada dua topologi utama: hub-dan-berbicara, dan bus. Masing-masing memiliki kelebihan dan kekurangan. Dalam model hub-dan-berbicara, sistem EAI berada di pusat (hub), dan berinteraksi dengan aplikasi melalui jari-jari. Dalam model bus, sistem EAI adalah bus (atau diimplementasikan sebagai modul penduduk dalam bus pesan yang sudah ada atau middleware pesan-oriented).[Sunting] Teknologi

Beberapa teknologi yang digunakan dalam pelaksanaan masing-masing komponen dari sistem EAI:

Bus / hub    Hal ini biasanya dilakukan dengan meningkatkan produk middleware standar (aplikasi server, bus pesan) atau diimplementasikan sebagai program yang berdiri sendiri (yakni, tidak menggunakan middleware ada), bertindak sebagai middleware sendiri.Aplikasi konektivitas

Page 3: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

    Bus / hub terhubung ke aplikasi melalui serangkaian adapter (juga disebut sebagai konektor). Ini adalah program yang tahu bagaimana berinteraksi dengan aplikasi bisnis yang mendasari. Adaptor melakukan komunikasi dua arah, melakukan permintaan dari pusat terhadap aplikasi, dan memberitahukan hub ketika sebuah peristiwa yang menarik terjadi dalam aplikasi (rekor baru dimasukkan, transaksi selesai, dll). Adapter dapat spesifik ke salah satu aplikasi (misalnya, dibangun dengan pustaka klien vendor aplikasi) atau khusus untuk suatu kelas aplikasi (misalnya, dapat berinteraksi dengan aplikasi apapun melalui protokol komunikasi standar, seperti SOAP, SMTP atau Action pesan Format (AMF )). Adaptor ini dapat berada di ruang proses yang sama seperti bus / hub atau mengeksekusi di lokasi terpencil dan berinteraksi dengan hub / bus melalui protokol standar industri seperti antrian pesan, layanan web, atau bahkan menggunakan protokol proprietary. Dalam dunia Jawa, standar seperti JCA adapter memungkinkan untuk dibuat dengan cara vendor-netral.Format data dan transformasi    Untuk menghindari setiap adaptor harus mengkonversi data ke / dari setiap format aplikasi lain ', EAI sistem biasanya menetapkan format (atau umum) aplikasi independen data. Sistem EAI biasanya menyediakan layanan transformasi data juga untuk membantu mengkonversi antara format aplikasi spesifik dan umum. Hal ini dilakukan dalam dua langkah: adaptor mengubah informasi dari format aplikasi ke format umum bus itu. Kemudian, transformasi semantik yang diterapkan pada ini (mengubah kode pos ke nama kota, pemecahan / penggabungan objek dari satu aplikasi ke objek di aplikasi lain, dan seterusnya).Integrasi modul    Sebuah sistem EAI bisa berpartisipasi dalam beberapa operasi integrasi bersamaan pada waktu tertentu, tiap jenis integrasi yang diproses oleh modul integrasi yang berbeda. Integrasi modul berlangganan peristiwa jenis tertentu dan pemberitahuan proses yang mereka terima saat peristiwa ini terjadi. Modul-modul ini dapat diterapkan dalam cara yang berbeda: pada sistem EAI berbasis Java, ini bisa web aplikasi atau EJBs atau bahkan POJOs yang sesuai dengan spesifikasi sistem EAI itu.Dukungan untuk transaksi    Ketika digunakan untuk proses integrasi, sistem EAI juga menyediakan konsistensi transaksional berbagai aplikasi dengan menjalankan operasi integrasi semua di semua aplikasi dalam suatu transaksi tunggal terdistribusi menyeluruh (menggunakan dua-tahap melakukan protokol atau transaksi kompensasi).

[Sunting] Komunikasi arsitektur

Saat ini, ada banyak variasi pemikiran tentang apa yang merupakan infrastruktur terbaik, model komponen, dan struktur standar untuk EAI. Tampaknya ada konsensus bahwa empat komponen yang penting bagi integrasi aplikasi enterprise arsitektur modern:

    Seorang broker terpusat yang menangani keamanan, akses, dan komunikasi. Hal ini dapat dicapai melalui server integrasi (seperti Sekolah Interoperabilitas Framework (SIF) Zona Integrasi Server) atau melalui software yang serupa seperti bus pelayanan perusahaan (ESB) model yang bertindak sebagai manajer layanan SOAP-oriented.    Model data independen berdasarkan struktur data standar, juga dikenal sebagai model data kanonik. Tampaknya XML dan penggunaan style sheets XML telah menjadi de facto dan dalam beberapa kasus standar de jure untuk bahasa bisnis seragam.    Sebuah konektor, atau model agen di mana setiap vendor, aplikasi, atau interface dapat membangun sebuah komponen tunggal yang dapat berbicara native untuk aplikasi itu dan berkomunikasi dengan broker terpusat.    Sebuah model sistem yang mendefinisikan aliran API, data dan aturan keterlibatan pada sistem sehingga komponen dapat dibangun untuk berinteraksi dengannya dalam cara yang standar.

Meskipun pendekatan lain seperti menghubungkan pada database atau level user-interface telah dieksplorasi, mereka belum ditemukan skala atau dapat menyesuaikan. Masing-masing aplikasi dapat

Page 4: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

mempublikasikan pesan ke broker terpusat dan berlangganan untuk menerima pesan tertentu dari broker itu. Setiap aplikasi hanya memerlukan satu sambungan kepada broker. Pendekatan kontrol pusat bisa sangat scalable dan sangat evolvable.

Integrasi Aplikasi Enterprise berkaitan dengan middleware teknologi seperti pesan middleware berorientasi (MOM), dan teknologi representasi data seperti XML. Lain EAI teknologi melibatkan menggunakan layanan web sebagai bagian dari arsitektur berorientasi layanan sebagai alat integrasi. Otomasi cenderung menjadi data centric. Dalam waktu dekat, itu akan datang untuk memasukkan konten dan integrasi proses bisnis.[Sunting] jebakan Pelaksanaan

Pada tahun 2003 dilaporkan bahwa 70% dari semua proyek EAI gagal. Kebanyakan dari kegagalan ini bukan karena perangkat lunak itu sendiri atau kesulitan teknis, tetapi karena masalah manajemen. Integrasi Ketua Konsorsium Eropa Steve Craggs telah digariskan tujuh perangkap utama yang telah dilaksanakan oleh perusahaan menggunakan sistem EAI dan menjelaskan solusi dari permasalahan tersebut. [2]

    Perubahan Konstan: Sifat sangat EAI bersifat dinamis dan membutuhkan manajer proyek yang dinamis untuk mengelola pelaksanaannya.    Kekurangan tenaga ahli EAI: EAI membutuhkan pengetahuan tentang banyak masalah dan aspek teknis.    Bersaing standar: Dalam bidang EAI, paradoks adalah bahwa EAI standar sendiri tidak universal.    EAI merupakan paradigma alat: EAI bukanlah alat, melainkan sistem dan harus dilaksanakan seperti itu.    Membangun interface adalah sebuah seni: Engineering solusi tidak cukup. Solusi perlu dinegosiasikan dengan departemen pengguna untuk mencapai konsensus umum pada hasil akhir. Kurangnya konsensus mengenai desain antarmuka mengarah pada upaya berlebihan untuk memetakan antara berbagai sistem data persyaratan.    Kehilangan detail: Informasi yang sepertinya tidak penting pada tahap awal mungkin menjadi penting kemudian.    Akuntabilitas: Karena begitu banyak departemen memiliki kebutuhan yang saling bertentangan banyak, harus ada pertanggungjawaban yang jelas untuk struktur akhir sistem.

potensi masalah lain bisa muncul di daerah-daerah:

    Emerging Persyaratan: implementasi EAI harus extensible dan modular untuk memungkinkan perubahan masa depan.    Proteksionisme: Aplikasi yang terintegrasi data sedang sering berasal dari departemen berbeda yang memiliki teknis, budaya, dan alasan politik untuk tidak ingin berbagi data dengan departemen lain

[Sunting] Keuntungan dan kerugian

Keuntungan

    Real time akses informasi antara sistem    bisnis-arus proses dan membantu meningkatkan efisiensi organisasi    Menjaga integritas informasi di beberapa sistem    Kemudahan pembangunan dan pemeliharaan

Kekurangan

    Tinggi biaya pengembangan awal, terutama untuk usaha kecil dan menengah (UKM)

Page 5: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

    Memerlukan jumlah wajar desain bisnis di depan, yang banyak manajer tidak dapat membayangkan atau tidak mau berinvestasi

Sebagian besar proyek-proyek EAI biasanya mulai sebagai upaya point-to-point, cepat menjadi diatur sebagai jumlah peningkatan aplikasi.[Sunting] Masa Depan

teknologi EAI masih sedang dikembangkan dan masih ada konsensus pada pendekatan ideal atau kelompok yang benar dari teknologi perusahaan yang harus digunakan. Ada banyak proyek yang sudah berjalan yang memberikan dukungan untuk merancang solusi EAI. Mereka mungkin berkisar dari proyek proprietary atau terbuka seperti Microsoft BizTalk Server atau Apache Camel untuk proyek-proyek akademis seperti Guarana DSL. Masa depan adalah untuk memberikan teknologi yang memungkinkan desain solusi EAI pada tingkat abstraksi tinggi dan menggunakan MDA untuk secara otomatis mengubah desain menjadi solusi executable. Sebuah perangkap umum adalah dengan menggunakan teknologi eksklusif lainnya yang mengaku terbuka dan diperluas tetapi menciptakan vendor lock-in.

Sumber: http://en.wikipedia.org/wiki/Enterprise_application_integration

Page 6: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

Arsitektur berorientasi layanan (SOA) adalah seperangkat prinsip desain fleksibel digunakan selama fase pengembangan sistem dan integrasi dalam komputasi. Sebuah sistem yang didasarkan pada SOA akan paket fungsionalitas sebagai rangkaian layanan interoperable yang dapat digunakan dalam beberapa sistem yang terpisah dari domain beberapa bisnis.

SOA juga umumnya menyediakan cara bagi konsumen jasa, seperti aplikasi berbasis web, untuk menyadari layanan berbasis SOA yang tersedia. Sebagai contoh, beberapa departemen yang berbeda dalam perusahaan dapat mengembangkan dan memperluas layanan SOA dalam bahasa implementasi yang berbeda; klien mereka masing-masing akan mendapatkan keuntungan dari antarmuka, dipahami dengan baik didefinisikan dengan baik untuk mengaksesnya. XML umumnya digunakan untuk antarmuka dengan layanan SOA, meskipun hal ini tidak diperlukan.

SOA mendefinisikan bagaimana untuk mengintegrasikan aplikasi luas yang berbeda untuk lingkungan berbasis web dan menggunakan berbagai platform implementasi. Daripada mendefinisikan sebuah API, SOA mendefinisikan antarmuka dalam hal protokol dan fungsionalitas. Suatu titik akhir adalah titik masuk untuk seperti implementasi SOA.

Service-orientasi membutuhkan loose coupling jasa dengan sistem operasi, dan teknologi lainnya yang mendasari aplikasi. SOA memisahkan fungsi menjadi unit-unit yang berbeda, atau jasa, [1] yang membuat pengembang dapat diakses melalui jaringan untuk memungkinkan pengguna untuk menggabungkan dan menggunakan kembali mereka dalam produksi aplikasi. Layanan ini dan konsumen yang berhubungan berkomunikasi satu sama lain dengan melewatkan data dalam format, yang jelas bersama, atau dengan mengkoordinasikan aktivitas antara dua atau lebih layanan. [2]

SOA bisa dilihat dalam sebuah kontinum, dari konsep yang lebih tua dari komputasi terdistribusi [1] [3] dan pemrograman modular, melalui SOA, dan pada saat praktek mashup, SaaS, dan Cloud Computing (yang beberapa lihat sebagai keturunan SOA [4]).

Ikhtisar

Implementasi SOA mengandalkan mesh layanan perangkat lunak. Layanan terdiri unassociated, longgar ditambah unit fungsi yang tidak memiliki panggilan satu sama lain tertanam di dalamnya. Setiap layanan melaksanakan satu tindakan, seperti mengisi aplikasi online untuk account, atau melihat pernyataan bank online, atau menempatkan pemesanan online atau memesan tiket pesawat. Daripada layanan embedding panggilan satu sama lain dalam kode sumber mereka, mereka menggunakan protokol didefinisikan yang menjelaskan bagaimana layanan lancar dan mengurai pesan menggunakan metadata deskripsi.

Page 7: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

SOA asosiasi pengembang objek SOA individu dengan menggunakan orkestrasi. Dalam proses orkestrasi asosiasi pengembang perangkat lunak fungsionalitas (layanan) dalam pengaturan non-hirarkis menggunakan perangkat lunak yang berisi daftar lengkap dari semua layanan yang tersedia, karakteristik mereka, dan sarana untuk membangun aplikasi memanfaatkan sumber-sumber ini.

Yang mendasari dan memungkinkan semua ini membutuhkan metadata secara rinci cukup untuk menggambarkan tidak hanya karakteristik layanan ini, tetapi juga data yang mendorong mereka. Programmer telah membuat ekstensif menggunakan XML dalam SOA untuk struktur data yang mereka bungkus dalam wadah-deskripsi hampir lengkap. Analog, Web Services Description Language (WSDL) biasanya menggambarkan layanan sendiri, sedangkan protokol SOAP menggambarkan protokol komunikasi. Apakah bahasa-bahasa deskripsi adalah yang terbaik mungkin untuk pekerjaan itu, dan apakah mereka akan menjadi / tetap menjadi favorit di masa depan, tetap pertanyaan terbuka. Pada tahun 2008 SOA tergantung pada data dan jasa yang dijelaskan oleh metadata yang harus memenuhi dua kriteria sebagai berikut:

    metadata harus datang dalam bentuk yang sistem perangkat lunak dapat digunakan untuk mengkonfigurasi secara dinamis dengan penemuan dan penggabungan layanan pasti, dan juga untuk menjaga koherensi dan integritas. Sebagai contoh, metadata dapat digunakan oleh aplikasi lain, seperti katalog, untuk melakukan autodiscovery layanan tanpa memodifikasi kontrak fungsional layanan.    metadata harus datang dalam bentuk yang desainer sistem dapat memahami dan mengelola dengan pengeluaran biaya yang wajar dan usaha.

SOA bertujuan untuk memungkinkan pengguna untuk string bersama potongan cukup besar fungsi untuk membentuk ad hoc aplikasi yang dibangun hampir seluruhnya dari layanan perangkat lunak yang ada. Semakin besar potongan, semakin sedikit antarmuka poin yang diperlukan untuk melaksanakan setiap set fungsionalitas tertentu, namun potongan yang sangat besar fungsi mungkin tidak membuktikan cukup rinci untuk digunakan kembali mudah. Setiap antarmuka membawa serta beberapa jumlah overhead pengolahan, sehingga ada pertimbangan kinerja dalam memilih granularity pelayanan. Janji besar SOA menunjukkan bahwa biaya marjinal menciptakan aplikasi-n rendah, karena semua perangkat lunak yang diperlukan sudah ada untuk memenuhi persyaratan dari aplikasi lain. Idealnya, satu hanya memerlukan orkestrasi untuk menghasilkan aplikasi baru.

Untuk ini beroperasi, tidak ada interaksi harus ada antara potongan yang ditentukan atau dalam potongan sendiri. Sebaliknya, manusia menentukan interaksi layanan (semuanya unassociated peer) dengan cara yang relatif ad hoc dengan maksud didorong oleh kebutuhan yang baru muncul. Dengan demikian kebutuhan pelayanan sebagai unit jauh lebih besar dari fungsionalitas dari fungsi tradisional atau kelas, agar kompleksitas semata-mata ribuan benda butiran seperti membanjiri desainer aplikasi. Programmer mengembangkan layanan sendiri menggunakan bahasa tradisional seperti Java, C, C + +, C #, Visual Basic, COBOL, atau PHP.

layanan SOA fitur kopling longgar, berbeda dengan fungsi yang linker yang mengikat bersama untuk membentuk dieksekusi, ke perpustakaan terkait secara dinamis atau untuk perakitan. SOA layanan juga dijalankan dalam "aman" pembungkus (seperti Java atau NET.) Dan dalam bahasa pemrograman lain yang mengelola alokasi memori dan reklamasi, memungkinkan ad hoc dan akhir mengikat, dan menyediakan beberapa derajat data tak tentu mengetik.

Pada tahun 2008, peningkatan jumlah perusahaan perangkat lunak pihak ketiga menawarkan layanan perangkat lunak untuk biaya. Di masa depan, sistem SOA mungkin [riset asli?] Terdiri dari layanan pihak ketiga seperti dikombinasikan dengan orang lain dibuat di-rumah. Ini memiliki potensi untuk menyebar biaya lebih banyak pelanggan dan menggunakan pelanggan, dan mempromosikan standardisasi baik di dalam maupun di industri. Secara khusus, industri perjalanan kini memiliki [5]

Page 8: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

yang jelas dan didokumentasikan set kedua layanan dan data, yang memadai untuk mengizinkan semua software engineer cukup kompeten untuk membuat perangkat lunak-agen perjalanan menggunakan layanan sepenuhnya off-the-rak perangkat lunak. Industri lainnya , seperti industri keuangan, juga sudah mulai membuat kemajuan yang signifikan dalam arah ini.

SOA sebagai arsitektur yang mengandalkan pelayanan-orientasi sebagai prinsip desain yang fundamental [6] Jika sebuah pelayanan hadiah. Antarmuka sederhana yang abstrak jauh kompleksitas yang mendasari nya, pengguna dapat mengakses layanan mandiri tanpa pengetahuan tentang implementasi platform layanan. [7][Sunting] Persyaratan

Dalam rangka untuk efisien menggunakan SOA, arsitektur harus memenuhi persyaratan sebagai berikut:

    Interoperabilitas di antara sistem yang berbeda dan bahasa pemrograman yang menyediakan dasar bagi integrasi antara aplikasi pada platform yang berbeda melalui sebuah protokol komunikasi. Salah satu contoh komunikasi tersebut tergantung pada konsep pesan. Menggunakan pesan di saluran pesan pasti menurunkan kompleksitas aplikasi akhir, sehingga memungkinkan pengembang aplikasi untuk fokus pada fungsionalitas aplikasi yang benar, bukan kebutuhan yang rumit dari sebuah protokol komunikasi.    Keinginan untuk membuat sebuah federasi sumber daya. Menetapkan dan memelihara aliran data ke sistem database Federated. Hal ini memungkinkan fungsionalitas baru dikembangkan untuk referensi format bisnis umum untuk setiap elemen data.

[Sunting] Prinsip

Prinsip-prinsip panduan berikut mendefinisikan aturan-aturan dasar untuk pengembangan, pemeliharaan, dan penggunaan SOA [8]:

    kembali, granularity, modularitas, composability, komponenisasi dan interoperabilitas.    standar kepatuhan (baik umum dan industri-spesifik).    layanan identifikasi dan kategorisasi, provisioning dan pengiriman, serta pemantauan dan pelacakan.

Penelitian publik diterbitkan pertama layanan-orientasi dari perspektif industri yang diberikan oleh Thomas Erl SOA Systems Inc yang didefinisikan delapan prinsip khusus layanan-orientasi umum untuk semua platform SOA primer. Prinsip-prinsip ini telah dipublikasikan dalam "Service-Oriented Architecture: Konsep, Teknologi, dan Desain", pada www.soaprinciples.com lokasi penelitian, dan dalam edisi September 2005 dari Web Services Journal (lihat Layanan-orientasi).

    Standar Kontrak Jasa - Layanan mematuhi perjanjian komunikasi, seperti yang didefinisikan secara kolektif oleh satu atau lebih dokumen layanan-deskripsi.

    Layanan Loose Coupling - Layanan menjaga hubungan yang meminimalkan dependensi dan hanya mensyaratkan bahwa mereka mempertahankan kesadaran satu sama lain.

    Layanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar.

    Service Reusability - Logika dibagi menjadi layanan dengan tujuan mempromosikan penggunaan kembali.

    Otonomi Layanan - Layanan memiliki kendali atas logika mereka merangkum.

Page 9: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

    Granularity Layanan - Pertimbangan desain untuk memberikan lingkup yang optimal dan tingkat granular kanan fungsi bisnis dalam operasi pelayanan.

    Layanan Tanpa Kewarganegaraan - Layanan mengurangi konsumsi sumber daya dengan menunda pengelolaan informasi negara bila diperlukan

    Layanan Discoverability - Layanan yang dilengkapi dengan meta data komunikatif dengan mana mereka dapat secara efektif ditemukan dan ditafsirkan.

    Layanan Composability - Layanan komposisi peserta efektif, terlepas dari ukuran dan kompleksitas komposisi.

Beberapa penulis juga memasukkan prinsip-prinsip berikut:

    Layanan Optimization - Semua, lain sama layanan berkualitas tinggi umumnya lebih baik untuk yang berkualitas rendah.    Relevansi Layanan - Fungsi disajikan pada granularity diakui oleh pengguna sebagai layanan bermakna.    Enkapsulasi layanan - layanan Banyak konsolidasi untuk penggunaan di bawah SOA tersebut. Seringkali layanan tersebut tidak direncanakan berada di bawah SOA.    Lokasi Layanan Transparansi - ini mengacu pada kemampuan seorang konsumen layanan untuk memanggil layanan terlepas dari lokasi sebenarnya di jaringan. Ini juga mengakui properti discoverability (salah satu prinsip inti dari SOA) dan hak konsumen untuk mengakses layanan tersebut. Sering kali, gagasan virtualisasi pelayanan juga berhubungan dengan transparansi lokasi. Di sinilah konsumen hanya panggilan layanan logis sementara SOA runtime memungkinkan komponen infrastruktur yang sesuai, umumnya layanan bis, peta ini logis layanan panggilan ke layanan fisik.

Referensi berikut ini memberikan pertimbangan tambahan untuk mendefinisikan implementasi SOA:

    SOA Reference Architecture menyediakan desain kerja penerapan SOA enterprise-wide dengan arsitektur diagram rinci, deskripsi komponen, persyaratan rinci, pola desain, pendapat tentang standar, pola pada kepatuhan peraturan, standar template dll [9]    Manajemen siklus hidup SOA Praktisi Panduan Bagian 3: Pendahuluan kepada Layanan Lifecycle memperkenalkan siklus layanan dan menyediakan proses rinci untuk manajemen jasa melalui siklus hidup layanan, dari awal hingga pensiun atau repurposing jasa. Hal ini juga berisi lampiran yang meliputi organisasi dan tata-praktik terbaik, template, komentar pada standar SOA kunci, dan direkomendasikan link untuk informasi lebih lanjut.    Prinsip Desain SOA memberikan informasi lebih lanjut tentang realisasi SOA dengan menggunakan prinsip desain Layanan

Selain itu, orang mungkin mengambil faktor-faktor berikut ke account user ketika menentukan sebuah implementasi SOA:

    Efisien penggunaan sumber daya sistem    Layanan jatuh tempo dan kinerja    EAI (Enterprise Integrasi Aplikasi)

[Sunting] Pendekatan Web layanan

Web services dapat mengimplementasikan service-oriented architecture. Layanan web membuat bangunan-blok fungsional diakses melalui protokol Internet standar independen dari platform dan

Page 10: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

bahasa pemrograman. Layanan ini dapat mewakili salah satu aplikasi baru atau hanya pembungkus sekitar sistem warisan yang ada untuk membuat mereka jaringan-diaktifkan.

Setiap blok bangunan SOA dapat memainkan salah satu atau kedua dari dua peran:

    Service Provider - Penyedia layanan menciptakan layanan web dan mungkin menerbitkan antarmuka dan informasi akses ke registri layanan. Setiap penyedia layanan yang harus memutuskan untuk mengekspos, bagaimana membuat trade-off antara keamanan dan ketersediaan mudah, bagaimana harga layanan, atau (jika tidak dikenakan biaya) bagaimana / apakah untuk mengeksploitasi mereka untuk nilai yang lain. Penyedia layanan juga harus memutuskan apa kategori layanan yang harus tercantum dalam untuk layanan broker diberikan dan macam apa perjanjian mitra dagang yang diperlukan untuk menggunakan layanan ini. Ini register layanan apa yang tersedia di dalamnya, dan daftar semua penerima layanan potensial. Pelaksana broker kemudian memutuskan lingkup broker. Umum broker tersedia melalui Internet, sementara broker swasta hanya diakses oleh khalayak yang terbatas, misalnya, pengguna intranet perusahaan. Selain itu, jumlah informasi yang ditawarkan harus memutuskan. Beberapa broker mengkhususkan diri pada banyak listing. Lain menawarkan tingkat kepercayaan yang tinggi dalam layanan terdaftar. Beberapa mencakup pemandangan luas layanan dan fokus lain dalam industri. Beberapa katalog broker broker lain. Tergantung pada model bisnis, broker dapat mencoba untuk memaksimalkan Cari permintaan, jumlah daftar atau keakuratan dari daftar. The Universal Deskripsi Discovery dan Integrasi (UDDI) mendefinisikan spesifikasi cara untuk mempublikasikan dan menemukan informasi tentang layanan Web. teknologi selular lainnya broker termasuk (misalnya) ebXML (Elektronik Bisnis menggunakan eXtensible Markup Language) dan mereka yang didasarkan pada standar ISO / IEC 11179 artikel Registry (MDR).konsumen Layanan - Para konsumen jasa atau klien layanan web menempatkan entri dalam registri menggunakan berbagai broker menemukan operasi dan kemudian mengikat ke penyedia layanan untuk memanggil salah satu layanan web. Apapun layanan-layanan kebutuhan konsumen, mereka harus bawa ke broker, lalu mengikatnya dengan layanan masing-masing dan kemudian menggunakannya. Mereka dapat mengakses berbagai layanan, jika layanan tersebut menyediakan berbagai layanan.

[Sunting] SOA dan protokol Web service

Pelaksana umumnya membangun SOA menggunakan layanan web standar (misalnya, SOAP) yang telah mendapatkan penerimaan industri yang luas setelah rekomendasi dari Versi 1.2 dari W3C [10] (World Wide Web Consortium) pada tahun 2003. Standar-standar ini (juga disebut sebagai spesifikasi Web Service) juga menyediakan interoperabilitas yang lebih besar dan perlindungan dari lock-in vendor perangkat lunak berpemilik. Satu bisa, bagaimanapun, menerapkan SOA menggunakan layanan berbasis teknologi, seperti Jini, CORBA atau REST.[sunting] konsep Lain SOA

Arsitektur dapat beroperasi secara independen dari teknologi tertentu [3] Desainer dapat mengimplementasikan SOA menggunakan berbagai teknologi, termasuk.:

SOAP, RPCRESTDCOMCORBALayanan Web

DDSWCF (implementasi Microsoft Layanan Web sekarang merupakan bagian dari WCF)

Implementasi dapat menggunakan salah satu atau lebih dari protokol dan, misalnya, mungkin

Page 11: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

menggunakan mekanisme file sistem untuk berkomunikasi data sesuai dengan spesifikasi-interface didefinisikan antara proses sesuai dengan konsep SOA. Kuncinya adalah layanan independen dengan antarmuka yang didefinisikan yang dapat dipanggil untuk melakukan tugas mereka dengan cara standar, tanpa servis yang mempunyai pengetahuan lebih dulu dari aplikasi yang memanggil, dan tanpa aplikasi memiliki atau membutuhkan pengetahuan tentang bagaimana layanan ini benar-benar melakukan tugas-tugasnya.

Banyak pelaksana SOA telah mulai [kapan?] untuk mengadopsi suatu evolusi dari konsep SOA menjadi lebih maju [rujukan?] arsitektur disebut SOA 2.0.

SOA memungkinkan pengembangan aplikasi yang dibangun dengan menggabungkan layanan longgar digabungkan dan interoperable. [12]

Layanan-layanan antar-beroperasi berdasarkan definisi formal (atau kontrak, misalnya, WSDL) yang independen dari platform yang mendasari dan bahasa pemrograman. Definisi menyembunyikan antarmuka pelaksanaan layanan bahasa tertentu. SOA berbasis sistem sehingga dapat berfungsi secara independen dari perkembangan teknologi dan platform (seperti Java, NET,. dll). Layanan yang ditulis dalam C # berjalan pada. Platform NET dan jasa ditulis di Jawa berjalan pada platform Java EE, misalnya, bisa baik dikonsumsi oleh aplikasi komposit umum (atau klien). Aplikasi berjalan pada platform baik juga dapat mengkonsumsi layanan yang berjalan di sisi lain sebagai layanan web yang memfasilitasi reuse. Dikelola lingkungan juga dapat membungkus sistem warisan COBOL dan sekarang mereka sebagai layanan perangkat lunak. Hal ini telah memperpanjang masa manfaat dari sistem warisan banyak inti tanpa batas, tidak peduli apapun bahasa mereka awalnya digunakan.

SOA dapat mendukung aktivitas integrasi dan konsolidasi dalam sistem perusahaan yang kompleks, tapi SOA tidak menentukan atau menyediakan metodologi atau kerangka kerja untuk mendokumentasikan kemampuan atau jasa.

Bahasa tingkat tinggi seperti BPEL dan spesifikasi seperti WS-CDL dan WS-Koordinasi memperpanjang konsep pelayanan dengan menyediakan sebuah metode mendefinisikan dan mendukung orkestrasi layanan fine-grained ke lebih layanan bisnis kasar, yang arsitek pada gilirannya dapat menggabungkan ke dalam alur kerja dan proses bisnis diimplementasikan dalam aplikasi komposit atau portal [rujukan?].

Pada tahun 2008 peneliti telah mulai menyelidiki penggunaan Layanan Komponen Arsitektur (SCA) untuk menerapkan SOA.

pemodelan berorientasi layanan [1] adalah sebuah kerangka kerja SOA yang mengidentifikasi berbagai disiplin yang membimbing praktisi SOA untuk konsep, analisis, desain, dan arsitek aset mereka service-oriented. Kerangka pemodelan berorientasi layanan (SOMF) menawarkan sebuah bahasa pemodelan dan struktur bekerja atau "peta" yang menggambarkan berbagai komponen yang berkontribusi terhadap pendekatan model layanan yang berorientasi sukses. Ini menggambarkan unsur-unsur utama yang mengidentifikasi "apa yang harus dilakukan" aspek skema pengembangan pelayanan. Model ini memungkinkan praktisi untuk kerajinan rencana proyek dan untuk mengidentifikasi tonggak dari inisiatif layanan-oriented. SOMF juga menyediakan notasi pemodelan umum untuk alamat keselarasan antara organisasi bisnis dan TI.

SOMF membahas prinsip-prinsip berikut:

    bisnis ketertelusuran    arsitektur-praktik terbaik traceability    teknologi ketertelusuran

Page 12: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

    SOA nilai proposisi    aset software reuse    Integrasi strategi SOA    teknologi abstraksi dan generalisasi    arsitektur komponen abstraksi

[Sunting] definisi SOA

Komentator telah memberikan beberapa definisi SOA. Kelompok OASIS [13] dan Open Group [14] memiliki keduanya menciptakan definisi formal.

OASIS mendefinisikan SOA sebagai berikut:

Sebuah paradigma untuk mengatur dan memanfaatkan kemampuan terdistribusi yang mungkin berada di bawah kendali kepemilikan domain yang berbeda. Menyediakan seragam sarana untuk menawarkan, menemukan, berinteraksi dengan dan menggunakan kemampuan untuk menghasilkan efek yang diinginkan sesuai dengan prasyarat terukur dan harapan.[Sunting] kontrak layanan Programatik

Sebuah kontrak jasa kebutuhan [rujukan?] Untuk memiliki komponen-komponen berikut:

    Header        Nama - Nama layanan. Ini harus mengindikasikan secara umum pelayanan apa tidak, bukan hanya definisinya        Versi - Versi kontrak layanan ini        Pemilik - Orang / tim yang bertanggung jawab atas layanan        Tanggung jawab tugas (Raci)            Bertanggung jawab - Peran / orang / tim yang bertanggung jawab atas kontrak ini kiriman / jasa. Semua versi dari kontrak            Akuntabel - Ultimate Pembuat Keputusan dalam hal kontrak ini / jasa            Dikonsultasikan - Siapa orang harus berkonsultasi sebelum tindakan diambil untuk kontrak ini / jasa. Ini adalah komunikasi dua arah. Orang-orang ini berdampak pada keputusan atau pelaksanaan keputusan itu.            Informasi - Siapa yang harus diberitahu bahwa keputusan atau tindakan yang sedang diambil. Ini adalah komunikasi satu arah. Orang-orang ini dipengaruhi oleh keputusan atau eksekusi keputusan itu, tetapi tidak memiliki kendali atas tindakan.        Tipe - Ini adalah jenis layanan: untuk membantu membedakan lapisan di mana ia berada. implementasi yang berbeda akan memiliki jenis layanan yang berbeda. Contoh jenis pelayanan meliputi:

Presentasi            Proses            Bisnis            Data            Integrasi    Fungsional        Kebutuhan Fungsional (dari Persyaratan Dokumen) - Menunjukkan fungsi dalam item bulet spesifik - apa sebenarnya layanan ini menyelesaikan. Bahasa harus mendorong uji kasus untuk membuktikan fungsionalitas dicapai.        Layanan Operasi - Metode, tindakan dll Harus ditentukan dalam hal apa bagian dari fungsi yang disediakan.        Doa - Menunjukkan bagaimana untuk memanggil layanan tersebut. Ini termasuk URL, interface,

Page 13: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

dll Mungkin ada beberapa jalur doa untuk layanan yang sama. Seseorang mungkin memiliki fungsi yang sama untuk beberapa klien internal dan eksternal, masing-masing dengan cara doa yang berbeda dan interface. Contoh:            SOAP            REST            Acara Pemicu    Non-Fungsional        Kendala Keamanan - Tetapkan yang dapat melaksanakan pelayanan ini dalam hal peran atau individu dll mitra dan yang mekanisme pemanggilan mereka bisa memanggil.        Kualitas Layanan - Menentukan tingkat kegagalan diizinkan        Transaksional - Apakah ini yang mampu bertindak sebagai bagian dari transaksi yang lebih besar dan jika demikian, bagaimana kita kontrol yang?        Service Level Agreement - Menentukan jumlah latency layanan diperbolehkan harus melakukan tindakan yang        Semantik - menentukan atau mendefinisikan arti istilah yang digunakan dalam deskripsi dan interface layanan        Proses - Menjelaskan proses, jika ada, dari layanan yang dikontrak

[Sunting] SOA dan arsitektur pengelolaan jaringan

Pada tahun 2008 prinsip-prinsip SOA sedang diterapkan [oleh siapa?] Untuk bidang manajemen jaringan. Contoh arsitektur berorientasi layanan jaringan manajemen termasuk TS 188 001 NGN Manajemen OSS Arsitektur dari ETSI, dan M.3060 Prinsip-Prinsip Manajemen Jaringan Next Generation rekomendasi dari ITU-T.

Alat untuk mengelola infrastruktur SOA meliputi:

    HP Software & Solusi    HyPerformix IPS Pengoptimal Kinerja    IBM Tivoli Framework    Red Hat JBoss Operasi Jaringan

[Sunting] Diskusi[Sunting] Manfaat

Beberapa arsitek perusahaan percaya bahwa SOA dapat membantu perusahaan merespon lebih cepat dan biaya-efektif untuk perubahan pasar-kondisi [15] Ini gaya arsitektur mempromosikan kembali pada tingkat (layanan) makro dan bukan mikro (kelas) tingkat.. Hal ini juga dapat menyederhanakan interkoneksi kepada - dan penggunaan - TI yang ada (warisan) aset.

Dalam beberapa hal, seseorang dapat menganggap SOA sebagai evolusi arsitektur daripada sebagai revolusi. Ia menangkap banyak dari praktek-praktek terbaik dari arsitektur perangkat lunak sebelumnya. Dalam sistem komunikasi, misalnya, pengembangan kecil telah tempat solusi yang menggunakan binding benar-benar statis untuk berbicara dengan peralatan lain dalam jaringan. Dengan resmi merangkul pendekatan SOA, sistem tersebut dapat memposisikan diri mereka untuk menekankan pentingnya didefinisikan dengan baik, interface sangat antar-dioperasikan. [16]

Beberapa [siapa?] Telah mempertanyakan apakah SOA hanya menghidupkan konsep seperti pemrograman modular (1970), desain acara berorientasi (1980) atau antarmuka / desain berbasis komponen (1990) [rujukan?]. SOA mempromosikan tujuan memisahkan user (konsumen) dari implementasi layanan. Layanan itu dapat dijalankan di berbagai platform didistribusikan dan diakses di jaringan. Ini juga dapat memaksimalkan penggunaan kembali layanan [rujukan?].

Page 14: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

SOA menyadari bisnis dan TI manfaat dengan menggunakan metodologi analisis dan desain saat membuat jasa. Metodologi ini memastikan bahwa layanan tetap konsisten dengan visi arsitektur dan peta jalan, dan bahwa mereka mematuhi prinsip-prinsip pelayanan-orientasi. Argumen yang mendukung aspek bisnis dan manajemen dari SOA diuraikan dalam berbagai publikasi. [17]

Layanan terdiri dari unit yang berdiri sendiri dari fungsi yang tersedia hanya melalui antarmuka yang ditetapkan secara formal. Layanan dapat menjadi semacam "-perusahaan nano" yang mudah untuk menghasilkan dan meningkatkan. Juga layanan dapat "mega-korporasi" dibangun sebagai karya dikoordinasikan layanan sub-ordinat.

Layanan umum mematuhi prinsip-prinsip berikut layanan-orientasi: [18]

    abstraksi    otonomi    composability    discoverability    formal kontrak    lepas kopling    reusabilitas    Tanpa Kewarganegaraan

Sebuah peluncuran dewasa SOA efektif mendefinisikan API organisasi.

Alasan untuk mengobati pelaksanaan pelayanan sebagai proyek terpisah dari proyek-proyek besar meliputi:

    Pemisahan mempromosikan konsep dengan bisnis bahwa layanan dapat disampaikan dengan cepat dan independen dari proyek yang lebih besar yang bergerak lambat dan umum dalam organisasi. bisnis dimulai sistem pemahaman dan antarmuka pengguna disederhanakan menyerukan layanan. Ini kelincahan pendukung. Artinya, itu mendorong inovasi bisnis dan mempercepat waktu-pasar-. [19]    Pemisahan mempromosikan decoupling jasa dari proyek mengkonsumsi. Hal ini mendorong desain yang baik sepanjang layanan dirancang tanpa tahu siapa konsumen perusahaan.    Dokumentasi dan uji artefak pelayanan tersebut tidak tertanam dalam detail dari proyek yang lebih besar. Hal ini penting pada saat jasa harus digunakan kembali nanti.

Keuntungan tidak langsung dari SOA melibatkan secara dramatis disederhanakan pengujian. Layanan otonom, tanpa negara, dengan antarmuka sepenuhnya didokumentasikan, dan terpisah dari masalah lintas sektor pelaksanaan. Industri [mana?] Belum pernah terkena keadaan ini sebelum. [Rujukan?]

Jika organisasi memiliki ditetapkan secara sesuai data tes, maka rintisan yang sesuai dibangun yang bereaksi terhadap data uji ketika layanan sedang dibangun. Sebuah set lengkap uji regresi, script, data, dan tanggapan juga ditangkap untuk layanan ini. Layanan ini dapat diuji sebagai Rintisan menggunakan 'kotak hitam' yang ada sesuai dengan jasa yang panggilan. Test lingkungan bisa dibangun di mana primitif dan keluar-layanan-lingkup yang bertopik, sedangkan sisanya mesh adalah uji penyebaran layanan penuh. Seperti setiap antarmuka sepenuhnya didokumentasikan dengan mengatur sendiri penuh dokumentasi uji regresi, menjadi sederhana untuk mengidentifikasi masalah pada layanan uji. Pengujian berevolusi untuk hanya memvalidasi bahwa layanan uji beroperasi sesuai dengan dokumentasi, dan menemukan kesenjangan dalam kasus dokumentasi dan tes semua jasa di dalam lingkungan. Mengelola negara layanan data idempoten adalah kompleksitas saja.

Contoh mungkin berguna untuk membantu dalam mendokumentasikan layanan ke tingkat di mana ia

Page 15: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

menjadi berguna. Dokumentasi dari beberapa API dalam Java Community Process memberikan contoh yang baik. Seperti ini lengkap, staf biasanya akan menggunakan hanya subset penting. File 'ossjsa.pdf' dalam JSR-89 contoh file seperti itu. [20][Sunting] Tantangan dalam mengadopsi SOA

Salah satu tantangan yang jelas dan umum yang dihadapi meliputi pengelolaan layanan metadata [rujukan?]. lingkungan berbasis SOA dapat mencakup banyak layanan yang bertukar pesan untuk melakukan tugas. Tergantung pada desain, sebuah aplikasi tunggal dapat menghasilkan jutaan pesan. Mengelola dan memberikan informasi tentang bagaimana layanan berinteraksi bisa menjadi kompleks. Hal ini menjadi lebih rumit ketika layanan ini disampaikan oleh organisasi yang berbeda dalam perusahaan atau bahkan perusahaan yang berbeda (rekanan, pemasok, dll). Hal ini menciptakan masalah kepercayaan besar di seluruh tim, dan karenanya SOA Kelola datang ke dalam gambar.

Tantangan lain melibatkan kurangnya pengujian dalam ruang SOA. Tidak ada alat canggih yang menyediakan testability dari semua layanan tanpa kepala (termasuk pesan dan layanan database bersama dengan layanan web) dalam arsitektur khas. Kurangnya kepercayaan horisontal membutuhkan baik produsen dan konsumen layanan uji secara terus menerus. Tujuan utama SOA adalah untuk memberikan Agility untuk Bisnis [rujukan?]. Oleh karena itu penting untuk berinvestasi dalam kerangka pengujian (membangun atau membeli) yang akan memberikan visibilitas yang diperlukan untuk menemukan pelakunya dalam arsitektur. kelincahan Bisnis memerlukan SOA jasa yang dikendalikan oleh tujuan bisnis dan arahan sebagaimana didefinisikan dalam Model Motivasi Bisnis (BMM). [21]

Tantangan lainnya berkaitan dengan tingkat yang tepat menyediakan keamanan. model Keamanan dibangun ke aplikasi mungkin tidak lagi cukup bila aplikasi memperlihatkan kemampuan sebagai layanan yang dapat digunakan oleh aplikasi lain. Artinya, keamanan aplikasi yang dikelola bukan model yang tepat untuk mengamankan layanan. Sejumlah teknologi baru dan standar sudah mulai [kapan?] Untuk muncul dan menyediakan model yang lebih tepat untuk keamanan di SOA.

Sebagai SOA dan spesifikasi WS-* praktisi mengembangkan, memperbaharui dan menyempurnakan output mereka, mereka menghadapi kekurangan orang terampil untuk bekerja pada sistem berbasis SOA, termasuk integrasi layanan dan pembangunan infrastruktur layanan.

Interoperabilitas menjadi aspek penting dari implementasi SOA. The WS-I organisasi telah mengembangkan Basic Profile (BP) dan Keamanan Dasar Profile (BSP) untuk menegakkan kompatibilitas. [22] WS-I telah merancang pengujian alat untuk membantu menilai apakah layanan web sesuai dengan pedoman WS-I profil. Selain itu, piagam lain telah dibentuk untuk bekerja pada Reliable Secure Profile.

Signifikan vendor hype mengelilingi SOA, yang dapat membuat harapan berlebihan. tumpukan Produk terus berkembang sebagai pengadopsi awal pengujian produk pengembangan dan runtime dengan masalah di dunia nyata. SOA tidak menjamin mengurangi biaya TI, meningkatkan kelincahan sistem atau lebih cepat waktu-ke-pasar. Sukses implementasi SOA mungkin menyadari beberapa atau semua manfaat tersebut tergantung pada kualitas dan relevansi dari arsitektur sistem dan desain. [23] [24]

Internal organisasi TI pengiriman secara rutin melakukan upaya SOA, dan beberapa di antaranya tidak benar memperkenalkan konsep untuk bisnis [rujukan?] Sehingga tetap disalahpahami [oleh siapa?]. adopsi mulai memenuhi kebutuhan TI pengiriman bukan orang-orang dari bisnis, sehingga dalam suatu organisasi dengan, misalnya, layanan provisioning laptop superlatif, bukan hanya satu yang bisa dengan cepat merespon peluang pasar. kepemimpinan bisnis juga menjadi yakin bahwa organisasi ini melaksanakan baik di SOA.

Page 16: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

Salah satu manfaat paling penting dari SOA adalah kemudahan reuse. Oleh karena itu akuntabilitas dan pendanaan model akhirnya harus berkembang dalam organisasi. [Rujukan?] Sebuah unit usaha perlu didorong untuk menciptakan layanan yang unit lain akan digunakan. Sebaliknya, unit harus didorong untuk menggunakan kembali layanan. Hal ini memerlukan beberapa komponen pemerintahan baru:

    Setiap unit usaha menciptakan layanan harus memiliki struktur dukungan yang sesuai di tempat untuk memenuhi kewajibannya tingkat layanan, dan untuk mendukung peningkatan layanan yang telah ada hanya untuk kepentingan orang lain. Hal ini biasanya cukup asing bagi pemimpin bisnis.    Setiap unit usaha jasa mengkonsumsi menerima resiko tampak dari menggunakan kembali layanan di luar kendali mereka sendiri, dengan dependensi petugas proyek eksternal, dll    Model pendanaan yang inovatif diperlukan sebagai insentif untuk mendorong perilaku tersebut di atas. [Rujukan?] Bisnis unit biasanya membayar Organisasi TI untuk membantu selama proyek, dan kemudian untuk mengoperasikan lingkungan. insentif Perusahaan harus diskon biaya-biaya tersebut ke penyedia layanan, dan menciptakan internal pendapatan-aliran dari unit bisnis mengkonsumsi ke penyedia layanan. [rujukan?] Ini sungai harus kurang daripada biaya seorang konsumen hanya bangunan dengan cara kuno. Ini adalah tempat penyebaran SOA bisa mendapatkan keuntungan dari arsitektur monetisasi SaaS. [25]

[Sunting] Kritik terhadap SOA

Beberapa kritik [26] dari SOA tergantung pada conflating SOA dengan layanan Web. Sebagai contoh, beberapa kritikus [siapa?] Hasil SOA klaim pada penambahan lapisan XML, memperkenalkan parsing XML dan komposisi. Dengan tidak adanya bentuk asli atau biner dari Remote Procedure Call (RPC), aplikasi dapat berjalan lebih lambat dan memerlukan daya proses yang lebih, meningkatkan biaya. Kebanyakan implementasi dikenakan biaya overhead ini, tapi SOA dapat diimplementasikan menggunakan teknologi (misalnya, Java Business Integration (JBI) dan Distribusi Data Service (DDS)) yang tidak bergantung pada prosedur panggilan jarak jauh atau terjemahan melalui XML. Pada saat yang sama, muncul open-source XML parsing teknologi (seperti VTD-XML) dan berbagai format XML yang kompatibel biner berjanji untuk secara signifikan meningkatkan kinerja SOA. [27] [28] [29]

Stateful memerlukan layanan konsumen maupun penyedia untuk berbagi konteks konsumen tertentu yang sama, yang baik termasuk dalam atau dirujuk oleh pesan dipertukarkan antara penyedia dan konsumen. kendala ini memiliki kelemahan yang bisa mengurangi skalabilitas keseluruhan penyedia layanan jika layanan penyedia perlu untuk mempertahankan konteks bersama untuk setiap konsumen. Hal ini juga meningkatkan coupling antara penyedia layanan dan konsumen dan membuat penyedia layanan switching lebih sulit. [30] Pada akhirnya, beberapa kritikus merasa bahwa layanan SOA masih terlalu dibatasi oleh aplikasi yang mereka wakili. [31]

Masalah lain berkaitan dengan evolusi yang sedang berlangsung standar WS-* dan produk-produk (misalnya, transaksi, keamanan), dan SOA sehingga dapat memperkenalkan risiko baru kecuali dikelola dengan baik dan diperkirakan dengan anggaran tambahan dan darurat untuk tambahan bukti-kerja-konsep.

Beberapa kritik [siapa?] SOA menganggap sebatas sebagai evolusi arsitektur jelas saat ini baik digunakan (antarmuka terbuka, dll).

desain sistem TI kadang-kadang mengabaikan keinginan untuk memodifikasi sistem siap. Banyak sistem, termasuk sistem berbasis SOA, hard-kode operasi, barang dan jasa organisasi, sehingga membatasi layanan online mereka dan kelincahan bisnis di pasar global. [rujukan?]

Berikutnya [yang?] Langkah dalam proses desain mencakup definisi Pelayanan Platform (SDP) dan pelaksanaannya. Pada tahap desain SDP salah mendefinisikan model informasi bisnis, manajemen

Page 17: Web viewLayanan Abstraksi - Beyond deskripsi dalam kontrak layanan, layanan menyembunyikan logika dari dunia luar. Service Reusability - Logika

identitas, produk, konten, perangkat, dan karakteristik layanan pengguna akhir, serta bagaimana sistem tangkas sehingga dapat menangani dengan evolusi bisnis dan perusahaan pelanggan.[Sunting] Manifesto SOA

Pada bulan Oktober 2009, di SOA Simposium Internasional ke-2, kelompok campuran dari 17 praktisi SOA independen dan vendor, yang "Manifesto SOA Kelompok Kerja", mengumumkan penerbitan Manifesto SOA. [32] Manifesto SOA adalah seperangkat tujuan dan prinsip panduan yang bertujuan untuk memberikan pemahaman yang jelas dan visi SOA dan layanan-orientasi. Tujuannya adalah menyelamatkan konsep SOA dari penggunaan berlebihan istilah oleh komunitas vendor dan "proliferasi tampaknya tak berujung misinformasi dan kebingungan". [2]

Manifesto ini menyediakan definisi yang luas dari SOA, nilai-nilai yang diwakilinya untuk penandatangan dan beberapa prinsip. Manifesto memprioritaskan:

    Bisnis nilai lebih dari strategi teknis.    Sasaran-sasaran strategis di atas manfaat proyek-spesifik.    Intrinsik interoperabilitas atas integrasi kustom.    Shared layanan melalui implementasi spesifik-tujuan.    Fleksibilitas atas optimasi.    Evolusi penyempurnaan atas pengejaran kesempurnaan awal.

Sumber: http://en.wikipedia.org/wiki/Service-oriented_architecture