个人软件过程(PSP) 旨在让软件工程师了解和改进他们的性能。PSP 使用脚本来指导从业者完成整个过程。每个脚本都定义了目的、进入标准、要执行的步骤和退出标准。PSP0 被设计成一个允许启动个人进程的框架。
PSP0 中使用的脚本之一是开发脚本,用于指导开发。一旦有需求陈述、项目计划摘要、时间和缺陷记录日志,以及建立缺陷类型标准,就会使用此脚本。该脚本的活动是设计、编码、编译和测试。当您拥有经过彻底测试的应用程序以及完整的时间和缺陷日志时,脚本将退出。
在代码阶段,您审查需求并进行设计,在日志中记录需求缺陷,并执行时间跟踪。在编译阶段,你编译,修复任何编译时错误,并重复直到程序编译,并记录任何缺陷和时间。最后,在测试阶段,您进行测试,直到所有测试运行没有错误并且所有缺陷都得到修复,同时记录时间和缺陷。
我关心的是在使用现代编程语言(尤其是 Python、Perl 和 Ruby 等解释型语言)和 IDE 时如何管理代码、编译和测试阶段。
我的问题:
- 在解释语言中,没有编译时间。但是,执行过程中可能会出现问题。在单元(和其他)测试之外执行脚本是否被视为“编译”或“测试”时间?在跟踪缺陷时,执行错误是否应该被视为“编译”或“测试”错误?
- 如果测试用例遇到语法错误,这是否被认为是代码缺陷、编译缺陷或测试缺陷?测试确实发现了错误,不过是代码问题。
- 如果 IDE 在实际编译之前识别出会阻止编译的错误,是否应该识别出来?如果是这样,是否应该将其识别为编译错误或代码错误并进行跟踪?
看起来 PSP,至少是 PSP0 基线过程,被设计用于编译语言和使用文本编辑器(而不是 IDE)编写的小型应用程序。除了我的问题,我会感谢任何正在使用或曾经使用过 PSP 的人的建议和评论。