Xu Jianxiang
--2006年的时候,张江的房产才6千多,2010年的张江低于2w的几乎没有,原来只有一个如家,现在如家那边是药谷。。。
一、培训背景
从公司的长远发展出发,通过对公司内员工展开针对性的培训,以使他们不断获取新的知识和相关技能,提升整体研发能力,于2006年6月3日至6月6日,参加中科院计算所职业培训中心在上海举办的高级系统架构师培训。
二、培训目的和内容
通过培训,掌握目前常用的体系结构设计方案,并能够灵活应用;掌握影响软件体系结构设计的各种目标和应对策略;熟练掌握一个真实的软件开发过程,并能够具体地将RUP的规范过程应用到实际的系统实现中。
培训分为四天,第一天讲解软件架构,第二天讲解设计模式和商业机密,第三天讲解RUP,第四天讲解架构设计中的技术问题。
四天中培训的主要内容有:
1、软件架构设计的理论与实践;
2、设计模式和体系创建;
3、商业机密;
4、RUP的构件实现与管理;
5、架构设计中的技术问题分析。
三、培训日程
时间 | 培训内容 |
6月3日上午 下午 | 软件架构设计的基础概念 初始阶段的设计问题 |
需求分析与概念建模 架构分析与设计 | |
6月4日上午 下午 | 类设计与设计模式 架构设计的进一步讨论 |
软件架构和架构师 商业机密 | |
6月5日上午 下午 | RUP课程简介 RUP的实质分析 RUP的概述 |
RUP最佳实践和案例教学 超大型项目的顶层设计与RUP | |
6月6日上午 下午 | 概要设计和架构体系选择 物理和逻辑架构分步 J2EE体系 |
Spring与Hibernate |
四、体会和计划
在四天的培训课程中,集合讲师的案例,深入学习了软件架构设计、统一过程和设计模式三个方面的综合应用技术。
这次培训的内容多、时间紧,让我获益匪浅。我感受很深的主要有以下几点:
1、软件的架构设计是对软件、硬件、网络、运营、政策等软件设计中的需求和要素进行决策(在统一过程里面,架构调研和架构设计统称为架构分析)。软件架构设计是一个系统工程,它需要系统构架师有很宽的知识面,从需求分析、架构设计到类设计甚至代码实现都需要有透彻的理解。架构的关键是拥抱变化而设计。
2、软件架构师是技术负责,是解决方案的提供者;与项目经理合作,制定计划,决定成员,组织团队;保证项目按计划完成。架构师最重要的素质是把握重点。
3、Rational Unified Process(RUP,Rational统一过程),是用例驱动、以体系结构为中心,迭代、增量的软件开发过程。
RUP的软件开发分为四个阶段:
a、初始阶段:识别和规避项目的主要风险,建立用例模型框架,并制定里程碑日期的阶段计划;
b、精化阶段:分析问题领域,建立健全的体系结构基础,编制项目计划,淘汰项目中最高风险的元素,完成部分优先级最高的用例开发;
c、构建阶段:分为多个迭代,逐步完成不同优先级的用例开发,核心Case->高风险Case->次核心Case->其它Case;
d、交付阶段:进行各种功能、性能测试,进行产品化、部署,完成整个系统的开发工作。
每次迭代之后,都应该交付一个可以运行的中间版本。
4、软件设计中存在不断重复出现,可以用某种相同方式解决的问题,也可以按照某种模式进行识别,并且可以在这个模式的基础上创建特定的解决方案。设计模式是充分利用语言优势,站在更高的角度去审视我们的设计,但是不要为了模式而设计。
5、合理、规范的文档很重要,也很必要,如术语表,对功能性需求形成的用例模型和系统特性列表文档,技术备忘录(记录设计动机和原理),问题卡等等。
最后,计划×月×日 14:00 ~ 18:00 在大会议室对R&D部门开展主题为“面向对象的软件开发”的内部培训,目录如下:
第一部分:软件过程概述
1、软件过程
第二部分:面向对象建模(分析和设计)
2、概念建模
3、用例建模
4、交互建模
5、部署与实施
6、案例
第三部分:设计模式
7、何谓模式
8、设计原则
9、GOF设计模式
10、案例
徐建祥
2006/06/09