Contrasting Software Design with Engineering Design

Software design is attracting significant efforts as many researchers have been investigating different aspects of software design from knowledge- and human-intensive undertaking. We assert that software design discipline can benefit from leveraging the body of knowledge and the best practices developed in other design disciplines, e.g., engineering design. We believe that software engineering community needs to fully understand the commonalities and differences between the design activities in different disciplines. In this line of research, I have been collaborating with Prof. Ahmed-Kristensen of Department of Engineering Management, Technical University of Denmark (DTU). Our initial efforts have been focused on analyzing the transcripts from the software design sessions performed for the workshop on “Studying professional Software Design” organized by researchers from University of California, Irvine. Our analysis has resulted in several insights of how software designers move from a problem domain to a solution domain and the commonalities between software designers’ and engineering designers’ design activities. Our analysis concludes that software designers were found to move quickly to a detailed design phase, employ co-.evolution and adopt a predominantly depth-first approach to developing their solutions. The initial findings from our analysis have been reported in the following paper which is available on request.

Ahmed-Kristensen, S., Ali Babar, M., Analysis of Software design and Contrasting to Engineering Design, accepted in the 24th International Conference on Design Theory and Methodology (DTM), Chicago, USA, 2012.

Posted in Uncategorized | Leave a comment

Private Cloud with Open Source Software

A few months ago, I wrote a post on our efforts to build a private cloud infrastructure with open source. This was a very exciting and interesting undertaking mainly done through a project carried out one of my students, Zoran Pantić. After that post, there has been several requests for the relevant documents describing our motivation, experiences, and lessons learned through this project. Now we have prepared four relevant reports as guidelines for building, deploying, and troubleshoot private clouds infrastructures using open source software. Following are those four reports. All the four technical reports are available from the following links. We have the plans of converting these reports into a comprehensive guide to building and maintaining private clouds using open source software.

1. Pantić, Z. and Ali Babar, M., Guidelines for Building a Private Cloud Infrastructure, Tech Report TR-2012-153, IT University of Copenhagen, Denmark, 2012.
2. Pantić, Z. and Ali Babar, M., Installing and Scaling out Ubuntu Enterprise Cloud in Virtual Environment, Tech Report TR-2012-154, IT University of Copenhagen, Denmark, 2012.
3. Pantić, Z. and Ali Babar, M., Installing Ubuntu Enterprise Cloud in a Physical Environment, Tech Report TR-2012-155, IT University of Copenhagen, Denmark, 2012.
4. Pantić, Z. and Ali Babar, M., Troubleshooting during Installing Ubuntu Enterprise Cloud, Tech Report TR-2012-156, IT University of Copenhagen, Denmark, 2012.

Posted in Uncategorized | Leave a comment

WICSA/ECSA 2012 in Helsinki – 20-24 August, 2012.

After a successful gathering of Global Software Engineering Conference last year, another premier conference will be heading to Helsinki in the coming summer. And that will be a joint gathering of WICSA and ECSA communities under the name of WICSA/ECSA 2012 from 20 – 24 August. This event carries a huge significance as it would be the 10th anniversary of the Working IEEE/IFIP Conference on Software Architecture (WICSA) and the 6th annual meeting of the European Conference on Software Architecture (ECSA).
This will be a second gathering of both communities after a successful event held back in 2009 and we expect that WICSA/ECSA will offer even more inspiring and productive event in 2012. Like previous events, WICSA/ECSA 2012 is expected to provide a unique forum for researchers and practitioners to present and discuss the latest R&D outcomes,experiences, trends, and challenges in the field of software architecture. Being a member of the organizing committee, I’ll be working quite hard with the whole team to make sure that WICSA/ECAS 2012 will have a quality program and successful event. Please mark your diaries for sending your work and attending the conference whose details can be seen here.

Posted in Software Architecture | Leave a comment

Unique Challenges of Global Software Engineering in Europe

Global Software Engineering (GSE) has become a global phenomenon and a huge number of researchers and practitioners have been exploring the challenges of developing software in global arrangement, also called global sourcing, and how those challenges can be addressed. However, there has been relatively less attention to the unique challenges caused by a particular geographical location for example Europe. The discussions along these lines prompted christian Lescher (my co-program chair for ICGSE 2011) and me to organized a panel discussion during the International Conference on Global Software Engineering (ICGSE 2011) in Helsinki in August. The key question for the panel discussion was:

