搜档网
当前位置:搜档网 › 软件工程需求分析案例

软件工程需求分析案例

软件工程需求分析案例
软件工程需求分析案例

11.假设你在一所职业高中工作,负责该校信息系统的建设与维护。财务科长请你研究用学校拥有的微型计算机生成工资明细表和各种财务报表的可能性。请详细描述你用结构化分析方法分析上述问题的过程。

答:通常,结构化分析过程包括问题定义、可行性研究和需求分析3个阶段。下面分别叙述这3个阶段的分析过程。

(1)问题定义

从何处着手解决财务科长提出的问呢?立即开始考虑实现工资支付系统的

详细方案并动手编写程序,对技术人员无疑是很有吸引力的。但是,在这样的

早期阶段就考虑具体的技术问题,却很可能会是我们迷失前进的方向。会计部

门(用户)并没有要求在学校自己的计算机上实现工资支付系统,仅仅要求研

究这样的可能性。后者是和前者很不相同的问题,它实际上是问,这样做预期

将获得的经济效益能超过开发这个系统的成本吗?换句话说,这样做值得吗?

优秀的系统分析员还应该进一步考虑,用户面临的问题究竟是什么。财务

科长为什么想研究在自己的计算机上实现工资支付系统的可能性呢?询问财务

科长后得知,该校一直由会计人工计算工资并编制财务报表,随着学校规模扩

大工作量也越来越大。目前每个月都需要两名会计紧张工作半个月才能完成,

不仅效率低而且成本高。今后学校规模将进一步扩大,人工计算的成本还会进

一步提高。

因此,目标是寻找一种比较便宜的生成工资明细表和各种财务报表的办法,并不一定必须在学校自己的计算机上实现工资支付系统。财务科长提出的要求,实际上并没有描述应该解决的问题,而是在建议一种解决问题的方案。这种解

决方案可能是一个好办法,分析员当然应该认真研究它,但是也还应该考虑其

他可能的解决方案,以便选出最好的方案。良好的问题定义应该明确地描述实

际问题,而不是隐含的描述解决问题的方案。

分析员应该考虑的另一个关键问题,是预期的项目规模。为了改进工资支

付系统最多可以花多少钱?虽然没人明确提出来,但是肯定会有某个限度。应

该考虑下述3个基本数字:目前计算工资所花费的成本,新系统的开发成本和

运行费用。新系统的运行费用必须低于目前的成本,而且节省的费用应该能使

学校在一个合理的期限内收回开发新系统时的投资。

目前,每个月有两名会计用半个月时间计算工资和编制报表,一名会计每

个月的工资和岗位津贴共约2000元,因此,每年为此项工作花费的人工费约2.4万元。显然,任何新系统的运行费用也不可能减少到小于零,因此,新系统每

年最多可能获得的经济效益是2.4万元。

为了每年能节省2.4万元,投资多少钱是可以接受的呢?绝大多数单位都

希望在3年内收回投资,因此,7.2万元可能是投资额的一个合理的上限值。

虽然这是一个很粗略的数字,但是它确实能使用户对项目规模有一些了解。

为了请客户(会计科和学校校长)检验分析员对需要解决的问题和项目规

模的认识是否正确,以便在双方达成共识的基础上开发出确实能满足用户实际

需要的新系统,典型地,分析员用一份简短的书面备忘录表达他对问题的认识,这份文档称为“关于系统规模和目标的报告书”(见表2.1)。

表2.1关于工资支付系统规模和目标的报告书

关于系统规模和目标的报告书2002.12.26

项目名称:工资支付。

问题:目前计算工资和编制报表的费用太高。

项目目标:研究开发费用较低的新工资支付系统的可能性。

项目规模:开发成本应该不超过7.2万元(±50%)。

初步设想:用学校自己的计算机系统生成工资明细表和财务报表。

可行性研究:为了更全面地研究工资支付项目的可能性,建议进行大约历时两周的可行性研究。这个研究的成本不超过4000元。

校长和财务科经过研究同意了上述报告书,可以对工资支付项目进行更仔细的研究了。

(2)可行性研究

可行性研究是抽象和简化了的系统分析和设计的全过程,它的目标是用最小代价尽快确定问题是否能够解决,以避免盲目投资带来的巨大浪费。

本项目的可行性研究过程由下述步聚组成。

①澄清系统规模和目标

为了确保从一个正确的出发点着手进行可行性研究,首先通过访问财务科长和校长进一步验证上一阶段写出的“关于工资支付系统规模和目标的报告书”的正确性。

通过访问分析员对人工计算工资存在的弊端有了更具体的认识,并且了解到工资总数应该记入分类日记帐,显然,新工资支付系统不能忽略与分类帐系统的联系。

②研究现有的系统

了解任何应用领域的最快速有效的方法,可能都是研究现有的系统。通过访问具体处理工资事务的两名会计,可以知道处理工资事务的大致过程。开始时把工资支付系统先看作一个黑盒子,图2.11所示的系统流程图描绘了处理工资事务的大致过程。

图2.11处理工资事务的大致过程

处理工资事务的大致过程是,每月月末教师把他们当月实际授课时数登记

在课时表上,由各系汇总后交给财务科,职工把他们当月完成承包任务的情况登记在任务表上,汇总后交给财务科。两名会计根据这些原始数据计算每名教职工的工资,编制工资表、工资明细表和财务报表。然后,把记有每名教工工资总额的工资表报送银行,由银行把钱打到每名教工的工资存折上,同时把工资明细表发给每名教职工。

接下来应该搞清楚图2.12中黑盒子(工资支付系统)的内容。

通过反复询问财务人员,可以知道现有的人工系统计算工资和编制报表的

流程如下:接到课时表和任务表之后,首先审核这些数据,然后把审核后的数据按教职工编号排序并抄到专用的表格上,该表格预先印有教职工编号、姓名、职务、职称、基本工资、生活补贴、书报费、交通费、洗理费等数据。接下来根据当月课时数或完成承包任务情况,计算课时费或岗位津贴。算出每个人的工资总额之后,再计算应该扣除的个人所得税,应交纳的住房公积金和保险费,最后算出每个人当月的实发工资数。把算出的上述各项数据登记到前述的专用表格上,就得到了工资明细表。然后对数据进行汇总,编制出各种财务报表,而工资表不过是简化的工资明细表,它只包含工资明细表中的教职工编号、姓名和实发工资这3项内容。图2.12所示的系统流程图描绘了现有的人工工资支付系统的工资流程。

必须请有关人员仔细审查图2.12所示的系统流程图,有错误就应该及时纠正,有遗漏就应该及时补充。

③导出高层逻辑模型

系统流程图很好的描绘了具体的系统,但是,在这样的图中把“做什么”

和“怎样做”这两类不同范畴的知识混在一起了。我们的目标不是一成不变地复制现有的人工系统,而是开发一个能完成同样功能的新系统,因此,应该着重描绘系统的逻辑功能。

的数据排序

教师课时表

审核数据

审核后职工任务表

计算

计算个人所得

计算

工资总额

课时费

计算

专用表格

岗位津贴

计算

住房公积金

计算

保险费

计算

实发工资

工资表

报表编制报表工资

明细表

更新

分类账

教师职工

分类账会计

图2.12现有的工资支付系统

删除图2.12中表示的有关具体实现方法的信息,把它抽象成图2.13。在这

张数据流程图中用“事务数据”代表课时表和任务表中包含的数据,用“加工

事务数据”笼统地代表计算课时费、岗位津贴、工资总额、个人所得税、住房

公积金、保险费、实发工资等一系列功能。这张数据流图描绘的是系统高层逻

辑模型,在可行性研究阶段还不需要考虑完成“加工事务数据”功能的具体算

法,因此,没必要把它分解成一系列更具体的数据处理功能。

在图2.13中的处理框“更新分类账”虽然不属于本系统应完成的功能,但

是,工资支付系统至少必须和“更新分类账”所在的系统通信,因此,搞清楚

它门之间的接口要点是很重要的。

在数据流图上直接注明关键的定时假设很有必要。在以后的系统设计过程

中这些假设将起重要作用。清楚地注明这些假设也可以增加及时发现和纠正误

解的可能性。

④进一步确定系统规模和目标

银行

D3 D4

现在,分析员再次访问会计和财务科长,讨论的焦点集中在图 2.13 所示的 数据流图,它代表了到现在为止分析员所要开发的系统认识。通过仔细分析和 讨论数据流图,能够及时发现并纠正分析员对系统的误解,补充被他忽视了的 内容。

分析员现在对工资支付系统的认识已经比问题定义阶段深入多了,根据现 在的认识,可以更准确地确定系统规模和目标。如果系统规模有较大变化,则 应及时报告给客户,以便做出新的决策。

