第一章软件工程导论(1)

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章软件工程导论(1)
第一章软件工程导论(1)
需求获取
客户和开发者定义系统目标,其结果是使用参与者和用 例来描述系统,包括功能性需求和非功能性需求
第一章软件工程导论(1)
用例名称 参与者 事件流
入口条件 出口条件 质量需求
购买单程车票
旅客
1.旅客选择始发地和目的地 2. 售票系统显示价格 3. 旅客投入不少于价格的钱 4. 售票系统输出指定车票并找回多余的钱 旅客站到售票系统前
第一章软件工程导论(1)
1.2 什么是软件工程
建模
对系统抽象的表示,可以了解未知的系统和领域
恐龙骨骼,原始人壁画、青铜器
第一章软件工程导论(1)
应用域模型 从用户角度去描述的系统
有什么功能(功能性需求) 如何操作(交互设计) 性能如何(非功能性需求) 界面美观吗(界面设计)
第一章软件工程导论(1)
第一章软件工程导论(1)
1.5管理软件开发
沟通
最关键,最耗时的活动
约定俗成:UML图,文档模板,会议记录模板,统一术语。 交流:月例会,周例会,关键技术讨论
配置管理
代码版本维护,项目文档管理,通信系统(邮件,IME, FTP)
项目管理
制定计划,里程碑,阶段性验证总结
第一章软件工程导论(1)
1.6思考
旅客拿到了车票和找回的钱
如果系统超过一分钟没有结果则退回投入的钱
第一章软件工程导论(1)
分析
将需求分析中产生的 用例转化顺序图和状 态图
第一章软件工程导论(1)
系统设计
体系结构-选择构建系统的策略,完成软件/硬件部署图
定制硬件,还是普通PC加个触摸屏 Linux, Windows J2EE,.NET B/S,C/S
第一章软件工程导论(1)
2020/12/1
第一章软件工程导论(1)
导言
你们学过软件工程这门课吗? 软件工程这门课是讲什么的? 你们觉得软件工程这门课有意思吗?
第一章软件工程导论(1)
课程目的
体验软件工程各阶段的主要工作,特别注意吸取教训; 学会与他人合作,培养团队精神。
现在开始, 分组(每组3人左右)
播放器具有在线听歌的功能 相机具有实时录像的功能 汽车具有ABS防抱死功能
非功能性需求
是对系统运行的一些约束,指导着系统如何去实现
用户点击后反馈时间不得超过0.3秒 界面针对25岁以下群体设计 并发访问量有10万
第一章软件工程导论(1)
1.4 软件工程开发活动
需求获取 分析 系统设计 对象设计 实现 测试
第一章软件工程导论(1)
1.1 软件工程的失误
iPhone 4手机每年元旦闹钟失灵 玉兔号故障 CSDN社区的密码泄露事件 软件设计、开发周期、安全…
第一章软件工程导论(1)
1.2 什么是软件工程
软件工程是一项创造性的活动 软件工程是一项事物基本原理指导的活动 软件工程是一项建模活动 软件工程是一项实现活动
为腾讯公司设计一部手机,你怎么考虑这个问题? 下列描述的基本原理是什么?
第一章软件工程导论(1)
活动
为完成某一具体目的而实施的行为,如项目中需求获取、 交付产品、周例会、月例会、评审会等
任务
可实施、可管理的具体工作,如本周完成JPEG解码库的 移植,本月完成1公里的高速公路建设
资源
人力 设备(硬件,软件等) 时间
第一章软件工程导论(1)
功能性需求
系统必须支持功能的规格说明
第一章软件工程导论(1)
组长责任
组长负责:组织、分工、控制进度;
动调整权;
对每个组员成绩有 5 分浮
组长奖罚:引起过半数组员不满,改选组长; 带领全组顺利完成任务,总
成评+绩5。评定:课堂发言40,项目60分
第一章软件工程导论(1)
时间(进度)安排
1-4周 5周 6-7周 8-9周 10-11周 12-13周 10-16周 17周 18周
一般问题求解
----
软件工程
明确问题
-----
需求获取
分析问题
-----
需求分析
寻找解决方案
-----
系统设计
选定合适的解决方案 -----
对象设计
执行方案
-----
实现
第一章软件工程导论(1)
基本原理
了解系统及其功能是不够的,还 需要了解背后的原理
洗手台设置高低两个位置 手机上的home键 IC卡电话机非常结实 …….
项目调研,工具学习 确定各小组的项目内容 需求设计演讲 分析设计演讲 系统设计演讲 对象设计演讲 编码 测试设计及结果演讲 系统交付,进行总结
第一章软件工程导论(1)
参考教材
面向对象软件工程-使用UML、模式与JAVA,第三版清 华大学出版社 OBJECT-ORIENTED SOFTWARE ENGINEERING Using UML,Patterns,and Java,Third Edition
解答域模型
从开发者的角度去描述的系统,评估具体实现时不同的方案
采用定制的硬件还是基于普通pc 采用Windows还是Linux 采用j2ee技术还是.net BS架构还是CS架构
面向对象的方法将应用域建模和解答域建模合二为一
采用UML对应用域及解答域建模,然后将其转化为具体实现
第一章软件工程导论(1)
角色
分配了具体职责的参与者
客户---负责系统的高层需求 用户---系统最终的使用者 开发者---负责系统设计及开发 测试人员---负责系统的测试
第一章软件工程导论(1)
模型
在系统未完成之前对系统的各种抽象表示
硬件如房屋设计图,水电布线图 软件如类图,对象图,序列图,活动图
系统
需要完成的系统
文档
操作手册(可交付) 规格说明(可交付) 需求、分析、状态报告(内部工作产品) 可运行程序(可交付) 代码(可交付,内部工作产品)
第一章软件工程导论(1)
例子
开发一个系统所需的必要前提
市场,心理学,行为学,目标人群, 专业知识等 例如HP的WebOS,手机研发出来后 发现运营商,应用开发者,用户观 念都跟不上,而且没有一个好的盈 利模式。
第一章软件工程导论(1)
1.3软件工程概念
第一章软件工程导论(1)
参与者
参与到项目中的所有人员
模块划分-把系统分解成为单个团队可实现的较小子系 统
相关对象的内聚 对外提供服务(接口)
第一章软件工程导论(1)
对象设计
准确描述对象及子系统接口 优化对象模型 完善类图及对象图
实现
用源自文库向对象语言将之前的设计实现
测试
单元测试(代码是否与设计相符,开发人员完成) 集成测试(功能是否与需求相符,测试人员完成)
相关文档
最新文档