




已阅读5页,还剩80页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SOFTWAREENGINEERING 第2章问题定义和可行性研究 SOFTWAREENGINEERING 2 1问题定义 2 1 1问题定义阶段的主要任务弄清用户需要计算机解决问题根本所在 及项目所需的资源和经费 2 1 2所需时间当系统要求较少并且不太复杂时 一 两天就可以完成 当系统要求比较大并且复杂时 要组织一个问题定义小组 花费一 两个星期的时间 SOFTWAREENGINEERING 2 1问题定义 2 1 3文档 系统目标和范围说明书 内容 1 项目名称 2 问题描述 3 项目目标 解决现行系统存在的问题 4 项目范围 5 可行性研究 SOFTWAREENGINEERING 2 1问题定义 2 1 4实例某校教材销售系统 系统目标和范围说明书 项目 教材销售系统问题 人工发售教材手续烦琐 易出错项目目标 建立一个高效率 无差错的微机教材销售系统项目范围 利用现有微型计算机 软件开发费用不超过15000元初步设想 建议在系统中增加对缺书的统计与采购功能可行性研究 建议进行大约5天的可行性研究 研究费用不超过1000元 SOFTWAREENGINEERING 2 2可行性研究 2 2 1可行性研究阶段的主要任务用最小的代价在尽可能短的时间内确定问题是否能够解决 SOFTWAREENGINEERING 2 2可行性研究 2 2 2内容 1 技术可行性 使用现有的技术能实现这个系统吗 对用户要求的功能 性能以及实现系统的各项约束条件进行分析 看是否能够作成一个可接受的系统 现行系统调查 基本功能 存在的问题 运行费用 与其他系统的接口 资源分析 是否能够得到需要的软件 硬件资源 系统开发所需的各类人员 管理人员 专业技术人员 工作环境 风险分析 在给定约束条件下 判断能否设计并实现系统所需的功能和性能 技术分析 分析当前的科学技术是否支持系统开发的全过程 SOFTWAREENGINEERING 2 2可行性研究 2 2 2内容 2 经济可行性 这个系统的经济效益能超过它的开发成本吗 估计开发费用以及新系统可能带来的收益 将两者进行权衡 看结果是否可接受 成本 效益分析 3 操作可行性 系统的操作方式在这个用户组织内行得通吗 软件能否被有效的使用 开发过程中能否得到用户方的必要支持 软件使用所带来的影响用户方能否接受 SOFTWAREENGINEERING 2 2可行性研究 2 2 3步骤 1 复查系统规模和目标 2 研究目前正在使用的系统 3 导出新系统的高层逻辑模型 4 重新定义问题 5 导出评价供选择的解法 6 推荐行动方针 7 草拟开发计划 8 书写文档提交审查 SOFTWAREENGINEERING 9 360 2 2可行性研究活动 3 3 How How SOFTWAREENGINEERING 2 2可行性研究 2 2 4文档 系统开发计划 阅读对象 系统开发的主管部门 软件技术人员和用户内容 1 引言 编写的目的 背景 引用的参考文献 2 项目概述 工作内容 条件及限制 产品及成果 运行环境 验收标准 3 实施计划 任务分解 工作进度安排 成本预算 关键问题 资源计划 4 人员组织及分工 5 交付期限 6 专题计划要点 SOFTWAREENGINEERING 2 2可行性研究 资源计划 人力资源 系统分析员 管理人员 专业技术人员 硬件资源 宿主机 在软件开发阶段使用的计算机和有关外部设备 目标机 指运行所开发软件的计算机和外部设备 专用软件开发时 所需的特殊硬件设备 如过程控制软件所需的D A A D转换器等专用设备 软件资源 支持软件 操作系统 编译程序 数据库 图形包等 实用软件 可复用的软件部件库 SOFTWAREENGINEERING 2 2可行性研究 2 2 5实例某校财务处工资管理系统开发计划1 引言本项目开发计划是为某校工资管理系统的开发而编写的 主要阐明系统开发过程中人员的组织分配 项目开发进度 开发过程中的关键问题 应交付用户的产品及时间等 SOFTWAREENGINEERING 2 2可行性研究 2 2 5实例某校财务处工资管理系统开发计划2 项目概述2 1工作内容本项目工作主要分为三个阶段 第一阶段为系统分析阶段 主要对项目的可行性及用户需要进行分析 并编写文档 第二阶段为系统设计阶段 包括对软件的总体和详细设计阶段以及程序代码编写 第三阶段为测试阶段 并写出测试分析报告 项目开发总结报告 2 2条件与限制目前本项目开发所需的软件 硬件均已具备 没有其他的条件限制 SOFTWAREENGINEERING 2 2可行性研究 2 2 5实例某校财务处工资管理系统开发计划2 3产品工资管理系统 FOXPRO程序主要功能 收集数据 将每个职工的水电费数据收集起来 工资核算 根据扣款及水电费计算出当月应发工资和实发工资 打印工资 产生工资总表 工资分类表等各种统计报表 SOFTWAREENGINEERING 2 2可行性研究 2 2 5实例某校财务处工资管理系统开发计划2 4运行环境硬件 486以上微机 LQ 1600打印机各一台软件 WINDOWS95以上操作系统平台2 5验收标准 1 输入测试计划中所有测试用例 结果符合测试计划的要求 2 用户对系统界面满意 SOFTWAREENGINEERING 2 2可行性研究 2 2 5实例某校财务处工资管理系统开发计划3 实施计划3 1任务分解 SOFTWAREENGINEERING 2 2可行性研究 2 2 5实例某校财务处工资管理系统开发计划3 2进度3 3预算硬件资源 586微机一台 打印机一台 软件资源 WINDOWS操作系统 VISUALFOXPRO数据库管理系统成本估算 设备费1 2万元 开发费1万元 共2 2万元3 4关键问题 1 程序员与编程语言的熟练程度 2 程序员对需求说明书的理解程度 3 编码阶段程序员工作是否受到干扰 4 系统分析员文档提交是否及时 SOFTWAREENGINEERING 2 2可行性研究 2 2 5实例某校财务处工资管理系统开发计划4 人员组织及分工系统分析员1名 负责系统分析 程序员1名 负责程序编写及测试 5 交付期限XX年XX月XX日 SOFTWAREENGINEERING 2 2可行性研究 2 2 6文档 可行性研究报告 内容 概述 用户名称 拟建系统名称 开发单位名称系统目标 近期目标 长期目标现行系统描述存在的主要问题建议的新系统结论系统开发计划 SOFTWAREENGINEERING 2 2可行性研究 2 2 7系统分析员 1 分析员的责任是用户和管理人员的顾问 从各个方面收集数据和信息 应作综合解答 准备文档和管理报告 负责软件需求规格说明的开发 参与评审 SOFTWAREENGINEERING 2 2可行性研究 2 2 7系统分析员 2 分析员的素质熟悉计算机技术 有能力从互相冲突或混淆的原始材料中提取合理部分 了解有关用户领域知识 知识面广 有良好的口头 书面表达能力 有抽象 创造性思维能力 能分清主次 能 有树见林 SOFTWAREENGINEERING 2 3系统流程图 2 3 1定义 系统流程图是描绘物理系统的传统工具 基本思想 是用图形符号以黑盒子形式描绘系统里面的每个部件 程序 文件 数据库 表格 人工过程等 系统流程图表达的是信息在系统各部件之间流动的情况 而不是对信息进行加工处理的控制过程 注意 他不同于程序流程图 SOFTWAREENGINEERING 2 3系统流程图 2 3 2符号 1 基本符号处理输入 输出数据流 SOFTWAREENGINEERING 基本符号 SOFTWAREENGINEERING 2 3系统流程图 2 系统符号把广义的输入 输出操作具体化为读 写存储在特殊设备上的文件 或数据库 把一般的处理具体化为特定的程序或手工操作等 SOFTWAREENGINEERING 系统符号 SOFTWAREENGINEERING 2 3系统流程图 2 3 3符号使用当以概括的方式抽象的描绘一个物理系统时 仅使用基本符号就够了 当需要更具体的描绘一个物理系统时 还需使用系统符号 SOFTWAREENGINEERING 2 3系统流程图 2 3 4实例某装配厂有一放零件的仓库 仓库中现有的各种零件的基本信息及库存量临界值记录在库存清单主文件中 当库存量有变化时 应及时修改库存清单主文件 若库存量小于临界值 报告给采购部门 每天送一次定货报表 该厂使用一台计算机处理更新库存清单主文件和产生定货报表的任务 零件库存量每一次变化称为一个事务 由CRT终端输入计算机 系统中的库存清单程序对事务进行处理 更新存储在磁盘上的库存清单主文件中 并且把必要的定货信息写在磁带上 最后 每天由报告生成程序读一次磁带 并且打印出定货报告 SOFTWAREENGINEERING 库存清单系统的系统流程图 SOFTWAREENGINEERING 作业 画出下述系统的系统流程图 考虑一个修改磁带上主文件的系统 文件管理员把修改信息穿孔在卡片上 系统读入穿孔卡片上的信息并按照记录号把修改信息顺序排列好 然后系统逐个读入主文件上的记录 根据记录上的校验码校核每个读入的记录 丢掉出错的记录 按照修改信息修改余下的记录 产生的新文件存储在磁盘上 最后 系统印出一份修改报告供文件管理员参阅 SOFTWAREENGINEERING 结构化分析模型的组成 SOFTWAREENGINEERING 2 4数据流图 DFD 2 4 1定义 DataFlowDiagram 数据流图是描绘系统的逻辑模型 图中没有任何具体的物理元素 只是描绘信息在系统中流动和处理的情况 下面是数据流图的基本形式 3变换 4变换 1变换 2变换 外部实体 外部实体 外部实体 外部实体 数据文件 输入数据 中间数据 输出数据 学生 1审查开发票 2开领书单 学生 购书单 发票 领书单 计算机售书系统的数据流图 无效书单 各班学生用书表 教材存量表 SOFTWAREENGINEERING 2 4数据流图 DFD 2 4 2组成成分及符号表示 1 外部实体 ExternalEntity 数据的源点 终点 指系统外又与系统有联系的人或事物 表达该系统数据的外部来源或去处 如 顾客 工人 单位或另一个系统等 SOFTWAREENGINEERING 2 4数据流图 DFD 2 4 2组成成分及符号表示 2 处理 Process 指对数据的逻辑处理功能 也就是对数据的变换功能 任何改变数据的操作都是处理 如 一系列程序 单个程序或程序的一部分 SOFTWAREENGINEERING 2 4数据流图 DFD 2 4 2组成成分及符号表示 3 数据流 DataFlow 指处理功能的输入或输出 是运动中的数据 如 信件 票据等 4 数据存储 DataStore 是静止状态的数据 表示数据保存的 地方 这个地方并不是指保存数据的物理地点或物理介质 而是指数据存储的逻辑描述 如 可以表示一个文件 文件的一部分 数据库的元素或记录的一部分等 SOFTWAREENGINEERING 2 4数据流图 DFD 2 4 3附加符号 表示数据流之间是 与 的关系 表示数据流之间是 或 的关系 表示只能从中选一个 互斥关系 SOFTWAREENGINEERING 数据流图的符号 画数据流图的原则 找出数据的源点与终点 把软件系统看成一个大的加工 根据外部实体的输出数据流和输入数据流 划出系统的输入和输出图 即顶层图 根据系统的逻辑要求 从外部实体的输出数据流出发 把顶层图中的加工分解成若干个子加工 并用数据流把这些加工连接起来 此时的系统内部图称为0层图 进行检查和修改 按照上述步骤 再从各加工出发 画出所需的子图 S 2 1 3 2 2 2 1 2 3 3 1 3 2 顶层 不编号 0层 1层 SOFTWAREENGINEERING 2 4数据流图 DFD 2 4 4分层数据流图的画法 2 实例一家工厂的采购部每天需要一张定货报表 表中列出所有需要再次定货的零件 报表按零件编号排序 对于每个需要再次定货的零件列出下列数据 零件编号 名称 定货数量 目前价格 主要供应者 次要供应者 零件入库或出库称为事务 通过放在仓库的CRT终端把事务报告给定货系统 当某种零件的库存数量少于库存量临界值时就应该再次定货 SOFTWAREENGINEERING SOFTWAREENGINEERING 定货系统的基本系统模型 SOFTWAREENGINEERING 定货系统的功能级数据流图 SOFTWAREENGINEERING 把处理事务的功能进一步分解后的数据流图 SOFTWAREENGINEERING 划分自动化边界 物理系统 领书单进书通知 购书单缺书单 DFD练习2 售书系统 领书单进书通知 进书通知 购书单缺书单 DFD练习 售书系统 F1教材存量表 F2缺书登记表 实例考务处理系统功能 1 对考生送来的报名单进行检查 2 对合格的报名单编好准考证号后将准考证送给考生 并将汇总后的考生名单送给阅卷站 3 对阅卷站送来的成绩单进行检查 并根据考试中心制定的合格标准审定合格者 4 制作考生通知单 含成绩及合格 不合格标志 送给考生 5 按地区进行成绩分类统计和试题难度分析 产生统计分析表 考务处理系统的分层DFD 顶层数据流图 考生 考务处理系统 考试中心 阅卷站 不合格报名单 报名单 准考证 考生通知单 成绩清单 合格标准 错误成绩清单 考生名单 统计分析表 登记报名单 报名单 准考证 1 统计成绩 2 不合格报名单 考生通知单 成 统计分析表 0层数据流图 考生名册 绩 清 单 合格标准 考生名单 成 绩 清 单 错 误 一层数据流图 a 检查报名单 报名单 准考证 1 1 编准考证号 1 2 不合格报名单 考生名册 考生名单 合格报名单 登记考生 1 3 一层数据流图 b 检查成绩清单 2 1 审定合格者 2 2 考生名册 正确成绩清单 制作通知单 2 3 分析统计成绩 2 4 分析试题难度 2 5 试题得分清单 考生通知单 难度分析表 合格标准 分类统计表 成绩清单 错误成绩清单 经审定的成绩清单 DFD的复审 父图和子图不平衡局部文件分解的速度太快 每次分解出2 7个子加工 不遵守加工编号规则每个处理至少有一个输入和一个输出命名 SOFTWAREENGINEERING 作业 画出下述系统的数据流图 XX培训中心管理系统问题描述 1 当有学员来报名时 根据系统中的课程文件的内容 看该门课程是否已经额满 额满不能报名 未满可以报名 以及该学员是否已经进行学员登记 也就是说 该学员是否为新学员 报名后 为该学员打印一份报名单 标出最迟的交款日期及所报课程信息 2 对于已经报过名的 也就是拿到报告单 的学员 来付款时 根据报名单上的应交的学费金额收取学费 并更新帐目文件 复审无误后为学员开付款收据 3 有的学员报名后 发现有的课程不想学了 要注销时 系统对相关的课程文件 学员文件进行修改 并退款进行财务处理 更新帐目文件 4 当学员来咨询时 可以对他所要查询的内容打印成报告单的形式给学员 5 学员报名 付款 查询以及注销统称为事务 SOFTWAREENGINEERING 2 5数据字典 2 5 1定义 DataDictionary 数据字典是关于数据的信息的集合 也就是对数据流图中包含的所有元素的定义的集合 SOFTWAREENGINEERING 2 5数据字典 2 5 2数据字典与数据流图的关系数据字典与数据流图共同构成系统的逻辑模型 没有数据字典 数据流图就不严格 然而没有数据流图 数据字典也难于发挥作用 只有数据流图和对数据流图中每个元素的精确定义 数据字典 放在一起 才能共同构成系统的规格说明 SOFTWAREENGINEERING 2 5数据字典 2 5 3数据字典由对下列四类元素的定义组成 1 数据流 2 数据流分量 即数据元素 3 数据存储 4 处理 用IPO图或PDL描述更方便 数据流 例 发票 数据文件 例 各班学生用书表 学生购书数量数据项 例 数量三种数据字典分别表达如下 学生 1审查开发票 2开领书单 学生 购书单 发票 领书单 计算机售书系统的数据流图 无效书单 各班学生用书表 教材存量表 SOFTWAREENGINEERING 2 5数据字典 2 5 4数据字典的内容除了数据定义之外 还包含关于数据的一些其他信息 一般信息 名字 别名 描述定义 数据类型 长度 结构使用特点 值的范围 使用频率 使用方式控制信息 来源 用户 使用它的程序 使用权 改变权分组信息 父结构 从属结构 物理位置 记录 文件 数据库 SOFTWAREENGINEERING 2 5数据字典 2 5 5定义数据的方法数据字典中的定义就是对数据自顶向下的分解 由数据元素组成数据的方式包括 顺序 即以确定的次序连接两个或多个分量 选择 即从两个或多个可能的元素中选取一个 重复 即把指定的分量重复零次或多次 可选 即一个分量是可有可无的 重复零次或一次 SOFTWAREENGINEERING 2 5数据字典 2 5 6数据字典中的常用符号 定货系统的数据字典 数据字典 数据流应包含的内容 订货系统的数据字典 数据字典 数据流应包含的内容 订货系统的数据字典 数据字典 数据流应包含的内容 SOFTWAREENGINEERING 2 5 7数据字典的用途作为分析阶段的工具 包含的每个数据元素的控制信息是很有价值的 是开发数据库的第一步 而且是很有价值的一步 SOFTWAREENGINEERING 2 5数据字典 2 5 8数据字典的特点 1 通过名字能方便地查阅数据的定义 2 没有冗余 3 尽量不重复在规格说明的其他组成部分中已经出现的信息 4 容易更新和修改 5 能单独处理描述每个数据元素的信息 6 定义的书写方法简单方便而且严格 SOFTWAREENGINEERING 2 6成本 效益分析 2 6 1经济效益表现为减少运行费用或 和 增加收入 2 6 2成本 效益分析的目的要从经济角度分析开发一个特定的新系统是否划算 从而帮助使用部门负责人正确地作出是否投资于这项开发工程的决定 SOFTWAREENGINEERING 2 6成本 效益分析 2 6 3成本估计的三种估算技术软件开发成本主要表现为人力消耗 乘以平均工资则得到开发费用 1 代码行技术 根据经验和历史数据估计实现一个功能需要的原代码行数 用每行代码的平均成本乘以行数就可以确定软件的成本 每行代码的平均成本主要取决于软件的复杂程度和工资水平 SOFTWAREENGINEERING 2 6成本 效益分析 2 6 3成本估计的三种估算技术 2 任务分解技术首先把软件开发工程分解为若干个相对独立的任务 再分别估计每个单独的开发任务的成本 最后累加起来得出软件开发工程的总成本 3 自动估计成本技术使用自动估计成本的软件工具 SOFTWAREENGINEERING 2 6成本 效益分析 2 6 4成本 效益分析的方法 1 货币的时间价值 2 投资回收期就是使累计的经济效益等于最初投资所需要的时间 3 纯收入就是在整个生命周期之内系统的累计经济效益 折合成现在值 与投资之差 SOFTWAREENGINEERING 2 6成本 效益分析 4 投资回收率设想把数量等于投资额的资金存入银行 每年年底从银行取回的钱等于系统每年预期可以获得的效益 在时间等于系统寿命时 正好把在银行中的存款全部取光 那么 年利率为多少呢 这个假想的年利率就等于投资回收率 P 现在的投资额F 第i年年底的效益 i 0 1 2 n N 系统的使用寿命 一般 5 j 投资回收率 SOFTWAREENGINEERING 练习题1 为方便储户 某银行拟开发计算机储蓄系统 储户填写的存款单或取款单由业务员键入系统 如果存款 系统记录存款人姓名 住址 存款类型 存款日期 利率等信息 并印出存款单给储户 如果是取款 系统计算利息并印出利息清单给储户 SOFTWAREENGINEERING 练习题2 为方便旅客 某航空公司拟开发一个机票预订系统 旅行社把预订机票的旅客信息 姓名 性别 工作单位 身份证号码 旅行时间 旅行目的地等 输进该系统 系统为旅客安排航班 印出取票通知和账单 旅客在飞机起飞的前一天凭取票通知和账单交款取票 系统校对无误即印出机票给旅客 SOFTWAREENGINEERING 练习题3 医院对患者监护系统的基本要求是随时接收每个病人的生理信号 脉搏 体温 血压 心电图等 定时记录病人情况以形成患者日志 当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息 此外 护士在需要时还可以要求系统印出某个指定病人的病情报告 SOFTWAREENGINEERING 数据字典 北京某高校可用的电话号码有以下几类 校内电话号码由 位数字组成 第 位数字不是 校外电话又分为本市电话和外地电话两类 拨校外电话需先拨 若是本市电话则再接着拨 位数字 第 位不是 若是外地电话则拨 位区码再 位电话号码 第 位不是 SOFTWAREENGINEERING 试题一 共15分 阅读下列说明 回答问题1和问题2 将解答填入答题纸的对应栏内 说明 假设某大型商业企业由商品配送中心和连锁超市组成 其中商品配送中心包括采购 财务 配送等部门 为实现高效管理 设计了商品配送中心信息管理系统 其主要功能描述如下 1 系统接收由连锁超市提出的供货请求 并将其记录到供货请求记录文件 2 在接到供货请求后 从商品库存记录文件中进行商品库存信息查询 如果库存满足供货请求 则给配送处理发送配送通知 否则 向采购部门发出缺货通知 3 配送处理接到配送通知后 查询供货请求记录文件 更新商品库存记录文件 并向配送部门发送配送单 在配送货品的同时记录配送信息至商品配送记录文件 4 采购部门接到缺货通知后 与供货商洽谈 进行商品采购处理 合格商品入库 并记录采购清单至采购清单记录文件 向配送处理发出配送通知 同时通知财务部门给供货商支付货款 该系统采用结构化方法进行开发 得到待修改的数据流图 如图
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广州市2025广东广州市南沙区侨联编外人员聘用笔试历年参考题库附带答案详解
- 2025新兴际华资本控股有限公司总经理副总经理岗位公开招聘2人笔试参考题库附带答案详解
- 国际商事合同通则在跨境运输合同中的责任划分
- 离职员工职务发明创造专利权及商业秘密保护协议
- 2025版标准民间个人借款合同
- 食品安全合同中的产品溯源担保体系研究
- 离婚协议中遗产继承与债务承担的法律风险防范手册
- 2025合同法案例:租房合同中的隐秘条款陷阱
- 签订即编制归属的民营企业高管聘用合同
- 商业店铺租赁合同附加租赁期限及租金调整及支付协议
- 辐射安全防护技术革新方案
- 2025年大学生人文知识竞赛题库及参考答案
- 高考集合考试题及答案
- 中秋团圆主题班会课件
- 潍坊市辅警考试题库2025
- 飞行服务站2025年无人机培训基地建设与发展报告
- 2025年福建农业行政执法资格考试(专业法律知识)历年参考题库含答案详解
- 新质生产力六大科创中心
- GB/T 22080-2025网络安全技术信息安全管理体系要求
- 海关AEO管理体系高级认证企业名录
- DB32∕T 4065-2021 建筑幕墙工程技术标准
评论
0/150
提交评论