What are the unique challenges for GSE in Europe and how to overcome them?

This was a “fish ball” panel which was quite well attended with a lot of energetic and thoughtful participants who shared their observations, experiences, and opinions about the GSE challenges which are unique to Europe and those challenges are making it quite difficult for European companies to fully exploit the potential benefits of GSE paradigm. We will be writing a details report on the discussions and outcomes of the panel in the near future and I’ll have write a details blog entry. For those who are interested in knowing the main points discussed and different lines of arguments taken by different participants, I am placing some parts from the raw notes which were kindly taken by Paolo Tell. Continue reading

Posted in Evidence-Based Software Engineering, Global Software Engineering (GSE) | 1 Comment

Architecting in Global Software Engineering

Architecting and architectures of software intensive systems are known to have significant role and impact on software development processes and practices, and on the quality of the developed system (i.e., software or services). Hence, it is important that there is alignment between architecting practices, architectural artefacts, and software development paradigms – Business, Architecture, Process, and Organization (BAPO) is a well known model which highlights the importance of such an alignment. Global Software Engineering (GSE) has changed the way we used to carry out different phases (e.g., requirements, design, and coding) of software development. GSE paradigm is also having significant impact on architecting practices and artefacts as now architects are expected to design a system in a way which can be easily implemented by teams globally distributed and also easily understandable to the team members who may not have any opportunity to directly communicate with the architect. However, there has been not much attention paid the role and importance of architecting and architecture in GSE; for example, the problems related to architecting large and complex systems that are expected to be developed by large teams geographically distributed around the World. Given the increasing realization of the importance of the role of different ways of design and communicating architectures and architecture as a key artefact in GSE, with colleagues, Bedir, Semih, Patricia, and I decided to organize a workshop on this topic in an effort to build a community around some of the key questions which needs to be addressed in order to leverage the benefits from both GSE and architecture communities. This workshop was co-located with the International Conference on Global Software Engineering (ICGSE 2011) in Helsinki last August. Following are the two key questions which we believe need to be extensively explored and systematically addressed in order to support GSE teams with software architecture practices and artefacts:
(1) How can software architecture be used to support GSE?
(2) How does GSE impact software architecture?
We will be writing a report to outline the research agenda on this topic soon.

Posted in Evidence-Based Software Engineering, Global Software Engineering (GSE), Software Architecture | Leave a comment

Building a private cloud for an academic environment

While the perceived and real technical and soio-technical concerns about public cloud solutions may be discouraging many organizations from migrating and/or using public clouds, many organizations are resorting to solutions involving private and community clouds. The increasing trend of private clouds is also making inroads into academic circles where a large amount of data may have very specific privacy and security constraints. However, a large number of academic environments, especially individuals and small teams of researchers, are unlikely to have the required knowledge, skills, and time to fully understand and appropriately address the selection of appropriate hardware and software, and configuration and deployment challenges. In order to provide such a guideline, we decided to carry out a project aimed at building a private cloud using open source solutions like Eucalyptus and OpenNebula. The key objective of this project was to develop a reference guide for designing and implementing a private cloud using open source software, and the focus was primarily on practical aspects concerning design, installation and implementation. The project was carried out by Zoran Pantic under my supervision. Zoran, being an IT professional, leveraged his huge amount of IT infrastructure knowledge and skills to build a private cloud that we plan to use and extend for our research and education on cloud computing. Zoran and I plan to further refine and publish the guidelines from the project report he has written. If you are interested in getting the report in its current form, please write to us. Continue reading

Posted in Cloud Computing, Software Architecture | Leave a comment

Cloud Computing – Adoption Barriers

Organizations and practitioners are well aware, and largely convinced, of the claimed benefits of cloud computing, however, they are concerned about the general lack of knowledge about the potential uncertainties and risks involved in adopting cloud computing. This is one of the conclusions from the first phase of our research on cloud computing adoption barriers. This phase of the research was carried out as a Masters thesis project of Kristina Jucyte under my supervision.
An initial analysis from the gathered data indicates that security, privacy, legal, availability, support and quality of service were the main concerns. A large number of participants were concerned about about data location and legal framework that mmay govern the information, jurisdiction realization, cloud’s outage and information accessibility. A majority of them recommended that organizations need to carefully study the regulartory and business expectations of their industry and commercial process before start using cloud computing services. Continue reading

Posted in Cloud Computing, Evidence-Based Software Engineering | Leave a comment