Veri katmanı yazılımı için otomatik bakım desteği

İsim Veri katmanı yazılımı için otomatik bakım desteği
Yazar Ersoy, Ersin
Basım Tarihi: 2023-01-19T12:53:44Z
Konu Bilgisayar destekli yazılım, Computer aided software, Bilgisayar yazılımları, Computer softwares, Yapay zeka, Artificial intelligence
Tür Belge
Dil İngilizce
Dijital Evet
Yazma Hayır
Kütüphane: Özyeğin Üniversitesi
Kayıt Numarası 04950540-6874-462b-bcb5-f00b6984455b
Lokasyon Bilgisayar Bilimleri Bölümü
Tarih 2023-01-19T12:53:44Z
Örnek Metin Veri katmanlı yazılımlar, kurumsal sistemlerin veri modelini ve iş mantığını içerir ve uzun süreli bakıma tabidir. Bu sistemlerin kullanıcı arayüzü tamamen değiştirilebilse de, veri katmanlı yazılımlar genellikle onlarca yıl boyunca gelişir. Yazılımın geneli hakkında geniş bilgiye sahip alan uzmanlarının sayısı zamanla azalır ve uzantıların veya değişikliklerin uygulanması, yeni geliştiriciler için giderek daha fazla çaba harcar ve hataya açık hale gelir. Bu tezde, veri katmanlı yazılımlar için otomatikleştirilmiş bakım desteği sağlamaya yönelik teknikleri ve araçları tanıtıyoruz. Bu teknikler ve araçlar, özellikle üç zorlu bakım görevi için çabayı ve hata sayısını azaltmayı amaçlamaktadır: i) veri katmanı yazılımında saklı prosedür gibi yeni bir nesnenin doğru yerleştirilmesi, ii) veritabanı tablolarının değiştirilmesinin yazılım modülleri üzerindeki etkisinin değerlendirilmesi ve iii) tablo uzantılarının aynı veritabanındaki diğer tablolar üzerindeki etkisinin değerlendirilmesi. İlk görev önemlidir çünkü veri katmanı yazılımına yeni bir nesne eklemek onun modüler yapısını engellememelidir. Bu yapı, nesnelerin bir dizi şema arasında tahsis edilmesiyle tanımlanır. Bu nedenle, yeni nesnelerin doğru yerleşimini otomatik olarak tahmin edecek bir yaklaşım ve araç sunuyoruz. Halihazırda şemalara yerleştirilmiş olan çeşitli nesne türleri (veritabanı türleri, diziler, tablolar, prosedürler, işlevler, paketler ve görünümler) arasındaki bağımlılıkları çıkarıyoruz. Bu bağımlılıklar, daha sonra tahmin için kullanılan bir yapay sinir ağı modelini eğitmek için kullanılır. Endüstriyel vaka çalışmalarımız, yaklaşımımızın %89 doğruluğa ulaşabileceğini, birleştirme ve uyum metriklerini kullanan temel yaklaşımın ise en fazla %57,4 doğruluğa ulaşabileceğini göstermektedir. Veri modelindeki değişikliklerin kaynak kodu üzerindeki etkisini analiz etme şeklindeki ikinci görevi desteklemek için halihazırda çeşitli teknikler ve araçlar bulunmaktadır. Bununla birlikte, dinamik olarak oluşturulmuş SQL ifadelerini, birden fazla tablodaki sorguları ve veri katmanlı yazılım geliştirmek için yaygın olarak kullanılan bir dil olan PL/SQL'de veri manipülasyonuna izin veren diğer ifade türlerini analiz etmede yetersiz kalırlar. Belirli bir veritabanının tüm şemalarında yer alan hem veri modelini hem de kaynak kodunu (yani PL/SQL işlevleri ve prosedürleri) ayrıştırmak için teknikler ve bir araç sunuyoruz. Daha sonra sorgulara ve veritabanı tablolarının manipülasyonuna dayalı bir bağımlılık modeli oluşturulur. Aracımız, önceki çalışmalardan farklı olarak, dinamik olarak oluşturulan ve birden fazla tablo içeren sorguların yanı sıra PL/SQL'e özgü özellikleri de analiz edebilmektedir. Gerçek sistemlerde iki farklı ortak yeniden düzenleme türüne yönelik çabayı tahmin etmek için türetilmiş bağımlılık modelini kullanıyoruz. Otomatik tahminler ile manuel tahminler arasında yüksek tutarlılık gözlemliyoruz. Üçüncü görev, tabloları değiştirmenin aynı veritabanındaki diğer tablolar üzerindeki etkisi ile ilgilidir. Bu endişeye odaklanan sadece birkaç çalışma bulunmaktadır. Ayrıca bu çalışmalarda yalnızca veritabanı tablolarındaki sütunların silinmesi ve değiştirilmesinin etkisi dikkate alınmaktadır. Bu sınırlamayı gidermek için, veri modeli uzantılarının veri modelinin kendisi üzerindeki etkisini otomatik olarak tespit etmeye yönelik bir yaklaşım ve bir araç sunuyoruz. Veritabanı tabloları arasındaki benzerlikleri tespit etmek ve aralarındaki örtülü ilişkileri öğrenmek için Siyam ağlarını kullanıyoruz. Tablo benzerlikleri potansiyel etkiyi belirlemek için temel olarak kullanılır. Temel olarak, veritabanı tabloları arasındaki benzerliği ölçmek için kosinüs benzerliği metriğini kullanan başka bir araç geliştiriyoruz. Siyam ağları ile elde edilen sonuçların başlangıç ​​seviyesinden daha iyi olduğu ve ortalama %96,1 F1 puanına ulaştığı ortaya çıktı. Yazılımların veri katmanları, kurumsal sistemlerin veri modeli ile iş mantığını içermekte olup, bu katmanlar uzun süreli bakıma ihtiyaç duymaktadır. Sistemlerin kullanıcı arayüzü tamamen değiştirilerek, veri yazılım yazılımı genellikle uzun yıllar boyunca geliştirilmeye devam edilmektedir. Yazılım hakkında günlük özellikleri olan alan uzmanlarının sıklığı azalmaktadır. Bu durum yazılımına yeni özellikler eklemeyi veya mevcut olan yazılımı değiştirmeyi, özellikle yeterli deneyime sahip olmayan geliştirmeler için zorluklar vardır ve daha fazla efor aralıksız bir çalışma haline getirmek için çalışır. Bu durum aynı zamanda hata korumasını da arttırmaktadır. Bu tezde, veri yazılım yazılımı için otomatik bakım desteği sağlamak amacıyla teknikler ve araçlar tanıtılmaktadır. Bu teknikler ve araçlar, özellikle üç zorlu bakım hizmeti için efor ve hata miktarını azaltmayı sağlar: i) veri veri yazılımında prosedür gibi yeni bir nesnenin doğru modülü iletilmesi olarak konumlandırılması, ii) veri tablolarının değiştirilmesinin yazılım modüllerinin etkisinin belirlenmesi, ve iii) veri tabanı tablolarının genişletilmesinin aynı veri tabanındaki diğer paketlerin belirlenmesi. Yukarıda bulunan ilk bakım ihtiyaçları önemlidir, çünkü veri dağıtımı yazılımına yeni bir nesne seçme modüler yapıyı bozmamalıdır. Bu yapı, yıllık veritabanı şemaları arasında doğru konumlandırılmasıyla sağlanmakta-dır. Bu bakım maliyeti ile ilgili olarak, yeni üretilen doğru yerleşimi otomatik olarak tahmin etmeyi amaçlayan bir yaklaşım ve araç sunmaktayız. Şemalar üzerinde yer alan çeşitli nesne türleri (veri türleri, rutin, tablolar, prosedürler, fonksiyonlar, paketler ve görünümler) arasındaki bağlantıların yapılabilir, bu bağımlı-lıkları daha sonra doğru modülün tahmin için kullanılan bir yapay sinir ağı modelinin eğitimi için kullanılabilir. Endüstriyel örnek vaka sunabildiği, yaklaşımımızın %89 seviyesine kadar bir doğruluğa ulaşabileceğini, buna rağmen kırılma ve uyum metriklerini temel alan yaklaşımın en fazla %57,4 düzeyinde bir doğruluğa ulaşabildiğini göstermektedir. Veri modelindeki çıkış kaynak kodu üzerinde veri analizi yapmaya yönelik ikinci bakım ihtiyacını desteklemek için birkaç teknik ve araç bulunmaktadır. Ancak, bu teknik ve araçların dinamik olarak oluşturulmuş SQL deyimlerini, birden çok tablo ile ilgili sorguları ve veri gizliliği yazılımının yaygınlaşması için yaygın olarak kullanılan bir dil olan PL/SQL'de veri işlemeye izin veren diğer ifade türlerini analiz etmekte yetersiz kalıyorlar. Bu nedenle belirli bir veri tabanının tüm şemalarında yer alan hem veri hem de kaynak kodunun (PL/SQL verileri ve çalıştırılması vb.) elde edilip, ardından sorgulara ve veritabanı tablolarını güncelleyen komutlara dayalı bir ilişki modeli oluşturan bir araç sunmaktayız. Önceki değişikliklerin farklı olarak, aracımızın dinamik olarak çalışması ve aynı zamanda çok tablonun yanı sıra PL/SQL'e özgü özellikleri içeren sorguları analiz edilebilmektedir. Gerçek bir sistem üzerinde iki farklı yeniden yapılandırma çalışması ile ilgili gerekli olan eforu tahmin etmek için araç tarafından aile bireyleri kullanıyoruz. Bağımlılık modeli kullanılarak hesaplanan otomatik tahminler ile alan bilgileri tarafından yapılan manuel tahminler arasında yüksek kesmelik gözlemlenmektedir. Üçüncü bakım ihtiyaçları, genişletilen tabloların aynı veri tabanındaki diğer bildirimlerin içeriğinin ayrıntıları. Bu ihtiyaca odaklanan sadece birkaç çalışma bulunmaktadır. Ayrıca, bu çalışmaların yalnızca veritabanı tablolarındaki sütunların silinmesi ve değiştirilmesinin görülmediği görülmektedir. Bu mümkün, veri tabanı tablolarının genişletilmesinin veri modelinde hali hazırda mevcut olan diğer sekmelerdeki olası kesintileri otomatik olarak tespit eden bir yaklaşım ve araç sunulmaktadır. Veritabanı tablolarının benzerliklerini tespit etmek, aralarındaki ilişkiler ilişkileri için Siyam ağlarını kullanabilmenizdir. Temel bir yöntem olarak, veritabanı tabloları arasında benzerliği sağlamak için kosinüs benzerlik metriğini kullanan başka bir araç daha yenilenebilir. Siyam ağlarıyla %96,1 F1 skoruna ulaşılarak, temel yöntemlere göre daha iyi sonuç alındığı görülmektedir.
Kaynağa git Özyeğin Üniversitesi Özyeğin Üniversitesi - Tarihî eser, arşiv ve süreli yayın arama motoru
Özyeğin Üniversitesi - Tarihî eser, arşiv ve süreli yayın arama motoru Özyeğin Üniversitesi

