课程简介
软件项目设计过程是软件开发过程中重要的环节,灵活且具有可适应性的软件设计是软件项目成功的重要保证。本课程在总结了多年基于国内项目架构开发的经验,让学员体会在软件系统设计过程中,如何分析需求和用例模型,有效的利用架构模式和设计模式,权衡各方资源搭建最优化架构,从而保证项目的成功顺利进行;把握在充分考虑经济性、易用性和高效性的基础上,基于多种设计模式和不同的经验设计出适应性强、可扩展性高的应用架构。
目标收益
通过本课程,学员将体会软件详细设计流程、步骤和方法,掌握架构模式和设计模式的精髓和本质,把握架构和框架设计的精要,分享资深专家多年经验及行业精粹,加速成就软件设计师。
培训对象
系统分析员、软件设计师、项目经历、技术经理或高级开发人员。
课程大纲
课程案例描述 | 案例远景和范围描述;案例需求描述;依据案例实践流程与计划 |
需求建模 |
获取需求的方法步骤,构建需求制品;确定系统边界与范围,编制需求规格说明书;制定需求管理计划,设定需求变更管理控制计划 实战演练:需求建模和需求管理动手实践 |
全局分析 |
系统总体架构分析,关键概念,建模约定;关键抽象;架构模式,架构分层;风险分析,选定分析局部;抽提分析机制 实战演练:全局分析过程实践 |
用例分析 |
细化用例,转述需求场景;实现用例,验证分析机制,获取分析模型;整合用例行为到分析类,整理分析类 实战演练:用例分析动手实践 |
架构设计 |
定义架构底层,实现的决策和约束;识别设计类和子系统;把设计元素分配到不同的包和层 实战演练:架构设计实践 |
用例设计 |
基于设计机制实现用例,构建设计模型,设计类关联,整理设计类;整合设计模式 实战演练:用例设计实践 |
设计模式 |
模式与反模式,设计模式精要,设计模式原则,GOF设计模式实现方法及其扩展,设计模式的整合与拆分,设计模式与软件架构,如何应用设计模式来实现好的结构 实战演练:设计模式应用分析 |
子系统设计 |
识别子系统;抽提子系统接口,把接口行为分配到设计元素中;把子系统整合到架构中;描述子系统依赖 实战演练:识别与设计子系统实践 |
框架设计 |
依据架构规范设计框架组件;框架组件规划与重用策略;数据库连接管理与跨组件事务处理设计;消息管理设计;单点登录(SSO)设计;应用程序配置组件设计;基于SOA架构体系设计框架组件;框架组件实现方式; 案例分析:应用框架设计 |
工作流设计 |
个人工作流和业务工作流;业务工作流BPEL描述语言;个人工作流WFMG实现方式;现有工作流引擎复用与自主开发 实践演练:工作流设计实践 |
业务实体设计 |
业务实体关系设计;ORM设计模式;业务实体变化分析;中间服务器业务实体对象实例化设计;对象缓存设计;业务实体对象查询设计;基于SOA架构体系的实体设计; 实践演练:业务实体设计实践 |
数据库设计 |
数据库基本设计原则;基于OO的数据库设计;数据库性能设计;数据库安全设计;数据库程序规划与业务混入问题 实践演练:动态数据库表设计实践 |
课程案例描述 案例远景和范围描述;案例需求描述;依据案例实践流程与计划 |
需求建模 获取需求的方法步骤,构建需求制品;确定系统边界与范围,编制需求规格说明书;制定需求管理计划,设定需求变更管理控制计划 实战演练:需求建模和需求管理动手实践 |
全局分析 系统总体架构分析,关键概念,建模约定;关键抽象;架构模式,架构分层;风险分析,选定分析局部;抽提分析机制 实战演练:全局分析过程实践 |
用例分析 细化用例,转述需求场景;实现用例,验证分析机制,获取分析模型;整合用例行为到分析类,整理分析类 实战演练:用例分析动手实践 |
架构设计 定义架构底层,实现的决策和约束;识别设计类和子系统;把设计元素分配到不同的包和层 实战演练:架构设计实践 |
用例设计 基于设计机制实现用例,构建设计模型,设计类关联,整理设计类;整合设计模式 实战演练:用例设计实践 |
设计模式 模式与反模式,设计模式精要,设计模式原则,GOF设计模式实现方法及其扩展,设计模式的整合与拆分,设计模式与软件架构,如何应用设计模式来实现好的结构 实战演练:设计模式应用分析 |
子系统设计 识别子系统;抽提子系统接口,把接口行为分配到设计元素中;把子系统整合到架构中;描述子系统依赖 实战演练:识别与设计子系统实践 |
框架设计 依据架构规范设计框架组件;框架组件规划与重用策略;数据库连接管理与跨组件事务处理设计;消息管理设计;单点登录(SSO)设计;应用程序配置组件设计;基于SOA架构体系设计框架组件;框架组件实现方式; 案例分析:应用框架设计 |
工作流设计 个人工作流和业务工作流;业务工作流BPEL描述语言;个人工作流WFMG实现方式;现有工作流引擎复用与自主开发 实践演练:工作流设计实践 |
业务实体设计 业务实体关系设计;ORM设计模式;业务实体变化分析;中间服务器业务实体对象实例化设计;对象缓存设计;业务实体对象查询设计;基于SOA架构体系的实体设计; 实践演练:业务实体设计实践 |
数据库设计 数据库基本设计原则;基于OO的数据库设计;数据库性能设计;数据库安全设计;数据库程序规划与业务混入问题 实践演练:动态数据库表设计实践 |