可行性研究的上述 4 个步聚可以看作是一个循环。分析员定义问题,分析这个 问题,导出试探性的逻辑模型,在此基础上再次定义问题······重复这 个循环直至得出准确的逻辑模型为止,然后分析员开始考虑实现这个系

统的方案。

D1

事务数据

教师 1 收集 2 审核 3 加工事务 职工

数据

数据

数据

D2

工资表 工资明细表 报表

银行 定时假设

4 分发工资 明细表

5 更新 分类账

处理 1 运行频率 每日一次 会计

2 3 4 5

每日一次 每日一次 每日一次 每日一次

教师 职工

图 2.13

工资支付系统的数据流图

⑤导出供选择的解法

现在分析员对用户的问题已经有了比较深入的理解,但是,问题

有行得通的解决方法吗?回答这个问题的唯一方法是,导出一些供选择的解决方法,并且分析这些解决的可行性。

导出共选择的解法的一个常用的简单方法是从数据流图出发,设想几个划分自动化边界的模式,并且为每种模式设想一个系统。

在分析供选择的解法时,首先考虑的是技术上的可行性。显然,从技术角度看不可能实现的方案是没有意义的。但是,技术可行性只是必须考虑的一个方面,还必须能同时通过其他检验,一种方案才是可行的。

接下来考虑操作可行性。例如,在对学生开放的公共计算机房内运行工资支付程序显然是不合适的。这样做不仅不安全而且会暴露教职工的个人隐私。因此,必须为工资支付系统单独购置一台计算机及必要的外部设备,并且挡在一间专用房间里。

最后,必须考虑经济可行性问题,即“效益大于成本吗?”因此,分析员必须对已经通过技术可行性和操作可行性检验的解决方案再进行成本/效益分析。

为了给客户提供在一定范围内进行选择的余地,分析员应该至少提供3种类型的供选择的方案:低成本系统,中等成本系统和高成本系统。

如果把每月发一次工资改为每两个月发一次工资,则人工计算工资的成本大约可减少一半,即每年可节省1.2万元。除了已经进行的可行性研究的费用外,不再需要新的投资,这是一个诱人的低成本方案。

当然,也必须充分认识上述低成本方案的缺点:违反常规;教职工反对;不能解决根本问题,随着学校规模扩大,人工处理工资事务费用也将成比例的增加。

作为中等成本的解决方案,建议基本上复制现有系统的功能:课时表和任务表交到处理工资事务的专用机房。操作员把这些数据通过终端送入计算机,数据收集程序接收并校核这些事务数据,把它们存储在磁盘上。然后运行工资支付程序,这个程序从磁盘中读取事务数据,计算工资,打印出工资表,工资明细表和财务报表。图2.14所示的系统流程图描绘了上述系统。

图2.14中等成本方案的系统流程图

上述中等成本方案看起来比较现实,因此对它进行了完整的成本/效益分析,分析结果列在表2.2中。从分析结果可以看出,中等成本的解决方案是比较合理的,经济上是可行的。

表2.2中等成本方案的成本/效益分析

开发成本

人力(4人月,8000元/人月)

购买硬件

总计

新系统的运行费

人力和物流子(250元/月)

维护

总计

3.2万元1.0万元

4.2万元

0.3万元/年0.1万元/年0.4万元/年

现有系统的运行费用 2.4万元/年

每年节省的费用 2.0万元

年节省现在值(以5%计算)累计现在值

1

2

3

投资回收期纯收入20000元

20000元

20000元

19047.62元

18181.82元

17241.38元

19047.62元

37229.44元

54470.82元

2.28年

12470.82元

最后,考虑一种成本更高的方案:建立一个中央数据库,为开发完整的管理信息系统做好准备,并且把工资支付系统作为系统的第一个子系统。这样做开发成本大约将增加到12万元,然而从工资支付这项应用中获得的经济效益并

不变。因此,如果仅考虑这一项应用,投资是不划算的,但是,将来其他应用系统(例如,教学管理,物资管理,人力资源管理)能以较底成本实现,而且这些子系统能集成为一个完整的系统。如果校长对这个方案感兴趣,可以针对它完成更详尽的可行性研究(大约需要用1万元)。

⑥推荐最佳方案

底成本方案虽诱人,但是很难付诸实现;高成本的系统从长远看是合理的,但是它所需要的投资超出了预算。从已经确定的系统规模和目标来看,显然中等成本的方案是最好的。

⑦草拟开发计划

应该为推荐的最佳方案草拟一份开发计划。把系统生命周期划分成阶段,有助于制定出相对合理的计划。当然,在这样的早期开发阶段,制定出的开发计划是比较粗略的,表2.3的计划。

表2.3实现中等成本的工资支付系统的粗略计划

⑧写出文档提交审查

分析员归纳整理本阶段的工作成果写成正式文档(其中成本/效益分析的内容,根据表2.3的实现计划适当修正),提交由校长和财务料全体人员参加的

会议审查。

(3)需求分析

需求分析的目的是确切地回答下述问题:“系统必须做什么?”

需求分析在可行性研究的基础上进行,前一阶段产生的文档,特别是数据流

图(见图2.13)是需求分析的出发点。在需求分析过程中分析员将设计出更

精确的数据流图,并将写出数据字典及一系列简明的算法描述,他们都是软

件需求规格说明书的重要组成部分。

需求分析的主要任务是更详细地定义系统应该完成的每一个逻辑功能。

怎样完成这个任务呢?

任何数据处理系统的基本功能,都是把输入数据转变成需要的输出信息。数据决定了处理和算法,看来数据应该是分析工作的出发点。必须经过计算才

能得到的数据元素引出了必要的算法,算法反过来又引出了更多的数据元素。对数据的描述记录在数据字典中,对算法的描述记录一组初步的IPO表中(目前描述的是说明数据处理功能的原理性算法)。

对系统有了更深入的认识之后,可以进一步细化数据流图。在细化数据流图的过程中,又会进一步加深对系统的认识。这样一步一步地分析,将更详尽更准确地定义出所需要的逻辑系统。

下面叙述工资支付系统的需求分析过程。

①沿数据流图回潮

为了把数据流和数据存储定义到元素级,一般说来,从数据流图的输出端着手分析是有意义的。这是因为,系统最基本的功能是产生需要的输出数据,在输出端出现的数据元素决定了系统的基本构成。

从图2.13的数据终点“教师”的“职工”开始分析,流入他们的数据流是“工资明细表”。工资明细表由哪些数据元素组成呢?从该职业高中目前使用的工资明细表上可以看出它包含许多数据元素,表2.4列出了这些数据元素。这

些数据元素是从什么地方来得呢?既然它们是工资支付系统的输出,它们或者是从外面输入进系统的,或者是由系统经过计算产生出来的。沿数据流图从输出端往输入端回溯,分析员应该可以确定每个数据元素的来源。如果分析员不能确定某个数据元素的来源,那么,工资问题的专家应该知道,因此需要再次调查访问。这样有条不紊地分析下去,分析员将逐渐定义出系统的详细功能。

表2.4工资明细表上包含的数据元素

教职工编号教职工姓名基本工资职务职称

生活补贴

书报费

交通费

洗理费

课时费

岗位津帖

工资总额

个人所得税

住房公积金

保险费

室发工资

例如,表2.4中的数据元素“工资总额”是怎样得出来的呢?从图2.13可

以看出,包含数据元素“工资总额”的工资明细表,是从处理4(“分发工资

明细表”)输出到数据终点的,但是这个处理的功能是分发已经打印好的工资明

细表,并不能生成新的数据元素。沿着数据流图回溯(即逆着数据流箭头方向

前进),接下来遇到数据存储D3(“工资明细表”)。数据存储只不过是保存数

据的价质,它不具有变换数据的功能,因此也不会生成工资总额这项数据元素。

再回溯则来到处理3(“加工事务数据”),显然,工资总额是由这个处理框计

算出来的,因此应该确定相应的算法,以便更准地定义这个处理框的功能。

根据常识,工资总额等于各项收入(基本工资,生活补贴,书报费,交通费,洗理费,课时费或岗位津帖)之和。虽然不同教职工的基本工资,生活补贴,书报费,洗理费,交通费的数额可能并不相同,但是对同一个人来说,在一段时间内这些数值是稳定不变的,不需要在每次计算工资总额时都从外面输入这些数据。事实上,在输入的事务数据中并不包含这些数据元素,因此,它们必定保存在某个数据存储中。目前,还不知道这些数据保存在何处,分析员在笔记本中记下“必须高清除基本工资,生活补贴,书报费,交通费,洗理费等数据元素存储在何处。”此外,为了计算工资总额必须先计算课时费或岗位津帖,因此,分析员在笔记本中记下“必须弄清课时费和岗位津贴的计算方法。”然后,着手分析另一个重要的数据元

