Sanal firmalara yönelik etmen ve rol tabanlı web servis pazarı
A role and agent based web service market for virtual companies
Yazar: ALİ DURMUŞ
Danışman: PROF. DR. NADİA ERDOĞAN
İstanbul Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Doktora, 2011
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Rol = Role ; Web servisleri = Web services

Özet:
Gelişen internet teknolojisi firmalara yeni iş fırsatları ve iş olanakları yaratmaktadır. Teknolojinin sağladığı olanaklar, firmalara, internet aracılığı ile hizmetlerini (servislerini) satabilme ve aynı şekilde ihtiyaç duydukları hizmetleri (servisleri) satın alabilme fırsatı sunmaktadır. Alım ve satım işlemlerinde coğrafi sınırlar bir engel olmaktan çıkmış, firmalar çok farklı yerlere servis satabilir duruma gelmiştir. Hatta bazen, firmaların satın aldığı bir servis, sattıkları bir başka serviste kullanılabilmektedir.Pazarda oluşan anlık taleplere firmalar hızlı bir şekilde yanıt vermek durumundadır. Yine aynı şekilde, pazarda oluşan değişimlere karşı firmalar da dinamik olarak yeniden organize olmak durumundadır. Yeni olanaklar ve pazar dinamizmi firmaları yapısal olarak dinamik olmaya zorlamaktadır. Firmalar içsel organizasyonlarını ve çalışan yapısını pazar ihtiyaçlarını ve dinamizmini karşılayabilmek için hızlı bir şekilde değiştirmek durumunda kalabilmektedir. Bu doğrultuda, firma içindeki alt birimlerin yapılarının değiştirilmesi (içsel organizasyon değişikliği), yeni eleman alımı veya gerektiğinde eleman çıkarma işlemleri yapılabilmektedir. Teknolojik gelişmeler firmalara sadece alış-satışlar için fırsat yaratmamış, kendi içsel yapıları içinde yeni dinamizm olanakları yaratmıştır. Firmalar kendi işleri için dış kaynak kullanabilmekte, hızlı bir şekilde ihtiyaç duydukları elemanları işe almakta ya da bazen kiralayabilmektedir. Yine firmalar teknolojinin getirdiği olanakları kullanarak çalışanlarının işe gelmeden firma faaliyetlerini yürütmesine izin vermektedir.Firmaların dinamik piyasa koşullarına ayak uydurarak servislerini pazarda satabilmeleri için aşağıdaki temel sorunların çözümlenmesi gerekmektedir.?Firma yapılarının dinamik olarak oluşturulmasına imkan sağlamak gerekmektedir.?Firmaların eleman ihtiyaçlarının hızla giderilmesi için eleman alımı ve bu elemanların servislerle ilişkilendirme işlemlerinin hızlıca yapılabilmesi gerekmektedir.?Firmaların elemanlarını ofis ortamından bağımsız olarak çalıştırabilmeleri gerekmektedir.?Firmaların servislerini satabilecekleri bir ortamın var olması gerekmektedir.?Firmaların servislerinin farklı ortamlardan kullanılabilmesi gerekmektedir.?Müşterilerin servis satın alabilecekleri bir ortam var olması gerekmektedir.?Müşteriye ihtiyacına göre birden fazla firmanın servislerinin birleştirilmesi (bütünleşik servis) olanağının sağlanması gerekmektedir.Birbirlerinden farklı ortamlara hizmet verebilme ve geniş bir pazara ulaşma söz konusu olduğunda, web servisi teknolojisi bu gereksinimleri karşılayan en uygun yapıdır. Web servisleri heterojen ortamlarda çalışma yeteneği ve servis tabanlı yapısı ile diğer sistemlere göre öne çıkmaktadır. Servis tabanlı mimari atomik servislere yoğunlaşmıştır ve bütün işler birer servis olarak kurgulamıştır. Web servislerinin, temel özellikleri olan ortamdan bağımsızlık, gevşek bağlılık ve modülerlik ile firmaların dinamik piyasa koşullarında karşılaşacakları problemlerin çözümlerinde kullanımı uygun olmaktadır.Olumlu yanlarına rağmen web servislerinin firmaların gereksinimlerini karşılayamadığı pek çok nokta bulunmaktadır. Dinamik firma yapısının oluşturulması, firma içindeki yetkilerin dağıtılması gibi yetenekleri web servislerinin sağlaması mümkün değildir. Web servisleri ve klasik programlama teknikleri bu tip problemlere çözüm getirmemektedir. Web servisleri, yapısını değiştiremeyen, işbirliği ve koordinasyon sağlayamayan statik yapılardır. Dinamizm, işbirliği ve koordinasyon söz konusu ise, bir ortamda bulunan ve tasarım amacına ulaşmak için ortamda özerk hareket etme yeteneğine (otonom) sahip bilgisayar yazılımları olan etmenler akla gelmektedir. Etmen insan veya diğer sistemlerin müdahalesi olmadan kendi başına karar verme yeteneğine sahiptir, kendi iç durumu ve hareketleri üzerinde kontrolü vardır. Etmenler ve web servisleri özellikleri itibari ile birbirlerini tamamlayıcı durumundadır.Web servislerine dayalı bir çözüm farklı ortamlardan çağrılma ve kullanılma problemini çözmekte ve büyük problemleri küçük problemlere ayırma yaklaşımı getirmekte, ancak etmenlerin doğal bir özelliği olan dinamizm, etkileşim, koordinasyon ve işbirliği konularında bir çözüm getirememekte, ya da yetersiz kalmaktadır. İki yaklaşımın kendine özgü yetenekleri birbirini tamamlar niteliktedir ve bu çalışmada beraber kullanılmıştır.Yukarıda belirtilen gereksinimleri karşılamak ve problemleri çözmek için, tez çalışması kapsamında, sanal firmalara yönelik bir etmen ve rol tabanlı web servis pazarı yaklaşımı önerilmiştir. Bu tezde ortaya konulan konulardan biri olan sanal firma sanal çalışanlardan ve sanal yöneticilerden oluşan bir çoklu etmen sistemidir. Bu tezin konusu olan sanal firma ile gerçek hayattaki firma yapılarının sanal ortama taşınması ve sanal ortamda servislerinin dış dünyaya açılması ve pazarlanması sağlanmış ve bunun için bütünleşik bir çatı ortaya konulmuştur. Yöneticilerden ve çalışanlardan oluşan sanal firma içinde yetenekler, mevkiler ve yetkiler roller aracılığı ile belirlenmiştir. Roller belirli servislerle ilişkilendirilmiştir. Rolleri edinen çalışan, sanal firmanın rolle ilişkilendirilmiş olan firma servislerini sunma yeteneği kazanmaktadır. Sanal firma servisleri etmen tabanlı web servis pazarında (EWSP) satılabilecektir. Sanal firma rolleri EWSP'de web servislerine dönüştürülmekte, web servisleri ise EWSP'de pazarlanabilmektedir. EWSP sistemi üzerinden web servis talebinde bulunan istemci/müşterilerin talepleri doğrultusunda sistemde ihale yapılıp ve talebi karşılamak için servis sağlayıcı etmenler belirlenmektedir. EWSP üzerinde bir istemci talebinin karşılanması için birden fazla servis bir araya getirilerek bütünleşik servisler oluşturulabilmektedir. İhale sonrası sanal firma taahhütleri (ihaleyi kazanan servis sağlayıcının) EWSP sistemi tarafından takip edilebilmektedir.Sanal firma modelinin tez çalışması bağlamında geliştirilen temel özellikleri şunlardır?Sanal firma sanal yönetici/kurucu ve sanal çalışanlardan oluşur.?Rol kavramı kullanılarak sanal çalışanlar belirli servisler konusunda yetkilendirilir ve sorumluluk verilir.?Sanal firma içindeki roller dinamik olarak çalışanlara dağıtılır veya geri alınır. Rollerin çalışanlara verilmesi veya alınması çalışma zamanında olmaktadır.?Sanal firma içindeki bir rol bir veya daha fazla servis ile ilişkilendirilebilir. Rol kavramının tasarımla bütünleşmiş olması sisteme esneklik ve dinamizm sağlamıştır. Sanal firma fonksiyonlarının rollere dağıtılması ve roller aracılığı ile yönetilmesi sanal firmalara günümüz koşullarında ihtiyaç duydukları dinamizmi kazandırmıştır.?Rol tanımları dinamik olarak bir xml dosyası ile yapılır. Böylece, tanımlamalar çalışma zamanında gerçeklenmiş olmaktadır. Sanal firma tanımlamalarının dinamik şekilde yapılabilmesi için, çalışma kapsamında, bir rol tanımlama dili olan EWSPX geliştirilmiştir. EWSPX kullanılarak rol tanımları rahat ve hızlı bir şekilde yapılabilmekte, geliştiriciler kendi sanal firmalarını kolay bir şekilde sisteme entegre edebilmektedirler.?Bir rol, atandığı çalışana, rol içerisinde yer alan servisleri sunma hakkı/yetkisi verir.?Sanal firmaya sanal çalışanların katılımının sağlanması için bir çalışma ortamı oluşturulmuştur. Adaylar yürütme sırasında bir başvuru gerçekleştirirler ve sanal yönetici tarafından yapılan değerlendirme sonucunda başvuruları sonuçlandırılır. Bu şekilde sanal firmalara yapısal dinamizm de kazandırılmıştır.?Sanal firma ölçeklenebilirdir. Sanal firma içindeki yönetici ve çalışanlar aynı bilgisayar sisteminde olmak durumunda değildir. Farklı sistemler üzerinde çalışabilirler.?Sanal firma yapısı esnektir. Dinamik ve çalışma zamanlı rol dağıtımı ile sanal firmanın kendi içsel hiyerarşisi esnek ve hızlı bir şekilde değişebilir. Aynı şekilde çalışanlarının yetenek ve yetkileri de değişebilir.?Sanal firma rol yapıları esnek ve dinamiktir. Roller xml dosyası ile sistem açılışında tanımlandığı için esnek ve dinamik olarak tanımlanabilir. Rollerin içerdikleri servisler (rol servis ilişkisi) dinamik bir şekilde tanımlanabilmektedir.EWSP sistemi özellikleri şunlardır:?Sanal firmaların servisleri web servislerine dönüştürülür ve sisteme kayıt edilir.?İstemciler (müşteriler) tarafından iletilen servis talepleri karşısında uygun servisin belirlenmesi amacıyla bir ihale hizmeti gerçeklenir.?İstemcilerin taleplerini yerine getirmek için birden fazla servis bir araya getirilerek bütünleşik servis oluşturulabilir.?Bütünleşik servis, bütünleşik servis yürütücüsü tarafından yürütülür. Bütünleşik servis yürütücüsü kendisine gelen talepleri ve çağrıları bütünleşik servisi oluşturan alt servislere ileterek sonucu oluşturur.?İstemciler servis talepleri için sadece servis kriterlerini kullanmaz, aynı zamanda kendi kriterlerinin ağırlıklarını da vererek uygun bir servis bulabilirler. Böylece istemcinin ihtiyaçlarına uygun web servisi elde etme imkanı artmaktadır.?İstemcinin talebi olan servisi bulmak için yapılan ihale sonrasında ihaleyi kazanan etmen taahhüdü takip edilir. Taahhüt takibi ile müşterinin hakları korunmakla birlikte ihalelere katılan rakip etmenlerin de hakları korunmaktadır.?Kazanan etmenin taahhütlerini yerine getirme düzeyi diğer ihaleler için girdi olarak kullanılmaktadır. Yani taahhütlerini yerine getiren etmen yeni ihalelerde daha avantajlı duruma gelirken taahhütlerini yerine getirmeyen etmen yeni ihalelerde dezavantajlı duruma gelmektedir.?EWSP ölçeklenebilir yapıda kurgulanmıştır. Servis talebinde ortaya çıkan duruma göre, ihtiyaç dahilinde birden fazla EWSP Yönetici etmeni yaratılıp, yük paylaştırılabilir. Sisteme katılan sanal firmalar farklı makinelerde çalışabilmektedir.?EWSP sistemi açıktır. EWSP sistemi web üzerinden çalıştığı için çok farklı işletim sistemleri üzerinde çalışan sistemler ile etkileşim halinde olabilir. Farklı işletim sistemi üzerinde çalışan sanal firmalar bu sisteme dahil olabilir.Bu çalışma içinde, yukarıda kısaca değinilen özellikleri taşıyan bütünleşik bir çatı ve yürütme ortamı tasarlanmış ve gerçeklenmiştir. Sistemin başarımını ölçmeye yönelik deneysel sonuçlar öngörülen hedefler ile uyumludur.

