首页 > 最新文献

2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)最新文献

英文 中文
Patterns for Designing and Implementing an Environment for Software Start-Up Education 软件创业教育环境的设计与实现模式
Fabian Fagerholm, Arto Hellas, Matti Luukkainen, K. Kyllonen, S. Yaman, Hanna Mäenpää
Today's students are prospective entrepreneurs and employees in modern, start-up like environments within established companies. In these settings, software development projects face extreme requirements in terms of innovation and attractiveness of the end-product. They also suffer severe consequences of failure such as termination of the development effort and bankruptcy. As the abilities needed in start-ups are not among those traditionally taught in universities, new knowledge and skills are required to prepare students for the volatile environment that new market entrants face. This paper reports experiences gained during seven years of teaching start-up knowledge and skills in a higher-education institution. We offer a collection of patterns that help educational institutions to design, implement and operate physical environments, curricula and teaching materials, and to plan interventions that may be required for project-based start-up education.
今天的学生是未来的企业家和雇员,在现代,创业环境类似于成熟公司。在这些情况下,软件开发项目在最终产品的创新和吸引力方面面临着极端的需求。他们还会遭受失败的严重后果,如开发工作的终止和破产。由于初创企业所需的能力并不在传统大学教授的课程中,因此需要新的知识和技能,让学生为新进入市场者面临的动荡环境做好准备。本文报告了在一所高等院校从事创业知识与技能教学七年的经验。我们提供了一系列模式,帮助教育机构设计、实施和操作物理环境、课程和教材,并计划基于项目的启动教育可能需要的干预措施。
{"title":"Patterns for Designing and Implementing an Environment for Software Start-Up Education","authors":"Fabian Fagerholm, Arto Hellas, Matti Luukkainen, K. Kyllonen, S. Yaman, Hanna Mäenpää","doi":"10.1109/SEAA.2017.67","DOIUrl":"https://doi.org/10.1109/SEAA.2017.67","url":null,"abstract":"Today's students are prospective entrepreneurs and employees in modern, start-up like environments within established companies. In these settings, software development projects face extreme requirements in terms of innovation and attractiveness of the end-product. They also suffer severe consequences of failure such as termination of the development effort and bankruptcy. As the abilities needed in start-ups are not among those traditionally taught in universities, new knowledge and skills are required to prepare students for the volatile environment that new market entrants face. This paper reports experiences gained during seven years of teaching start-up knowledge and skills in a higher-education institution. We offer a collection of patterns that help educational institutions to design, implement and operate physical environments, curricula and teaching materials, and to plan interventions that may be required for project-based start-up education.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129909051","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}
引用次数: 6
Assessment of Agility in Software Organizations with a Web-Based Agility Assessment Tool 用基于web的敏捷性评估工具评估软件组织中的敏捷性
O. E. Adali, Özden Özcan Top, Onur Demirörs
Agile software development approaches have emerged to overcome the inherent challenges of the traditional software development methodologies. With that in mind, they offer a set of simple yet effective practices based on the values and supporting principles of the Agile Manifesto. Today, more and more organizations are practicing Agile but transitioning to Agile is not as straightforward as it might seem. The benefits afforded by the agile values, principles and practices are not fully obtained and adapters struggle to become more mature; i.e. increase their Agility. For, adapters to address this problem, agility assessments have been designed to be aware of the situation of their transition and make sure that they are heading in the right direction. However, these assessments still require significant amount of time and effort to apply. To overcome this problem, we have developed a web-based agility assessment tool which is a part of an integrated agility assessment approach. The approach consists of a structured and comprehensive agility assessment model (AgilityMod), an exemplar agility assessment process and a web based agility assessment tool (AssessAgility). This research focuses on the final component of the approach: AssessAgility tool and presents a multiple case study that was conducted to evaluate tool's capabilities in terms of providing guidance, automation and reducing the effort spent on the assessments.
敏捷软件开发方法的出现是为了克服传统软件开发方法的固有挑战。考虑到这一点,他们提供了一套基于敏捷宣言的价值和支持原则的简单而有效的实践。今天,越来越多的组织正在实践敏捷,但是向敏捷过渡并不像看起来那么简单。敏捷价值、原则和实践所带来的好处还没有完全得到,适应者还在努力变得更加成熟;例如,增加他们的敏捷性。对于解决这个问题的适配器,敏捷性评估已经被设计为了解其转换的情况,并确保它们朝着正确的方向前进。然而,这些评估仍然需要大量的时间和精力来应用。为了克服这个问题,我们开发了一个基于web的敏捷性评估工具,它是集成敏捷性评估方法的一部分。该方法由一个结构化和全面的敏捷性评估模型(AgilityMod)、一个典型的敏捷性评估过程和一个基于web的敏捷性评估工具(AssessAgility)组成。本研究集中于该方法的最后一个组件:AssessAgility工具,并提出了一个多案例研究,该研究是根据提供指导、自动化和减少在评估上花费的工作来评估工具的能力的。
{"title":"Assessment of Agility in Software Organizations with a Web-Based Agility Assessment Tool","authors":"O. E. Adali, Özden Özcan Top, Onur Demirörs","doi":"10.1109/SEAA.2017.61","DOIUrl":"https://doi.org/10.1109/SEAA.2017.61","url":null,"abstract":"Agile software development approaches have emerged to overcome the inherent challenges of the traditional software development methodologies. With that in mind, they offer a set of simple yet effective practices based on the values and supporting principles of the Agile Manifesto. Today, more and more organizations are practicing Agile but transitioning to Agile is not as straightforward as it might seem. The benefits afforded by the agile values, principles and practices are not fully obtained and adapters struggle to become more mature; i.e. increase their Agility. For, adapters to address this problem, agility assessments have been designed to be aware of the situation of their transition and make sure that they are heading in the right direction. However, these assessments still require significant amount of time and effort to apply. To overcome this problem, we have developed a web-based agility assessment tool which is a part of an integrated agility assessment approach. The approach consists of a structured and comprehensive agility assessment model (AgilityMod), an exemplar agility assessment process and a web based agility assessment tool (AssessAgility). This research focuses on the final component of the approach: AssessAgility tool and presents a multiple case study that was conducted to evaluate tool's capabilities in terms of providing guidance, automation and reducing the effort spent on the assessments.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"57 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125758011","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}
引用次数: 9
Continuous practices and devops: beyond the buzz, what does it all mean? 持续的实践和开发:在喧嚣之外,这一切意味着什么?
Daniel Ståhl, Torvald Mårtensson, J. Bosch
DevOps and continuous practices are attracting steadily growing attention by both practitioners and researchers in the software engineering community. The terms are often used inconsistently, interchangeably and with unclear meaning, however. Taking the position that this ambiguity and miscommunication renders the community great harm, in that it impedes our ability to critically appraise these practices, their effects and interplay between them, we analyze how published literature on both continuous practices and DevOps treat the terms. Based on this analysis, along with statements by often cited sources in the community as well as personal experience from researching and practicing these concepts, we propose guidelines to help authors reduce ambiguity in their publications. Additionally, definitions designed to reflect mainstream interpretation while disentangling the terms from one another are presented.
DevOps和持续实践正在吸引软件工程社区的实践者和研究人员越来越多的关注。然而,这些术语经常使用不一致,互换,含义不明确。我们的立场是,这种歧义和误解给社区带来了巨大的伤害,因为它阻碍了我们批判性地评估这些实践、它们的影响和它们之间的相互作用的能力,我们分析了关于持续实践和DevOps的出版文献是如何对待这些术语的。基于这一分析,以及社区中经常被引用的来源的陈述,以及研究和实践这些概念的个人经验,我们提出了一些指导方针,以帮助作者减少其出版物中的歧义。此外,还介绍了旨在反映主流解释的定义,同时将术语彼此分开。
{"title":"Continuous practices and devops: beyond the buzz, what does it all mean?","authors":"Daniel Ståhl, Torvald Mårtensson, J. Bosch","doi":"10.1109/SEAA.2017.8114695","DOIUrl":"https://doi.org/10.1109/SEAA.2017.8114695","url":null,"abstract":"DevOps and continuous practices are attracting steadily growing attention by both practitioners and researchers in the software engineering community. The terms are often used inconsistently, interchangeably and with unclear meaning, however. Taking the position that this ambiguity and miscommunication renders the community great harm, in that it impedes our ability to critically appraise these practices, their effects and interplay between them, we analyze how published literature on both continuous practices and DevOps treat the terms. Based on this analysis, along with statements by often cited sources in the community as well as personal experience from researching and practicing these concepts, we propose guidelines to help authors reduce ambiguity in their publications. Additionally, definitions designed to reflect mainstream interpretation while disentangling the terms from one another are presented.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124464457","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}
引用次数: 53
Startup Trust Model: The Role of Trust in Successful Software Startup 创业信任模型:信任在成功软件创业中的作用
Nana Assyne, J. Adjei
the increasing desire by many for a better world and easier living conditions have contributed to various efforts to the frontiers of innovation in information technology (IT). The ensuing phenomena is the launch of many software startups to give meaning to such innovations in IT. Interestingly, the rate at which many of such startups fail is usually higher than expected. A collaborative effort by actors in IT innovation ecosystem has been posited to lead to a successful startup. However, there is the need for a trust model to ensure that the collaborative effort become meaningful. Through the lens of Morgan and Hunt's commitment trust theory, this study examines the antecedents of trust among actors in successful software startup. The paper proposes "Startup Trust Model" and contributes to understanding of formation and maintenance of trust in software startups and makes a case for the study of trust in software startup
许多人对更美好的世界和更便利的生活条件的渴望日益增长,促使人们在信息技术创新的前沿做出了各种努力。随之而来的现象是,许多软件初创公司的推出,为IT领域的这种创新赋予了意义。有趣的是,许多这类创业公司的失败率通常高于预期。IT创新生态系统中参与者的协作努力被认为可以导致成功的创业。然而,需要一个信任模型来确保协作工作变得有意义。通过Morgan和Hunt的承诺信任理论,本研究考察了成功的软件创业公司中行为者之间信任的前因。本文提出了“创业信任模型”,有助于理解软件创业信任的形成和维持,并为软件创业信任的研究提供了案例
{"title":"Startup Trust Model: The Role of Trust in Successful Software Startup","authors":"Nana Assyne, J. Adjei","doi":"10.1109/SEAA.2017.46","DOIUrl":"https://doi.org/10.1109/SEAA.2017.46","url":null,"abstract":"the increasing desire by many for a better world and easier living conditions have contributed to various efforts to the frontiers of innovation in information technology (IT). The ensuing phenomena is the launch of many software startups to give meaning to such innovations in IT. Interestingly, the rate at which many of such startups fail is usually higher than expected. A collaborative effort by actors in IT innovation ecosystem has been posited to lead to a successful startup. However, there is the need for a trust model to ensure that the collaborative effort become meaningful. Through the lens of Morgan and Hunt's commitment trust theory, this study examines the antecedents of trust among actors in successful software startup. The paper proposes \"Startup Trust Model\" and contributes to understanding of formation and maintenance of trust in software startups and makes a case for the study of trust in software startup","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"114 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117212168","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}
引用次数: 2
Data Fusion for Software Remodularization 面向软件重构的数据融合
Rim Mahouachi, K. Ghédira
Software refactoring aims at optimizing software modularization by improving internal software structure without altering its external behavior. There exists various approaches for suggesting refactoring opportunities, based on different sources of information, e.g., structural, semantic, and historical. In this paper, we propose a data fusion model to combine different sources of information in order to identify refactoring opportunities and we instantiate it to support Move Class refactoring. We report the results of our validation conducted on four software systems and we show that our proposal improves the modularization quality by 29% and that our tool is able to provide meaningful recommendations for move class refactoring. Specifically, more than 70% of the recommendations were considered meaningful from the developers' point of view.
软件重构的目的是在不改变软件外部行为的情况下,通过改进软件内部结构来优化软件模块化。根据不同的信息源(如结构的、语义的和历史的),存在各种建议重构机会的方法。在本文中,我们提出了一个数据融合模型来结合不同的信息源,以识别重构机会,并实例化它来支持Move Class重构。我们报告了在四个软件系统上进行的验证结果,表明我们的建议将模块化质量提高了29%,并且我们的工具能够为move类重构提供有意义的建议。具体来说,从开发者的角度来看,超过70%的建议被认为是有意义的。
{"title":"Data Fusion for Software Remodularization","authors":"Rim Mahouachi, K. Ghédira","doi":"10.1109/SEAA.2017.18","DOIUrl":"https://doi.org/10.1109/SEAA.2017.18","url":null,"abstract":"Software refactoring aims at optimizing software modularization by improving internal software structure without altering its external behavior. There exists various approaches for suggesting refactoring opportunities, based on different sources of information, e.g., structural, semantic, and historical. In this paper, we propose a data fusion model to combine different sources of information in order to identify refactoring opportunities and we instantiate it to support Move Class refactoring. We report the results of our validation conducted on four software systems and we show that our proposal improves the modularization quality by 29% and that our tool is able to provide meaningful recommendations for move class refactoring. Specifically, more than 70% of the recommendations were considered meaningful from the developers' point of view.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"198 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127316209","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}
引用次数: 0
How the Use of Design Patterns Affects the Quality of Software Systems: A Preliminary Investigation 设计模式的使用如何影响软件系统的质量:初步调查
C. Gravino, M. Risi
In this paper we analyze at the class level the quality of the software portions including classes participating in design patterns instances (DP classes) with respect to the remaining software portions (NoDP classes). The performed study is based on 10 software systems from which information about design pattern instances and CK (Chidamber and Kemerer) metrics were obtained by exploiting repositories of pattern instances and the tool Understand, respectively. The analysis revealed that the use of design patterns impacts on the quality of the software.
在本文中,我们在类级别上分析了软件部分的质量,包括参与设计模式实例的类(DP类),以及其他软件部分(NoDP类)。所执行的研究基于10个软件系统,其中设计模式实例和CK (Chidamber和Kemerer)度量的信息分别通过利用模式实例存储库和工具Understand获得。分析揭示了设计模式的使用对软件质量的影响。
{"title":"How the Use of Design Patterns Affects the Quality of Software Systems: A Preliminary Investigation","authors":"C. Gravino, M. Risi","doi":"10.1109/SEAA.2017.32","DOIUrl":"https://doi.org/10.1109/SEAA.2017.32","url":null,"abstract":"In this paper we analyze at the class level the quality of the software portions including classes participating in design patterns instances (DP classes) with respect to the remaining software portions (NoDP classes). The performed study is based on 10 software systems from which information about design pattern instances and CK (Chidamber and Kemerer) metrics were obtained by exploiting repositories of pattern instances and the tool Understand, respectively. The analysis revealed that the use of design patterns impacts on the quality of the software.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122512410","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}
引用次数: 6
Runtime Management and Quantitative Evaluation of Changing System Goals 运行时管理和变化系统目标的定量评估
V. Klös, Thomas Göthel, Adrian Lohr, S. Glesner
A key challenge in cyber-physical systems is their highly dynamic nature including changing system goals. Therefore, these systems have to autonomously manage their system goals and continuously evaluate their achievement at run-time. However, with the increasing complexity of system goals including, e.g., priorities, dependencies, and conflicts among goals, abinary or qualitative judgement of achievement of goals is not sufficient any more. Instead, it is necessary to quantify the degree to which the goals are fulfilled in order to balance the cost-benefit ratio at run-time. In this paper, we present a hierarchical and modular goal model that allows for capturing complex relations between subgoals, e.g., dependencies and conflicts. We provide an algorithm that efficiently evaluates gradual achievement of goalsat run-time. Due to the modular structure of our model and our evaluation, goals can easily be added, removed, and changed at run-time. With our approach, we a) ease the design of goal-aware autonomous systems by providing an explicit structure that emphasises relations between subgoals, b) provide an automatic quantification of the satisfaction of complex system goals that can be used to, e.g., evaluate autonomous decisions at runtime, andc) enable runtime management of changing system goals.
网络物理系统的一个关键挑战是其高度动态性,包括不断变化的系统目标。因此,这些系统必须自主地管理它们的系统目标,并在运行时持续地评估它们的成就。然而,随着系统目标的复杂性的增加,包括,例如,优先级,依赖关系,以及目标之间的冲突,对目标实现的二元或定性判断不再是足够的。相反,有必要量化目标实现的程度,以便在运行时平衡成本效益比。在本文中,我们提出了一个分层和模块化的目标模型,该模型允许捕获子目标之间的复杂关系,例如,依赖关系和冲突。我们提供了一个算法,有效地评估逐步实现的目标在运行时。由于我们的模型和评估的模块化结构,可以很容易地在运行时添加、删除和更改目标。使用我们的方法,我们a)通过提供强调子目标之间关系的明确结构来简化目标感知自治系统的设计,b)提供可用于评估运行时自治决策的复杂系统目标满意度的自动量化,以及c)启用更改系统目标的运行时管理。
{"title":"Runtime Management and Quantitative Evaluation of Changing System Goals","authors":"V. Klös, Thomas Göthel, Adrian Lohr, S. Glesner","doi":"10.1109/SEAA.2017.66","DOIUrl":"https://doi.org/10.1109/SEAA.2017.66","url":null,"abstract":"A key challenge in cyber-physical systems is their highly dynamic nature including changing system goals. Therefore, these systems have to autonomously manage their system goals and continuously evaluate their achievement at run-time. However, with the increasing complexity of system goals including, e.g., priorities, dependencies, and conflicts among goals, abinary or qualitative judgement of achievement of goals is not sufficient any more. Instead, it is necessary to quantify the degree to which the goals are fulfilled in order to balance the cost-benefit ratio at run-time. In this paper, we present a hierarchical and modular goal model that allows for capturing complex relations between subgoals, e.g., dependencies and conflicts. We provide an algorithm that efficiently evaluates gradual achievement of goalsat run-time. Due to the modular structure of our model and our evaluation, goals can easily be added, removed, and changed at run-time. With our approach, we a) ease the design of goal-aware autonomous systems by providing an explicit structure that emphasises relations between subgoals, b) provide an automatic quantification of the satisfaction of complex system goals that can be used to, e.g., evaluate autonomous decisions at runtime, andc) enable runtime management of changing system goals.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"77 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122906397","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}
引用次数: 12
Requirements Elicitation Techniques Applied in Software Startups 需求引出技术在软件创业中的应用
Usman Rafiq, Sohaib Shahid Bajwa, Xiaofeng Wang, M. I. Lunesu
Requirements elicitation is the first crucial stage of a requirements engineering process, which intends to uncover, acquire and elaborate requirements for software systems. When software startups are concerned, requirements elicitation is particularly challenging due to the high uncertainty that a startup is confronted with. Few studies have investigated how software startups conduct requirements elicitation and what techniques are used in such a context. This study intends to address this knowledge gap. Three software startups from different part of the globe were studied. The findings reveal that the requirements elicitation process in startups is primordial and mainly informal, and it is an ongoing process alongside with product evolution. Software startups do employ established requirements elicitation techniques including interviews, prototyping and brainstorming. They also utilize other less common ones such as competitor analysis, collaborative team discussion and use of model users. This study highlights the market-driven nature of requirements that software startups have to deal with, and offers the first insights on the requirements elicitation techniques that could be relevant and applicable in the context of software startups.
需求提取是需求工程过程的第一个关键阶段,它旨在揭示、获取和详细说明软件系统的需求。当涉及到软件初创公司时,由于初创公司所面临的高度不确定性,需求引出尤其具有挑战性。很少有研究调查软件初创公司如何进行需求引出,以及在这种情况下使用什么技术。本研究旨在解决这一知识差距。我们研究了来自全球不同地区的三家软件创业公司。研究结果表明,创业公司的需求激发过程是原始的,主要是非正式的,它是一个与产品进化一起持续的过程。软件初创公司确实采用了既定的需求激发技术,包括面试、原型设计和头脑风暴。他们还利用其他不太常见的方法,如竞争对手分析、协作团队讨论和模型用户的使用。这项研究强调了软件初创公司必须处理的需求的市场驱动性质,并提供了关于需求引出技术的第一个见解,这些技术可能与软件初创公司的环境相关并适用。
{"title":"Requirements Elicitation Techniques Applied in Software Startups","authors":"Usman Rafiq, Sohaib Shahid Bajwa, Xiaofeng Wang, M. I. Lunesu","doi":"10.1109/SEAA.2017.73","DOIUrl":"https://doi.org/10.1109/SEAA.2017.73","url":null,"abstract":"Requirements elicitation is the first crucial stage of a requirements engineering process, which intends to uncover, acquire and elaborate requirements for software systems. When software startups are concerned, requirements elicitation is particularly challenging due to the high uncertainty that a startup is confronted with. Few studies have investigated how software startups conduct requirements elicitation and what techniques are used in such a context. This study intends to address this knowledge gap. Three software startups from different part of the globe were studied. The findings reveal that the requirements elicitation process in startups is primordial and mainly informal, and it is an ongoing process alongside with product evolution. Software startups do employ established requirements elicitation techniques including interviews, prototyping and brainstorming. They also utilize other less common ones such as competitor analysis, collaborative team discussion and use of model users. This study highlights the market-driven nature of requirements that software startups have to deal with, and offers the first insights on the requirements elicitation techniques that could be relevant and applicable in the context of software startups.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127869095","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}
引用次数: 25
To Agile or not to Agile Students (With a Twist): Experience Report from a Student Project Course 给敏捷学生还是不给敏捷学生(带点扭曲):一个学生项目课程的经验报告
Marta Olszewska, S. Ostroumov, M. Olszewski
Agile software development and formal methods are seemingly on the opposite ends of the rigorousness scale. If carefully used, the can efficiently function in synergy to provide an evolutionary, iterative and tailorable process for a correct-by-construction system. In this work, we present the use of agile and formal methods in the academic context at the project course. We describe the development of the meeting scheduler – a web application, which utilised the Event-B formal method and the Vaadin framework within the Scrum development process. Our contribution includes remarks and advice for student projects regarding (i) the use of Scrum and (ii) the application of formal methods in "traditional" software development. We believe that results can be to some extent transferred to an industrial setting, where learning new technologies is involved within agile development processes.
敏捷软件开发和形式化方法似乎处于严格程度的两端。如果仔细使用,可以有效地协同作用,为构建正确的系统提供一个进化的、迭代的和可定制的过程。在这项工作中,我们在项目课程的学术背景下展示了敏捷和形式化方法的使用。我们描述了会议调度程序的开发——一个web应用程序,它使用了Scrum开发过程中的Event-B形式化方法和Vaadin框架。我们的贡献包括对学生项目的评论和建议,内容涉及(i) Scrum的使用和(ii)“传统”软件开发中形式化方法的应用。我们相信,结果可以在某种程度上转移到工业环境中,在敏捷开发过程中涉及到学习新技术。
{"title":"To Agile or not to Agile Students (With a Twist): Experience Report from a Student Project Course","authors":"Marta Olszewska, S. Ostroumov, M. Olszewski","doi":"10.1109/SEAA.2017.54","DOIUrl":"https://doi.org/10.1109/SEAA.2017.54","url":null,"abstract":"Agile software development and formal methods are seemingly on the opposite ends of the rigorousness scale. If carefully used, the can efficiently function in synergy to provide an evolutionary, iterative and tailorable process for a correct-by-construction system. In this work, we present the use of agile and formal methods in the academic context at the project course. We describe the development of the meeting scheduler – a web application, which utilised the Event-B formal method and the Vaadin framework within the Scrum development process. Our contribution includes remarks and advice for student projects regarding (i) the use of Scrum and (ii) the application of formal methods in \"traditional\" software development. We believe that results can be to some extent transferred to an industrial setting, where learning new technologies is involved within agile development processes.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124364323","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}
引用次数: 5
Developing CPU-GPU Embedded Systems Using Platform-Agnostic Components 使用平台无关组件开发CPU-GPU嵌入式系统
G. Campeanu, Jan Carlson, Séverine Sentilles
Nowadays, there are many embedded systems with different architectures that have incorporated GPUs. However, it is difficult to develop CPU-GPU embedded systems using component-based development (CBD), since existing CBD approaches have no support for GPU development. In this context, when targeting a particular CPU-GPU platform, the component developer is forced to construct hardware-specific components, which are problematic to (re-)use in different contexts. Moreover, hard-coding specific GPU-usage characteristics (e.g., the number of utilized GPU threads) inside the component is not possible without making detailed assumptions about the system in which the component is used, which conflicts with separation-of-concerns CBD principle.The paper presents a solution to allow component-based development of platform-agnostic CPU-GPU embedded systems through: i) high-level API, ii) adapters, and iii) code template. The API abstracts the specifics of the different platforms, while the adapters externalize hardware-specific activities outside components. We also raise the decision regarding the GPU-usage specifications, from the component to the system level. Furthermore, to minimize the development effort, we provide a code template that contains ready-made code fragments required for GPU development. As a case study, we examine the feasibility of our solution applied on a component-based vision system of an underwater robot.
如今,有许多具有不同架构的嵌入式系统都集成了gpu。然而,使用基于组件的开发(CBD)来开发CPU-GPU嵌入式系统是困难的,因为现有的CBD方法不支持GPU的开发。在这种情况下,当针对特定的CPU-GPU平台时,组件开发人员被迫构建特定于硬件的组件,这些组件在不同的上下文中(重复)使用是有问题的。此外,在组件内部硬编码特定的GPU使用特征(例如,使用GPU线程的数量)是不可能的,如果没有对组件使用的系统进行详细的假设,这与关注点分离CBD原则相冲突。本文提出了一个解决方案,允许基于组件的开发与平台无关的CPU-GPU嵌入式系统通过:i)高级API, ii)适配器,和iii)代码模板。API抽象不同平台的细节,而适配器将特定于硬件的活动外部化到组件外部。我们还提出了有关gpu使用规范的决策,从组件到系统级别。此外,为了最大限度地减少开发工作量,我们提供了一个代码模板,其中包含GPU开发所需的现成代码片段。作为案例研究,我们验证了该方案应用于水下机器人基于组件的视觉系统的可行性。
{"title":"Developing CPU-GPU Embedded Systems Using Platform-Agnostic Components","authors":"G. Campeanu, Jan Carlson, Séverine Sentilles","doi":"10.1109/SEAA.2017.20","DOIUrl":"https://doi.org/10.1109/SEAA.2017.20","url":null,"abstract":"Nowadays, there are many embedded systems with different architectures that have incorporated GPUs. However, it is difficult to develop CPU-GPU embedded systems using component-based development (CBD), since existing CBD approaches have no support for GPU development. In this context, when targeting a particular CPU-GPU platform, the component developer is forced to construct hardware-specific components, which are problematic to (re-)use in different contexts. Moreover, hard-coding specific GPU-usage characteristics (e.g., the number of utilized GPU threads) inside the component is not possible without making detailed assumptions about the system in which the component is used, which conflicts with separation-of-concerns CBD principle.The paper presents a solution to allow component-based development of platform-agnostic CPU-GPU embedded systems through: i) high-level API, ii) adapters, and iii) code template. The API abstracts the specifics of the different platforms, while the adapters externalize hardware-specific activities outside components. We also raise the decision regarding the GPU-usage specifications, from the component to the system level. Furthermore, to minimize the development effort, we provide a code template that contains ready-made code fragments required for GPU development. As a case study, we examine the feasibility of our solution applied on a component-based vision system of an underwater robot.","PeriodicalId":151513,"journal":{"name":"2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)","volume":"107 3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2017-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130478751","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}
引用次数: 5
期刊
2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA)
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1