软件重构能力评估与培训的框架

Thorsten Haendler, G. Neumann
{"title":"软件重构能力评估与培训的框架","authors":"Thorsten Haendler, G. Neumann","doi":"10.5220/0008350803070316","DOIUrl":null,"url":null,"abstract":"Long-living software systems are becoming increasingly complex and difficult to maintain. Software refactoring is considered important to achieve maintainability and extensibility of a software system over time. In practice, it is still often neglected, partly because of costs, the perceived risks of collateral damage and difficulties of individuals working on certain components of complex software. It is therefore important for software projects that software developers have the appropriate skills and competences to efficiently perform software refactoring. However, so far there is no systematization of competences in software refactoring to guide in the assessment or training of competences, e.g., for planning or evaluating training activities and paths. In this paper, we address this need by presenting a competence framework for software refactoring by applying Bloom’s revised taxonomy for educational objectives. In particular, we specify competence levels by combining knowledge and cognitive-process dimensions. Via a case study with two existing training environments (i.e. a tutoring system and a serious game), we demonstrate by example that the framework can support (1) in analyzing the competence levels addressed by the training environments and (2) in reflecting training paths for software refactoring. Finally, we discuss the limitations and the further potential of the framework.","PeriodicalId":133533,"journal":{"name":"International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management","volume":"60 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-09-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":"{\"title\":\"A Framework for the Assessment and Training of Software Refactoring Competences\",\"authors\":\"Thorsten Haendler, G. Neumann\",\"doi\":\"10.5220/0008350803070316\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Long-living software systems are becoming increasingly complex and difficult to maintain. Software refactoring is considered important to achieve maintainability and extensibility of a software system over time. In practice, it is still often neglected, partly because of costs, the perceived risks of collateral damage and difficulties of individuals working on certain components of complex software. It is therefore important for software projects that software developers have the appropriate skills and competences to efficiently perform software refactoring. However, so far there is no systematization of competences in software refactoring to guide in the assessment or training of competences, e.g., for planning or evaluating training activities and paths. In this paper, we address this need by presenting a competence framework for software refactoring by applying Bloom’s revised taxonomy for educational objectives. In particular, we specify competence levels by combining knowledge and cognitive-process dimensions. Via a case study with two existing training environments (i.e. a tutoring system and a serious game), we demonstrate by example that the framework can support (1) in analyzing the competence levels addressed by the training environments and (2) in reflecting training paths for software refactoring. Finally, we discuss the limitations and the further potential of the framework.\",\"PeriodicalId\":133533,\"journal\":{\"name\":\"International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management\",\"volume\":\"60 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-09-17\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"6\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.5220/0008350803070316\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Joint Conference on Knowledge Discovery, Knowledge Engineering and Knowledge Management","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5220/0008350803070316","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6

摘要

长寿命的软件系统正变得越来越复杂和难以维护。随着时间的推移,软件重构对于实现软件系统的可维护性和可扩展性非常重要。在实践中,它仍然经常被忽视,部分原因是成本、附带损害的感知风险以及个人在复杂软件的某些组件上工作的困难。因此,对于软件项目来说,软件开发人员拥有适当的技能和能力来有效地执行软件重构是很重要的。然而,到目前为止,还没有系统化的软件重构能力来指导能力的评估或培训,例如,计划或评估培训活动和路径。在本文中,我们通过为软件重构提供一个能力框架来解决这一需求,该框架通过应用Bloom的修订分类法来实现教育目标。特别是,我们通过结合知识和认知过程维度来指定能力水平。通过对两种现有培训环境(即辅导系统和严肃游戏)的案例研究,我们通过示例证明了该框架可以支持(1)分析培训环境所处理的能力水平,(2)反映软件重构的培训路径。最后,我们讨论了该框架的局限性和进一步的潜力。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
A Framework for the Assessment and Training of Software Refactoring Competences
Long-living software systems are becoming increasingly complex and difficult to maintain. Software refactoring is considered important to achieve maintainability and extensibility of a software system over time. In practice, it is still often neglected, partly because of costs, the perceived risks of collateral damage and difficulties of individuals working on certain components of complex software. It is therefore important for software projects that software developers have the appropriate skills and competences to efficiently perform software refactoring. However, so far there is no systematization of competences in software refactoring to guide in the assessment or training of competences, e.g., for planning or evaluating training activities and paths. In this paper, we address this need by presenting a competence framework for software refactoring by applying Bloom’s revised taxonomy for educational objectives. In particular, we specify competence levels by combining knowledge and cognitive-process dimensions. Via a case study with two existing training environments (i.e. a tutoring system and a serious game), we demonstrate by example that the framework can support (1) in analyzing the competence levels addressed by the training environments and (2) in reflecting training paths for software refactoring. Finally, we discuss the limitations and the further potential of the framework.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
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学术官方微信