Geri Dön

Veritabanlarının Tersine Mühendisliği ile Web Servislerinin Otomasyonu

Web service automation by database reverse engineering

  1. Tez No: 598002
  2. Yazar: MEHMET RAŞİD GENCOSMANOĞLU
  3. Danışmanlar: DR. YUNUS EMRE SELÇUK
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2019
  8. Dil: Türkçe
  9. Üniversite: Yıldız Teknik Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Bilgisayar Mühendisliği Bilim Dalı
  13. Sayfa Sayısı: 55

Özet

Günümüzde birçok şirketin veritabanında bulunan verilerini REST tabanlı web servisleri aracılığıyla üçüncü şahıs firmaların kullanımına açması oldukça yaygın bir yaklaşımdır. REST(Representational State Transfer), istemci ile sunucu arasında hızlı ve kolay iletişimi sağlayan HTTP tabanlı bir web servis mimarisidir. Bu sebeple birçok IOT ve mobil uygulamada bu mimari tercih edilmektedir. Veritabanları için RESTful servislerin hızlı bir şekilde geliştirilmesini sağlayan birçok yazılım kütüphanesi mevcut olsa da verinin yapısında meydana gelen bir değişim geliştirilen web servisini geçersiz kılabileceği gibi yeni bir geliştirme eforuna neden olacaktır. Bununla birlikte farklı geliştiriciler tarafından geliştirilen birbirine benzeyen servislerin olması (Örn : CRUD: Create, Read, Delete, Update işlemleri) bir standarda uyulmasını zor hale getirmektedir. Yazılım otomasyonu perspektifinden bakıldığında bir veritabanının REST tabanlı web servislerine dönüştürülmesi otomatize edilmesi gereken bir süreçtir. Bu sayede diğer otomasyon uygulamalarında olduğu gibi birim iş için gereken efor azalabileceği gibi ortaya çıkan ürünün kalitesinin de artma potansiyeli olacaktır. Veritabanlarından web servisleri üreten önceki çalışmalar ve araçlar otomasyonu belli bir seviyeye kadar sağlasa da bu çalışmaların çoğu halihazırda varolan bir veritabanı için çözüm üretmemektedir. Ayrıca önceki çalışmalarda veritabanında meydana gelen değişimlere duyarlı bir yapı bulunmadığından yeni geliştirme eforu gerekebilmektedir. Tez çalışmasında önceki çalışmaların eksik ve iyileştirilebilir yönlerini de ele alarak kendi yaklaşımımızla web servislerini otomatize bir şekilde üretmeyi hedefledik. Bu bağlamda tersine mühendislik ve kod üretimi yöntemleri ile veritabanından REST uyumlu web servislerini otomatize bir şekilde üreten, değişimlere duyarlı APIGEN isimli yeni bir araç geliştirdik.

Özet (Çeviri)

Nowadays, it is a common approach for companies to expose their data that exist in a database through RESTful APIs for variety of clients. REST (Representational State Transfer) is an HTTP-based web service architecture that enables quick and easy communication between client and server. For this reason, REST has started to take a place as a preferred approach in IoT and mobile applications. Although there are many libraries that provide rapid development of RESTful web services with various programming languages, any subsequent modification to the data source requires a new development effort and rewriting the boilerplate code. Any changes that occur in a relational database table is a good. Moreover, the fact that there are similar services (i.e. CRUD: Create-Read-Update-Delete operations) written by different developers makes it difficult to comply with the standards and best practices. In terms of software automation, exposing a database to the world with RESTful architecture is a process that needs to be automated. Also every automated process has the potential to reduce effort and improve quality. While existing tools provide automation to a certain extent, most of these tools don't have a solution for an entire database schema and extra development effort is required when a customization is needed. Besides, in previous studies, there is a possibility for services generated by automation process to lose their validity when any modification happens to database. In this paper, while discussing the improvable aspects of previous works, we will be presenting our approach with a tool named APIGEN (API Generator) converting a database into RESTful services in an automated manner.

Benzer Tezler

  1. İlişkisel veritabanı ile ontolojiler arasında dönüşümün gerçekleştirilmesi:Oracle 10g rdf veri deposu üzerinde örnek bir uygulama

    Reverse engineering of relational database schemas to ontologies: a sample application on oracle 10g rdf datastore

    KIVANÇ URGANCIOĞLU

    Yüksek Lisans

    Türkçe

    Türkçe

    2006

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolEge Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    Y.DOÇ.DR. MURAT OSMAN ÜNALIR

  2. Veritabanlarında genetik algoritma ve bulanık mantık tabanlı esnek sorgulama

    Genetic algorithm and fuzzy logic based flexible querying in databases

    ALİ ŞENOL

    Yüksek Lisans

    Türkçe

    Türkçe

    2013

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolGazi Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. HACER KARACAN

  3. Oracle veri tabanına dayalı bilgi sistemleri ve sorgulamaları

    Information systems and queries in Oracle database

    BAŞAK GÜNAY

    Yüksek Lisans

    Türkçe

    Türkçe

    2002

    MatematikYıldız Teknik Üniversitesi

    Matematik Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. AYLA ŞAYLI

  4. Facial action unit detection in videos using deep neural networks

    Video görüntülerinde derin sinir ağları tabanlı yüz eylem birimi tespiti

    SİMGE AKAY

    Yüksek Lisans

    İngilizce

    İngilizce

    2018

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolBahçeşehir Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. NAFİZ ARICA

  5. Veritabanlarının optimizasyonu ve bir e-devlet projesi kapsamında web-tabanlı CBS uygulaması

    Optimization of databases and a web-based GIS application in the scope of an e-government project

    YALKIN ÇAĞLAR

    Yüksek Lisans

    Türkçe

    Türkçe

    2006

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolSelçuk Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. FERRUH YILDIZ