Product Line Engineering in Large-Scale Lean and Agile Software Product Development Environments - Towards a Hybrid Approach to Decentral Control and Managed Reuse

Benjamin Blau, T. Hildenbrand
{"title":"Product Line Engineering in Large-Scale Lean and Agile Software Product Development Environments - Towards a Hybrid Approach to Decentral Control and Managed Reuse","authors":"Benjamin Blau, T. Hildenbrand","doi":"10.1109/ARES.2011.66","DOIUrl":null,"url":null,"abstract":"Despite the fact that lean and agile software development has become mainstream recently, especially for larger-scale organizations building complex products, the methodology leaves many architectural questions unanswered. For instance, agile methods such as Extreme Programming propose late architectural decisions and frequent refactoring, while others suggest an “architectural runway” as infrastructure for a certain set of upcoming customer features. Software “product lines” consist of a set of software products that share a common, managed set of features. These product lines are developed from reusable core assets incorporating variations in order to derive customer-specific product variants. Hence, this research explores interoperability and complementarity of lean and agile approaches in combination with a software product line engineering approach. With this position paper, we discuss both, (i) complementing architectural issues in large scale lean and agile development and (ii) providing methodological guidance to make product line engineering more agile and efficient. In doing so, we come to the conclusion that this combination enables us to build the right products in time and budget. Our findings are based on observations and experience from a large-scale software company with several thousand developers working on various solution combinations of highly interdependent products.","PeriodicalId":254443,"journal":{"name":"2011 Sixth International Conference on Availability, Reliability and Security","volume":"8 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-08-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"18","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2011 Sixth International Conference on Availability, Reliability and Security","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ARES.2011.66","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 18

Abstract

Despite the fact that lean and agile software development has become mainstream recently, especially for larger-scale organizations building complex products, the methodology leaves many architectural questions unanswered. For instance, agile methods such as Extreme Programming propose late architectural decisions and frequent refactoring, while others suggest an “architectural runway” as infrastructure for a certain set of upcoming customer features. Software “product lines” consist of a set of software products that share a common, managed set of features. These product lines are developed from reusable core assets incorporating variations in order to derive customer-specific product variants. Hence, this research explores interoperability and complementarity of lean and agile approaches in combination with a software product line engineering approach. With this position paper, we discuss both, (i) complementing architectural issues in large scale lean and agile development and (ii) providing methodological guidance to make product line engineering more agile and efficient. In doing so, we come to the conclusion that this combination enables us to build the right products in time and budget. Our findings are based on observations and experience from a large-scale software company with several thousand developers working on various solution combinations of highly interdependent products.
大规模精益和敏捷软件产品开发环境中的产品线工程——走向分散控制和管理重用的混合方法
尽管事实上精益和敏捷软件开发最近已经成为主流,特别是对于构建复杂产品的大型组织来说,这种方法留下了许多架构上的问题没有得到回答。例如,极限编程等敏捷方法建议后期的架构决策和频繁的重构,而其他方法则建议将 œarchitectural跑道作为一组即将到来的客户功能的基础设施。软件 - œproduct线由一组软件产品组成,这些产品共享一组通用的、受管理的特性。这些产品线是从可重用的核心资产中开发出来的,这些核心资产包含了各种变体,以便派生出特定于客户的产品变体。因此,本研究探索了与软件产品线工程方法相结合的精益和敏捷方法的互操作性和互补性。在这份立场文件中,我们讨论了(i)在大规模精益和敏捷开发中补充架构问题,以及(ii)提供方法指导,使产品线工程更加敏捷和高效。在这样做的过程中,我们得出的结论是,这种组合使我们能够在时间和预算内构建正确的产品。我们的发现是基于对一家大型软件公司的观察和经验,该公司拥有数千名开发人员,他们致力于高度相互依赖的产品的各种解决方案组合。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信