Browsing by Author "Tekinerdogan, B."
Now showing 1 - 13 of 13
- Results Per Page
- Sort Options
Item Open Access Adopting integrated application lifecycle management within a large-scale software company: an action research approach(Elsevier, 2018) Tüzün, Eray; Tekinerdogan, B.; Macit, Y.; Ince, K.Context: Application Lifecycle Management (ALM) is a paradigm for integrating and managing the various activities related to the governance, development and maintenance of software products. In the last decade, several ALM tools have been proposed to support this process, and an increasing number of companies have started to adopt ALM. Objective: We aim to investigate the impact of adopting ALM in a real industrial context to understand and justify both the benefits and obstacles of applying integrated ALM. Method: As a research methodology, we apply action research that we have carried out within HAVELSAN, a large-scale IT company. The research was carried out over a period of seven years starting in 2010 when the ALM initiative has been started in the company to increase productivity and decrease maintenance costs. Results: The paper presents the results of the action research that includes the application of ALM practices. The transitions among the different steps are discussed in detail, together with the identified obstacles, benefits and lessons learned. Conclusions: Our seven-year study shows that the adoption of ALM processes is not trivial and its success is related to many factors. An important conclusion is that a piecemeal solution as provided by ALM 1.0 is not feasible for the complex process and tool integration problems of large enterprises. Hence the transition to ALM 2.0 was found necessary to cope with the organizational and business needs. Although ALM 2.0 appeared to be a more mature ALM approach, there are still obstacles that need attention from both researchers and practitioners.Item Open Access Analyzing impact of experience curve on ROI in the software product line adoption process(Elsevier BV, 2015) Tüzün, E.; Tekinerdogan, B.Context Experience curve is a well-known concept in management and education science, which explains the phenomenon of increased worker efficiency with repetitive production of a good or service. Objective We aim to analyze the impact of the experience curve effect on the Return on Investment (ROI) in the software product line engineering (SPLE) process. Method We first present the results of a systematic literature review (SLR) to explicitly depict the studies that have considered the impact of experience curve effect on software development in general. Subsequently, based on the results of the SLR, the experience curve effect models in the literature, and the SPLE cost models, we define an approach for extending the cost models with the experience curve effect. Finally, we discuss the application of the refined cost models in a real industrial context. Results The SLR resulted in 15 primary studies which confirm the impact of experience curve effect on software development in general but the experience curve effect in the adoption of SPLE got less attention. The analytical discussion of the cost models and the application of the refined SPLE cost models in the industrial context showed a clear impact of the experience curve effect on the time-to-market, cost of development and ROI in the SPLE adoption process. Conclusions The proposed analysis with the newly defined cost models for SPLE adoption provides a more precise analysis tool for the management, and as such helps to support a better decision making.Item Open Access Archample-architectural analysis approach for multiple product line engineering(Elsevier Inc., 2014) Tekinerdogan, B.; Erdoğan, Ö. Ö.; Aktuğ, O.The increased size and complexity of software systems has led to the notion of multiple software product lines (MPLs) in which products are composed from subproducts in separate software product lines. Thus, it is important to identify the proper architectural decomposition of the MPL with respect to the stakeholders' concerns before large organizational resources are committed to the development. Designing MPL architectures is challenging due to the higher level of abstraction and the integration of different product lines. Different architecture analysis approaches have been introduced, but none of these focuses on the evaluation of MPL architectures. We propose the architecture analysis approach for MPL Engineering (Archample), which has been particularly defined for the analysis of MPL architectures. Archample also introduces architectural viewpoints for modeling and documenting MPL and likewise supporting the analysis of the decomposition of an MPL architecture. The approach has been designed and validated within a real industrial context of Aselsan REHI˙S Group (Aselsan REHI˙S), a leading high-technology company in defense systems development in Turkey. © 2014 Elsevier Inc. All rights reserved.Item Open Access Architecting in global software engineering(Association for Computing Machinery, 2012-01) Tekinerdogan, B.; Cetin S.; Babar, M. A.; Lago, P.; Mäkiö, J.This paper summarizes the results of the First Workshop on Architecting in Global Software Engineering (GSE), which was organized in conjunction with the 6th International Conference on Global Software Engineering (ICGSE 2011). The workshop aimed to bring together researchers and practitioners for defining and advancing the state-of-the-art and state-of-the practice in architecture design of global software development systems.Item Open Access A comparative analysis of software engineering with mature engineering disciplines using a problem solving perspective(IGI Global, 2010) Tekinerdogan, B.; Aksit, M.Software engineering is compared with traditional engineering disciplines using a domain specific problem-solving model called Problem-Solving for Engineering Model (PSEM). The comparative analysis is performed both from a historical and contemporary view. The historical view provides lessons on the evolution of problem-solving and the maturity of an engineering discipline. The contemporary view provides the current state of engineering disciplines and shows to what extent software development can actually be categorized as an engineering discipline. The results from the comparative analysis show that like mature engineering, software engineering also seems to follow the same path of evolution of problem-solving concepts, but despite promising advances it has not reached yet the level of mature engineering yet. The comparative analysis offers the necessary guidelines for improving software engineering to become a professional mature engineering discipline. © 2011, IGI Global.Item Open Access Deriving feasible deployment alternatives for parallel and distributed simulation systems(Association for Computing Machinery, 2013-07) Çelik, T.; Tekinerdogan, B.; Imre, K.Parallel and distributed simulations (PADS) realize the distributed execution of a simulation system over multiple physical resources. To realize the execution of PADS, different simulation infrastructures such as HLA, DIS and TENA have been defined. Recently, the Distributed Simulation Engineering and Execution Process (DSEEP) that supports the mapping of the simulations on the infrastructures has been defined. An important recommended task in DSEEP is the evaluation of the performance of the simulation systems at the design phase. In general, the performance of a simulation is largely influenced by the allocation of member applications to the resources. Usually, the deployment of the applications to the resources can be done in many different ways. DSEEP does not provide a concrete approach for evaluating the deployment alternatives. Moreover, current approaches that can be used for realizing various DSEEP activities do not yet provide adequate support for this purpose. We provide a concrete approach for deriving feasible deployment alternatives based on the simulation system and the available resources. In the approach, first the simulation components and the resources are designed. The design is used to define alternative execution configurations, and based on the design and the execution configuration; a feasible deployment alternative can be algorithmically derived. Tool support is developed for the simulation design, the execution configuration definition and the automatic generation of feasible deployment alternatives. The approach has been applied within a large-scale industrial case study for simulating Electronic Warfare systems. © 2013 ACM.Item Open Access Experiences in teaching a graduate course on model-driven software development(Routledge, 2011-11) Tekinerdogan, B.Model-driven software development (MDSD) aims to support the development and evolution of software intensive systems using the basic concepts of model, metamodel, and model transformation. In parallel with the ongoing academic research, MDSD is more and more applied in industrial practices. After being accepted both by a broad community of researchers and the industry, it is now being introduced in university courses. This article describes the experiences of three years of teaching of the graduate course Model-Driven Software Development at Bilkent University in Turkey. The lessons learned can be useful for peer educators who teach or aim to teach a similar course. © 2011 Copyright Taylor and Francis Group, LLC.Item Open Access Feature-based rationale management system for supporting software architecture adaptation(World Scientific Publishing Co. Pte. Ltd., 2012) Tekinerdogan, B.; Sozer, H.; Aksit, M.Each software architecture design is the result of a broad set of design decisions and their justifications, that is, the design rationale. Capturing the design rationale is important for a variety of reasons such as enhancing communication, reuse and maintenance. Unfortunately, it appears that there is still a lack of appropriate methods and tools for effectively capturing and managing the architecture design rationale. In this paper we present a feature-based rationale management approach and the corresponding tool environment ArchiRationale for supporting software architecture adaptation. The approach takes as input an existing architecture and captures the design rationale for adapting the architecture for a given quality concern. For this we define a feature model that includes the possible set of architectural tactics to realize the quality concern. The presented approach captures the rationale for deciding on feature selections and for selecting the corresponding architecture design alternatives. ArchiRationale customizes and integrates the Eclipse plugin tools XFeature, ArchStudio and XQuery to provide tool support for capturing, storing and accessing the design rationale. We illustrate the approach for adapting a software architecture for fault tolerance. © 2012 World Scientific Publishing Company.Item Open Access First Turkish software product line engineering workshop summary(Association for Computing Machinery, 2012-11) Tekinerdogan, B.Item Open Access Market-driven approach based on Markov decision theory for optimal use of resources in software development(Institution of Engineering and Technology, 2004) Noppen, J.; Aksit, M.; Nicola, V.; Tekinerdogan, B.Changes in requirements may have a severe impact on development processes. For example, if requirements change during the course of a software development activity, it may be necessary to reschedule development activities so that the new requirements can be addressed in a timely manner. Unfortunately, current software development methods do not provide explicit means to adapt development processes with respect to changes in requirements. The paper proposes a method based on Markov decision theory, which determines the estimated optimal development schedule with respect to probabilistic product demands and resource constraints. This method is supported by a tool and applied to an industrial case.Item Open Access MoDSEL: model-driven software evolution language(IGI Global, 2013) Er, E.; Tekinerdogan, B.Model-Driven Software Development (MDSD) aims to support the development and evolution of software intensive systems using the basic concepts of model, metamodel, and model transformation. In parallel with the ongoing academic research, MDSD is more and more applied in industrial practices. Like conventional non-MDSD practices, MDSD systems are also subject to changing requirements and have to cope with evolution. In this chapter, the authors provide a scenario-based approach for documenting and analyzing the impact of changes that apply to model-driven development systems. To model the composition and evolution of an MDSD system, they developed the so-called Model-Driven Software Evolution Language (MoDSEL) which is based on a megamodel for MDSD. MoDSEL includes explicit language abstractions to specify both the model elements of an MDSD system and the evolution scenarios that might apply to model elements. Based on MoDSEL specifications, an impact analysis is performed to assess the impact of evolution scenarios and the sensitivity of model elements. A case study is provided to show different kind of evolution scenarios and the required adaptations to model elements. © 2014, IGI Global.Item Open Access Reflection on Turkish aspect-oriented software development workshop series(Association for Computing Machinery, 2012) Tekinerdogan, B.In the last decade aspect-oriented software development (AOSD) has gained a broad interest in both academic institutions and industry. Likewise, several international conferences and workshops have been organized around the topic of AOSD. This paper summarizes the results of the national Turkish Aspect-Oriented Software Development Workshop series that have been organized in the last decade with the goal to stimulate the research and education on AOSD in Turkey. The fifth workshop was organized in December 2011. Aspects identified and demonstrated during the workshops have been collected in the so-called Aspect Browser. We report both on the experiences from the workshop series and the resulting aspect browser.Item Open Access S-IDE: a tool framework for optimizing deployment architecture of High Level Architecture based simulation systems(2013) Çelik, T.; Tekinerdogan, B.One of the important problems in High Level Architecture (HLA) based distributed simulation systems is the allocation of the different simulation modules to the available physical resources. Usually, the deployment of the simulation modules to the physical resources can be done in many different ways, and each deployment alternative will have a different impact on the performance. Although different algorithmic solutions have been provided to optimize the allocation with respect to the performance, the problem has not been explicitly tackled from an architecture design perspective. Moreover, for optimizing the deployment of the simulation system, tool support is largely missing. In this paper we propose a method for automatically deriving deployment alternatives for HLA based distributed simulation systems. The method extends the IEEE Recommended Practice for High Level Architecture Federation Development and Execution Process by providing an approach for optimizing the allocation at the design level. The method is realized by the tool framework, S-IDE (Simulation-IDE) that we have developed to provide an integrated development environment for deriving a feasible deployment alternative based on the simulation system and the available physical resources at the design phase. The method and the tool support have been validated using a case study for the development of a traffic simulation system. © 2013 Elsevier Inc.