Today’s complex operating environments require systems to capture and document context together with requirements. Such contextual requirements are used by adaptive systems. During the lifetime of an adaptive system contextual requirements might become outdated if the operational environment changes or might be affected by changes in the monitoring infrastructure (e.g., sensor failure). Such uncertainty might affect the satisfaction of contextual requirements. Overcoming this limitation in adaptive systems calls for runtime support on the adaptation of contextual requirements that are affected by runtime uncertainty. Alessia Knauss, Daniela Damian, and Angela Rook from our lab, in collaboration with Xavier Franch, Hausi Müller, and Alex Thomo developed ACon, an approach that supports the adaptation of contextual requirements at runtime. ACon uses a feedback loop to detect contextual requirements affected by uncertainty and integrates data mining techniques to determine the current measurable context conditions in which the contextual requirement is valid. We evaluated ACon based on our OAR Northwest project in an unpredictable environment, the Atlantic Ocean, with lots of uncertainty involved. We mined contextual data of 46 sensors for five contextual requirements. Our evaluation showed promising results and leaves room for further investigations in this direction.
For a great documentary about the OAR Northwest team that Alessia Knauss and Angela Rook have been collaborating on research with over the last two years, check out the following: http://www.nbcnews.com/dateline/full-episode-capsized-n80451
We started a project in our lab this summer, which we lovingly call Co-CoDe: Collaboration, Coordination, and Development process in software teams. With this project we’re aiming to understand and record collaboration practices followed by a variety of teams, and the associated benefits and challenges. Software teams try to strike a balance between process and tools and spend resources and effort to find the combination that works for them. Their technical and organizational decisions go hand-in-hand, and the aim is to maintain the right levels of communication, work awareness, and coordination practices. Through our study we hope to provide teams with insight and recommendations for practices that can work better for them. Our first focus of investigation is the use of decentralized version control systems (DVCS) by an increasing number of projects and teams. As DVCS, such as Git, are becoming adopted for managing the codebase, we’re curious as to how they influence team collaboration by providing a protocol for managing code contributions. Our choice to investigate DVCS impact on collaboration brought us to using GitHub as a proxy. GitHub is getting adopted more and more, and that has also attracted the attention of the academic community, with a growing number of papers dedicated to how it is used both as a tool and a collaborative environment. We conducted a short survey along with 35 interviews, providing us with a wealth of input and insight. The teams we interviewed include both open source and commercial teams, distributed and collocated, of varying sizes and choice of development methodologies. We’ll be updating the news on this project as we’re finalizing and publishing our results and insights.
Since October 2012 our lab has the pleasure to conduct research on the project of OAR Northwest. The students from the SEGAL lab involved in this project are Alessia Knauss and Angela Rook. The main research is done on the Atlantic Ocean trip of Adam Kreek, Jordan Hanssen, Markus Pukonen and Pat Fleming. During this trip they were collecting research data for us for the purpose of investigation in requirements engineering for adaptive systems that represent socio-technical systems. After their capsize in April 2013 (which was very unfortunate as they were very close to their goal), for a couple of weeks it was not clear whether the devices, that were used on board for data collection were lost in the ocean. The first good news was that some of the devices were found on the boat that was out on the ocean for almost two weeks. With the devices (e.g. Samsung Rugbys) the impossible was possible: We were able to restore some of the devices, so that we got enough data to continue with our research. In June Alessia had a meeting with the rowers in Victoria (where the picture was taken) to receive further research data. It was very exciting to meet all four of them in the same place and hear their exciting and very inspiring stories about the experience out there on sea and their capsizing. Thank you Adam, Jordan, Markus and Pat for giving us the opportunity to take part in this adventure and for your inspiration and all the effort you put in to make this research possible!
I have been teaching students Global Software Engineering (GSD) since 2006, and more and more I realize that the learning I am trying to create in the classroom is not related to technical skills at all. It is about discovering yourself. Very few problems in GSD are of technical nature. Advances in distributed version control and integrated collaborative development environments have made most of technical issues conquerable. It is about how these infrastructures get used by people in different parts of the world, with different styles of work and communication, but more interestingly, different expectations of success and of others. In a recent course I run at the University of Victoria in collaboration with the Finnish Aalto University — see here for a slide deck outlining our great GSD experience — I had the incredible experience that any teacher is hungry for: a student’s reflection on what learning GSD meant for him. Although my intention was to facilitate the UVic students’ international collaboration with the Finnish students, our UVic class was international in itself and we had many great discussions of what working in an international team really meant. In very few classes we get the chance to really reflect on our experiences and learning, and we had many opportunities to share the good and the hard. Trust, large time zone differences and teamwork were among the few things that we talked in almost every class. My student’s report — a reflection from a reserved person most often not able to contribute to what were felt as advanced discussions, though his report is very telling about his learning — highlights in fact why collaborating across borders (whatever they are: physical, cultural, emotional, ideological) is important to (re-)discover oneself: where one comes from, how one approaches particular challenges and how one is willing to search for solutions. It reminded me, once more, how much I… read more →
The SEGAL lab received great news yesterday: one of the three smartphones that our ToTEM system was implemented on survived being capsized! We have yet to determine what data survived on the smartphone. However, a recent project by Angela Rook determined that it is possible to get strong results through data mining with a subset of even just 15 days of consistently collected data. Given that the rowers of OAR Northwest were on the water for 73 days, we have high hopes that we will be able to extract sufficient data for statistically significant research results. We are so grateful to OAR Northwest for recovering this smartphone for us. We are excited to examine the data collected when it arrives at the Lab. Adam Kreek was interviewed on Friday by CBC after he arrived back in Victoria. If you would like to see the interview, please click here.
One of the most intense and enjoyable events last year was the Ready-set-transfer panel (or: show) at Requirements Engineering Conference. I had the pleasure to present my work on the V:issue:lizer and to argue why I think it was ready for transfer into industry. The following video* (1:46 min) was part of my pitch on why the V:issue:lizer is relevant for software development: So how can the V:issue:lizer help in this situation? Let’s first look on the visualization of the clarification trajectory derived from the discussion in the video (see a transcript in the making of section below).
Although we designed V:issue:lizer as a research tool, we think that it is also a good prototype for tool support for managers that need to deal with information overload in distributed software projects. We demonstrate this in a short video (5 min).
This poster was presented at REFSQ’12 in Essen, Germany and highlights our vision for this project: investigating patterns of requirements related discussions that can help projects continually monitor the health of requirements-driven collaboration. Introduction Effective collaboration during Requirements Engineering is essential for project success and includes the discussion and negotiation of requirements with dierent stakeholders, deriving, assigning, and scheduling tasks and subtasks from these requirements. Problem: Existing requirements management tools offer limited support. Practitioners rely on a combination of collaboration tools such as email and issue-trackers. No overview of the state of the requirements-related discussion. Lost opportunity in leveraging the wealth of requirements-related communication data available in projects. Research Goal In our research we aim on investigating patterns of requirements related discussions that can help projects continually monitor the health of requirements-driven collaboration. Research Method Based on a framework for analyzing requirements-driven collaboration , we offer to analyze requirements-driven communication by developing stakeholder requirements centric social networks (RCSN). Based on our ability to automatically detect requirements clarication in this communication (by using machine learning, c.f. ), we can identify patterns of requirements clarication. Anticipated benefits for software engineering practice Support for Seeking Domain Experts as well as Technical Experts Identifying the brokers of requirements related information to make project managers aware of critical people in a project Assessing the health of requirements and their development. References Damian, D., Kwan, I., Marczak, S.: Requirements-driven collaboration: Leveraging the invisible relationships between requirements and people. In: Mistrik, I., Grundy, J., Hoek, A., and Whitehead, J. (eds.) Collaborative Software Engineering. 57-76. Springer, Berlin Heidelberg (2010). Knauss, E., Houmb, S., Schneider, K., Islam, S., Jürjens, J.: Supporting Requirements Engineers in Recognising Security Issues. In: Proceedings of REFSQ’11. Springer, Essen, Germany (2011).