{"title":"Sustaining Agility through Architecture: Experiences from a Joint Research and Development Laboratory","authors":"Balthasar Weitzel, Dominik Rost, Mathias Scheffe","doi":"10.1109/WICSA.2014.38","DOIUrl":"https://doi.org/10.1109/WICSA.2014.38","url":null,"abstract":"This paper is an experience report of a long running Scrum project, conducted in a collaboration between industry and research, in a so called \"Joint Research and Development Laboratory\". Over time in the collaboration, we experienced a constant decrease in the pace of our development progress. Planning forward only within the limits of single sprints was the main reason for this. It resulted in a degenerating design and therefore a lack of flexibility that affected the agility of our project. Therefore, we introduced the concept of \"epic-architectures\", an architecture design for a coherent group of user stories. Shifting the planning horizon further, across single sprints, helped us to create more stable and reusable concepts and to construct simpler, more elegant, and more maintainable solutions. We were able to significantly reduce the refactoring effort and increase the development speed, without significant overhead. With reporting on our experiences we hope to provide practically applicable guidance on how to integrate lightweight architecting in agile development processes, to sustain agility while creating high quality products.","PeriodicalId":346971,"journal":{"name":"2014 IEEE/IFIP Conference on Software Architecture","volume":"98 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116915704","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Scalability of Ecosystem Architectures","authors":"Simone da Silva Amorim, E. Almeida, J. McGregor","doi":"10.1109/WICSA.2014.36","DOIUrl":"https://doi.org/10.1109/WICSA.2014.36","url":null,"abstract":"The goal of this research is to understand the various dimensions along which the architectures in an ecosystem should scale to support successful software-intensive products. We used a case study approach in which we first identified characteristics of scalability from the research literature and then examined ecosystems to determine the extent to which their primary architectures possessed these characteristics. We also examined the architectures of the platform extensions. We found that each architecture exhibited those characteristics although through different mechanisms and to different degrees.","PeriodicalId":346971,"journal":{"name":"2014 IEEE/IFIP Conference on Software Architecture","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126135821","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A Journey through the Land of Model-View-Design Patterns","authors":"Artem Syromiatnikov, Danny Weyns","doi":"10.1109/WICSA.2014.13","DOIUrl":"https://doi.org/10.1109/WICSA.2014.13","url":null,"abstract":"Every software program that interacts with a user requires a user interface. Model-View-Controller (MVC) is a common design pattern to integrate a user interface with the application domain logic. MVC separates the representation of the application domain (Model) from the display of the application's state (View) and user interaction control (Controller). However, studying the literature reveals that a variety of other related patterns exists, which we denote with Model-View- (MV) design patterns. This paper discusses existing MV patterns classified in three main families: Model-View-Controller (MVC), Model-View-View Model (MVVM), and Model-View-Presenter (MVP). We take a practitioners' point of view and emphasize the essentials of each family as well as the differences. The study shows that the selection of patterns should take into account the use cases and quality requirements at hand, and chosen technology. We illustrate the selection of a pattern with an example of our practice. The study results aim to bring more clarity in the variety of MV design patterns and help practitioners to make better grounded decisions when selecting patterns.","PeriodicalId":346971,"journal":{"name":"2014 IEEE/IFIP Conference on Software Architecture","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123981750","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Bruno Costa, Paulo F. Pires, Flávia Coimbra Delicato, P. Merson
{"title":"Evaluating a Representational State Transfer (REST) Architecture: What is the Impact of REST in My Architecture?","authors":"Bruno Costa, Paulo F. Pires, Flávia Coimbra Delicato, P. Merson","doi":"10.1109/WICSA.2014.29","DOIUrl":"https://doi.org/10.1109/WICSA.2014.29","url":null,"abstract":"The use of Representational State Transfer (REST) as an architectural style for integrating services and applications brings several benefits, but also poses new challenges and risks. Particularly important among those risks are failures to effectively address quality attribute requirements such as security, reliability, and performance. An architecture evaluation early in the software life cycle can identify and help mitigate those risks. In this paper we present guidelines to assist architecture evaluation activities in REST-based systems. These guidelines can be systematically used in conjunction with scenario-based evaluation methods to reason about design considerations and trade-offs. This paper also presents a proof of concept to describe how to use the guidelines in the context of an Architecture Trade-off Analysis Method (ATAM) evaluation.","PeriodicalId":346971,"journal":{"name":"2014 IEEE/IFIP Conference on Software Architecture","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125929331","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"A Dynamic Software Product Line Architecture for Prepackaged Expert Analytics: Enabling Efficient Capture, Reuse and Adaptation of Operational Knowledge","authors":"Karen Smiley, Shakeel Mahate, Paul Wood","doi":"10.1109/WICSA.2014.11","DOIUrl":"https://doi.org/10.1109/WICSA.2014.11","url":null,"abstract":"Advanced asset health management solutions blend business intelligence with analytics that incorporate expert operational knowledge of industrial equipment and systems. Key challenges in developing these solutions include: streamlining the capture and prepackaging of operational experts' knowledge as analytic modules, efficiently evolving the modules as knowledge grows, adapting the analytics in the field for diverse operating circumstances and industries, and executing the analytics with high performance in industrial and enterprise software systems. A Quality Attribute Workshop (QAW) was used to elicit and analyze variability at development time and runtime for creating, integrating, evolving, and tailoring reusable analytic modules for ABB/Ventyx asset health solution offerings. Dynamic software product line (DSPL) architecture approaches were then applied in designing an analytics plug in architecture for asset health solutions. This paper describes our approach and experiences in designing the analytics product line architecture and its SME Workbench toolset, and how we achieved significant improvements in speed and flexibility of deploying industrial analytics.","PeriodicalId":346971,"journal":{"name":"2014 IEEE/IFIP Conference on Software Architecture","volume":"4 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126261710","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"The Functional Architecture Modeling Method Applied on Web Browsers","authors":"Wilbert Seele, Shaheen Syed, S. Brinkkemper","doi":"10.1109/WICSA.2014.40","DOIUrl":"https://doi.org/10.1109/WICSA.2014.40","url":null,"abstract":"Although a lot of research has been carried out in the domains of technical architecture and functional architecture of software systems, up to this point both domains were treated as separate. Additionally, design and documentation of software architecture is still often found absent or incomplete. In this paper, we present the Functional Architecture Modeling method, a streamlined system allowing for quick iterations of software architecture with a focus on ease of use and communicability while maintaining a high quality of designs. The Functional Architecture Modeling method combines elements and lessons learned from the functional and technical software architecture domains into a single software architecture design method.","PeriodicalId":346971,"journal":{"name":"2014 IEEE/IFIP Conference on Software Architecture","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128934148","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}