素“实发工资”。

显然,从工资总额中扣除个人所得税、住房公积金和保险费之后,余下的就是实发工资。沿数据流图回溯可知,个人所得税、住房公积金和保险费的数值都由处理3(“加工事务数据”)计算得出。但是,目前还不知道怎样计算这些数值,分析员在笔记本中记下“必须搞清楚个人所得税、住房公积金和保险费的计算方法。“

②写出文档初稿

分析员在分析过程中不断加深对目标系统的认识,应该把获得的信息用一种容易修改、容易更新的形式记录下来。

通常,一个系统会涉及许多人,他们彼此理解是至关重要的。文档是主要的通信工具,因此,文档必须是一致的和容易理解的。结构分析方法要求,在需求分析阶段完成的正式文档(软件需求规格说明书)中必须至少包含三个重要成分:数据流图,数据字典,以及一组黑盒形式的算法描述。

数据字典是描述数据的信息的集合。在分析阶段数据字典能帮助分析员组织有关数据的信息,并且是和用户交流信息的有力工具,此外,它还能起备忘录的作用。在设计阶段可以根据它确定记录、文件或数据库的格式。在实现阶段,程序员可以根据数据字典确定数据描述。在系统投入运行后,数据字典可以清楚的告诉维护人员,具体的数据元素在系统中是怎样使用的,当必须修改程序时,这样的信息是极其宝贵的。

在手边没有数据字典软件包可用时,可以用卡片形式人工建立数据字典。例如,为工资付系统中几个元素填写的数据字典卡片如图2.15所示。

图2.15工资支付系统的数据字典卡片

分析员还应该以黑盒形式记录算法。所谓黑盒子就是不考虑一个功能的具体实现方法,只把它看作给予输入之后就能够产生一定输出的黑盒子。这正是在早期开发阶段分析员对算法应持有的正确观点,目的是用原理性算法准确的定义功能,算法的细节可以等到以后的开发阶段再确定。

通常使用IPO表记录对算法的初步描述。以后可以进一步精化它,而且在详细设计阶段可以把它作为HIPO图的一部分。图2.16是描述计算工资总额的初步算法的IPO表。

图2.16描述工资总额初步算法的IPO表

目前写出的文档还仅仅是初稿,写出文档初稿的目的,一方面是记录已经

知道的信息,另一方面是供用户审查。随着需求分析工作的深入,这些文档还

将进一步修改完善。

③定义逻辑系统

通过前一步的工作,已经划分出许多必须在工资支付系统中流动的数据元

素,并且把它们记录在初步的数据字典中,此外,还把某些算法以黑盒形式记

录在IPO表中。上述这些工资成果正确吗?某些数据元素(例如,基本工资、

生活补贴、书报费、交通费、洗理费)是从哪里来的呢?分析员必须设法得到

这些问题的答案。

关于工资支付系统的详细信息只能来源于直接工作在这个系统上的人。因

此,再次访问财务科长和具体处理工资事务的两位会计。数据流程图(见图

2.13)是使讨论时焦点集中的极好工具,从数据流程图的数据源点开始,沿着

数据流循序讨论。事务数据从教职工流进收集数据这个处理中,以前已经在数

据字典中描述了组成事务数据的元素(图2.16中未列出这张卡片),这个描述

正确吗?有没有遗漏?“收集数据”的功能是什么?审核数据的算法是什么?……对于分析员来说,数据流图、数据字典和算法描述可以作为校核时的清单

或备忘录。必须审核已经知道的信息,还必须补充目前尚不知道的信息,填补

文档中的空白。

例如,考虑工资总额的算法。假设分析员和会计正在讨论数据流图中“加

工事务数据”这个处理。在前一步骤中已经用IPO表(见图2.16)描述了计算机工资总额的算法,并且知道基本工资,生活补贴,书报费,交通费和洗理费

等数据应该储起来,那么,它们到底存储在哪个数据存储中呢?会计说,这些

数据属于人事数据。但是,在图2.13所示的数据流图中并没有一个数据存储保存人事数据,显然应该修改数据流图,补充进这个数据存储。这样一步一步地

分析数据流找出未知的数据元素,未知的数据元素引出访问时的问题,而问题

的答案有引入一个以前不知道的系统成分——人事数据存储。

上述新发现又引出下一个问题:人事数据存储是从那里进入系统的呢?经

询问得知,这些数据来源是人事科,而且需要增加一个新的处理——更新人事

数据。

接下来讨论计算课时费和岗位津贴的方法。会计告诉分析员,课时费等于

教师当月的授课时数乘上每课时的课时费,再乘上职称系数和授课班数系数;

岗位津贴由职工的职务和完成当月任务的情况决定。通过讨论还进一步了解到,应在每年年末计算超额课时费,也就是说,如果一位教师一年的授课时数超过

学校规定的定额,则超出部分每课时的课时费按正常值的1.2倍计算。显然,

为了计算超额课时费需要保存每位教师当年完成的授课时数,也就是说,需要

一个数据存储来存放“年度数据”。

接下来讨论“加工事务数据”这个处理需要的其他算法。例如,在讨论住

房公积金的算法时了解到的,根据国务院2006年3月24日修订的《住房公积

金管理条例》的规定,“职工住房公积金的月缴存额为职工本人上一年度月平均工资乘以职工住房公积金缴存比例”,“职工和单位住房公积金缴存比例均不得低于职工上一年度月平均工资的5%”。因此,需要存储每名教职工上一年度的月平均工资,显然,这个数据元素也应该存储在“年度数据”中。表2.5

是年度数据包含的数据元素。相应地,应该增加一个处理(“更新年度数据”),在每年年末更新年度数据。

最后,把新发现的数据源点,数据处理和数据存储补充到数据流图中,得

到新数据流图(见图2.17)。表2.5年度数据包含的数据

元素

④细化数据流图

经过上述工作分析员对工资支付系统已经有了更深入、更具体的认识,原有的数据流图已经不能充分表达他对系统的认识,应该进一步地细化数据流图。

通常,使用下述的功能分解方法来细化数据流教职工编号

教职工姓名

本年度累计工资总额本年度累计实发总额本年度累计授课总额上年度月平均工资

图:先取数据流图上功能过分复杂的处理,把它分

解成若干个子功能,这些较低层次的子功能成为新数据流图上的处理,它们有自己的数据存储和数据流。

教师

会计

例如,图 2.17 中“加工事务数据”这个处理的功能太复杂了,用一个处 理框不能清晰地描绘它的功能,应该把它进一步分解细化。根据分析员现在对 加工事务数据功能的了解,把这个处理分解成下述 5 个逻辑功能:

·取数据 取出事务数据,人事数据和年度数据。 ·计算正常工资 计算不包含超额课时费的工资。

·计算超额课时费 年终计算超额课时费,算得的钱数加到 12 月的工资 总额中。

·更新年度数据 把每月工资总额,实发工资及授课时数累加到相应的年 度数据

D1 事务数据

D5 年度数据 6

教师 1 收集 2 审核 3 加工事务 更新人事 数据

人事料

职工

数据

数据

D2 工资表

银行

数据

D6 人事数据

D3 工资明细表

D4 报表

4 5 分发工资明 细表

更新分 类账

职工

图 2.17 补充后的工资支付系统数据图

中,并在年终计算本年度的月平均工资 。

·印表格,印出工资表,工资明细表和各种财务报表

上述 5 个子功能及它们之间的关系,可以用一张数据流分图来描绘(见图 2.18)。把分解“加工事务数据”处理框的结果加到原来的数据流图中,得到一 张更详细的新数据流图(2.19)。

D6 人事数据

D5 年度数据

D2 工资表

3.1 取数据 3.2 计算正 常工资

3.3 计算超额 课时费 3.4 更新年 度数据 3.5 印表格

图2.18对“加工事务数据”的细化

新数据流图对工资支付系统的逻辑功能描绘得比以前更深入,更具体。分析本系统其他功能后得知,对于这个具体系统来说,已经没有必要再分解其他功能了。一般说来,如果进一步分解将促使开始考虑为了完成该功能需要写出的代码,就不应该再分解。在需求分析阶段分析员应该在逻辑功能层工作,代码已属于物理实现层了

6

更新人

是数据

D6人是数据人事科银行

D5年度数据D2工资表

3.1取数据

3.2

计算超

额课时

3.3

计算超

额课时

3.4

更新年

度数据

3.5

印表格费

D1事务数据

1收集数据

2

审核

数据

D3工资明细表

4

分发工资

明细表

D4报表

5

更新分

类帐

教师职工

教师职工会计

