Updated my publications page …

It’s been a while, but now that the last two big journal articles I had in the pipeline for ages are printed, I finally updated my publications page with proper references and pdfs.

For those who got to know me more recently (or don’t know me at all). I have been moving back and forth between academic jobs and non academic jobs for about twelve years. The last two years I’ve been employed in a strictly non-academic role, which I enjoy very much. Before that I was working (and publishing) at the Nokia Research Center. In that job, I squeezed out several not so important workshop articles and book chapters as well as two major, big journal articles (which in the academic world is all that counts). Those articles took a long time to write and even longer to get reviewed, edited, re-reviewed, re-edited, accepted, re-edited, approved, edited by a professional editor, approved, pre-published, and finally printed.

Practical Web-Based Smart Spaces
Abstract:

Mobile devices are evolving into hubs of content and context information. Many research projects have shown the potential for new pervasive computing applications. This article shows how Web and resource-based smart spaces can support pervasive applications in a wide variety of devices. A framework that employs a resource-based HTTP style for pervasive services called Representational State Transfer (REST) can enable easy mashup of applications. This framework has several important features. First, a flexible access control mechanism on top of the OpenID and OAuth protocols provides security and access control in heterogeneous, dynamic environments. Second, a search engine can collaborate with existing service and network discovery mechanisms to find resources on the basis of their indoor location. Finally, an emerging W3C standard, Delivery Context: Client Interfaces (DCCI), facilitates sharing information within a device in an interoperable fashion.

The first article, we decided to write in 2008 as a way to promote the fine research we had been doing in Nokia Research. You can’t get better marketing for your research than an article in a high profile magazine with a wide distribution in the research community. The magazine we selected for this was Pervasive Computing, and I’m very proud and happy we got our article in. Since this is a magazine and not a journal, the article is comparatively limited in size, which means that it posed some interesting challenges on what to keep in it and what to omit.

Comparing Practices for Reuse in Integration-oriented Software Product Lines and Large Open Source Software Projects
Abstract:

This paper compares organization and practices for software reuse in integration- oriented software product lines and open source software projects. The main observation is that both approaches are successful regarding large variability and reuse, but differ widely in practices and organization. To capture practices in large open source projects, we describe an open compositional model, which reflects their more decentralized organization of software development. We capture key practices and organizational forms for this and validate these by comparing four case studies to this model. Two of these studies are based on published software product line case studies, for the other two we analyze the practices in two large and successful open source projects based on their published developer documentation. Our analysis highlights key differences between the practices in the two open source organizations and the more integrational practices used in the other two cases. Finally, we discuss which practices are successful in which environment and how current practices can move towards more open, widely scoped and distributed software development.

I started writing the second article, already in 2006. The first drafts were not very satisfying and we put it on ice for quite some time until deciding to finally get it published in 2008, which meant a more or less full rewrite of what we had until then. From there it took until September 2010 to get it printed. Most of those 2+ years were spent waiting and very occasionally doing major revisions of the article in response to some reviews and editor comments.

This last article (for now) has some continuity from my earlier work on software variability, software product lines, and software design erosion that I covered in my Ph. D thesis in 2003 (and several related publications). We present a model for large scale software development that we reconstructed from observing “how it’s done” in several case studies published by others as well as in the open source community as well as our own experience studying various systems and companies, as well as getting our own hands dirty with actual software engineering. Two years of subsequent practicing real software development in Nokia has only strengthened my belief in the vision presented in the paper, which is that the only proper way to scale software development to a software eco system (i.e. a thriving community of many developers across many organizations working with and on the software) is to decentralize management of the development process. If you are interested in this and want to read more, co-author Jan Bosch, my former Ph. D. supervisor who now works at Intuit, has been publicizing this view as well in his frequent talks and keynotes at various conferences. This website is dedicated to this topic.

Now with both articles out of the way, the question is “what’s next?”. The answer to that, for now, is nothing because I haven’t started writing any new articles in the last two years. And frankly I’m not likely to start writing one soon since I lack the time and I’m appalled by the snail pace at which the publication process progresses. Both articles have turned out very nice but would have had much greater impact if we had been able to get them written and published in the same year instead of (nearly) 3 to 5 years apart. Sadly, this is the reality of academic life. You write your stuff, you move on, and some day stuff actually gets printed on dead trees. There are more reasons, which I won’t rant about here but it is a big factor in me not being interested in publishing any more, for now.

Paper on Sensor Actuator Kit evaluation

One of our interns, Filip Suba, presented a paper earlier this week in Turku at the Symposium on Applications & the Internet. He’s one of my former (since today) master thesis students that has been working in our team at NRC for the past few months. The paper he presented is actually based on his work a few months before that when he was working for us as a summer trainee (previous summer that is). His master thesis work (on a nice new security protocol) is likely to result in another paper, when we find the time to write it.

Anyway, we hired him last year to learn a bit more about the state of the art in Sensor Actuator development kit with a particular focus on building applications and services that are kit independent and exposing their internals via a web API. This proved quite hard and we wrote a nice paper on our experiences.

In short, wireless sensor actuator kits are a mess. Above the radio level very little is standardized and the little there is is rarely interoperable. Innovation here is very rapid though. The future looks bright though. I watched this nice video about Sun Spot earlier this week for example:

The notion of making writing on Sensor node software as simple as creating a J2ME Midlet is in my view quite an improvement over hacking C using some buggy toolkit, cross compiling to obscure hardware and hoping it works.

New and updated publications

As you saw in yesterday’s post, my publication site has moved to this blog. I also took the opportunity to update the page with recent work:

