(1)谓前系统需改进某已计算机运行数处理系统工数处理程
(2)前系统物理模型客观反映前系统实际工作情况物理模型中许物理素着分析工作深入非质物理素成必负担需物理模型进行分析区分出质非质素掉非质素获反映系统质逻辑模型
前系统逻辑模型前系统物理模型抽象出
2 UML中例例间存泛化包含扩展关系请分析异
(1)性:现例中抽取出公部分信息作单独例然通方法重公例减少模型维护工作量
(2)点:
a泛化侧重表示子例间互斥性
b包含侧重表示包含例参者提供服务间接性
c扩展侧重表示扩展例触发定性
泛化关系描述例间般特殊关系子例继承父例结构行关系时子例添加覆盖改变继承行子例父例种特殊形式子例代表父例实现方法
复杂系统中例间存相行时相行提取出组成例例该例时例间便形成包含关系
例中添加动作构成例两例间关系扩展关系者继承前者行者称扩展例扩展关系成例中异常行选分支抽象成单独例形成关系
3软件工程师合作开发项目开发者间需两两互相通信假设条通信路径开销300 LOC年(LOC代码行数)(1)设6名软件工程师果单独工作生产率6500 LOC年6名软件工程师组成项目组生产率少?(2)年期限两月增加两名工程师新增成员生产率4500 LOC年8组成项目组全年完成开发工作量少条代码行?
开发组员N时通信路径N(N—1) 2 条
6500*6 (6*52)*300 34500 (行年)
第11月开始增加2通信路径增加:
8* ( 8 —1) 2 – 15 13(条)
通信开销增加:(300 12) * 2 * 13 650 (LOC)
2开发工作量:(4500 12) * 2 * 2 1500 (LOC)
总计工作量34500 + 1500 – 650 35350 (LOC)
4 输入三正整数作边长然判断该三条边否构成三角形构成三角形等边等腰般三角形?请NS图描述程序算法盒图中格中标出数字①②……利数字画出程序控制流图计算程序环形复杂度
5 某学校计算机教材购销系统功:学生买书首先填写购书单计算机根班学生书表售书登记表审查效性效计算机根教材库存表进步判断书库否书书领书单返回学生学生领书单书库领书脱销教材系统缺书单形式通知书库保员新书购进库书库保员进书通知返回系统请系统功画出分层DFD图(第三层需画出销售子系统DFD图)
6 图书馆预定图书子系统功:
n 供书部门提供书目订购组
n 订购组单位取订书目
n 根供书目录订书书目产生订书文档留底
n 订书信息(包括数目数量等)反馈供书单位
n 未订书目通知订书者
n 重复订购书目系统动检查结果反馈订书者
¨ 请系统功分两层画出DFD图
7根描述建立软件公司象模型画出类图问题陈述:软件公司许部门分开发部门理部门两种部门部门名字唯确定开发部门开发软件产品软件产品程序数文档组成该公司许员工分理工作员开发员开发部门理开发员理部门理工作员开发员参加开发项目开发项目需开发员位理持开发项目
8书组成包括封面目录前言干章章干节节干段段干句子节0插图0表格附录试建立该书象模型
9根描述建立复印机行动态模型画出复印机状态图问题描述办公室复印机工作程致:未接复印命令时处闲置状态旦接复印命令进入复印状态完成复印命令规定工作回闲置状态等复印命令果执行复印命令时发现缺纸进入缺纸状态发出警告等装纸装满纸进入闲置状态准备接受复印命令果复印时发生卡纸障进入卡纸状态发出警告等维修员排障障排回闲置状态
实验
1 绘制书中73页题3数流图
题目银行计算机储蓄系统工作程致:储户填写存款单取款单业务员键入系统果存款系统记录存款姓名住址(电话号码)身份证号码存款类型存款日期期日期利率密码(选)等信息印出存款存单储户果取款存款时留密码系统首先核储户密码密码正确存款时未留密码系统计算利息印出利息清单储户
分析:存取款常识知系统数源点终点储户储户提出存取款求获存款存单利息清单
系统存取款处理功记录存款信息印存款存单核密码计算利息印利息清单
完成述功显然存款信息应该数存储
2 题文件绘图页中绘制书中73页题4数流图
题目方便旅客某航空公司拟开发机票预订系统旅行社预订机票旅客信息(姓名性工作单位身份证号码旅行时间旅行目等)输入进该系统系统旅客安排航班印出取票通知帐单旅客飞机起飞前天取票通知帐单交款取票系统校误印出机票旅客
分析:问题陈述知系统数源点旅行社机票预订系统印出取票通知帐单旅行社旅行社终点外旅客取票通知帐单交款取票系统印出机票旅客旅客源点终点
机票预订系统包括预订机票旅客取票两部分功分类检验订票记账机票准备
旅客安排航班需查航班目录航班目录应该作数存储系统够输出账单记账功数存储记账文件完整订票信息应存储机票文件中作准备机票功基数
提示系统基系统模型:
3 题文件绘图页中绘制书中73页题5数流图:
题目:医院患者监护系统基求时接收病生理信号(脉搏体温血压心电图等)定时记录病情况形成患者日志某病生理信号超出医生规定安全范围时值班护士发出警告信息外护士需时求系统印出某指定病病情报告
分析:问题陈述知系统数源点病护士分提供生理信号求病情报告信息进步分析问题陈述系统应该定时记录病情况形成患者日志项求想应该提供日期时间信息时钟作数源点
问题陈述容易出系统数终点接收警告信息病情报告护士
系统病生理信号处理功接收信号分析信号产生警告信息外系统应该具定时取样生理信号更新日志产生病情报告功
分析病理信号否超出医生规定安全范围应该存储患者安全范围信息外定时记录病生理信号形成患者日志显然数存储
提示系统基系统模型:
绘制系统功级数流图程:
4 选课系统类图设计需求陈述:某学校网选课系统包括功:理员通系统理界面进入建立学期开种课程课程信息保存数库中课程进行改动删学生通客户机浏览器根学号密码进入选课界面里学生进行三种操作:查询已选课程选课付费样通业务层操作结果存入数库中
5 图书馆馆藏出版物需求描述
家图书馆藏书籍杂志册子电影录带音乐CD录音图书磁带报纸等出版物供读者阅出版物出版物名出版者获日期目录编号书架位置出状态出限制等属性出收回等服务
创建图书馆馆藏出版物类图
分析:题目中明确出象模型中包含种类明显表示出馆藏出版物书籍杂志册子电影录带等类应该继承关系容易画出描述类图
6 交通工具分空中陆水三种空中交通工具分客机货机专轻型机陆交通工具分列车汽车列车分旅客列车货运列车汽车分客车货车水交通工具分客轮货轮客货混合轮建立交通工具类图
7 台微机显示器机键盘鼠标汉王笔机包括机箱板电源存储器等部件存储器分固定存储器活动存储器固定存储器分存硬盘活动存储器分软盘光盘优盘请建立微机类图
8 选课系统状态图设计
课程类状态变化:课程象创建添加数库中理员删修改课程信息某学期开设该课程果选修数超指定数允许学生选门课学期结束课程状态终止
9 烧水状态描述
初始状态进入烧水程时先处炉子关闭状态开炉子触发事件发生时需检查否满足监护条件壶里否水果满足执行烧水动作触发转换进入炉子开状态状态果出现水烧开壶烧坏情况状态图应表达?试创建烧水状态图
10 图形户界面具菜单带文件开命令文件菜单菜单条退出命令假设次文件够开建立图形户界面状态图
11 航班机票预订系统状态描述刚确定飞行计划时显然没预订预订机票前处种预订状态订座言显然部分预订预订完两种状态航班快起飞时显然预订关闭请建立航班机票预订系统状态图
12 请根述电梯系统需求描述画出类图
幢m层楼厦中电梯楼层钮控制n部电梯移动 部电梯m钮钮代表楼层钮时该钮指示灯亮时电梯驶相应楼层达钮指定楼层时指示灯熄灭
厦底层高层外层楼两钮分指示电梯行行两钮时相应指示灯亮电梯达楼层时灯熄灭电梯请求方移动
电梯升降动作时关门停前楼层
分析:
1 确定问题域候选象
厦电梯楼层钮运动指示灯请求底层高层方门
2 筛选出正确象
删厦底层高层楼层—关
删运动指示灯请求方门——属性
剩钮电梯
钮分电梯钮楼层钮
3 根领域知识常识找出隐含象
钮直接电梯通信决定分派部电梯响应特定请求必须某种类型电梯控制器
进步完善象模型:
分析:电梯类功执行电梯控制器类发电梯操作命令果电梯门(状态)作电梯属性电梯类执行门操作命令样电梯类功单
解决:电梯门独立出作类
样开关闭电梯门唯办法象电梯门发送条消息果电梯门类封装性保证会错误时间开关电梯门效杜绝严重意外事
外出未授权情况允许修改请求考虑应该请求作独立类
13 请根电话通常情况画出描述交互行状态图 电话系统般操作程:没电话时电话处闲置状态起听筒进入拨号音状态达状态电话行响起拨号音时果起听筒改变意想听筒放(挂断)电话重回闲置状态果起听筒长时间拨号(超时)进入超时状态……
具体电话通话程脚:
电话者起电话
电话拨号音开始
电话者拨数字(先拨位数字3)
电话拨号音结束
电话者拨数字(5)
电话者拨数字(8)
电话者拨数字(2)
果电话号码拨错交换机提示出错信息果号码正确方空闲接电话者电话开始振铃
铃声电话者电话传出
果30秒钟接电话者起话筒
接电话者电话停止振铃
电话者电话停止振铃
通电话……
接电话者挂断电话
电话切断
电话者挂断电话
果拨号正确方忙电话者电话传出忙音
果拨号正确接电话者30秒钟接听电话双方电话停止振铃
14白盒测试
15黑盒测试
输入三整数abc分作三角形3条边通程序判断3条边构成三角形类型:等边三角形等腰三角形般三角形非三角形请输出域定义等价类设计测试例
等价类划分原建立输出等价类
选取测试例覆盖等价类
某报表处理系统求户输入处理报表日期假设日期限制1990年1月1999年12月系统该段时间报表进行处理果户输入日期范围显示输入错误信息该系统规定日期年月6位数字字符组成前4位代表年两位代表月现等价类划分法设计测试例测试程序日期检查功
程序规格说明:程序读入三整数三数值成三角形三边程序印出信息说明三角形三边等等腰等边 请等价类划分法输入域定义等价类完成测试例设计
16 面象设计原
¨ 单职责原类应该仅职责
n 注意:职责否应该分开赖具体应
¨ 开放—封闭原:
n 设计软件系统模块(类方法)时候应该修改原模块(修改封闭)基础够扩展功(扩展开放)
¨ 面象程序中做利面象抽象态
n 程序修改100%封闭
¨ 种抽象处理类变化抽象系统类变化封闭类型变化然封闭
¨ 赖倒置原—系统框架设计核心原
n 高层模块应该赖低层模块二者应该赖抽象
n 抽象应该赖细节细节应该赖抽象
n 种语言编写程序关紧果程序赖关系倒置面象设计果程序赖关系倒置程化设计
¨ 接口隔离原
n 专门接口单总接口
¨ 强迫户赖接口
¨ 程序赖接口中包含该程序方法
面设计否合理果合理请说明原出修正设计(题10分)
说明
(1)Retangle类两方法方法画矩形方法计算矩形面积中draw()方法调area()方法
(2)两应程序Retangle类Computational Geometry Application计算图形面积赖Retangle类area()方法draw()方法Graphical Application绘制图形赖Retangle类draw()方法会area()方法
标准答案:设计违反单职责原Retangle类两职责第职责绘制矩形第二职责计算矩形面积解决办法:两职责分离开分离两完全类中 (3分)
(7分)
例2面设计否合适果合适请修正设计
系统需求说明:屏幕显示出圆形面积该需求会扩展求显示正方形矩形等形状面积求设计系统符合开放封闭原
interface Shape { double area() }
public class Circle implements Shape{
private int r
public Circle(int a) { r a }
public double area(){ return 314*r*r } }
public class PrintDrawing {
public void printArea(Shape s){
Systemoutprintln(Area is: + sarea()) } }
public class Show {
public static void main(String args[ ]){
Circle c new Circle(2)
PrintDrawing pc new PrintDrawing()
pcprintArea(c) } }
改进Button类伪码:
public class Button
{ public void Poll(ButtonServer bs)
{ 判断开关
if (开) bsturnOn()
else bsturnOff() } }
ButtonServer类代码:
interface ButtonServer
{ public void turnOn()
public void turnOff() }
Lamp类伪码
public class
Lamp implements ButtonServer
{ public void turnOn() {…}
public void turnOff() {…}
}
17项目理
n 五等级低高:初始级重复级已定义级已理级优化级
¨ 1 初始级
n 软件程特征序时甚混乱没什程定义项目否成功完全取决力
n 处低成熟度等级组织基没健全软件工程理制度
n 软件程完全取决前员配备准确预测产品开发时间成
¨ 2 重复级
n 建立基项目理程追踪成进度功性必程规范已建立起重复前类似项目取成功
n 级基软件项目理行设计理技术基相似产品中验确定称重复
¨ 3 已定义级
n 理工程活动软件程已文档化标准化已集成整组织软件程中
n 项目文档化组织批准程开发维护软件
n 级包含第2级特征
¨ 4 已理级
n 已收集软件程产品质量详细度量数详细度量数够定量理解控制软件程产品
n 级包含第3级特征
n 处第4级公司项目设定质量生产目标断测量两量偏离目标太时采取行动修正
¨ 5 优化级
n 通定量反馈够实现持续程改进反馈程新想法技术测试中获
n 级包含第4级特征
甘特图水线段表示务工作阶段线段起点终点分应着务开工时间完成时间线段长度表示完成务需时间
特点甘特图清楚出子务时间关系标明务计划进度前进度动态反映软件开发进展情况难反映务间存复杂逻辑关系
工程网络采网络图描述项目务网络
特点:仅表达子务计划安排务计划执行程中估计务完成情况分析某子务完成情况全局影响找出影响全局区域关键子务便时采取措施确保整项目完成
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档