Browsing by Subject "Software design"
Now showing 1 - 20 of 25
Results Per Page
Sort Options
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 Architectural viewpoints for global software development(IEEE, 2011) Yıldız, Buğra M.; Tekinerdoğan, BekirGlobal Software Development (GSD) can be considered as the coordinated activity of software development that is not localized and central but geographically distributed. Designing an appropriate software architecture of a GSD system is important to meet the requirements for the communication, coordination and control of the distributed GSD teams. A common practice in software architecture design is to apply architectural views to model the design decisions for the various stakeholder concerns. Unfortunately, existing architectural viewpoint approaches are general-purpose and not directly dedicated towards GSD projects. In this paper we propose six architectural viewpoints that have been specifically defined to model GSD systems. The architectural viewpoints are based on a meta-model that has been derived after a thorough domain analysis of the GSD literature. © 2011 IEEE.Item Open Access Architecture framework for mapping parallel algorithms to parallel computing platforms(CEUR-WS, 2013) Tekinerdogan, Bedir; Arkin, E.Mapping parallel algorithms to parallel computing platforms requires several activities such as the analysis of the parallel algorithm, the definition of the logical configuration of the platform, and the mapping of the algorithm to the logical configuration platform. Unfortunately, in current parallel computing approaches there does not seem to be precise modeling approaches for supporting the mapping process. The lack of a clear and precise modeling approach for parallel computing impedes the communication and analysis of the decisions for supporting the mapping of parallel algorithms to parallel computing platforms. In this paper we present an architecture framework for modeling the various views that are related to the mapping process. An architectural framework organizes and structures the proposed architectural viewpoints. We propose five coherent set of viewpoints for supporting the mapping of parallel algorithms to parallel computing platforms. We illustrate the architecture framework for the mapping of array increment algorithm to the parallel computing platform. Copyright © 2013 for the individual papers by the papers' authors.Item Open Access Architecture-based testing and system validation: workshop summary(IEEE, 2011-06) Tekinerdoğan, Bedir; Clements, P.; Muccini, H.; Chaudron, M.; Polini, A.; Woods, E.This paper summarizes the workshop on Architecture-Based Testing and System Validation which was organized in conjunction with the 9th Working IEEE/IFIP Conference on Software Architecture. The main goal of the workshop was to bring together researchers and practitioners both from the architecture design and software testing community to enable architecture-based software testing. © 2011 IEEE.Item Open Access An aspect-oriented tool framework for developing process-sensitive embedded user assistance systems(2011) Tekinerdoǧan, B.; Bozbey, S.; Mester, Y.; Turançiftci, E.; Alkişlar L.Process-sensitive embedded user assistance aims to provide the end-user the necessary guidance based on the state of the process that is being followed. Unfortunately, the development of these systems is not trivial and has to meet several challenges. The main difficulties appear to be related to integration of process-sensitive guidance in the application and the crosscutting behavior of help concerns. To address these issues we developed an aspect-oriented tool framework Assistant-Pro that can be used to develop process-sensitive embedded user assistance for multiple applications. The framework provides tools for defining the process model, defining guidance related to process steps, and modularizing and weaving help concerns in the target application for which user guidance needs to be provided. The framework has been developed and validated in the context of Aselsan, a large Turkish defense electronics company. © 2011 Springer-Verlag Berlin Heidelberg.Item Open Access BRAPH: A graph theory software for the analysis of brain connectivity(Public Library of Science, 2017) Mijalkov, M.; Kakaei, E.; Pereira, J. B.; Westman, E.; Volpe, G.The brain is a large-scale complex network whose workings rely on the interaction between its various regions. In the past few years, the organization of the human brain network has been studied extensively using concepts from graph theory, where the brain is represented as a set of nodes connected by edges. This representation of the brain as a connectome can be used to assess important measures that reflect its topological architecture. We have developed a freeware MatLab-based software (BRAPH–BRain Analysis using graPH theory) for connectivity analysis of brain networks derived from structural magnetic resonance imaging (MRI), functional MRI (fMRI), positron emission tomography (PET) and electroencephalogram (EEG) data. BRAPH allows building connectivity matrices, calculating global and local network measures, performing non-parametric permutations for group comparisons, assessing the modules in the network, and comparing the results to random networks. By contrast to other toolboxes, it allows performing longitudinal comparisons of the same patients across different points in time. Furthermore, even though a user-friendly interface is provided, the architecture of the program is modular (object-oriented) so that it can be easily expanded and customized. To demonstrate the abilities of BRAPH, we performed structural and functional graph theory analyses in two separate studies. In the first study, using MRI data, we assessed the differences in global and nodal network topology in healthy controls, patients with amnestic mild cognitive impairment, and patients with Alzheimer’s disease. In the second study, using resting-state fMRI data, we compared healthy controls and Parkinson’s patients with mild cognitive impairment. © 2017 Mijalkov et al. This is an open access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.Item Open Access Concern-oriented analysis and refactoring of software architectures using dependency structure matrices(ACM, 2009-03) Tekinerdoǧan, Bedir; Scholten F.; Hofmann, C.; Akşit, M.Current scenario-based architecture analysis methods analyze the architecture with respect to scenarios that relate to stakeholder concerns. Albeit the primary motivation is to analyze the impact of stakeholders' concerns, it appears that concerns are not explicitly represented as first class abstractions. The lack of an explicit notion of concern in scenario-based analysis approaches can result in an incomplete analysis because scenarios are too specific and can only partially represent the concerns. We propose the concern-oriented architecture analysis method (COSAAM) that builds on scenario-based approaches but includes an explicit notion of concern in the analysis. COSAAM applies Dependency Structure Matrices (DSMs) to represent and analyze the dependencies among scenarios, concerns and architectural elements. Further, COSAAM extends DSMs by introducing explicit DSM patterns and heuristic rules for analyzing the impact of concerns on the architecture and for supporting the refactoring of the architecture. Copyright 2009 ACM.Item Open Access Decision support for adopting SPLE with transit-PL(ACM, 2013) Kalender, Mert Emin; Tüzün, E.; Tekinerdoğan, BedirIt is generally acknowledged that the decision to adopt a software product line engineering (SPLE) approach needs to be performed carefully due to the di• erent risks involved in taking such an important decision. To mitigate the potential risks of the transition to SPLE, several studies have been proposed that include many di• erent rules for analyzing the feasibility of the SPLE adoption and the selection of transition process. However, it is not easy to apply these manually and likewise provide a proper decision with the corresponding justification. In this paper, we propose the tool Transit-PL, a web based decision support system for analyzing the feasibility of SPLE for an organization and selecting the appropriate transition strategy. Transit-PL provides a framework to build particular decision support system for selected strategies using di• erent types of questions and corresponding rules and set of answers. Copyright 2013 ACM.Item Open Access Defining architectural viewpoints for quality concerns(Springer, Berlin, Heidelberg, 2011) Tekinerdoğan, Bedir; Sözer H.A common practice in software architecture design is to apply architectural views to model the design decisions for the various stakeholder concerns. When dealing with quality concerns, however, it is more difficult to address these explicitly in the architectural views. This is because quality concerns do not easily match the architectural elements that seem to be primarily functional in nature. As a result, the communication and analysis of these quality concerns becomes more problematic in practice. We introduce a general and practical approach for supporting architects to model quality concerns by extending the architectural viewpoints of the so-called V&B approach. We illustrate the approach for defining recoverability and adaptability viewpoints for an open source software architecture. © 2011 Springer-Verlag.Item Open Access Fine arts perspective in user interface design(ACM, 2009) Kültür, Can; Veryeri Alaca I.In this poster, we first aim to explain an interdisciplinary approach and question an idea and attempt. Second, we aim to underline challenges and enablers of such an attempt. This idea can be briefly summarized as "inclusion of learning activities and assessments that are applied in coordination with the Department of Fine Arts might be necessary in terms of developing visual design skills". The target of this approach is improving the courses like 'human computer interaction' or 'user-interface design'.Item Open Access First international workshop on Multi Product Line Engineering (MultiPLE 2013)(ACM, 2013-08) Moonen, L.; Acharya, M.; Behjati, R.; Tekinerdoğan, Bedir; Rabiser, R.; Kang, K. C.In an industrial context, software systems are rarely developed by a single organization. For software product lines, this means that various organizations collaborate to provide and integrate the assets used in a product line. It is not uncommon that these assets themselves are built as product lines, a practice which is referred to as multi product lines. This cross-organizational distribution of reusable assets leads to numerous challenges, such as inconsistent configuration, costly and time-consuming integration, diverging evolution speed and direction, and inadequate testing. The MultiPLE workshop is aimed at discussing the challenges involved with the development and evolution of multi product lines and the assets used for their production. © 2013 Authors.Item Open Access In their words: Student feedback on an international project collaboration(ACM, 2010) Chidanandan, A.; Russell-Dag, Lori; Laxer, C.; Ayfer, ReyyanIn this paper, we describe a collaborative course experience between students from universities in the USA and Turkey. Student teams worked together on a software engineering project for a non-profit organization based in Turkey. The students learned valuable skills in team-work, collaboration-facilitating software tools and working with peers from a different culture and a different time-zone. At the end of the course, in a focus group, students were asked for feedback regarding the course and its outcomes. In this paper, we describe the course from the student perspective. From this, and the instructor's experiences we provide a list of guidelines. Copyright 2010 ACM.Item Open Access Incomplete software requirements and assumptions made by software engineers(IEEE, 2009) Albayrak, Özlem; Kurtoǧlu, Hülya; Biçakçi, M.Many software engineers make implicit assumptions when working with incomplete software requirements. To study assumptions made by software engineers while converting incomplete requirements to software design or to implementation phase deliverables, we conducted an experiment with 251 software engineers from eight companies. The results of this empirical study showed that how software engineers responded (using source code, pseudo code, or prototype) to an incomplete requirement significantly impacted the number of explicit assumptions they made. We studied relationships between the number of explicit assumptions and the engineers' experience and educational backgrounds. On average, non-computer-background engineers made more explicit assumptions than computerbackground graduates. We found a significant relationship between the engineers' experience and the number of explicit assumptions made. We discuss the results and their implications. © 2009 IEEE.Item Open Access Interaction-based feature-driven model-transformations for generating E-forms(ACM, 2009-10) Tekinerdoǧan, Bedir; Aktekin, N.One of the basic pillars in Model-Driven Software Development (MDSD) is defined by model transformations and likewise several useful approaches have been proposed in this context. In parallel, domain modeling plays an essential role in MDSD to support the definition of concepts in the domain, and support the model transformation process. In this paper, we will discuss the results of an e-government project for the generation of e-forms from feature models. Very often existing model transformation practices seem to largely adopt a closed world assumption whereby the transformation definitions of models are defined beforehand and interaction with the user at run-time is largely omitted. Our study shows the need for a more interactive approach in model transformations in which e-forms are generated after interaction with the end-user. To show the case we illustrate three different approaches for generation in increasing complexity: (1) offline model transformation without interaction (2) model transformation with initial interaction (3) model-transformation with run-time interaction. Copyright©2009 ACM.Item Open Access Managing aspect orderings to support multiple quality concerns(IEEE, 2009-03) Tekinerdoǧan, B.; Er, E.When multiple aspects are composed undesired behavior may emerge due to the interference of aspects. Different interference management approaches have been proposed including detection and resolution of the conflicting aspects. It appears that the majority of the existing approaches have basically focused on functional correctness, whereby orderings of aspects are evaluated with respect to assumed contractual specification. Although functional correctness is an important quality concern also other quality concerns such as evolvability, reuse and reliability can demand a specific ordering. As such, the resulting possible set of orderings might need to be further reduced. In this paper we discuss the impact of other quality concerns than functional correctness, on the required orderings of aspects. Based on a domain analysis of existing approaches we provide a feature model and complementary to this a metamodel for defining aspect interference management approaches for multiple quality concerns. Copyright 2009 ACM.Item Open Access Model-driven approach for supporting the mapping of parallel algorithms to parallel computing platforms(Springer, Berlin, Heidelberg, 2013) Arkin, E.; Tekinerdogan, Bedir; Imre, K.M.The trend from single processor to parallel computer architectures has increased the importance of parallel computing. To support parallel computing it is important to map parallel algorithms to a computing platform that consists of multiple parallel processing nodes. In general different alternative mappings can be defined that perform differently with respect to the quality requirements for power consumption, efficiency and memory usage. The mapping process can be carried out manually for platforms with a limited number of processing nodes. However, for exascale computing in which hundreds of thousands of processing nodes are applied, the mapping process soon becomes intractable. To assist the parallel computing engineer we provide a model-driven approach to analyze, model, and select feasible mappings. We describe the developed toolset that implements the corresponding approach together with the required metamodels and model transformations. We illustrate our approach for the well-known complete exchange algorithm in parallel computing. © 2013 Springer-Verlag.Item Open Access Model-driven transformations for mapping parallel algorithms on parallel computing platforms(MDHPCL, 2013) Arkin, E.; Tekinerdoğan, BedirOne of the important problems in parallel computing is the mapping of the parallel algorithm to the parallel computing platform. Hereby, for each parallel node the corresponding code for the parallel nodes must be implemented. For platforms with a limited number of processing nodes this can be done manually. However, in case the parallel computing platform consists of hundreds of thousands of processing nodes then the manual coding of the parallel algorithms becomes intractable and error-prone. Moreover, a change of the parallel computing platform requires considerable effort and time of coding. In this paper we present a model-driven approach for generating the code of selected parallel algorithms to be mapped on parallel computing platforms. We describe the required platform independent metamodel, and the model-to-model and the model-to-text transformation patterns. We illustrate our approach for the parallel matrix multiplication algorithm. Copyright © 2013 for the individual papers by the papers' authors.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 Multidimensional classification approach for defining product line engineering transition strategies(Springer, Berlin, Heidelberg, 2010) Tekinerdoğan, Bedir; Tüzün, E.; Şaykol, E.It is generally acknowledged that the transitioning process to a product line engineering approach is not trivial and as such requires a planned transition process. Different classifications of transition strategies have been proposed in the literature. It appears that these classification schemes are usually based on a single dimension. However, the adoption of a transition strategy is dependent on various criteria and very often it is not easy to characterize the required transition strategy. An appropriate characterization of the transition strategy is important for carrying out the right transition activities and steps to provide an operational product line engineering approach. In this paper, we first provide a conceptual model for defining the concepts related to transition strategies and then propose a multi-dimensional classification approach that aims to provide a more complete view on transition strategies. © 2010 Springer-Verlag Berlin Heidelberg.