Psp个人软件开发软件需求分析及用例分析
一、需求分析
1. 业务需求
1.1 应用背景
开发项目进度计划总是那么不明确,延期经常出现,甚至无法给出一个相对比较明确的延迟时间。这样给市场的推广会带来很大的影响,不确定因素使得应对十分困难。
1.2 业务机遇
PSP是个人软件开发过程,通过PSP的贯彻,可以提高软件开发人员的时间安排、时间估算的能力。
1.3 业务目标
业务目标的例子如下:
BO-1:在第一版应用之后1个月之内,个人的开发效率提高。
BO-2:在第一版应用之后3个月之内,整个开发团队的开发效率提高。
成功标准的例子如下所示:
SC-1:在第一版应用之后1个月内,个人的开发效率提高70%。
SC-2:在第一版应用之后3个月内,整个团队的开发效率提高50%。
1.4 业务风险
业务风险的示例如下:
RI-1:使用该软件的人太少,产能数据不够全面。
RI-2:有恶意破坏软件运行的行为,降低了数据的准确性。
2 项目前景
2.1 前景概述
对那些希望提高开发效率的人来说,PSP可以接受一切使用该软件的数据库。与当前的人工计算不同,使用PSP可以节约大量的时间,并能有效地估算出开发人员的工作效率,以便掌握整个项目的进度。
2.2主要特性
FE-1:连接数据库和操作系统。
FE-2:产能效率的计算。
FE-3:软件的界面功能(如:“用户反馈”,“意见箱”)
2.3 假设与依赖
AS-1:开发团队中有指定的控制和管理中心,并有计算机和打印机等相关设备。
AS-2:相关人员负责将数据录入到相关的数据库中。
AS-3:建议系统的维护时间不超过一周,尽量避开使用的高峰期。
DE-1:如果某个开发人员有自己的数据库系统,PSP软件必须能够与之连接。
3. 项目范围
3.1 第一版范围
第一个版本主要实现网站界面的创建,各个功能的初步实现。PSP与各个相关数据库的正常连接。设置权限,根据不同的操作员设置不同的权限。
3.2 后续版本范围
|
特性 |
版本1 |
版本2 |
|
FE-1 |
完全实现 |
|
|
FE-2 |
手动更新 |
自动更新 |
|
FE-3 |
仅实现“意见箱”功能 |
实现“用户反馈” |
4. 项目环境
4.1 操作环境
这个系统主要提供给四类用户使用,分别是高层管理人员,项目经理,技术顾问以及开发人员。
开发人员模式中,开发人员可以根据工作的基本信息,每次数据有变化就要相应得更新数据库。面向开发人员时,系统是普通的存储数据软件。 数据只在工作人员在输入工作的基本信息的时候生成,所以访问数据时候的最大响应时间应该会在0.1s以内;工作人员在这个程序中允许有服务中断的现象;因为这里的信息会牵扯到某些数据库文件的机密信息,所以需要提供访问安全控制和数据保护(随着版本升级功能逐步实现)!
技术顾问,项目经理以及高层管理人员模式中,该软件只提供给这些人员查询访问的功能。
4.2 涉众
这个系统中的主要涉众如下表:
|
涉众 |
特点 |
|
软件开发人员 |
希望通过这样一个系统能够提高工作的效率! |
|
技术顾问 |
查看开发团队中每个人员的产能效率,并给出工作的改进意见 |
|
项目经理 |
查看开发团队中每个人员的产能效率,对软件项目开发的时间做出调整 |
|
总经理 |
查看开发团队中每个人员的产能效率 |
4.3 项目属性
具体项目属性如下表:
|
属性 |
驱动因素 |
约束因素 |
可调整因素 |
|
特性 |
各个版本的功能必须完全可操作。 |
在最终版本中进行调整。 |
|
|
质量 |
用户满意度必须达到85%;必须通过全部的安全机制检查,系统能够在win7,winxp等操作系统下稳定工作。 |
在后续版本中完善功能提高用户满意度 |
|
|
成本 |
项目经理 |
必须控制开发费用在额定范围内 |
允许费用超过的最大额度不超过总经费的10% |
|
进度 |
项目经理 |
必须保证开发时间在规定时限范围内 |
开发时间最长不得超过规定时间2天 |
|
人员 |
团队规模包括一个项目经理,两名开发人员,和一名测试人员 |
人员数目按照规定严格控制 |
如果计划不够,可以适当增加人员务必保证在规定时间内完成项目。 |
二、用例分析








