软件工程概论可行性研究_第1页
软件工程概论可行性研究_第2页
软件工程概论可行性研究_第3页
软件工程概论可行性研究_第4页
软件工程概论可行性研究_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件工程概论48课时(24理论+24上机)顾春华chgu@软件工程概论可行性研究第1页课程安排理论内容:基本原理、方法和技术形式:讲授、自学、讨论实践内容:结构一个应用系统(包含分析、设计、编码、测试)形式:分组、分阶段文档、编码、集成软件工程概论可行性研究第2页软件工程内容软件工程基本概念软件过程软件开发各阶段任务、技术、方法传统方法、面向对象方法项目管理软件质量确保软件工程概论可行性研究第3页第一章软件危机与软件工程软件与软件危机软件工程技术复审和管理复审软件工程概论可行性研究第4页软件程序、软件与软件产品独唱-->小合唱-->合唱-->万人大合唱 |||简单程序较复杂程序软件软件包含程序:按事先设计功效和性能需求执行指令序列数据:是程序能正常操纵信息数据结构文档:与程序开发、维护和使用相关图文材料软件工程概论可行性研究第5页软件开发发展过程计算机应用发展软件数量多规模大软件成本高质量低个体化软件开发方法软件维护困难软件危机软件工程软件工程概论可行性研究第6页软件危机定义计算机软件开发和维护过程所碰到一系列严重问题表现对软件开发成本和进度估算很不准确用户很不满意质量很不可靠没有适当文档软件成本比重上升供不应求:软件开发生产率跟不上计算机应用快速深入趋势软件工程概论可行性研究第7页软件危机原因客观:软件本身特点逻辑部件规模庞大主观:不正确开发方法忽略需求分析软件开发=程序编写轻视软件维护软件工程概论可行性研究第8页软件危机处理路径组织管理工程项目管理方法技术办法软件开发技术与方法软件工具软件工程概论可行性研究第9页软件工程定义指导计算机软件开发和维护工程学科工程方法+管理技术+技术方法B.W.Boehm七条基本原理确保软件质量和开发效率P5-7软件工程概论可行性研究第10页课后作业你以前开发软件过程是什么?你认为正确软件开发过程是怎样?学习了解RUP(可选)/products/rup/你对软件工程课教学方式和内容提议软件工程概论可行性研究第11页软件生命周期软件生命周期软件定义问题定义可行性分析需求分析软件开发系统设计编码测试软件维护软件工程概论可行性研究第12页技术复审和管理复审复审每阶段结束前技术复审从技术角度确保质量降低软件成本(尽早发觉问题)管理复审成本、进度、经费等软件工程概论可行性研究第13页技术复审审查小组审查过程准备简明介绍情况阅读被审文档开审查会返工复查软件工程概论可行性研究第14页第二章软件过程模型

ProcessModel瀑布模型(waterfallmodel)快速原型模型(rapidprototypemodel)螺旋模型(spiralmodel)转换模型(transformationalmodel)构件集成模型(componentintegrationmodel)

软件工程概论可行性研究第15页瀑布模型问题定义可行性研究需求分析软件设计编码测试维护软件工程概论可行性研究第16页瀑布模型特点阶段次序性和依赖性推迟实现观点质量确保存在问题不适合需求含糊系统软件工程概论可行性研究第17页快速原型模型需求分析原型开发最终系统设计原型评价最终系统实现用户反馈软件工程概论可行性研究第18页快速原型模型特点快速开发工具循环低成本种类渐进型抛弃型软件工程概论可行性研究第19页螺旋模型软件工程概论可行性研究第20页螺旋模型特点瀑布模型+快速原型+风险分析迭代过程一个螺旋式周期

确定目标,选择方案,选定完成目标策略

风险角度分析该策略

开启一个开发阶段

评价前一步结果,计划下一轮工作

软件工程概论可行性研究第21页转换模型形式化规格说明与需求比较后修正变换2变换1变换n测试形式化开发统计系统需求目标系统软件工程概论可行性研究第22页转换模型特点形式化软件开发方法

形式化需求规格说明

变换技术程序自动生成技术

确保正确软件工程概论可行性研究第23页构件集成模型软件工程概论可行性研究第24页构件集成模型特点面向对象基于构件库融合螺旋模型特征支持软件开发迭代方法

软件重用软件工程概论可行性研究第25页RUP用例驱动

迭代和增量过程

五个活动:需求、分析、设计、实现和测试

四个阶段

