Yazılım geliştirme ve test döngüsü üzerinde süreç madenciliği yaklaşımı
Process mining approach in software development and testing cycle
Yazar: RABİA SAYLAM
Danışman: YRD. DOÇ. DR. ÖZGÜR KORAY ŞAHİNGÖZ
Hava Harp Okulu Komutanlığı / Havacılık ve Uzay Teknolojileri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Yazılım Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2014
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Veri madenciliği = Data mining

Özet:
Geçmiş 50 yılda bilgi sistemleri kabiliyetleri tüm zamanlarda kazanılmış bilgi birikimini katlayacak biçimde genişledi. Saklanan ve sistemler arası taşınan veri miktarında olağanüstü bir artış meydana geldi. Büyük miktarda verinin artık daha kolay elde edilmesiyle, bu gibi verilerin kullanılabilir bilgiye dönüştürülmesine olan talep de aynı oranda yükseldi. Veri madenciliği ile başlayan büyük verinin işlenmesi ve analiz edilmesi yaklaşımı, son yıllarda süreç odaklı bir araştırma alanını ortaya çıkardı. Süreç madenciliği, bugünün bilgi sistemlerinde kolayca erişilebilen olay günlükleri veri bilgisiyle gerçek süreçleri ortaya çıkartmayı, keşfetmeyi, kontrol etmeyi ve geliştirmeyi amaçlayan bir iş süreçleri yönetimi teknolojisidir. İş Süreç Modelleme (Business Process Modelling-BPM) analizlerini geliştirmeyi hedefleyen, nispeten yeni ve gelişmekte olan bir araştırma alanıdır. 
Olay günlükleri analiz edilerek, insanların düşündüğünden epey farklı olarak gerçekte organizasyonda neler olduğu anlaşılabilir. Büyük kuruluşların, çeşitli endüstriyel ve bilimsel süreç madenciliği uygulamalarıyla örgütlerinin röntgenini çekmek için süreç madenciliği kullanmaya başlamasının nedeni budur.  
Bu çalışma kapsamında, literatürde daha çok bilinen veri madenciliği ile farkları ortaya konarak süreç madenciliği konsepti hakkında bilgi verilmiş, süreç madenciliği kullanımının fayda ve kısıtları anlatılmıştır. 
Bu çalışmada amaç süreç madenciliği tekniklerini yazılım geliştirme ve test süreçleri üzerinde tanıtmak ve gerçek süreçleri ortaya çıkartmak, keşfetmek, kontrol etmek ve geliştirmektir.
Süreç madenciliğinin en zor kısmı, uygun verinin uygun tablo ve alanlardan çıkarılmasıdır. Bu çalışmada, SAP kullanan bir yazılım kurumundaki yazılım geliştirme ve test döngüsü olay günlükleri alınarak bir analiz yapılmıştır. Binlerce verinin bulunduğu bu sistemde, gerekli veriler ilgili tablolardan çıkarılmıştır. Veri, süreç madenciliği araçları için geçerli format olan MXML formatına dönüştürülmüştür. Süreç madenciliği yani veri işleme aşamasına gelindiğinde ProM ve DISCO araçları açıklanmıştır. ProM platformunda bir taraftan, Alfa Algoritması ve Sezgisel Madencilik Algoritması bir veri kümesi üzerinden algoritmalar karşılaştırılırken, diğer taraftan yazılım geliştirme ve test döngüsü sürecinin bir yıllık verisi ile organizasyondaki akış ve kişilerarası ilişkiler ortaya konmuştur. 
Alfa Algoritması ve Sezgisel Madencilik Algoritması dört kalite kriterine göre değerlendirilmiş ve Alfa algoritmasının veri ile ilişkili gerçek resmi göstermekte yetersiz olduğu görülmüştür. SAP bilgi sistemi kullanan organizasyondaki olay loglarını analiz etmek için daha iyi bir algoritma olduğu tespit edilen Sezgisel Madencilik algoritması ile büyük veri işlenmiş ve organizasyonda ki geliştirme akışının düşünülenden farklılıklar gösterdiği tespit edilmiştir.

Abstract:
In the last fifty years, the capabilities of information systems are expanded in a manner that multiplies the knowledge of all times. An extraordinary increase has occured in the amount of both stored and transmitted data in systems. With the help of obtaining large amounts of data much more easily, the demand for conversion such data to useful information has risen even more. In recent years, the approach of analysing and processing big data, which is initiated by the introduction of data mining, has revealed the process-oriented research area. Process mining is a business process management technology, which aims to discover, check and improve all processes in a business by digging into data such as event logs, which are available in today's information systems. In short, process mining can be considered as a relatively new and emerging research area that aims to improve the analysis of Business Process Models (BPM).
By mining such logs, one can understand what is actually happening in the organization, which will also bring quite different results than what people think. That is the reason why big organizations start using process mining to x-ray their organizations by various industrial and scientific process mining applications. 
This study provides information about the process mining concept, by revealing the differences with data mining, which is more commonly known in the literature. Also the benefits and limitations of the use of process mining is described.
This study also aims to introduce process mining techniques on software development and testing process and reveal, discover, control and improve the actual business processes.
The most difficult part of the process mining is extracting appropriate data from a variety of tables and fields. In this study, a business analysis is conducted by using the event logs extracted from the software development and testing process cycle of a software  business organization, which uses SAP. In this complex system, which contains thousands of data, the necessary data is hardly extracted from the related tables, since it is a common known fact that the real world data is always dirty. Then data is converted to MXML format, which is the suitable format applicable for Process Mining tools. The next step is process mining. In this step, ProM and DISCO tools, which are the most common data processing tools, are explained. On the one hand, Alpha Mining Algorithm and Heuristic Mining Algorithm are compared with a set of data in ProM platform; on the other hand, the flow in the organization and interpersonal relations have been introduced with the analysis of annual data of software development and testing process cycle. Results from the comparison of Alpha Algorithm and Heuristic Mining Algorithm according to the four quality criteria show that Alpha algorithm is inadequate to present the real picture of the related data. Therefore, in organizations that use SAP information systems, it is suggested to use Heuristic Mining Algorithms, which is better for analysing dirty event logs.
The study also reveals that the flowchart of the business process is much more different from what people say or think. For employers it is easier said than done. However, this study shows that the actual picture drawen by data reveals the truth, which will be quite different than what is said but will be almost similar to what is done.