图2.19工资支付系统完整的数据流图

⑤书写正式文档

数据流图细化之后,组成系统的各个元素之间的逻辑关系变得更清楚了。以细化后的数据流图为基础,可以对系统需求做更进一步地分析。随着分析过程的进展,通过询问与回答的反复循环,将把目标系统定义得越来越准确。最终,分析员对系统需求有了令人满意的认识,应该把这些认识用正式文档“软件需求规格说明书”准确地记录下来。细化到适当层次的数据流图、数据字典和黑盒形式算法描述,是构成软件需求规格说明说的重要成分。

⑥技术审查和管理审查

由从外单位聘请来的一位有经验的系统分析员担任技术审查小组的组长,并由具体处理工资事务的两名会计及本系统的分析员作为小组成员。图 2.19所示的数据流图是审查的重点;用数据字典和IPO表辅助对数据流图的理解,

由作为小组成员的一名会计朗读软件需求规格说明书,大家仔细审查这份文档。审查的目的是发现错误和遗漏,而不是对前一阶段的工作进行批评或争论。本系统的分析员负责改正审查小组发现的问题。

除了技术审查之外,在转入概要设计之前还必须进行管理方面的复审。由财务科长和学校校长对本项目的经费支出情况和开发进度,从管理角度进行审查。

软件工程需求分析报告模版

目录 1 引言 1.1编写目的 (1) 1.2 项目背景 (1) 1.3术语说明 (1) 1.4 参考资料 (1) 2 项目概述 2.1编写目的 (1) 2.2 项目背景 (2) 2.3 术语说明 (2) 2.4 参考资料 (2) 2.5 条件和限制 (3) 3 功能需求 3.1功能划分 (3) 3.2功能描述 (3) 4 外部接口需求 4.1功能划分 (3) 4.2功能描述 (4) 5 性能需求 5.1 数据精确性 (4) 5.2 时间特性 (4) 5.3 适应性 (4) 6 软件属性需求 6.1 正确性 (4) 6.2 可靠性 (4)

6.3 效率 (5) 6.4 完整性 (5) 6.5 易使用性 (5) 6.6 可维护性 (5) 6.7 可测试性 (5) 6.8 可复用性 (5) 6.9 安全性 (5) 6.10 可理解性 (5) 6.11 可移植性 (5) 6.12 互联性 (5) 7 其他需求 (5) 8 数据描述 (5) 8.1静态数据 (6) 8.2动态数据 (6) 8.3数据库描述 (6) 8.4数据字典 (6) 8.5数据采集 (6) 9 附录 (6)

1引言 1.1编写目的 学生管理系统是面向学生的,目的是提高学校对学生的管理。本系统主要包括六个模块:学生的基本信息、课程的基本信息、登录、成绩录入、成绩查询和汇总功能,这六个模块基本实现设计本系统的目的,从而可以进一步满足学校对管理系统的要求。 现在的学生管理系统功能不够,所以我们要明确用户对学生管理系统的功能和性能的需求,并将这些需求用语言编写出来。并使系统开发者和学生对此成绩管理系统有共同的理解和认识。这是开发学生管理信息系统的基础,为了更好的开发,对系统的设计要详细。开发的系统要简单实用。 1.2 项目背景 项目名称为:学生成绩管理信息系统。开发目标为有效管理学生信息,实现学生信息的数据录入、浏览、修改等,从而实现对学生信息的规化、系统化、自动化管理。 1.3术语说明 MIS: 管理信息系统 Transaction Processing : 事务处理 Data Acquisition :数据采集 Data Processing Circle : 数据处理流程 Data Processing:数据处理 1.4 参考资料 《软件工程案例教程》…毕硕本卢桂香编著大学 《Vista Basic语言程序设计》…韬编著人民邮电 2 项目概述 2.1待开发软件的一般概述 此软件的目的是提高学校对学生的科学化管理,为学校的学生成绩管理系统

软件需求规格说明书案例

软件开发方向 “成绩管理系统”软件需求规约 安博教育集团 二零零八年十月

修订历史记录

目录 1 引言 (5) 1.1 目的 (5) 1.2 文档格式 (5) 1.3 预期的读者和阅读建议 (5) 1.4 范围 (6) 1.5 术语 (6) 1.6 参考文献 (6) 2 系统概述 (6) 2.1 概述 (6) 2.2 功能 (6) 2.3 运行环境 (7) 2.4 假设与依赖 (7) 3 系统特性 (8) 3.1 系统角色 (8) 3.2 学生管理 (8) 3.2.1 增加学生信息 (8) 3.2.2 修改学生信息 (9) 3.2.3 删除学生信息 (9) 3.2.4 导入学生信息 (9) 3.3 教师管理 (9) 3.3.1 增加教师信息 (9) 3.3.2 修改教师信息 (9) 3.3.3 删除教师信息 (9)

3.3.4 导入教师信息 (9) 3.4 课程管理 (10) 3.4.1 增加课程基本信息 (10) 3.4.2 修改课程基本信息 (10) 3.4.3 删除课程基本信息 (10) 3.4.4 维护课程学生信息 (10) 3.5 成绩查询 (11) 3.5.1 学生查询成绩 (11) 3.5.2 教师查询成绩 (11) 3.6 成绩分析与统计 (11) 3.6.1 考试成绩表 (11) 3.6.2 班级各科平均成绩表 (11) 3.6.3 年级成绩排名表 (11) 3.7 系统维护 (12) 3.7.1 数据字典维护 (12) 4 非功能性需求 (12) 4.1 性能需求 (12) 4.2 安全性需求 (12) 4.3 可用性需求 (13) 4.4 用户文档 (13) 4.5 其它需求 (13) 5 外部接口需求 (14) 5.1 用户接口 (14) 5.2 硬件接口 (14)

软件工程系统可行性分析和需求分析

个人承担任务 任务说明: 此次软件工程设计,我主要承担以下任务: 需求分析和可行性分析(根据设计题目进行问题定义,探讨可行性,再对系统进行需求分析等)。 任务内容: 1.可行性分析: ⑴问题定义 各高校传统的勤工助学岗位管理管理模式也越来越不能满足现代教育发展的需要。对于一个有着上百号勤工学生的学校来说,用手工管理这些学生信息还有岗位以及津贴,是一项非常繁琐的工作,而相应的岗位人员查询、津贴签领历史记录查询等,其工作量都让人望而生畏,而且还极易出错,同时也浪费纸。所以我们提出了开发高校勤工助学管理系统,将勤工学生基本信息管理、岗位人员管理、津贴统计等功能进行统一管理,为各高校实现勤工助学岗位信息化管理提供有效工具。 ⑵技术可行性 本系统采用B/S模式开发。B/S(Browser/Server,浏览器/服务器)模式又称B/S结构。B/S模式是指在TCP/IP的支持下,以HTTP为传输协议,客户端通过Browser访问Web服务器以及与之相连的后台数据库的技术及体系结构。它由浏览器、Web服务器、应用服务器和数据库服务器组成。客户端的浏览器通过URL 访问Web服务器,Web服务器请求数据库服务器,并将获得的结果以HTML形式返回客户端浏览器。它是随着Internet技术的兴起,对C/S模式应用的扩展。在这种结构下,用户工作界面是通过IE浏览器来实现的。相较于C/S模式的系统升级维护复杂来说,B/S模式最大的好处是运行维护比较简便,能实现不同的

人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据。另外,B/S还便于面向广大未知用户使用,因为只要电脑安装了IE,经过一定的设置,就都可以使用,如建立企业网站发布信息。 ⑶经济可行性 本系统开发成本低,对开发者设备要求不高,数据库采用免费开源的Oracle 数据库。由于是B/S模式,所以对用户软硬件要求要求也很低。 2.需求分析 ⑴系统运行环境硬件要求 硬件设备设计是根据信息系统的设计需求,确定信息系统物理设备方案,所设计的硬件设备方案在能够充分满足信息系统功能需求的前提下,还应满足系统的效率、可靠性、安全性和适应性等性能要求,并具有较高的性价比。根据前面的需求分析,我们得出本系统理想的环境当然是配置较高最好,实际操作中硬件平台如下: 硬件环境(访问者):建议用户在允许的情况下采用较高配置硬件资源。 硬件环境(开发者):Intel五代处理器,4G内存,80G磁盘空间。 ⑵系统运行环境软件要求 操作系统是计算机系统中最重要的系统软件,目前在微机上使用的桌面操作系统有Windows XP/7/8/10等,本系统在Windows 10操作系统下进行开发,可向下兼容以运行于前面所列举的各种操作系统,但建议使用Windows XP以上系统。 支撑软件是协助人们开发和维护软件的工具和环境软件,包括编辑程序,数据库系统,集成开发环境等,本系统的支撑软件如下: 1、数据库管理系统(DBMS):为了对数据库实施集中管理,同时并发的处理多个客户机发来的数据处理要求,我们选用Oracle数据库管理系统。 2、动态网页技术:在这里我们使用JSP(Java Server Pages)来建立系统,编译软件使用myeclipse10。 ⑶系统功能需求 所有学生都可以登录系统申请对外开放的岗位,申请时需要填写相关信息。

