我没有编写需求规范的经验。
我正在.Net中编写一个新的内部Web应用程序,我已经获得了一份包含这个新软件所有要求的文档。
目前正在使用(内部编写的)时间跟踪系统,但我被要求在.Net中重新设计它。
我是公司中唯一一位拥有软件开发经验的人,因为这是内部软件,所以他们不希望我为此编写非常详细的文档。
我已经为数据库模式设计了ERD图,我还将需求分成了excel表中的不同部分,并设置优先级(L,M,H)和阶段(1,2,3)进行交付。
我的直线经理要我定义这个项目的时间表有点困难,因为我每周只会在这个项目上工作3天,并且不知道完成第1阶段需要多长时间我正在开展的其他项目很少。
我是否真的需要一份需求规范文档,因为我已经在单词文档中给出了一个(简单来说)或者我应该坚持使用我设计的那个(分为不同的部分)。如果我确实需要一个,那么我可以效仿任何一个例子吗?
我是否还需要功能规范文档?它与要求规格不同吗?
您通常如何设置项目的时间表?我刚刚定义了从数据库开发到软件开发的不同任务,包括并设置了它们旁边的大致天数。
答案 0 :(得分:3)
软件需求规范文档(SRS)主要充当软件供应商和客户之间关于所需功能的协议,同时,它有助于将需求分解为可估计的任务并且具有良好的理解系统要求。它不一定是一个长文件,它取决于应用程序的大小。
对于您已经创建的文档,它可以包含在文档的计划/预算部分中(具有优先级和粗略估计的要求在此处)&非功能性要求(ERD在此处),因此您可以同时使用它们。
功能要求是文档中的一个部分,因此,如果您决定创建SRS文档,则需要它,在某些应用程序中,获取它非常重要。
关于定义时间线 - 如果是我,我会:
1-定义每个要求中的未知%(是否需要研究?,我是否需要首先尝试原型?..等),对于这种类型,我会向客户明确说明它需要研究和将给出一个粗略的估计[有时客户改变优先级或取消整个功能,如果未知因素90%的例子)
2-将每个需求(已知部分)分解为小任务,前提是每个任务估计不超过1天(例如:创建表用户,创建orm方法getuser..etc)。
3-将测试添加为单独的任务(运行超过测试场景)&相应地修改代码。
4-如果需要任何文件,那么即使它需要30分钟,也应该作为单独的任务添加。
5-定义里程碑,如果可能,与客户进行功能审查会话非常有用(例如:里程碑1:演示功能1,2,3)并将反馈添加到任务日志中,优先考虑剩余任务。 (如果您尝试在增量循环中开发功能,则可以避免大量的重复工作)
SRS骨架的几个链接
希望有所帮助