Research

Strategy Areas

Over the last decade we have worked in different projects and areas of software engineering in which we have gained in-depth experience. Within the industry-as-laboratory research strategy our current particular research interests include but are not limited to:

  • Software Architecture Design
    Software architecture represents the gross level structure of software intensive-system, is the earliest artifact in the software life cycle and as such has the largest impact on the quality of software. We are interested in the modeling architectures, methods of architecture and evaluation of architecture.
  • Aspect-Oriented Software Development (AOSD)
    AOSD is a new paradigm for separating concerns in the software development life cycle. It focuses on separating so-called cross-cutting concerns which cannot be easily localized along the abstractions of the adopted dominant software development paradigm. We have basically focused on identifying and modeling aspects at the architecture design level.
     
  • Software Product Line Engineering (SPLE)
    Software product line is a set of software-intensive systems sharing a common, managed set of features that specify the specific needs of a market segment and that are developed from a common set of core assets. Software product line engineering is a paradigm to develop software product lines and as such supports reuse, productivity and quality of the systems. We focus on design space modeling and product line architectures.

  • Model-Driven Software Development (MDSD)
    MDSD is a software development paradigm in which the key abstraction is model and model transformation. MDSD aims to utilize domain-specific languages to create models that express application structure and behavior in a more efficient way. The models are then (semi)automatically transformed into executable code by model transformations. We focus currently on evolution concerns of model-driven software development.
     
  • Global Software Development  (GSD)
    Current trends in software engineering show that large software projects have to operate with teams that are working in different locations. The reason behind this globalization of software development stems from clear business goals such as reducing cost of development, solving local IT skills shortage, and supporting outsourcing and offshoring . There is ample reason that these factors will be even stronger in the future, and as such we will face a further globalization of software development. To cope with these problems the concept of global software development (GSD) is introduced. GSD is a relatively new concept in software development that can be considered as the coordinated activity of software development that is not localized and central but geographically distributed. We are interested in applying and distributing this idea in Turkey. As such in principle we are interested in various research topics related to GSD.

  • Service-oriented software development 
    Service-Oriented engineering builds on the history of enterprise application integration in heterogeneous environments. Together with the standardization efforts it has gained momentum. We focus on the role of architecture and model-driven development in service-oriented software development.


  • Design space synthesis, analysis and evaluation based on quality factors
    Synthesis is a widely applied problem-solving approach of mature engineering disciplines including the sub-processes of technical problem analysis, identification and composition of solution domain concepts, and alternative-space analysis. Current software development processes do not adopt an explicit synthesis process and as such may fall short in identifying, composing and evaluating the relevant concerns. We focus on all aspects of synthesis .