当前位置:文档之家› 软件例题

软件例题

概述1、假设要求你开发一个软件,该软件的功能是把读入的浮点数开平方,所得的的结果应该精确到小数点后4位。

一旦实现并测试完之后,改产品将被抛弃。

你打算选用哪种软件生命周期模型?请说明你作出选择的理由。

对这个软件的需求很明确,实现开方功能的算法也很成熟,因此,既无须通过原型来分析需求也无须用原型来验证设计方案。

此外,一旦实现并测试完之后,该产品将被抛弃,因此也无须使用有助于提高软件可维护性的增量模型或螺旋模型来开发该软件。

综上所述,为了开发这个简单的软件,使用大多数人所熟悉的瀑布模型就可以了。

2、假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的字处理软件的新版本开发。

由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。

你打算采用哪种软件生命周期模型?为什么?对这个项目的一个重要要求是,严格按照已对外公布了的日期完成产品开发工作,因此,选择生命周期模型时应该着重考虑哪种模型有助于加快产品开发的进度。

使用增量模型开发软件时可以并行完成开发工作,因此能够加快开发进度。

这个项目是开发该公司已被广泛使用的字处理软件的新版本,从上述事实至少可以得出3点结论:第一,旧版本相当于一个原型,通过收集用户对旧版本的反映,较容易确定对新版本的需求,没必要再专门建立一个原型系统来分析用户的需求;第二,该公司的软件工程师对字处理软件很熟悉,有开发字处理软件的丰富经验,具有采用增量模型开发新版字处理软件所需要的技术水平;第三,该软件受到广大用户的喜爱,今后很可能还要开发更新的版本,因此,应该把该软件的体系结构设计成开放式的,以利于今后的改进和扩充。

综上所述,采用增量模型来完成这个项目比较恰当。

1、什么是软件工程?2、什么是软件过程?它与软件方法学的关系?3、用自己的语言来比较瀑布模型与原形模型?分析两种模型产生的必然性。

需求分析简单例子:(订货系统)一家工厂的采购部每天需要一张订货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。

对于需要再次订货的零件应该列出编号、名称、数量、价格、主要供应商等内容。

零件的出入库称为事务,通过放在库房的CRT终端把事务报告给订货系统。

当某种零件的库存量少于库存临界值时就应该再次订货。

对本例来说念完第一遍应该确定:(用心去读)采购部或者采购员是外部实体(数据汇点),它的输入数据流是订货报表。

CRT终端或者仓库管理员是外部实体(数据源点),它的输出数据流是事务。

再次阅读可知:事务有类型,需要根据不同情况处理;----处理事务对各类事务要更改库存信息;对出库事务当库存量少于临界值时,要产生订货信息。

订货信息不同于订货报表,报表要有严格的格式。

------产生报表接下来的细化因人而异:-----就是说允许不同事务来了应该先接收,再按类别更新库存清单,最后对更新后库存量少于临界值的产生订货。

-----分为三个处理,各处理间的数据流比较简单。

1.产生报表需要分解吗?2.一个指导性的原则是当功能为原子功能时就不需再分解了,那么什么是原子功能?3.当对功能的进一步细化涉及到具体实现时,就认为无需细化。

数据流图画法总结1.先找出数据源点和汇点。

它们是外部实体,由它们确定系统与外界的接口。

2.找出外部实体的输出数据流与输入数据流。

画出顶层数据流图。

3.从顶层加工出发,逐步细化,画出所需子图。

4.分析系统的主要处理功能,把每一个处理功能作为一个加工,并且确定它们之间的数据流入、流出关系,画出第一层数据流图。

5.对流图中的每个加工进行细化,画出所需的子图,直到加工不需再分解为止。

6.按照前面给出原则检查和修改每一层数据流图和子图。

分层法绘制流程图的注意事项:1.数据流图上所有图形符号只限于前述四种基本图形元素。

2.数据流图的主图上的数据流必须封闭在外部实体之间。

3.每个加工至少有一个输入数据流和一个输出数据流。

4.初画时可以忽略琐碎的细节,以集中精力于主要数据流。

5.在数据流图中,需按层给加工框编号。

编号表明该加工所处层次及上下层的亲子关系。

6.规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。

此即父图与子图的平衡。

----细化时应该注意,不能添加和丢失输入、输出数据流。

7.图上每个元素都必须有名字8.数据流图中不可夹带控制流办公室复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接受复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员排除故障,故障排除后回到闲置状态。

数据字典例题:某程序设计语言规定,用户说明的标识符是长度不超过8个字符的字符串,其中第一个字符必须是字母字符,随后的字符既可以是字母字符也可以是数字字符。

使用上面讲过的符号,我们可以像下面那样定义标识符:标识符=字母字符+字母数字串字母数字串=0{字母或数字}7字母或数字=[字母字符|数字字符]由于和项目有关的人都知道字母字符和数字字符的含义,因此,关于标识符的定义分解到这种程度就可以结束了。

录入统计计算某班学生成绩,画出数据流图(DFD)。

学生成绩表数据结构如下:学号| 高数| 物理| 英语| 计算机| 法律常识| 总分| 平均分| 不及格门数| 升留补|需求功能如下:1. 录入全班学生各课的考分,生成成绩表;2. 检查各课成绩,修改错误,补充未录入成绩,删除非法成绩;3. 计算总分,平均分;4 .统计不及格门数,然后再写入升级、补考、留级;5. 打印成绩通知单,交家长。

总体设计下面是一个简单的例子。