软件工程案例分析

一、 阅读下列系统需求陈述,回答问题1、问题2、问题3和问题4。 某银行准备开发一个网上信用卡管理系统CCMS,该系统的基本功能为: (1)信用卡申请。非信用卡客户填写信用卡申请表,说明所要申请的信用卡类型及申请者的基本信息,提交CCMS登录。如果信用卡申请被银行接受,客户会收到银行的确认函,并告知用户信用卡的有效期及信贷限额;否则银行会发送一封拒绝函给该客户。客户收到确认函后,需再次登录CCMS ,用信用卡号和密码激活该信用卡。激活操作结束后,CCMS将激活通知发送给客户,告知客户其信用卡是否被成功地激活。 (2)月报表生成。在每个月第一天的零点,CCMS为每个信用卡客户创建一份月报表,对该客户上月的信用卡交易情况及交易额进行统计。信用卡客户可以登录CCMS查看月报表,也可以要求CCMS提供打印出的月报表。 (3)信用卡客户信息管理。信用卡客户的个人信息可以在 CCMS中进行在线的管理。每个信用卡客户可以在线查询其个人信息。 (4)信用卡交易记录。信用卡客户使用信息卡进行的每一笔交易都会记录在CCMS中。 (5)交易信息查询。信用卡客户可以登录CCMS查询并核实其信用卡交易记录及交易额。在系统的需求分析阶段,使用用例对系统需求建模。表1—1和表1—2给出了其中两个用例的概要描述。 [问题1]) 将表1—1和表1—2中的(1)~(10)填充完整。 [问题2] 除了表1—1和表1—2给出的用例外,从上述系统陈述中还可以获取哪些由信用卡客户发起的用例?(给出用例名称即可)

[问题3] 用400字以内文字,简要说明用例获取的基本步骤。 [问题4] 用例除了使用表1—1和表1—2所示的形式描述外,还可以使用UML的用例图来表示。分别用50字以内文字,解释UML用例图中扩展用例和抽象用例的内涵。 二、 阅读以下关于工作流系统性能分析的叙述,回答问题1、问题2和问题3。 某企业正在创建一个工作流管理系统,目前正处于过程定义阶段,即创建工作流模型阶段。对于这些工作流模型,除了要考虑工作流的正确性外,工作流的性能也是十分重要的。工作流性能主要反映工作流定量方面的特性,例如,任务的完成时间、单位时间内处理的任务数量、资源的利用率以及在预定的标准时间内完成任务的百分比等等。 图2—1所示的是一个简单的工作流模型(其中单位时间为1小时),它表示这样一个执行过程:每小时将会有20个任务达到c1,这20个任务首先经过处理taskl,再经过处理task2,最终将结果传递到c3。处理taskl和处理task2相互独立。 图2-1 假设性能评价模型符合M/M/1排队模型,在计算性能指标的过程中可以使用下列公式进行计 算:,其中ρ表示资源利用率,表示单位时间内到达的任务数,表示该资源单位时间内能够完成的任务数。 [问题1] 计算图2—1所示的工作流模型的下列性能指标: (1)每个资源的利用率; (2)每个处理中的平均任务数L; (3)平均系统时间S; (4)每个处理的平均等待时间W。 [问题2]

软件工程一个需求说明书实例

汉语编程企业管理应用软件 需求说明书 编著阮春芬、张桂玲、周进军、俞灵芝、奚灵芝 1 引言 对软件需求完全理解对于软件开发工作的成功是至关重要的,需求说明的任务是发现、规范的过程,有益于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,便于采用工程方法开发软件,提高软件的质量,便于开发人员、维护人员、管理人员之间的交流、协作,并作为工作成果的原始依据,并且在向潜在用户传递软件功能、性能需求,使其能够判断该软件是否与自己的需求相关。 1.1 编写目的 1.1.1 为开发人员、维护人员、客户之间提供共同的协议而创立基础,对企业管理软件功能的实现作使命描述。 1.1.2 本说明书的预期读者为客户、业务或需求分析人员、测试人员、用户文档编写者、项目管理人员。 1.2 背景及范围 1.2.1 工程的名称:汉语编程企业管理应用软件 1.2.2 工程产品的名称:汉语编程企业管理应用软件 1.2.3 工程的组织者:北京元易达科技发展有限责任公司 产品的生产者:汉语编程企业管理应用软件开发课题组 产品的设计者:汉语编程企业管理应用软件开发课题组 1.2.4 产品的所有权:汉语编程企业管理应用软件开发课题组 1.3 定义,术语,缩写词和略语 企业管理应用系统软件:它是由企业管理应用系统软件课题组完全自主开发的企业管理软件,以企业各部门为基本元素的、用汉语编程来实现其功能的软件。 需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。 需求分析:包括提炼,分析和仔细审查已收集到的需求,以确保所有的风险承担者都明其含义并找出其中的错误,遗憾或其它不足的地方。 模块的独立性:是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其他的模块的接口是简单的。 1.4 参考资料 《汉语程序设计语言》---- 沈志斌编著 电子工业出版社

软件开发案例分析需求模板汇总

E-Storage Management System Software Requirements Specification 电子化仓储管理系统软件需求规格说明书 版权所有不得复制 Copyright ? BroadenGate Technologies, Co., Ltd. All Rights Reserved

Revision Record 修订记录

Catalog 目录

错误!未找到引用源。 Keywords 关键词:仓储管理 Abstract 摘要:本文主要描述电子化仓储管理系统的设计需求,包括功能需求和性能需求,以及其他设计约束等。 List of abbreviations 缩略语清单:

1Introduction 简介 1.1Purpose 目的 1.2Scope 范围 本文档包含电子化仓储管理系统V1.0的对外接口和功能描述,以及和外部的约束关系。2General description 总体概述 2.1Software perspective 软件概述 2.1.1About the Project 项目介绍 2.1.2Environment of Pruduct 产品环境介绍 2.2User characteristics 用户特征 2.3Software function 软件功能 2.4Assumptions & Dependencies 假设和依赖关系 3Specific Requirements 具体需求

3.1Functional Requirements 功能需求 我们采用面向对象分析的方法来作为主要的系统建模方法,使用UML(Unified Modeling Language)作为建模语言。UML为建模活动提供了从不同角度观察和展示系统的各种特征的方法。在UML中,从任何一个角度对系统所作的抽象都可能需要几种模型来描述,而这些来自不同角度的模型图最终组成了系统的映像。 Use Case描述的是“actor”(用户、外部系统以及系统处理)是如何与系统交互来完成时,该模型将来可 派生出动态对象模型。 设计Use-case时,我们遵循下列步骤: 第一步: 识别出系统的管理员。管理员可以是用户、外部系统,甚至是外部处理,通过某种途径与系统交互。重要的是着重从系统外部执行者的角度来描述系统需要提供哪些功能,并指明这些功能的执行者是谁。尽可能地确保所有管理员都被完全识别出来。 第二步: 描述主要的Use Case。可以采取不断地问自己“这个管理员究竟想通过系统做什么?”来准确地描述Use Case。 第三步: 重新审视每个Use Case,为它们下了详尽的定义。 电子化仓库管理系统是通过对入库业务、出库业务、仓库调拨、库存调整业务信息的管理,提高仓库管理信息的实时性和准确性,达到即时库存管理的功能,并有效控制并跟踪业务的物流和成本管理全过程,实现完善的企业仓储信息管理。系统中设计了装箱算法,为客户提供合理有效的装箱方案,保证了货物集装箱的利用。本系统可以提供有关库存情况的准确信息,增强了作业的准确性和快捷性、减少了整个物流中由于商品误置、送错、偷窃、损害和库存、出货错误等造成的损耗,并最大限度减少存储成本。 总体功能时序图:(如图3-1所示)

软件工程--需求分析报告

文档编号:001 版本号:1.0 文档名称:需求分析 项目名称:学生智能管理系统 项目负责人:朱岩 项目组长:朱岩 组员:王增、皮素梅、潘鸯鸯、陈金龙、贾春阳 开发单位:西邮07级科技1班软件开发小组 一、引言: 1、编写目的:

