Notes by Ziyad Alsaeed, edited by Tamara Marshall-Keim
Transparency: An Architecture Principle for Socio-Technical Ecosystems
Felix Bachmann and Linda Northrop, Software Engineering Institute
Felix and Linda shared their experience as a team in the XSEDE project. They presented compelling evidence of the need to have transparent architecture and architectural practices in socio-technical ecosystems like XSEDE. XSEDE is a virtual, high-performance computer system that allows interactivity for scientists (e.g., biologists, mechanical engineers, environmentalists) all over the world to run their experiments. Experiments are usually of the types that need super-powerful computing capabilities. The system is distributed over a wide distance, and engineers or developers have different global and local priorities. Due to the size of the project and the high complexity, architectural guidance was necessary to ensure the success of the project. Felix’s and Linda’s team responsibilities are to help the team make the right architectural decisions, coach the team on how to incorporate architectural practices, and research missions.
The first thing the team observed is that the requirements weren’t properly documented and the language used to gather requirements wasn’t consistent across the different parts of the system. To resolve this, they first adapted an architecture-centric approach and replaced all the requirement-gathering practices with creating use cases. They asked the teams to associate a quality attribute for each use case. However, the bigger issue was not with requirement. It actually was the lack of transparency. Due to the fact that the XSEDE team is large and distributed, documentation and knowledge sharing became a necessity. Otherwise, team members and subteams will fall behind or will shift from the right track because of the lack of transparency. Also since the environment/culture is academic, people have the tendency to not share progress until it’s “publishable.” The other issue with sharing work progress was the diverse and large number of platforms where information is shared (e.g., wiki, Jira). So Felix’s and Linda’s team goal was to resolve the transparency issue by making things visible. Since they are dealing with smart people, they didn’t want try to educate them in the effort to increase transparency. They just showed them the consequences of their practices, then they let them figure out how to fix them. Also they tried to bring some structure into the existing information to link similar topics and the authors’ information .
In the future work, Felix’s and Linda’s team wants to make the information visualization more accessible. Also, they want to introduce searching capabilities into the existing documentation.
Presentation link: http://resources.sei.cmu.edu/asset_files/Presentation/2014_017_101_89644.pdf
What Happens When You Break All the Rules?
Harald Wesenberg, Jørn Ølmheim, and Einar Landre, Statoil ASA
Harald and Einar showed what could happen when someone, based on his or her experience, breaks the rules. Their latest project started in April and finished in August (only 4 months). Despite the technologies they were using, they think that there are different factors involved in the success of the project. Through the presentation, they shared some of those factors.
First, speed matters the most. As an engineer, they believe, you want to deliver things as fast as possible to get feedback and learn more about your problems. Compared to past work they have done, they observed that they were able to deliver more functionalities in less time within the project when they tried to deliver on a regular basis. However, reaching the desired speed sometimes is difficult. This could be due a variety of reasons, but the most important one is “rules,” in their opinion.
Rules exist to make things better, but that’s not always the case. To avoid such a problem, you need really to look at why the rules are there and whether a single rule is applicable in your case or you can avoid it. It’s important to understand that rules are not laws. Another factor that might slow down the project process is coordination. In large organizations, such as theirs, processes like deployment could take more time than they actually require because of coordination between different people. A mitigation for that issue could be trying to narrow the interface between two actors as much as possible. A final issue they observed is that skill also costs. Letting people use the tools they are comfortable with could improve their productivity.
Finally, Harald and Einar think that these are some tips that improved their team productivity. And they could do so for other teams that look into it carefully.
Presentation link: http://resources.sei.cmu.edu/asset_files/Presentation/2014_017_101_89616.pdf
Archinotes: A Global Agile Architecture Design Tool
Juan Urrego and Dario Correal, Universidad de los Andes
Juan and Dario shared their experience in developing and using Archinotes. Archinotes is a supporting tool for software architects in distributed teams. The tool helps users maintain architectural models in the cloud to bring people from different places together. Also, the tool adapts the agile methodology in the process of developing a software architecture. Through Archinotes a user can define a project overview, different stakeholders, and project constraints. Juan and Dario also made the tool accessible through web browsers and tablets.
Juan and Dario showed some of Archinotes’ features that address architects’ needs, especially if they are in different geographic places. For example, Archinotes allows the user to link investors’ needs to the architect so that he or she can address their requirements. Also, Archinotes is designed to maintain all the versions of a diagram over time, so that a user can go back and see how the diagram evolved. Moreover, architects can document the rationale behind their architectural decisions, which will allow distributed teams to work more efficiently.
In conclusion, there are minor technical issues that they need to tackle (e.g., synchronization). However, the tool looks promising based on their experience with students in the academic field. Finally, it’s worth noting that the tool is available for everyone for free.
Presentation link: http://resources.sei.cmu.edu/asset_files/Presentation/2014_017_101_89666.pdf