You can download the pdfs and find the full refs from here: publications.

Experiences with realizing Smart Space Web Service Applications

I had a nice article accepted at the upcoming 1st IEEE International Peer-to-Peer for Handheld Devices Workshop at the CCNC ’08 conference in Las Vegas.

Jilles van Gurp, Christian Prehofer, Cristiano di Flora, Experiences with realizing Smart Space Web Service Applications

This paper presents our approach for building an internet based middleware platform for smart spaces as well as a number of services and applications that we have developed on top of it. We outline the architecture for the smart space middleware and discuss several applications and services that we have so far realized with this middleware. The presented material highlights key concepts in our middleware vision: services are HTTP based and restful; applications are accessed through a browser so that they are available on a wide variety of devices; and we demonstrate the concept of bridging non internet enabled smart space devices to our IP and HTTP centric smart space network.

I’ve uploaded the paper to my publications site.

Workshop paper

Together with my two colleagues Christian Prehofer and Cristiano di Flora, I wrote a nice workshop paper for the upcoming Second Workshop on Requirements and Solutions for Pervasive Software Infrastructures (RSPSI), at UBICOMB 2007, Innsbruck, 16-19 Sebtember, 2007.

Towards the Web as a Platform for Ubiquitous Applications in Smart Spaces (pdf).

Abstract:

We introduce our web based middleware for smart spaces, which strongly relies on technologies used in Internet services. Following the key requirements and
technologies, we present our architecture for ubiquitous applications in smart spaces. It exploits and leverages many of the key web-technologies as well as “Web 2.0” collaborative and social Internet services, including browsers, web servers, development tools and content management systems. In this way, we aim to make many of the highly disruptive ubiquitous applications less disruptive from a technology point of view. Furthermore, we discuss a number of new challenges for applying these technologies in ubiquitous applications. These include the areas of discovery/delivery of services, security, content management, and networking.

The article is a nice milestone in our very your research group. An earlier position paper already outlined our vision for software development in smart spaces. This article builds on that vision and makes public a few details of the software we are building in the research group.

Towards Effective Smart Space Application Development: Impediments and Research Challenges

I submitted a nice position paper with two of my colleagues at Nokia to the CMPPC’07 (Common Models and Patterns for Pervasive Computing) Workshop, at Pervasive 2007 in Toronto next month.

Abstract:

State-of-the-art research and existing commercial off-the-shelf solutions provide several technologies and methods for building Smart spaces. However, developing applications on top of such systems is quite a complex task due to several impediments and limitations of available solutions. This paper provides an overview of such impediments and outlines what are the main research challenges that still need to be solved in order to enable effective development of applications and systems that fully exploit the capabilities of state-of-the-art technologies and methodologies. The paper also outlines a few specific issues and impediments that we, at the Nokia Research Center, faced in this field so far. It also sheds some light on how we are going to tackle some of the mentioned issues in the future.

Full details are on my publication site and you can download the pdf from there as well.

Variability Management and Compositional SPL Development

I submitted a nice position paper to the variability management workshop here in Helsinki next month.

Abstract:

This position paper reflects on the implications for variability management related practices in SPL development when adopting a compositional style of development. We observe that large scale software development is increasingly conducted in a decentralized fashion and on a global scale with little or no central coordination. However, much of the current SPL and variability practices seem to have strong focus on centrally maintained artifacts such as feature and architecture models. We conclude that in principle it should be possible to decentralize these practices and identify a number of related research challenges that we intend to follow up on in future research.

Full details are on my publication site and you can download the pdf from there as well.

Website maintenance

I did some maintenance on my website this morning. I fixed a few broken urls to websites of friends. Also I added a workshop paper to my publications that I co-authored with Ronald Bos nearly two years ago. Then I discovered that several of the papers there had incomplete references, so I fixed that too.

Finally, I updated my photo site and added pictures I took last Christmas in France and last week when my father, uncle, nephew, and niece’s boyfriend visited Helsinki.

Publications site updated

As promised a few months ago, I added the final versions of both SPLC workshop papers to my publication site. Also I took the opportunity to clean out the external links section and added a few links to all people I’ve co-authored stuff with. I hope to write some more stuff over the next few months and that too will find its way to this site, eventually.

SPLC workshop papers

Next week, I am attending the Software Product Line Conference 2006 in Baltimore. I’m presenting a paper in on variability mechanisms in service grids (posted about this a few months ago) and two workshop papers.

I submitted a paper to the Managing Variability for Software Product Lines: Working With Variability Mechanisms. The paper, which I wrote with Christian Prehofer, discusses some ideas on using version management systems during product derivation:

Version management tools as a basis for integrating Product Derivation and Software Product Families.

This paper considers tool support for variability management, with a particular focus on product derivation, as common in industrial software development. We show that tools for software product lines and product derivation have quite different approaches and data models. We argue that combining both can be very valuable for integration and consistency of data. In our approach, we illustrate how product derivation and variability management can be based on existing version management tools.

An edited version of this paper will be published after the workshop comments have been incorporated.

The second paper is a position paper about applying open source development practices in the context of software product line development:

OSS Product Family Engineering.

Open source projects have a characteristic set of development practices that is, in many cases, very different from the way many Software Product Families are developed. Yet the problems these practices are tailored for are very similar. This paper examines what these practices are and how they might be integrated into Software Product Family development.

This paper was accepted for the First International Workshop on Open Source Software and Product Lines.

I will update my publications page after the conference after it is clear how and where the papers will be published.