词汇表:
模型
参考资料:
需求工程—软件建模与分析
需求工程文档规范
项目前景与范围文档模板
UML统一建模语言
Psp个人软件开发软件需求分析及用例分析的更多相关文章
- Psp个人软件开发软件需求分析和用例分析
Psp个人软件开发软件需求分析和用例分析 一.需求分析 1.业务需求 1.1 应用背景 开发项目进度计划总是那么不明确,延期经常出现,甚至无法给出一个相对比较明确的延迟时间.这样给市场的推广会带来很大 ...
- PSP个人软件开发工具需求分析文档
第一部分:前景与范围 1.业务需求 1.1 背景 在目前的软件项目开发过程中,进度计划总是非常不准确,经常出现延期,而且大多数都无法给出一个相对比较准确的延迟时间.即使使用用例包.用例的方式组织需求, ...
- 专注于C#.Net WPF软件开发-软件反编译-软件破解-逆向-靖芯科技-包括安卓APK反编译
靖芯科技提供.Net软件开发,软件修改定制二次开发,软件破解,反编译,逆向等各项优质服务: 包括安卓APK软件反编译. 包括但不限于C#,WPF,Surface,Winform,Asp.net.JAV ...
- 软件-开发软件:Android Studio
ylbtech-软件-开发软件:Android Studio Android Studio 是谷歌推出的一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT, ...
- PSP个人软件开发工具
(您的阅读是我的荣幸,如有不满之处请留言指正!) 尚未完善.....工作中 为开发人员提供一个PSP工具,简化时间记录工作:同时提供数据使用的工具,帮助开发人提高估算能力. PSP个人软件开发工具 ...
- 面向对象 - 1.软件开发/2.异常处理/3.try...except的详细用法
1.软件开发 软件的开发其实一整套规范,我们所学的只是其中的一小部分,一个完整的开发过程,需要明确每个阶段的任务,在保证一个阶段正确的前提下再进行下一个阶段的工作,称之为软件工程 面向对象的软件工程包 ...
- PSP个人软件开发系统面向对象需求分析与设计文档
1.引言 1.1编写的目的 编写该文档的目的是,对产品进行定义,详尽说明该产品的软件需求,简述我们对 PSP个人软件开发系统的初步设想,及划分的各功能模块以及各模块的实体图和数据流图. 1.2预期的读 ...
- PSP辅助软件开发计划
PSP辅助软件开发计划 作者: 日期:2013年11月14号 1开发目的 鉴于软件开发过程中,程序员往往无法在规定时间内完成任务,而且无法给出拖延的时间从而造成项目进度计划不准确.开发此软件帮助程序员 ...
- Python基础之模块:7、项目开发流程和项目需求分析及软件开发目录
一.项目开发流程 1.项目需求分析 明确项目具体功能: 明确到底要写什么东西,实现什么功能,在这个阶段的具体要询问项目经理和客户的需求 参与人员: 产品经理.架构师.开发经理 技术人员主要职责: 引导 ...
随机推荐
- Arcgis Server 默认服务端口号修改方法
本人安装Arcgis Server 10.2之后发布了一个地图服务,该服务默认使用的端口号是6080,本人使用的是教育网,使用教育网均能正常使用该服务,但是使用电信或者移动网络均不能正常访问该网站. ...
- vs2013-tfs-疑问之版本控制器路径有双引号解决办法
问题描述: 最近项目:“****”展示交易平台 ,所以版本控制器路径为: 导致生成解决方案提示:路径有问题 解决办法: 1.直接在版本控制器重命名是不支持的,需要安装: Visual Studio ...
- 2015弱校联盟(1) -J. Right turn
J. Right turn Time Limit: 1000ms Memory Limit: 65536KB frog is trapped in a maze. The maze is infini ...
- Asp.net 头像的简单实现
1:创建数据库 Create Table ImageSave ( ID ,), Name ), img image ) 2:上传照片页关键代码 前台: <div> <asp:File ...
- Unity3D UGUI学习系列索引(暂未完成)
U3D UGUI学习1 - 层级环境 U3D UGUI学习2 - Canvas U3D UGUI学习3 - RectTransform U3D UGUI学习4 - Text U3D UGUI学习5 - ...
- sql server中如何查看执行效率不高的语句
sql server中,如果想知道有哪些语句是执行效率不高的,应该如何查看呢?下面就将为您介绍sql server中如何查看执行效率不高的语句,供您参考. 在测量功能时,先以下命令清除sql se ...
- easyui datagrid 仿ext—右键
var createGridHeaderContextMenu = function(e, field) { e.preventDefault(); var grid = $(this);/* gri ...
- Annotation
Annotation是给类,方法或域上加的一种特殊的标记,可以通过反射取到注解的类型和值,从而完成某种特定的操作. 定义注解需要使用元注解,元注解有@Retention和@Target p.p1 { ...
- 和Java相关的一些好文章(不定期更新)
1.Java 集合类详解 (包括arraylist,linkedlist,vector,stack,hashmap,hashtable,treemap,collection等). 2.Java 理论与 ...
- ~是什么意思 在C语言中,~0代表什么
是c语言中的位运算符:取反.0在内存中的存储方式是所有位为0,0000000000000000那么按位取反后位16个1(如果整形在你的机器上站16位),那么表示的数为-1.