对庞大的信息随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增长。有必要开发学生信息管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量,同时也可以方便学生对信息的获取。 学生信息系统也是实现学校管理现代化和信息化的重要内容。因此,学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段,并且,面对学生生活的不断丰富化,各种小方面管理软件的泛滥,身为学生以及考虑学校本身管理的多方面的统一。本小组所开发系统是基于C/S结构,使用Visual Basic程序设计语言及SQLServer2000数据库进行设计与开发。 本系统针对软件界面的人性化,生活化,做了突破性的工作,以及多项管理功能的集成上作了初步的拓展,目的在于使管理者和访问者易于甚至乐于接受,并提出学校管理系统的一体化概念,使学校的管理更有效率。 2、编写背景: 系统待开发的名称:学生智能管理系统 项目组长:朱岩 程序录入:朱岩、王增、皮素梅、 需求分析:朱岩、潘鸯鸯、陈金龙、皮素梅 软件测试:朱岩、王增、皮素梅、潘鸯鸯、陈金龙、贾春阳

本系统的用户:学生,老师,管理员 3、定义: (1)静态数据:系统内部有关的数据结构和操作规程 (2)动态数据:程序运行时输入和输出的数据 (3)数据字典:数据字典(DD,Data Dictionary)是关于数据流 程图中出现的所有名字(数据流、处理、数据存储) 的定义的集合。 4、参考资料: [1]张向宏.软件生命周期质量保证与测试.北京:电子工业出版 社.2009 [2]张海藩.软件工程导论.北京:清华大学出版社. 2005 [3]张焕君.基于VB和SQL的数据库编程技术.北京:清华大学出版 社.2008 二:任务概述: 1、目标: (1)给出软件系统的数据流程图和数据结构。 (2)提出详细的功能说明,确定设计限定条件,规定性能需求。(3)密切与用户的联系,使用户明确自己的任务,以便实现上述两项目标。 (4)以最低的成本,在最短的期限内开发出具有管理学生和学生信息

软件工程需求分析样例

. . . . 网上招聘系统需求规格 V1.0 长江软件公司 评审日期: 2006年3月12日

目录 1导言 (1) 1.1目的 (1) 1.2围 (1) 1.3缩写说明 (1) 1.4术语定义 (1) 1.5引用标准 (2) 1.6参考资料 (2) 1.7版本更新信息 (2) 2系统定义 (2) 2.1项目来源及背景 (2) 2.2项目要达到的目标 (3) 2.3系统整体结构 (3) 3应用环境 (4) 3.1系统运行网络环境 (4) 3.2系统运行硬件环境 (5) 3.3系统运行软件环境 (5) 4功能规格 (6) 4.1角色(Actor)定义 (6) 4.1.1应聘者 (6) 4.1.2管理用户 (6) 4.1.3数据库 (7)

4.2系统主Use Case图 (7) 4.3客户端子系统 (8) 4.3.1职位选择 (10) 4.3.2简历输入 (11) 4.3.3问卷回答 (11) 4.4管理端子系统 (11) 4.4.1登录管理 (13) 4.4.2题库管理 (15) 4.4.3试卷管理 (15) 4.4.4职位发布 (15) 4.4.5简历管理功能 (16) 4.4.6面试管理 (16) 4.4.7用户管理 (17) 5性能需求 (17) 5.1界面需求 (17) 5.2响应时间需求 (17) 5.3可靠性需求 (18) 5.4开放性需求 (18) 5.5可扩展性需求 (18) 5.6系统安全性需求 (18) 6产品提交 (18) 7实现约束 (19)

8签字 (19)

1导言 1.1目的 该文档是关于用户对于网上招聘系统的功能和性能的要求,重点描述了网上招聘系统的设计需求,将作为对该工具在概要设计阶段的设计输入。。 本文档的预期读者是: ●设计人员 ●开发人员 ●项目管理人员 ●测试人员 ●用户 1.2围 该文档是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决整个项目系统的“做什么”的问题。在这里,对于开发技术并没有涉及,而主要是通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的渠道。 1.3缩写说明 HR Human Resource(人力资源管理)的缩写。 JSP Java Server Page(Java服务器页面)的缩写,一个脚本化的语言。 UML Java Server Page(Java服务器页面)的缩写,一个脚本化的语言。 1.4术语定义 无

软件需求分析(案例答案)

案例one:教学管理系统(用例驱动的交互式需求获取) 以一个教学管理系统JXGL的分析与设计作为示例,说明用例驱动技术在软件项目开发中的应用。 高等学校的教学管理内容十分丰富,工作繁多。作为一个示例,规定开发教学管理系统JxGL只处理每学期的课程选修注册和学生的成绩管理。教学管理系统JXGL的用户是学校的学生、教师和教学管理员。学生使用JXG系统查询新学期将开设的课程和授课教师的情况,选择自己要学习的课程,并进行登记注册。学生还可以使用JXGL系统查询自己的课程成绩。教师使用JXGL系统查询新学期将开设的课程、参加听课的学生情况,以及学生的考试成绩。教学管理员使用JXGL系统进行教学管理,包括新学期的课程选课注册管理和学生成绩管理。 1.需求描述: 对教学管理系统JXGL要求提供两个方面的服务: (1)选课管理,负责新学期的课程选课注册工作; (2)成绩管理,负责学生成绩管理。 在选课管理方面应填写的用户需求描述如下。 (1)录入与生成新学期课程表 教学管理员在新学期开始前录入新学期课程,打印将开设的课程目录表,供师生参 考选择。若某课程的实际选课学生少于10人,则停开该课程,把该课程从课程目 录表中删除;若某课程的选课学生多于30人,则停止选课。 (2)学生选课注册 新学期开始前一周为选课注册时间,在此期间学生可以选课注册,并且允许改变或 取消注册申请。 每个学生选课不超过4门课程。每门课程最多允许30名学生选课注册。 学生可以在图书馆、各系资料室、学生宿舍等处的计算机上联网进行选课注册。在 选课注册结束后,教学管理员打印学生选课注册名单和开课通知书,送交有关部门 和授课教师。 (3)查询 可以查询课程信息、学生选课信息和学生、教师信息。 学生、教师、教学管理员可以查询课程表,获得课程信息。查询的关键词以是:课 程名,授课教师名,学分。 教师、教学管理员可以查询学生选课情况。查询的关键词可以是:学生名、程名, 授课教师名,学分。学生只允许查询自己的选课信息,不允许查询别人选课信息。 学生、教师、教学管理员可以查询学生或教师的信息。查询的关键词可以是学生名、 教师名,性别、班级、职称。 (4)选课注册信息的统计与报表生成。 教学管理员对学生的选课注册信息进行统计(按课程,按学生,按班级),印汇总统 计报表。 在成绩管理方面应填写的用户需求描述如下: (1)成绩录入:

软件工程需求分析文档.doc

软件工程 需求分析文档 项目名称:人事工资管理系统 概述(背景简介): 随着我国市场经济的快速发展,人事工资管理系统在企业的日常管理中发挥着越来越重要的作用。人事工资管理系统可以进行档案管理、奖罚管理和工资管理等,方便处理企业内部员工的相关工资信息。另外,为了更方便地查看员工工资信息,还可以通过水晶报表对工资信息进行打印。 系统分析(需求分析): 通过调查,要求本系统具有以下功能。

●良好的人机界面。 ●方便的添加和修改数据功能。 ●方便的数据查询。 ●方便的数据打印功能。 ●在相应的窗体中,可方便地删除数据。 ●数据计算自动完成,尽量减少人工干预。 总体设计: 项目规划 人事工资管理系统主要由人事管理、工资管理、用户管理和退出系统等模块组成,具体规划如下。 ●人事管理模块。该模块主要用于实现档案管理、 奖罚管理、调动管理和考评管理的功能。 ●工资管理。该模块主要用于实现考勤津贴和工资 总结的功能。

●系统管理。该模块主要用于实现部门管理和数据 备份的功能。 ●用户管理。该模块主要用于实现操作员管理,修 改口令和更改操作员的功能。 ●退出系统。该模块主要用于实现系统推出的功 能。 系统业务流程分析: 人事工资管理系统的业务流程图如下。

系统功能结构: 人事工资管理系统功能结构图如下。 系统设计: 设计目标 本系统属于中小型的数据库管理系统,可以对中小型企业人事工资进行有效管理。通过本系统可以实现一下目标: 灵活地录入数据,使信息传递更快捷;

●系统采用人机交互方式,界面美观友好,信息查询 灵活,数据存储安全可靠; ●实现员工奖罚信息管理; ●实现员工工资自动计算; ●实现员工考评调动管理; ●对用户输入的数据,进行严格的数据检验,尽可能 避免人为错误; ●系统最大限度地实现了易维护性和易操作性。 开发及运行环境 ●系统开发平台:Microsoft Visual Studio2005。 ●系统开发语言:C#。 ●数据库管理系统软件:SQL Server 2000。 ●运行平台:Windows XP(SP2)/ Windows 2000 (SP4)。 ●运行环境:https://www.sodocs.net/doc/5e8609385.html, Framework SDK v2.0。 ●分辨率:最佳效果1024*768像素。

