Benefits of continuous maintenance in agile software development: A case study
- Global styles
- Apa
- Bibtex
- Chicago Fullnote
- Help
Abstract
Sürekli yazılım pratikleri, gelişmekte olan ve önemli bir yazılım mühendisliği alanıdır. Akademik dünya ve yazılım endüstrisi de bu sürekli yazılım pratiklerine giderek artan bir ilgi göstermektedir. Sürekli entegrasyon, sürekli dağıtım ve sürekli teslim bu ilgiyi görürken sürekli bakım gözden kaçmaktadır. Bu tezimde vurgulamak istediğim nokta; yazılım endüstrisin büyük ölçüde sürekli bakımın farkında olmamasıdır. Ancak, sürekli bakım; yazılım hayat döngüsünün ayrılmaz bir parçasıdır. Finans ve kalite bakış açısından bakarsak; yazılım ürününün üzerinde büyük etkisi vardır. Bu tezimde, Sürekli Bakım konusunu çevik yazılım geliştirme içerisinde ele alacağım. Yazılım mühendisliği açısında depo, genellikle verilerin saklandığı esas yerdir. Yazılım depoları geliştirme ve bakım aşamalarında, veri saklanmasına yardımcı olduğu gibi, sürüm kontrolleri ve çok kişilik ekiplerin kullanımına da yardımcı olur. Kötü yönetilen bir yazılım sistemi birçok soruna sebebiyet verebilir. Bunların başında; vakit ve iş gücü kaybı, kaynak kodu takibinin zorlaşması, deponun şişmesi ve sürüm kontrolünün zorlaşması gelebilir. Bunlara ek olarak, zayıf bir depo yönetimi bakım ve yazılım evriminin üzerinde olumsuz etki oluşturur. Sürekli yazılım mühendisliği pratikleri doğası gereği bu tarz problemlerle ilgilenmek konusunda hassastır. Ancak, sürekli yazılım mühendisliği özellikle de depo arşivleme ve yönetimi bu problemlerin üstesinden gelmek konusunda verimli bir çözüm sunabilir. Bu tezde, sürekli bakım sürecinin, çevik yazılım geliştirme içerisinde kullanımıyla birlikte kazanılacak kazançlar incelenip, sürekli bakım çalışmalarında olan sorunların bir parçası olan kod değişikliklerinin etkisini analiz etmeye çalışıp karşılaşılan etki analizi, hata takibi gibi zorlukları bir vaka çalışmasıyla belirlenecektir. Software maintenance is an integral part of the software life cycle, and from the financial and quality perspective, it has a very high impact on a software product. Software maintenance describes the activities after delivery. That means software maintenance and development have many things in common, such as change of the design, code, and testing the existing product. These and other reasons make software maintenance a neglected area of software. Besides, Continuous Practices are getting to be an emergent area in software engineering. The academy and industry are increasingly paying attention to the practices; continuous integration, continuous delivery, and continuous deployment. Unfortunately, maintenance isn't the demanded area in academy. In this thesis, focus is the Continuous Maintenance in agile software development. In software, repositories usually refer to the main point to store data about a system or a code. Weak repository management may adversely affect the success of maintenance. A badly managed software system can lead to a number of problems, including wasted time and programmer force in development, and difficult code tracking. The continuous software engineering practices are inherently more sensitive to dealing with such problems in particular. However, usage of continuous maintenance, can overcome these problems efficiently. We'll focus on the benefits of continuous maintenance in agile development and its challenges, analyze the effects of code changings as part of the continuous maintenance process and will identify the challenges such as impact analysis, failure tracking and etc., in continuous maintenance process by conducting a case study.
Collections