软件工程概论可行性研究第26页第三章可行性研究可行性研究任务可行性研究步骤可行性研究工具系统流程图数据流图数据字典成本/效益分析软件工程概论可行性研究第27页开发软件要回答三个问题Whytodo?—可行性研究Whattodo?—需求分析Howtodo?—系统设计软件工程概论可行性研究第28页可行性研究任务回答是否可行最短时间最小代价三个方面可行性技术可行性经济可行性操作可行性软件工程概论可行性研究第29页循环可行性研究步骤复查系统规模和目标研究现有系统功效导出新系统模型重新定义问题导出和分析各种可选处理方案推荐行动方针草拟开发计划书写文档提交审查软件工程概论可行性研究第30页1复查系统规模和目标问题定义阶段结果系统规模和目标汇报书复查任务更正含糊、二义描述更正不正确描述核查系统限制和约束软件工程概论可行性研究第31页2研究现有系统功效分析现有系统高层系统流程图确定系统功效比较新旧系统新系统必须完成旧系统基本功效新系统必须更正旧系统存在问题新系统必须比旧系统增收入、减支出软件工程概论可行性研究第32页3导出新系统模型旧系统逻辑模型新系统逻辑模型新系统目标和规模逻辑模型描述工具数据流图数据字典用例图软件工程概论可行性研究第33页4重新定义问题复查问题定义、规模和目标依据新系统模型分析员误解用户遗漏重新定义问题循环(定义,分析,求解,重定义)软件工程概论可行性研究第34页5导出和分析可选处理方案从逻辑模型导出物理系统方案不一样角度多个方案分析各种可选方案技术可行性操作可行性经济可行性为可行方案制订初步进度计划软件工程概论可行性研究第35页6推荐行动方针得出可行性研究结果继续开发终止项目推荐处理方案成本/效益软件工程概论可行性研究第36页7草拟开发计划为推荐方案确定开发计划进度开发人员硬件设备软件工具各阶段成本预计软件工程概论可行性研究第37页8书写文档提交审查可行性研究汇报各步骤结果推荐方案开发计划等软件工程概论可行性研究第38页系统流程图SFD物理数据流图,不一样与程序流程描述物理系统表示物理部件信息流动符号(P21)例子(P23)分层SFD从抽象到详细,从简单到复杂软件工程概论可行性研究第39页数据流图DFD描述系统逻辑模型信息在系统中流动和处理用途交流信息工具分析和设计工具

软件工程概论可行性研究第40页数据流图DFD符号P24例子P25-27分层从高层到低层分解前后数据流必须一致命名数据流处理软件工程概论可行性研究第41页领书单

进书通知

购书单

缺书单

DFD练习—售书系统学生教材购销系统书库保管员软件工程概论可行性研究第42页领书单进书通知

进书通知

购书单缺书单

DFD练习—售书系统1销售2采购书库保管员学生F1教材存量表

F2缺书记录表

软件工程概论可行性研究第43页数据字典DDDFD中全部元素定义集合内容数据流数据流分量数据存放处理(普通不用DD描述)软件工程概论可行性研究第44页数据字典DD定义数据方法自顶向下分解数据数据元素组合方式次序:A+B选择:[A|B]重复:1{A}5可选:(A)软件工程概论可行性研究第45页数据字典DDDD用途分析阶段交流工具包含控制信息数据库设计基础例子P32软件工程概论可行性研究第46页成本/效益分析成本预计代码行技术行数*每行平均成本任务分解技术人月1*月工资+人月2*月工资+。。。自动成本估算软件工具软件工程概论可行性研究第47页成本/效益分析成本/效益分析方法开发成本、运行费用新系统带来经济效益必须考虑货币时间价值(利率)计算投资回收期纯收入投资回收率软件工程概论可行性研究第48页第四章需求分析需求分析任务与步骤需求获取惯用方法分析建模软件需求说明结构化分析技术面向对象分析技术软件工程概论可行性研究第49页需求分析任务和步骤需求分析任务建立分析模型

编写需求说明

需求分析步骤需求获取

需求提炼

需求描述

需求验证

软件工程概论可行性研究第50页需求获取惯用方法联合分析小组

用户代表、领域教授和系统分析员客户访谈

充分准备,寻找共同语言循循序渐进、逐步迫近

问题分析与确认

多个往返软件工程概论可行性研究第51页分析建模结构化分析模型面向对象分析模型分析模型描述工具DFD、DD和PSPECCFD、CSPEC和STDE-R图

用例图,对象-关系图,对象-行为图

软件工程概论可行性研究第52页两种程序设计方法程序设计两次飞跃结构化程序设计程序=数据结构+算法面向对象程序设计程序=对象+消息

软件工程概论可行性研究第53页两种软件工程方法传统软件工程软件分析

总体设计

详细设计

面向过程编码

测试

面向对象软件工程软件分析与对象抽取

对象详细设计

面向对象编码

测试

软件工程概论可行性研究第54页面向对象基本概念对象Object类Class继承Inheritance消息Message面向对象对象+类+继承+消息通信软件工程概论可行性研究第55页对象Object客观世界中实体状态(静态属性Attributes)操作(动态行为Mehtods)对象::=<ID,MS,DS,MI>IdentifierMethodSetDataStructureMessageInterface软件工程概论可行性研究第56页对象特点以数据为中心对象是主动实现数据封装本质上有并行性模块独立性好软件工程概论可行性研究第57页类Class和实例Instance类相同属性和行为对象抽象实例特定类所描述一个详细对象软件工程概论可行性研究第58页子类直接继承父类数据和操作继承传递性,单继承、多重继承继承(Inheritance)家俱桌子椅子衣柜床椅子实例软件工程概论可行性研究第59页多态性Polymorphism概念不一样类层次共享一个方法名相同参数特征和返回值类型各种不一样实现C++中虚函数实现动态联编软件工程概论可行性研究第60页重载Overloading函数重载同一作用域多个名字相同函数参数特征不一样静态联编运算符重载软件工程概论可行性研究第61页消息Message对象间交互伎俩形式:Message:[dest,op,para]DestinationObjectOperationParameters软件工程概论可行性研究第62页结构化分析模型加工说明数据对象说明STD图DFD图E-R图DD控制说明软件工程概论可行性研究第63页面向对象分析模型属性、操作、协作者对象-行为模型对象-关系模型类/对象模型使用实例软件工程概论可行性研究第64页软件需求说明(SRS) 引言

信息描述功效描述

需要规格说明书行为描述质量确保接口描述其它需求

软件工程概论可行性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论