软件工程需求分析报告

软件工程需求分析报告 学院:数统学院 班级:数学与应用数学02班 姓名:张双诚 学号: 学生成绩管理系统需求分析 1引言 1、1编写目的 学生成绩管理系统就是面向学生的,目的就是提高学校对学生的管理。本系统主要包括六个模块:学生的基本信息、课程的基本信息、登录、成绩录入、成绩查询与汇总功能,这六个模块基本实现设计本系统的目的,从而可以进一步满足学校对管理系统的要求。 现在的学生成绩管理系统功能不够,所以我们要明确用户对学生成绩管理系统的功能与性能的需求,并将这些需求用语言编写出来。并使系统开发者与学生对此成绩管理系统有共同的理解与认识。这就是开发学生成绩管理信息系统的基础 为了更好的开发,对系统的设计要详细。开发的系统要简单实用。 1、2 项目背景 项目名称为:学生成绩管理信息系统。并分为六个模块学生的基本信息、课程的基本信息、登录、成绩录入、成绩查询与汇总功能。本项目的提出者与开发者都就是学生成绩管理系统软件开发组 1、3术语说明 MIS: 管理信息系统 Transaction Processing : 事务处理 Data Acquisition :数据采集

Data Processing Circle : 数据处理流程 Data Processing:数据处理 1、4 参考资料 《软件工程案例教程》…毕硕本卢桂香编著北京大学出版社 《Vista Bisic语言程序设计》…刘韬编著人民邮电出版社 2 项目概述 2、1待开发软件的一般概述 此软件的目的就是提高学校对学生的科学化管理,为学校的学生成绩管理系统进行优化。 2、2待开发软件的功能 此软件的功能就是系统管理者对学生的基本信息、成绩输入、成绩查询、修改并定时更新学生的信息。学生能够通过一些条件对自己的成绩进行查询;老师能够对学生的成绩进行查询与修改。

物流管理系统需求报告软件工程范例.doc

物流管理系统需求报告(第三版) 开发组号:第一组keepalived 小组组长:苏日娜00613068 小组成员:胡萨日娜00518105符广勇00613050唐山山00613057 李杰00613063 代山丹00613074 邱广波00613070 张儒林00613075 冯献勇00613080 马淑君00613081 2009年8月26日

引言 1.1 编写目的:1.2 项目背景:1.3 定义: 1.4 参考资料: 2 任务概述 2.1 目标 2.2 可行性分析 2.3 运行环境 3 数据描述 3.1 表态数据 3.2 动态数据:3.3 数据库描述:3.4 数据词典 3.5 数据采集 4 功能需求 4.1功能划分 4.2功能描述 5 性能需求 5.1 数据精确度5.2 时间特性:5.3 适应性:

6 运行需求 6.1 用户界面: 6.2 硬件接口 6.3 软件接口 6.4 故障处理 7 其他需求 1 引言 1.1 编写目的: 使该工程能按照计划顺利的进行,而编写的分析报告。并且可以保证体统在开发过程中出现的错误能有根可寻。还可以使用户更好的了解和使用本系统,为以后的设计做准备。 1.2 项目背景: 随着公司规模的不断扩大,产品种类的不断增多,越来越多的公司在产品和原材料的调拨方面变得更加复杂,困难。物流企业的传统经营模式和概念已不能适应市场需要,企业必须通过引入先进技术和知识来重新组织其运输过程,提高企业信息化水平,增强企业竞争力。信息技术也已经渗透到各行各业,使物流业也逐渐向专业化方向发展,物流公司孕育而生。但是不同的物流公司特点各不相同,为了方便企业寻找到适合自己的产品运送的物流公司。我们准备开发一个开放、标准、高效的物流公共信息平台,提供各个物流公司费用等信息

软件工程-需求分析文档示例

网上选课系统分析文档 第1章引言 1.1 编写目的 网上选课管理系统作为管理管理员与用户的选课关系的主要管理系统平台,其对应的读者是企业用户,因此,不仅要处理管理员与用户之间的信息,还要处理用户个人信息。导致网上选课管理系统中的数据不论是结构、类型还是彼此间的关联都是复杂多变的:对这种数据进行的处理也是多种多样的。因此,要实现对网上选课管理系统数据的及时、准确的处理和有效利用。 1.2 术语(该系统所在行业和领域上的术语) https://www.sodocs.net/doc/5e8609385.html,是建立在微软新一代.NET平台架构上的,提供开发者一种灵活的方式进行的Web开发以及创建Web服务。 1.3 参考文献(参考的文档) ASP+SQL Server2005项目开发从入门到精通 ASP动态网站设计经典案例 https://www.sodocs.net/doc/5e8609385.html,网站开发 https://www.sodocs.net/doc/5e8609385.html,网页设计与网站开发 第2章系统概述 2.1 系统说明 本系统可以方便教师开设课程和学生选课,方便教师与学生之间的交流。 利用网站实现教师开课的网络化,学生选课的网络化,教师评定学生成绩的网络化等,提高教师和学生的效率,降低管理的成本。 2.2 系统任务 2.2.1 系统目标 课程信息的管理:包括课程的录入,修改和删除等 教师信息的管理:包括教师信息的录入,修改和删除等 学生信息的管理:包括学生信息的录入,修改和删除等 学生网上选课的管理:包括学生通过浏览器进行选课,取消选课,查询选课及修改登陆密码等 2.2.2 运行环境 SQL Server—Application Server DB Server Browser .NET Framework IIS 2.2.3 与其它系统关系 无 2.3 需求规定 2.3.1 功能需求 公用模块: ①登陆:实现身份验证,根据不同身份跳转入不同的页面 ②密码修改:实现个人的密码修改功能 ③退出系统:实现用户注销并退出系统 管理员模块: ①查看学生信息,新增、修改或删除学生信息 ②查看学生信息,新增、修改或删除教师信息 ③查看学生信息,新增、修改或删除课程信息 ④查看学生信息,新增、修改或删除院系信息 ⑤查看学生信息,新增、修改或删除专业信息 ⑥设定课程的上课老师及地点 学生模块: ①查看修改个人信息 ②查看所有选课的信息并选课 ③修改所选课程 ④查看个人选课的成绩和学分(查看选课信息[成绩及学分] 选课退选[弹出窗口是否确定]) ⑤退选 教师模块: ①查看修改个人信息 ②查看所教课程 ③为学生录入分数及修改 ④查看所教课程的学生 2.3.2 性能需求 系统响应时间2-5秒 并发用户2000人

软件工程-需求分析文档详细范例

需求规格说明书 更改记录 *修改类型分为A - ADDED M - MODIFIED D– DELETED 文档编号: 目的:定义软件需求,为后期的设计打下基础背景、备注: 定义: 参考: 1概述 客户是公司最宝贵的资源,为了更好的发掘老客户的价值,并开发更多新客户,XX公司决定实施客户关系管理系统。希望通过这个系统完成对客户基本信息、联系人信息、交往信息、客户服务信息的充分共享和规范化管理;希望通过对销售机会、客户开发过程的追踪和记录,提高新客户的开发能力;希望在客户将要流失时系统及时预警,以便销售人员及时采取措施,降低损失。并希望系统提供相关报表,以便公司高层随时了解公司客户情况。 客户服务是一个涉及多个部门,存在一定流程的工作。客户服务水平的高低决定着公司的核心竞争力。该客户关系管理系统应提供一个客户服务在线平台,使客户服务处理过程中相关人员可以在线完成服务的处理和记录工作。 1.1目的 本文档是武汉信息技术有限公司在与XX公司的客户关系管理系统实施合同基础上编制的。本文档的编写为下阶段的设计、开发提供依据,为项目组成员对需求的详尽理解,以及在开发开发过程中的协同工作提供强有力的保证。同时本文档也作为项目评审验收的依据之一。

1.2范围 主要是XX公司的销售主管、客户经理及其管理员用来管理语客户相关的信息与活动。 1.3背景 客户关系管理系统用于管理与客户相关的信息与活动,但不包括产品信息、库存数据与销售活动。这三类数据将由XX公司X销售系统进行管理。 1.4用户与角色 系统管理员: 管理系统用户、角色与权限,保证系统正常运行。 销售主管: 对客户服务进行分配。 创建销售机会。 对销售机会进行指派。 对特定销售机会制定客户开发计划。 分析客户贡献、客户构成、客户服务构成和客户流失数据,定期提交客户管理报告。 客户经理: 维护负责的客户信息。 接受客户服务请求,在系统中创建客户服务。 处理分派给自己的客户服务。 对处理的服务进行反馈。 创建销售机会。 对特定销售机会制定客户开发计划。 执行客户开发计划。 对负责的流失客户采取“暂缓流失”或“确定流失”的措施。 高管: 审查客户贡献数据、客户构成数据、客户服务构成数据和客户流失数据。

