Tez No İndirme Tez Künye Durumu
556997
Object oriented analysis and source code validation using natural language processing / Doğal dil işleme kullanımı ile nesne tabanlı analiz ve kaynak kod değerlendirmesi
Yazar:FATMA BOZYİĞİT
Danışman: DR. ÖĞR. ÜYESİ ÖZLEM AKTAŞ ; DOÇ. DR. DENİZ KILINÇ
Yer Bilgisi: Dokuz Eylül Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Konu:Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin:Analitik hiyerarşi süreci = Analytical hierarchy process ; Birleştirilmiş modelleme dili = Unified modelling language ; Doğal dil işleme = Natural language processing
Onaylandı
Doktora
İngilizce
2019
107 s.
Yazılım gereksinimleri, hedef sistemin özelliklerini ve kullanıcıların beklentilerini ifade eder. Analiz aşamasında, gereksinimler paydaşlar arasında iletişimi kolaylaştıran anlaşılması kolay kavramsal modellere dönüştürülür. Gereksinimleri kullanarak kavramsal model oluşturma, çoğunlukla bir analist tarafından elle uygulanmasına rağmen, bu süreci otomatikleştiren modellerin sayısı son zamanlarda artmıştır. Modellerin ve araçların çoğu İngilizcedeki gereksinimleri analiz etmek için geliştirilmiştir ve Türkçe ya da Fince gibi sondan eklemeli diller için mevcut bir çalışma bulunmamaktadır. Bu tezde, yazılım takımında yer alan kişilerin çalışmalarını kolaylaştırmak ve yazılım projelerinin maliyetini düşürmek için Türkçe gereksinimleri Birleştirilmiş Modelleme Dili (BMD) sınıf diyagramına dönüştüren bir otomatik kavram tanımlama modeli sunulmuştur. Önerilen tezde, Doğal Dil İşleme (DDİ) tekniklerinden faydalanılmıştır ve Nesneye Yönelik (NY) tasarım öğelerini gereksinimlerden bulmak için yirmi altı kural içeren yeni bir kural kümesi oluşturulmuştur. Çevrimiçi depolarda diğer araştırmacıların kullanımına açık bir veri kümesi bulunmadığından, Türkçe olarak yirmi yazılım gereksinimi içeren iyi tanımlanmış bir veri kümesi oluşturulmuş ve diğer araştırmacılar tarafından kullanılmak üzere herkese açık bir şekilde GitHub üzerinden kullanıma sunulmuştur. Ayrıca, uzmanların görüşlerinden faydalanarak istatistiksel Analitik Hiyerarşi Süreci'ne (AHP) dayanan yeni bir değerlendirme modeli önerilerek sistem performansı değerlendirilmiştir. Elde edilen sonuçların, bu alanda yapılacak çalışmalar için umut verici olduğunu olduğu gözlemlenmektedir.
Software requirements include description of the features for the target system, and express the expectations of users. In analysis phase, requirements are transformed into easy-to-understand conceptual models that facilitate communication between stakeholders. Although creating conceptual model using requirements is mostly implemented manually by an analyst, the number of models that automate this process, has increased recently. Most of the models and tools are developed to analyze requirements in English, and there is no study for agglutinative languages such as Turkish or Finnish. In this thesis, we propose an automatic concept identification model which transforms Turkish requirements into Unified Modelling Language (UML) class diagram to ease the work of individuals in the software team and reduce the cost of software projects. The proposed thesis is based on the Natural Language Processing (NLP) techniques and a new rule-set containing twenty-six rules is created to find out Object Oriented (OO) design elements from requirements. Since there is no publicly available dataset on the online repositories, we have created a well-defined dataset containing ten software requirements in Turkish and made it publicly available on GitHub to be used by other researchers. We also proposed a novel evaluation model based on Analytical Hierarchy Process (AHP) that considers the experts' views and calculate the performance of the overall system as enough successful. We can state that this result is promising for the future works in this domain.