基于项目的软件开发管理
一个基于项目的软件工程的流程:
需求分析:定义角色(使用系统的人),识别系统中的对象和关系,发现用例、描述用例。
系统分析和设计:将系统分解为子系统,为模型添加细节
实现:开发
测试运维:
UML概述:
用例图:一个用例是对系统一个功能的描述
类图。
需求分析的过程:
需求包括:功能性需求,非功能性需求
需求来源:系统的整体目标,领域内的相关知识,考虑不同的涉及人员的需求,地域限制,实时性要求,网络性能
需求获取方法:亲身参加业务,与用户座谈,请专人介绍,找专人询问,设计调查表
用例图:
分类:分为业务用例和系统用例
用例间的关系:继承,使用,包含
用例描述模板包括:用例编号,名称,描述,前置条件,后置条件,基本事件流
要设定用例的优先级
系统设计:
《概要设计说明书》由系统工程师负责,《详细设计说明书》由高级程序员负责。
《概要设计说明书》包括:总体结构设计,数据库和数据结构设计,外部接口设计,内部接口设计
《详细设计说明书》包括:各个子系统的实现设计,存储过程设计,触发器设计,外部接口设计,角色授权设计
概要设计(架构设计):
架构师职责:领导技术活动,推导技术决策,确定设计元素的划分和接口,接收系统需求
软件架构包括:系统包含的部件,部件的功能,部件的依赖关系,系统部署
架构视图:RUP的4+1视图:逻辑视图,实现视图,用例视图,进程视图,部署视图
影响架构的因素:用户界面的复杂度,用户界面的部署约束,用户数量和类型,系统接口类型,性能和可伸缩性
架构样式:设计模式
子系统划分步骤:1.识别候选接口 2.定义接口依赖关系 3.定义接口行为 4.设计接口(命名、描述、定义操作、文档化(序列图、状态图、测试计划))
系统开发
无
系统测试
静态测试:代码检查
动态测试:黑盒测试(等价类划分,边值测试,因果图,错误推测,正交实验设计,判定表驱动法,功能测试)
白盒测试。
测试分类:单元测试,集成测试,系统测试,验收测试,维护及回归测试