软件需求分析报告书实例

需求分析说明书 1. 引言 (3) 1.1 编写目的 (3) 1.2 项目风险 (3) 1.3 预期读者和阅读建议 (5) 1.4 产品范围 (5) 1.5 参考文献 (5) 2. 系统总体概述 (6) 2.1 目标 (6) 2.2 用户类和特性 (7) 2.3 运行环境 (7) 2.3.1 硬件环境 (7) 2.3.2 软件环境 (7) 2.4 设计和实现上的限制 (7) 2.5 假设和约束(依赖) (8) 2.5.1 产品的SEO排名 (8) 2.5.3系统的安全 (8) 3. 外部接口需求 (8) 3.1 用户界面 (8) 3.2 硬件接口 (8) 3.3 软件接口 (8) 3.4 通讯接口 (9) 4. 系统特性 (9) 4.1 说明和优先级 (9) 4.2 激励/响应序列 (9) 4.3 功能需求 (9) 4.4 功能详述 (12) 4.4.1以使用软件的汽车用户为例: (12) 5. 其它非功能需求 (13) 5.1 性能需求 (13) 5.2 安全措施需求 (13) 5.3 安全性需求 (14) 5.4 操作需求 (14) 5.5 软件质量属性 (14) 5.6 业务规则 (14) 5.7 用户文档 (14) 6. 词汇表 (14) 6.1 SSH (14)

6.2 JAVA (14) 6.3 MYSQL (15) 7. 待定问题列表 (15)

1. 引言 1.1 编写目的 本需求分析说明书对本项目第一阶段的内容进行分析,对需求细节和实现方式进行了较为详细的阐述。本需求说明书供业务和科技部门人员、软件需求提供人员、软件的概要设计人员、软件的开发人员、软件的测试人员使用,并作为产品验收确认的依据。 需求分析是在可行性研究的基础上,将用户对系统的描述,通过开发人员的分析概括,抽象为完整的需求定义,再形成一系列文档的过程。可行性研究旨在评估目标系统是否值得去开发,问题是否能够解决,而需求分析旨在回答"系统做什么"的问题,确保将来开发出来的软件产品能够真正满足用户的需要。 构建一个软件系统最困难的工作是确定构建什么。其他任何工作都不会像这部分工作那样,在出错之后会如此严重地影响随后实现的系统,并且在以后修补竟会如此的困难。 需求分析是一个非常重要的过程,它完成的好坏直接影响后续软件开发的质量。一般情况下,用户并不熟悉计算机的相关知识,而软件开发人员对相关的业务领域也不甚了解,用户与开发人员之间对同一问题理解的差异和习惯用语的不同往往会为需求分析带来很大的困难。所以,开发人员和用户之间充分和有效的沟通在需求分析的过程中至关重要。 有效的需求分析通常都具有一定的难度,一方面是因为交流存在障碍,另一方面是因为用户通常对需求的陈述不完备、不准确和不全面,并且还可能不断地变化。开发人员不仅需要在用户的帮助下抽象现有的需求,还需要挖掘隐藏的需求。此外,把各项需求抽象为目标系统的高层逻辑模型对日后的开发工作也至关重要。合理的高层逻辑模型是系统设计的前提。 在进行需求分析的过程中,首先要明确需求分析应该是一个迭代的过程。由于市场环境的易变性以及用户本身对于需求描述的模糊性,需求往往很难做到一步到位。需求分析不仅仅是属于软件开发生命周期早期的一项工作,而且还应该贯穿于整个生命周期中,它应该随着项目的深入而不断地变化。 此外,为了方便后续的评审和测试等工作,需求的描述应该尽量做到:具体、详细、可以测量和可以实现,并且基于时间。 1.2 项目风险 政策风险分析: 随着社会的进步与人们生活水平的提高大幅度增加,尤其在我国汽车进入家庭的条件下,需要更多的适合现代汽车技术要求和社会经济承受能力的汽车维修检测设备,为了让四轮定位仪市场变得规范、有序,中国汽车保修设备行业协会与全国汽车维修标准化技术委员会于2004年,制定了四轮定位仪的行业标准(标准号JT/T505-2004),国家交通部2004年国标GB/T16739.1-.2-2004《汽车维修业开业条件》规定:一、二类汽车维修企业必须配备

软件工程--需求分析说明书

文档名称:需求分析 项目名称:学生成绩管理系统 项目负责人:马永刚 项目组长:马永刚 全体组员:马永刚、段晓腾、韩昊彭、胡立仁、杨超、张丽萍开发单位:西邮07级科技01班软件开发小组

一、引言 1.编写目的: 运用软件对学生的成绩进行管理,科学而有效,不仅可以减少教师的工作量,方便学校对于所有学生的成绩进行系统的管理,而且便于学生适时的查询自己的成绩。一款优秀的学生成绩管理软件,正好可以满足当前的市场需求,取得一定的经济效益。本软件就是针对此种情况和客户需求而开发。本说明书明确了客户的各项需求,为程序开发人员明确了所开发软件应具有的功能和注意事项。2.项目背景: 委托单位:无委托单位,适用于小规模学校 开发单位:西邮07级科技01班第4软件开发小组 主管部门:西邮07级科技01班第4软件开发小组 系统待开发的名称:学生成绩管理系统 本软件运行平台:windows2000, windows XP, windows Vista..... 3.定义: VB是Visual Basic的简写,是可视化的编程语言。是一种简单、高效地开发应用软件的工具。 SQL (Structured Query Language)是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。 数据流图简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法 的主要表达工具及用于表示软件模型的一种图示方法。 E-R图(Entire and Relation)为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。 数据字典(Data dictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。主动数据字典是指在对数据库或应用程序 结构进行修改时,其内容可以由DBMS自动更新的数据字典。 被动数据字典是指修改时必须手工更新其内容的数据字典。 静态数据系统内部有关的数据结构和操作规程。 动态数据程序运行时输入和输出的数据。

软件工程课程设计案例

网上招聘系统分析设计

目录 第一章网上招聘系统需求规格说明书 .................................. - 3 -第二章软件项目的概要设计说明书 (16) 第三章网上招聘系统详细设计 (51) 第四章软件项目的编码案例说明 (64) 第五章网上招聘系统客户端系统测试计划 (71) 第六章网上招聘系统客户端系统测试设计 (75) 第八章网上招聘系统客户端系统测试报告 (92)

第一章网上招聘系统需求规格说明书 1.导言 1.1 目的 该文档是关于用户对于网上招聘系统的功能和性能的要求,重点描述了网上招聘系统的功能需求,是概要设计阶段的重要输入。 本文档的预期读者是: ·设计人员; ·开发人员; ·项目管理人员; ·测试人员; ·用户。 1.2 范围 该文档是借助于当前系统的逻辑模型导出目标系统的逻辑模型的,解决整个项目系统的“做什么”的问题。在这里,没有涉及开发技术,而主要是通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的平台。 1.3 编写说明 HR,Human Resource(人力资源管理)的缩写。 JSP,Java Server Page(Java服务器页面)的缩写,一个脚本化的语言。 UML,Unified Modeling Language(统一建模语言)的缩写,是一个标准的建模语言。 1.4 术语定义 无 1.5 引用标准 [1]《企业文档格式标准》,****************有限公司软件工程过程化组织 [2]《需求规格报告格式标准》,************有限公司软件工程过程化组织 1.6 参考资料 [1]《UML说明》,***********************软件有限公司 [2]《需求规格报告格式标准》,************公司软件工程过程化组织 1.7 版本更新信息 本文档的更新记录如表A-1所示。 表A-1 版本更新记录 修改编号修改日期修改后版本修改位置修改内容概述 001 002 003 004 005 2008.9.5 2006.9.10 2006.9.15 2006.9.16 2006.10.18 0.1 0.2 0.3 0.4 1.0 全部 第3.1节 第4.1节 第5.1节 第7章 初始发布版本 增加 修改 修改 增加 2.系统定义 我们分别阐述一下项目的来源、背景,项目的用户特点和项目的目标。 2.1 项目来源及背景 本项目是为北京某公司开发的一个网上招聘系统,由于这个公司的规模比较大,需要 招聘的员工也很多,每次招聘总能收到成千上万的简历,如何挑选合适的应聘者常常是公司

相关主题