Abstract:
Developments in internet technologies provide companies with new business potentials and opportunities. Companies can sell services that they produce, and at the same time, they can buy services that they need. Geographical boundaries are no longer an obstacle, as companies can carry out their activities and exchange services regardless of their location. They may even buy services in order to be able to provide their own services that they sell.Companies have to respond quickly to instant demands that occur in the market. Likewise, companies need to reorganize against the changes in the market. They are forced to be structurally dynamic in order to respond to new opportunities and market dynamics. Companies? internal organizational structure and employees may change quickly to meet market needs and dynamics. In this respect, changing the structure of sub-units within companies (internal organizational changes), hiring or dismissing of employees may be required. Technological developments enable not only the marketing of services, but also allow companies to reorganize their internal structure dynamically. Companies can use outsourcing for their business, they recruit needed staff or sometimes hire in a quick way. Again, using the opportunities of technology, companies may allow employees to conduct company?s activities without being present at office.The following main issues have to be resolved for companies to adapt to dynamic market conditions and sell their services.?the creation of the dynamics of company structure?hiring and association of employees with companies? services?conducting company?s activities without being present at office?the presence of a virtual environment where companies can market their services?enriching services with features that allow them to be used in different environments?the presence of a virtual environment where customers can search for and buy services?providing the ability to merge services of different companies to meet customer demands: creation of composite services dynamicallyWhen providing services to different environments and reaching a broad market is the main concern, the web service technology is the most appropriate technology to meet these requirements. Web services with their ability to work in heterogeneous environments and their service based architecture stand out when compared to other systems. Service-based architecture focuses on an atomic service and each requirement is met through a service. Therefore, web services with their environment/technology independence, loosely coupling and modularity characteristics are appropriate to resolve the problems companies encounter in dynamic market conditions.Despite their positive aspects, still, certain needs that companies face cannot be met by web services. It is not possible to provide some capabilities such as creating a dynamic company structure or distribution of privileges within the company through the use of web services. Web services and conventional programming techniques do not provide solutions to these problems. Web services are static entities which cannot change their structure dynamically, and, they neither have cooperation and coordination abilities.When dynamism, cooperation and coordination are main issues, agent systems come to mind. An agent is computing system, which stays in an environment, and has an ability to act autonomously in that environment to achieve its design goals. An agent has the ability to make a decision without the intervention of humans or other systems and it has a control over its own internal state and movements.The features of agents and web services complement each other. A web services based method can solve issues related to invocation and usage in different environments and also with the approach of dividing big problems into smaller problems, can produce better solutions. However, it is inadequate to solve problems concerning dynamism, interaction, coordination and cooperation, at which agents excel. Consequently, both approaches have distinctive capabilities and they complement one another when used together.To meet the above requirements and to solve the related problems, this thesis proposes a role and agent based web services market for virtual companies. One of the contributions introduced in this thesis is the concept of a virtual company, which is a multi-agent system that represents a virtual organization consisting of a virtual manager and a number of virtual employees. The concept of a virtual company carries the structure of an actual company into virtual environments and allows it to operate in a virtual market by opening its services to the outside world. An integrated framework that provides the means for these capabilities has been implemented during the course of thesis work. The positions, qualifications and privileges of the members of the virtual company, the manager and the employees, are determined through roles that are assigned to them. Each role is associated with a set of services. An employee who is assigned a certain role gains the ability/responsibility to provide the services that are associated with that role. A virtual company?s services can be marketed in a virtual market environment, an agent based web service market (AWSM) which is implemented in the context of this theses. Virtual company?s roles are transformed into web services and can be marketed in AWSM. When clients or customers request web services, the AWSM framework announces a tender to determine service provider agents that are willing to meet client?s request. If the request cannot be met by a single service, a number of them can be merged into a composite service. After the bid finalizes, the virtual company?s commitments (service provider that won the tender) are followed and saved in a history file by AWSM system.The virtual company model that is proposed and implemented in context of this thesis possesses the following basic features:?A virtual company consists of a virtual manager/founder and virtual employees.?Via the role concept, virtual employees are authenticated and given responsibility for certain services.?Roles within virtual companies are distributed to employees or taken back. Role assignment or cancellation takes place dynamically at runtime.?A role within a virtual company can be associated with a single or several services. The integration of role concept with agents has extended the flexibility and dynamism of the system. The distribution and management of the functionality of a virtual company via roles enhances the dynamism a virtual company requires in today?s conditions.?Roles are defined with an XML file, enabling definition of roles to be implemented at runtime. AWSMX, a role specification language, has been developed to describe dynamically a virtual company. As role definitions can be made easily and quickly, developers can easily integrate their own virtual company into the system by using EWSPX.?The role concept provides the ability to assign an employee the services associated with that role.?A virtual execution environment that facilitates employee participation into virtual companies has been created. Candidates apply virtual company at runtime and the applications are finalized after the evaluation of a virtual manager. This manner of execution introduces structural dynamism into a virtual company.?A virtual company with its executives and employees does not have to be located on the same computer system; they can be running on different systems.?Virtual company is flexible. Its internal hierarchy is flexible and can change quickly at runtime via a new role distribution. Likewise, employees? skills and privileges may also change.?Virtual company?s role structure is flexible and dynamic. Roles are defined by XML files at the startup of the system in a flexible manner. Services included in role (role-service association) can also be defined in a dynamic way.The agent based web service market fulfills the following features:?Virtual companies? services are converted into web services and are registered in system.?A tender is announced to determine the appropriate service/services to meet clients (customers) service request.?To fulfill client requests, one or more services may be merged to form a composite service.?Composite services are executed by the composite service executer. Composite service executer divides service request into sub-requests that match sub-services of a composite service, delivers them service providers, and comprises the overall response according to sub-responses.?Clients not only use the service criteria for service requests but also can specify their own weighted criteria to find the proper service. This opportunity increases the possibility of obtaining a web service that most meets the client?s need.?Tenders are put after clients declare their requests for services. The commitment of service provider agent that won the tender is tracked and monitored. By monitoring commitment, customer rights are preserved and also the rights of other competitor agents participating the tender are protected.?The winning agent?s fulfillment level of a commitment is used as an input for new tenders. Hence, an agent fulfilling its commitments becomes more advantageous in new tenders.?AWSM is a scalable. According to service demand, if needed, more than one AWSM Manager Agent can be created and the load can be shared. Companies participating in the system can run on different virtual machines.?AWSM system is open. It can interact with different systems since it is designed to run on the web. Virtual companies can participate AWSM regardless of the location and the type of the system on which they are deployed.In this thesis, an integrated framework and a runtime environment with the features briefly described above are designed and implemented. Experimental results that aim to measure the performance of the system has been found to be compatible with the envisaged target.