Veri katmanı yazılımı için otomatik bakım desteği

Yazar Ersoy, Ersin
Basım Tarihi 2023-01-19T12:53:44Z
Konu Bilgisayar destekli yazılım, Computer aided software, Bilgisayar yazılımları, Computer softwares, Yapay zeka, Artificial intelligence
Tür Belge
Dil İngilizce
Dijital Evet
Yazma Hayır
Kütüphane Özyeğin Üniversitesi
Kayıt Numarası 04950540-6874-462b-bcb5-f00b6984455b
Lokasyon Bilgisayar Bilimleri Bölümü
Tarih 2023-01-19T12:53:44Z
Örnek Metin Veri katmanlı yazılımlar, kurumsal sistemlerin veri modelini ve iş mantığını içerir ve uzun süreli bakıma tabidir. Bu sistemlerin kullanıcı arayüzü tamamen değiştirilebilse de, veri katmanlı yazılımlar genellikle onlarca yıl boyunca gelişir. Yazılımın geneli hakkında geniş bilgiye sahip alan uzmanlarının sayısı zamanla azalır ve uzantıların veya değişikliklerin uygulanması, yeni geliştiriciler için giderek daha fazla çaba harcar ve hataya açık hale gelir. Bu tezde, veri katmanlı yazılımlar için otomatikleştirilmiş bakım desteği sağlamaya yönelik teknikleri ve araçları tanıtıyoruz. Bu teknikler ve araçlar, özellikle üç zorlu bakım görevi için çabayı ve hata sayısını azaltmayı amaçlamaktadır: i) veri katmanı yazılımında saklı prosedür gibi yeni bir nesnenin doğru yerleştirilmesi, ii) veritabanı tablolarının değiştirilmesinin yazılım modülleri üzerindeki etkisinin değerlendirilmesi ve iii) tablo uzantılarının aynı veritabanındaki diğer tablolar üzerindeki etkisinin değerlendirilmesi. İlk görev önemlidir çünkü veri katmanı yazılımına yeni bir nesne eklemek onun modüler yapısını engellememelidir. Bu yapı, nesnelerin bir dizi şema arasında tahsis edilmesiyle tanımlanır. Bu nedenle, yeni nesnelerin doğru yerleşimini otomatik olarak tahmin edecek bir yaklaşım ve araç sunuyoruz. Halihazırda şemalara yerleştirilmiş olan çeşitli nesne türleri (veritabanı türleri, diziler, tablolar, prosedürler, işlevler, paketler ve görünümler) arasındaki bağımlılıkları çıkarıyoruz. Bu bağımlılıklar, daha sonra tahmin için kullanılan bir yapay sinir ağı modelini eğitmek için kullanılır. Endüstriyel vaka çalışmalarımız, yaklaşımımızın %89 doğruluğa ulaşabileceğini, birleştirme ve uyum metriklerini kullanan temel yaklaşımın ise en fazla %57,4 doğruluğa ulaşabileceğini göstermektedir. Veri modelindeki değişikliklerin kaynak kodu üzerindeki etkisini analiz etme şeklindeki ikinci görevi desteklemek için halihazırda çeşitli teknikler ve araçlar bulunmaktadır. Bununla birlikte, dinamik olarak oluşturulmuş SQL ifadelerini, birden fazla tablodaki sorguları ve veri katmanlı yazılım geliştirmek için yaygın olarak kullanılan bir dil olan PL/SQL'de veri manipülasyonuna izin veren diğer ifade türlerini analiz etmede yetersiz kalırlar. Belirli bir veritabanının tüm şemalarında yer alan hem veri modelini hem de kaynak kodunu (yani PL/SQL işlevleri ve prosedürleri) ayrıştırmak için teknikler ve bir araç sunuyoruz. Daha sonra sorgulara ve veritabanı tablolarının manipülasyonuna dayalı bir bağımlılık modeli oluşturulur. Aracımız, önceki çalışmalardan farklı olarak, dinamik olarak oluşturulan ve birden fazla tablo içeren sorguların yanı sıra PL/SQL'e özgü özellikleri de analiz edebilmektedir. Gerçek sistemlerde iki farklı ortak yeniden düzenleme türüne yönelik çabayı tahmin etmek için türetilmiş bağımlılık modelini kullanıyoruz. Otomatik tahminler ile manuel tahminler arasında yüksek tutarlılık gözlemliyoruz. Üçüncü görev, tabloları değiştirmenin aynı veritabanındaki diğer tablolar üzerindeki etkisi ile ilgilidir. Bu endişeye odaklanan sadece birkaç çalışma bulunmaktadır. Ayrıca bu çalışmalarda yalnızca veritabanı tablolarındaki sütunların silinmesi ve değiştirilmesinin etkisi dikkate alınmaktadır. Bu sınırlamayı gidermek için, veri modeli uzantılarının veri modelinin kendisi üzerindeki etkisini otomatik olarak tespit etmeye yönelik bir yaklaşım ve bir araç sunuyoruz. Veritabanı tabloları arasındaki benzerlikleri tespit etmek ve aralarındaki örtülü ilişkileri öğrenmek için Siyam ağlarını kullanıyoruz. Tablo benzerlikleri potansiyel etkiyi belirlemek için temel olarak kullanılır. Temel olarak, veritabanı tabloları arasındaki benzerliği ölçmek için kosinüs benzerliği metriğini kullanan başka bir araç geliştiriyoruz. Siyam ağları ile elde edilen sonuçların başlangıç ​​seviyesinden daha iyi olduğu ve ortalama %96,1 F1 puanına ulaştığı ortaya çıktı. Yazılımların veri katmanları, kurumsal sistemlerin veri modeli ile iş mantığını içermekte olup, bu katmanlar uzun süreli bakıma ihtiyaç duymaktadır. Sistemlerin kullanıcı arayüzü tamamen değiştirilerek, veri yazılım yazılımı genellikle uzun yıllar boyunca geliştirilmeye devam edilmektedir. Yazılım hakkında günlük özellikleri olan alan uzmanlarının sıklığı azalmaktadır. Bu durum yazılımına yeni özellikler eklemeyi veya mevcut olan yazılımı değiştirmeyi, özellikle yeterli deneyime sahip olmayan geliştirmeler için zorluklar vardır ve daha fazla efor aralıksız bir çalışma haline getirmek için çalışır. Bu durum aynı zamanda hata korumasını da arttırmaktadır. Bu tezde, veri yazılım yazılımı için otomatik bakım desteği sağlamak amacıyla teknikler ve araçlar tanıtılmaktadır. Bu teknikler ve araçlar, özellikle üç zorlu bakım hizmeti için efor ve hata miktarını azaltmayı sağlar: i) veri veri yazılımında prosedür gibi yeni bir nesnenin doğru modülü iletilmesi olarak konumlandırılması, ii) veri tablolarının değiştirilmesinin yazılım modüllerinin etkisinin belirlenmesi, ve iii) veri tabanı tablolarının genişletilmesinin aynı veri tabanındaki diğer paketlerin belirlenmesi. Yukarıda bulunan ilk bakım ihtiyaçları önemlidir, çünkü veri dağıtımı yazılımına yeni bir nesne seçme modüler yapıyı bozmamalıdır. Bu yapı, yıllık veritabanı şemaları arasında doğru konumlandırılmasıyla sağlanmakta-dır. Bu bakım maliyeti ile ilgili olarak, yeni üretilen doğru yerleşimi otomatik olarak tahmin etmeyi amaçlayan bir yaklaşım ve araç sunmaktayız. Şemalar üzerinde yer alan çeşitli nesne türleri (veri türleri, rutin, tablolar, prosedürler, fonksiyonlar, paketler ve görünümler) arasındaki bağlantıların yapılabilir, bu bağımlı-lıkları daha sonra doğru modülün tahmin için kullanılan bir yapay sinir ağı modelinin eğitimi için kullanılabilir. Endüstriyel örnek vaka sunabildiği, yaklaşımımızın %89 seviyesine kadar bir doğruluğa ulaşabileceğini, buna rağmen kırılma ve uyum metriklerini temel alan yaklaşımın en fazla %57,4 düzeyinde bir doğruluğa ulaşabildiğini göstermektedir. Veri modelindeki çıkış kaynak kodu üzerinde veri analizi yapmaya yönelik ikinci bakım ihtiyacını desteklemek için birkaç teknik ve araç bulunmaktadır. Ancak, bu teknik ve araçların dinamik olarak oluşturulmuş SQL deyimlerini, birden çok tablo ile ilgili sorguları ve veri gizliliği yazılımının yaygınlaşması için yaygın olarak kullanılan bir dil olan PL/SQL'de veri işlemeye izin veren diğer ifade türlerini analiz etmekte yetersiz kalıyorlar. Bu nedenle belirli bir veri tabanının tüm şemalarında yer alan hem veri hem de kaynak kodunun (PL/SQL verileri ve çalıştırılması vb.) elde edilip, ardından sorgulara ve veritabanı tablolarını güncelleyen komutlara dayalı bir ilişki modeli oluşturan bir araç sunmaktayız. Önceki değişikliklerin farklı olarak, aracımızın dinamik olarak çalışması ve aynı zamanda çok tablonun yanı sıra PL/SQL'e özgü özellikleri içeren sorguları analiz edilebilmektedir. Gerçek bir sistem üzerinde iki farklı yeniden yapılandırma çalışması ile ilgili gerekli olan eforu tahmin etmek için araç tarafından aile bireyleri kullanıyoruz. Bağımlılık modeli kullanılarak hesaplanan otomatik tahminler ile alan bilgileri tarafından yapılan manuel tahminler arasında yüksek kesmelik gözlemlenmektedir. Üçüncü bakım ihtiyaçları, genişletilen tabloların aynı veri tabanındaki diğer bildirimlerin içeriğinin ayrıntıları. Bu ihtiyaca odaklanan sadece birkaç çalışma bulunmaktadır. Ayrıca, bu çalışmaların yalnızca veritabanı tablolarındaki sütunların silinmesi ve değiştirilmesinin görülmediği görülmektedir. Bu mümkün, veri tabanı tablolarının genişletilmesinin veri modelinde hali hazırda mevcut olan diğer sekmelerdeki olası kesintileri otomatik olarak tespit eden bir yaklaşım ve araç sunulmaktadır. Veritabanı tablolarının benzerliklerini tespit etmek, aralarındaki ilişkiler ilişkileri için Siyam ağlarını kullanabilmenizdir. Temel bir yöntem olarak, veritabanı tabloları arasında benzerliği sağlamak için kosinüs benzerlik metriğini kullanan başka bir araç daha yenilenebilir. Siyam ağlarıyla %96,1 F1 skoruna ulaşılarak, temel yöntemlere göre daha iyi sonuç alındığı görülmektedir.
Özyeğin Üniversitesi - Tarihî eser, arşiv ve süreli yayın arama motoru
Özyeğin Üniversitesi yönlendiriliyorsunuz...

Lütfen bekleyiniz.