java – 代码中需求和代码之间的连接
我正在寻找简单的方法来连接有关需求/发布和源代码的信息.
情况是开发人员应该能够轻松地找到在发布或CR时创建的任何工件. 我的想法是引入一些新的注释来标记任何新类(我不确定它是否适用于任何新方法),例如: @ArtifactInfo(release="1.2" cr="cr123") 你还有其他建议吗?也许你已经使用过类似的东西? 照顾自己, 解决方法
IMO代码是这种信息的错误位置.
看看下面的虚代码. class Authenticator { login(String username,String password){ User user = retrieveUserFromDatabase(username); throwIfWrongpassword(user,password); verifyUserAge(user) } void throwIfWrongpassword(User user,String password){ //throws AuthenticationException if password is wrong } void verifyUserAge(User user){ //verify that user is above 18 or account is authorized by a parent } void biometricLogin(String username,BiometricImage bioimg){ User user = retrieveUserFromDatabase(username); verifyBiometricImage(user,password); verifyUserAge(user); } } 这是一些要求的结果: >用户必须进行身份验证才能访问系统 所有这些要求都是在不同版本的软件上以不同的时间添加的. 正确的方法是在使用源代码存储库和错误跟踪器时遵循一些最佳实践: > 1)每个要求对应于错误跟踪器上的一个或多个问题 如果您需要知道在哪个版本中实现了哪些要求,请询问您的错误跟踪器. 如果您需要知道为给定需求生成的所有代码,请询问您的源代码存储库(按日志消息过滤提交) 如果您需要知道给定代码行的要求,请询问您的源代码库. GIT和SVN有一个“责备”命令,它会告诉你,对于给定的文件,每行代码,谁提交它,何时以及提交消息(如果团队中的每个人都是好的话,它会有问题编号)男孩) – 所以这将作为假设的“代码行”级别注释. 使用“提交挂钩”可以帮助您在组织中实施规则2). Maven与JIRA和其他bug跟踪器有一定程度的集成,也许它可以帮助自动化#3.但我并没有像那样使用它.但如果它没有做你需要的,你总是可以ask for more (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |