Yazılım test sürecinde hata yönetimi ve yeni bir hata yönetimi uygulamasının geliştirilmesi
Defect management in software test process and a new defect management application development
Yazar: AYŞE BETÜL KARAGÖZ
Danışman: PROF. DR. AHMET ZENGİN
Sakarya Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2021
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Yazılım testi = Software test

Özet:
Yazılım Yaşam Döngüsü, bir yazılım işinin veya projesinin fikir aşamasından itibaren
analiz, geliştirme, test ve canlı ortama çıkış aşamalarını kapsayan bir süreçtir. Yazılım
Testi ise bu süreçte yapılan yazılımın doğrulanma işlemlerini içeren önemli kısmını
oluşturmaktadır. Yazılım Testi genel olarak Hata Yönetimi araçları ile
yönetilmektedir. Bu süreç boyunca araçlar kullanıldığında birçok paydaşın olduğu bu
uzun sürecin izlenebilirliği sağlanır ve güçlü bir raporlama avantajı sağlar. Birçok
marka veya kurum bu süreçler için araç kullanımını tercih etmektedir. Araçların çoğu
tek başına yetersiz kalmaktadır. Bu durum için çeşitli çözümler bulunmaktadır;
Kullanılan araca uyumlu başka araçlarla eksiklikler tamamlanabilir. Açık kaynak
kodlu araçlar üzerinde geliştirme yapılabilir veya kendi süreçlerine uygun araçlar
geliştirilebilir.
Bu tezde halihazırda kullanılan bir hata yönetimi aracı tecrübesinden yola çıkılmıştır.
Araç ile ilgili çalışanlardan gelen olumsuz geri bildirimler ve öneriler değerlendirilmiş
ve süreci daha pratik hale getiren yeni bir uygulama geliştirilmiştir. Uygulamada testin
ana girdisi olan gereksinimler test edilebilir gereksinimler olarak alınmıştır.
Gereksinim ekranında hata girişi sağlanmıştır. Gereksinimler, test senaryolarına
dönüştürülerek aynı ekran içinde test durumları gösterilmiştir. Süreçler, mevcuttan ve
çeşitli araçlardan çok daha kısa hale getirilmiştir. 39 adımda yapılan bir hata raporlama
işlemi 8 adıma indirilmiştir. Buna ek olarak geliştirilen uygulamanın karmaşık
olmaması, ayrı bir giriş ekranı olmaması, gereksinimlerle senaryoların aynı ekran
üzerinde görülebilmesi, hata şablonu oluşturulabilmesi hata girişi maliyetini yaklaşık
%80 azaltmıştır. Ayrıca çalışanın motivasyonunu artırması uygulamayı daha verimli
hale getirecektir.
Geliştirilen hata yönetiminde mevcut sistemde olmayan aşağıdaki özellikler
bulunmaktadır. Kullanıcı ve yetki tanımlama, lisans ve bakım ücreti, araç eğitimi bu
uygulamada olmayacaktır. Mevcut sistemdeki kullanım zorluğu en aza indirgenmiştir.
Senaryolar otomatik olarak gereksinimlerden üretilmektedir. Hata kayıtlarında şablon
oluşturulmaktadır. Hata kaydı ekranına işletim sistemi versiyonu, internet tarayıcı
çeşidi gibi bir çok gerekli detay bilgiler eklenmiştir. İstatistiksel bilgiler tutulmasını
kolaylaştıran bu ek geliştirmeler genel iyileştirmeyi sağlayacaktır.

Abstract:
Software Life Cycle is a process that covers the stages of analysis, development,
testing and going live from the idea stage of a software business or project. Software
Testing, on the other hand, constitutes the important part that includes the verification
processes of the software performed in this process. Software Testing is generally
managed by defect management tools. When tools are used during this process, the
traceability of this long process involving many stakeholders as well as a strong
reporting advantage is ensured. Many brands or institutions prefer to use tools for these
processes. Most of the tools alone are insufficient. Various solutions are available for
this situation; the deficiencies can be completed with other tools compatible with the
used tool. Tools with open source codes can be developed. Or, tools that are suitable
to their own processes can be developed.
This thesis is based on the experience of a currently used defect management tool.
Negative feedback and suggestions from employees about the tool were evaluated and
a new application that makes the process more practical was developed. Requirements,
which are the main input of the test in practice, were taken as testable requirements. A
defect entry was provided on the requirement screen. Requirements were transformed
into test cases and the test cases were displayed on the same screen. Processes have
been made much shorter than existing ones and various tools. A defect reporting
process made in 39 steps has been reduced to 8 steps. In addition, the developed
application is not complicated, does not have a separate login screen, the requirements
and scenarios can be viewed on the same screen, and the defect template can be
created, reducing the cost of defect entry by approximately 80%. Furthermore,
increasing the motivation of the employee will make the application more efficient.
In the developed defect management, there are the following features that are not
available in the current system. User and authorization identification, license and
maintenance fee, vehicle training will not be in this application. The difficulty of usexi
in the current system is minimized. Scenarios are automatically generated from
requirements. Template is created in defect records. Many necessary detailed
information such as operating system version and internet browser type have been
added to the defect record screen. These additional enhancements, which make it easier
to keep statistical information, will provide overall improvement.