某装配厂有一座存放零件的仓库,仓库中现有的各种零件的数量以及每种零件的库存量临界值等数据记录在库存清单主文件中。

当仓库中零件数量有变化时,应该及时修改库存清单主文件,如果哪种零件的库存量少于它的库存量临界值,则应该报告给采购部门以便定货,规定每天向采购部门送一次定货报告。

该装配厂使用一台小型计算机处理更新库存清单主文件和产生定货报告的任务。

零件库存量的每一次变化称为一个事务,由放在仓库中的CRT终端输入到计算机中;系统中的库存清单程序对事务进行处理,更新存储在磁盘上的库存清单主文件,并且把必要的定货信息写在磁带上。

最后,每天由报告生成程序读一次磁带,并且打印出定货报告。

事务随时可能发生,因此处理1.1(“接收事务”)必须是联机的;采购员每天需要一次定货报表,因此处理2(“产生报表”)应该以批量方式进行。

D3 可以联机地接收事务并放入队列中D2 更新库存清单、处理定货和产生报表以批量方式进行处理2将以批量方式产生定货报表改变自动化边界,把处理1.1,1.2和1.3放在同一个边界内,这个系统将联机地接收事务、更新库存清单和处理定货及输出定货信息;变换部分的精化1)首先,应该了解:对于变换部分的求精,是一项具有挑战性的工作。

其中主要是根据设计准则,并要通过实践,不断地总结经验,才能设计出合理的模块结构。

2)就给定的数字仪表板系统而言,如果把“确定加/减速”的模块放在“计算速度mph ”模块下面,则可以减少模块之间的关联,提高模块的独立性。

通过这一求精,可以得到如下的模块结构图:(右图) 进一步分解输出部分的模块结构图为:通过以上讨论,可以看出:在总体设计中(1)将一个给定的DFD转换为初始的模块结构图基本上是一个“机械”的过程,一般体现不了设计人员的创造力;(2)优化设计-将一个初始的模块结构图转换为最终的模块结构图,对设计人员将是一种挑战,其结果将直接影响软件系统开发的质量。

教材购销系统主要功能根据学校的教学计划,向选课的学生及时供应所需教材①审查学生购书单有效性,对有效书单发售教材;②对属于计划供应但暂时缺货的教材进行登记根据缺书登记补充采购所缺的教材,通知学生补购①将缺书登记表汇总为待购教材计划;②待购教材到货后,及时通知学生补购顶层DFD二层DFD—销售子系统二层DFD—采购子系统“教材购销系统”的基本加工(1)“教材购销系统”数据流图中共有八个基本加工:1.1 审查有效性(1)查询“学生用书表”和“售书登记表”;(2)将不合要求的购书单(无效书单)退回学生;(3)将“有效购书单”送下一步“开发票”处理。

1.2 开发票(1)根据“有效购书单”和“补售书单”,查询“教材存量表”;(2)若教材存量中有“有效购书单”上的书,开出“发票”,送下一步“登记并开领书单”处理;若教材存量中无“有效购书单”上的书开出“暂缺书单”,送下一步“登记缺书”处理;1.3 登记并开领书单(1)根据“发票”开出“领书单”交给学生;(2)同时修改“售书登记表”。

1.4 登记缺书根据“暂缺书单”修改“缺书登记表”。

1.5 补售教材(1)根据“缺书登记表”开出“缺书记录”送“采购子系统”。

(2)根据“进书通知书”开出补售书单送下一步“开发票”处理。

2.1 按书号汇总缺书根据“缺书记录”查询“教材存量表”,按书号排序汇总缺书,生成“待购教材表”文件。

2.2 按出版社统计缺书根据“待购教材表”和“教材一览表”按出版社汇总生成“汇总缺书单”送书库保管员。

2.3 修改教材存量和待购量(1)输入“进书通知单”;(2)根据“进书通知单”修改“教材存量表”和“待购教材表”;(3)同时将“进书通知单”送下一步“销售教材”处理。

.数据字典中各项内容的定义1.数据项:是数据元素的最小单位,是不能再分的基本数据元素。

如“姓名”、“学号”等。

数据项是对数据静态特性的定义,内容包括:数据项的名称、别名、类型、简述、取值范围和长度等。

例如:“教材存量表”中的数据项“库存量”2.数据流(1)数据流表示:利用特定的符号,列出组成数据流中的各数据项。

(2)在数据字典中,数据流除包括名称和组成它的数据项外,还应指明它的来源、去向和流通量等。

例如:发票。

3.数据存储(1)数据存储是数据停留或保存的场所,在数据字典中,数据存储只描述数据的逻辑存储结构,而不涉及它的物理组织。

(2)数据存储的组成:编号、名称、简述、关键字和相关联的处理等。

例如4.外部项(实体):它是软件之外的实体(人、物或其它软件系统).例如:学生。

“教材购销系统”IPO图P54页第5题:电话号码=【校内电话号码|校外电话号码】校内电话号码=非零数字+3位数字校外电话号码=【本市号码|外地号码】本市号码=数字零+8位数字外地号码=数字零+3位数字+8位数字非零数字=【1|2|3|4|5|6|7|8|9】数字零=03位数字=3{数字}3 8位数字=非零数字+7位数字7位数字=7{数字}7 数字=[0|1|2|3|4|5|6|7|8|9]63页第三题P63页第5题数据流图:使用SD方法给出教材购销系统中销售子系统的软件结构图. 细化并修改DFD图详细设计练习题:用N-S图、PAD图表示普调工资。

相关主题