requirements - 你是一个单人开发团队,有人问你需要什么资源。你有什么要求?

标签 requirements

作为一名年轻、缺乏经验的开发人员,为客户从事单人开发工作,当被问及是否需要任何东西时,我认为我只需要笔记本电脑和开发环境。稍后进行一些测试,我意识到我需要在我无法访问的操作系统上测试我的软件。

所以现在我知道要问这个了。

我还应该问什么其他问题?有什么我应该寻找的吗?

最佳答案

文档:

一个好的需求规范将使所有利益相关者对要开发的软件有相同的了解,并且可以帮助解决以后的契约(Contract)问题。如果需要,请查阅有关软件需求的引用资料(Karl Wiegers 的软件需求是一个很好的来源)。确保它是准确的并保持最新——如果客户认为软件不完整并拒绝付款,您将依赖它。

软件:

大致了解要完成的工作(或者如果您有完整的规范,那就更好了)和开发语言。在规范中列出的要求中,确定语言支持哪些要求,哪些不支持。决定是否需要购买第三方库来完成不受支持的需求(用户界面控件等)。您可能希望在契约(Contract)中包含此价格。除非您认为可以在其他项目中重复使用它们,否则您不想为这些支付账单而陷入困境。

还要考虑开发软件、数据库软件等。对于不同系统配置的测试,具有操作系统许可证的虚拟化软件会有所帮助。

人:

增加一名程序员会有所帮助,但增加一名程序员不会使产出翻倍,尤其是在他们缺乏经验且需要您的帮助时。随着团队的成长,拥有精心编写的需求和经过深思熟虑的设计以使每个人都在同一页面上变得越来越重要。除非工作足够大,否则我不会这样做,因为您将不得不花费部分时间来管理其他程序员。

专门编写文档(用户手册、帮助页面、一些技术规范)的人会很有用。如果需要大量文档,这可能值得考虑,因为它可以让你专注于你最擅长的事情。我从来没有和我一起工作过技术作家,但我真的很想试试这个,看看是否有返回。

关于requirements - 你是一个单人开发团队,有人问你需要什么资源。你有什么要求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3593377/

相关文章:

project-management - 如何向同事证明用例很重要?

jquery - jquery $.get 或 cordova-plugin-media 是否使用或合并加密技术?

vsto - .NET Outlook-AddIn (VSTO 2010) 的客户端要求是什么?

css - 需求变化时如何修改CSS?

concurrency - 如何将并发用户转换为每秒点击次数?

tfs - 我可以使用 TFS 查询的 TFS 报告创建分层需求文档吗

agile - 架构原则为 "non-functional"用户故事

c++ - C++ 引用中的函数描述与可能的实现

uml - 有 "Non-Functional Use Case"这样的东西吗?