Category: Software Architecture
Architecting in Global Software Engineering
Global Software Engineering (GSE), developing software with geographically distributed teams, has raised not only several new challenges but has also highlighted the needs of revisting and/or enhancing the existing software engineering approaches. One of such challenges is architecting for GSE projects, which requires organizations and architects to rethink the role and suitability of existing approaches…
Empirical research in software architecture
Empirical research is quite difficult undertaking; doing empirical research becomes even more difficult when the studied objects are likely to be described at a higher level of abstract like software architecture. That is an obvious reasons that we don’t see much empirical research, even not very rigorous one, carried out to assess the effectiveness and…
Integration challenges in ISS and OSS
Companies are showing great interest in adopting the processes, practices, and tools being used by Open Source Software (OSS); this phenomenon has come to known as Inner Source Software (ISS). While this phenomenon brings several known benefits of the OSS inside a corporate software development arena, unfortunately, the software developed using ISS also poses the…
An experience of migrating to clouds
With the increasing popularity of Cloud computing, an increasing organizations are pondering about their strategy to migrate their existing software intensive systems to cloud-enabled infrastructure. One of the key questions of any migration strategy will be what kinds software engineering methods, guidelines, and tools are available to support the migration process. While an increasing number…
International Networking Grant
I have just received a grant to support an International network of researchers from four countries: Denmark, China, Brazil, and Japan. This networking project, called ArchClouds: Architecting for Cloud-enabled software systems, is aimed at providing researchers from IT University of Copenhagen (ITU) Denmark, ICT, Chinese academic of Sciences Beijing, China, Wesada University of Japan, and…
Innovation in Cloud Computing
Following on my previous posts on cloud computing related initiatives at ITU and its academic and industry partners, a new development is that we have started the process of forming a consortium of Danish researchers and practitioners for innovation in cloud computing. This consortium will not only focus on building Danish organizations’ competencies in cloud…
Global Software Engineering Challenges for the Next Decade
This is the main theme of the next year’s one of the largest gatherings of academic and corporate researchers, and practitioners interested in Global Software Engineering (GSE) – I am referring to the sixth IEEE International Conference on Global Software Engineering (ICGSE) to be held in Helsinki, Finland. Now we are moving into the final…
Turkish Software Architecture Conference
Yes, there is a Turkish software architecture conference and a large and growing community of software engineering researchers and practitioners interested in software architecture research and practice. And this is a biennial conference, which is being organized for the last six years or so. I must acknowledge that until a few months ago I was…
Non-Functional Requirements in Systems and Software Engineering
Non-Functional Requirements, quality attributes, architecturally significant requirements, extra-functional requirements, or whatever you call them, are the main driving force behind the key design or development decisions in any large scale software-intensive system development. It is widely recognized that quality attributes of a system largely depend on the overall architecture of such systems. Hence, it is…
Cloud Computing: Real or Fad!
While there are several unanswered questions about the viability, risks, and advantages of Cloud Computing, there are a growing number of signs that this emerging paradigm of computing is not a new technological fad. Rather its real and has been based on mature and successful technologies such as virtualization, Grid Computing, and Utility Computing. Apart…