{"title":"大规模精益和敏捷软件产品开发环境中的产品线工程——走向分散控制和管理重用的混合方法","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":"{\"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}","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}
Product Line Engineering in Large-Scale Lean and Agile Software Product Development Environments - Towards a Hybrid Approach to Decentral Control and Managed Reuse
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.