Bedir Tekinerdogan
 Assistant Professor
Bilkent University
Department of Computer Engineering-
Software Engineering

Research
Education
Background
Professional Activities
Projects
Publications
Personal
Address

Bilsen

 

 

 

 

 

 

 

Research

I have around 20 years of experience in different topics of software engineering. My key research topic in software engineering is software architecture design, which 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. I am interested in all topics related to software architecture design including modeling architectures, methods of architecture, synthesis of architecture and evaluation of architecture.

Software architecture is not only an important topic by itself but it is also crucial for different software engineering domains. I am interested in the following domains from the software architecture research perspective:

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. I focus on the role of architecture in product line engineering and the automation of the product line engineering process as well as the automated support for transitioning to SPLE.

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. I have applied software language engineering approaches for modeling architectural viewpoints to support the automated design and analysis of software architecture. Complementary to this we focus on model-based testing using architectural models, and architecture conformance analysis.   

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. In my research I have basically focused on identifying and modeling aspects at the architecture design level. I have defined an approach for identifying and analyzing aspects at the architecture design level.

Cloud Computing
Cloud computing is an emerging computing paradigm that has gained broad interest. Unlike traditional enterprise applications that rely on the infrastructure and services provided and controlled within an enterprise, cloud computing is based on services that are hosted on providers over the Internet. The services that are hosted by cloud computing approach can be broadly divided into three categories: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service and Software-as-a-Service (SaaS). I focus on the role of architecture and model-driven development in cloud computing. We have developed an approach for defining the design space of SaaS architectures, selecting feasible architecture and the model-driven development of the selected architectures.

Global Software Development
Global Software Development (GSD) is a software development approach that can be considered as the coordinated activity of software development that is not localized and central but geographically distributed. 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. Most of the research on GSD seems to be on social aspects. We focus on the technical architecture design and evaluation of GSD systems. GSD is in particular important for Turkey due to its geographic location, the young population and its potential workforce.