《{企业团队建设}团队开发》由会员分享,可在线阅读,更多相关《{企业团队建设}团队开发(76页珍藏版)》请在金锄头文库上搜索。
1、团队开发管理,张炜 开发合作部 ,议 程,用VS.NET 进行团队开发 UML建模和产品构架 开发项目组队,实施和升级要则,用VS.NET 和 VSS 进行团队开发,团队环境简介 ASP.NET应用程序开发模式 系统化解决方案与工程 依赖文件的管理 应用程序创建管理 建立与保持团队环境,团队环境简介,团队开发的关键过程 开发过程 创建过程,ASP.NET应用程序开发模式,隔离模式(推荐) 半隔离模式 非隔离模式,ASP.NET应用程序开发模式,使用隔离模式的益处 独立开发 独立调试 源代码控制 快速高效 使用非隔离模式的不利之处 影响他人工作 FrontPage扩展的局限,系统化解决方案与工程
2、,Visual Studio.NET 中的解决方案与工程 解决方案 工程,系统化解决方案与工程,单解决方案 使用一个Solution文件来容纳所有相关的工程,系统化解决方案与工程,单解决方案的益处 使用更为灵活的工程应用 避免版本问题 自动切换debug 与 release 版本 系统创建过程与创建脚本非常简单 单解决方案的不利之处 缺乏伸缩性 经常需要重新编译,系统化解决方案与工程,分区的单解决方案 用子解决方案来划分工程,系统化解决方案与工程,分区单解决方案的益处 只需要与一个子解决方案打交道 在每一个子解决方案中使用工程应用 单个主解决方案市的创建过程简单 分区单解决方案的不利之处 添加
3、新工程时操作繁琐 分区困难,系统化解决方案与工程,多解决方案 没有一个主解决方案存在,系统化解决方案与工程,多解决方案的益处 添加删除工程非常方便 能够将系统划分为多个部分 多解决方案的不足之处 必须使用文件引用 必须引用当前版本 无法得到最新的代码,依赖文件的管理,Assembly 引用 基于工程的引用 基于文件的引用 Web Service 的引用 数据库的引用与开发 COM对象的引用,依赖文件的管理,基于工程的引用 工作于多台计算机上 使得VS.NET能够追踪工程的依赖状况 防止文件丢失 自动追踪工程配置变化 防止循环引用,依赖文件的管理,基于文件的引用 仅仅在需要的时候使用 使用本地拷
4、贝 自动依赖追踪 引用文件的存放地点 引用Release 版本的文件,依赖文件的管理,Web Service 的引用 Web Service 的版本控制 使用动态URL 更新Web Service 引用,依赖文件的管理,数据库的引用 User.config 配置文件 ,依赖文件的管理,数据库的开发 中央数据库 不要给予开发人员管理员权限 每个开发人员应有特殊的权限 数据库结构与存储过程的管理 本地数据库 SQL Server Developer edtion 原始数据的保存 同步更新数据库结构与对象,依赖文件的管理,COM对象的引用 生成兼容的InterOP对象 使用PrimaryInterO
5、P 使用TLBIMP 调用服务对象 动态注册,应用程序创建管理,版本控制 使用脚本和工具进行自动创建 组织和发布创建输出,应用程序创建管理,版本控制 控制Assembly的版本 使用自动编号 使用固定编号 创建服务器上的文件夹结构,应用程序创建管理,使用脚本和工具进行自动创建 创建过程 标示源文件 建立文件夹 使用Devenv.exe 创建版本号 未完成的创建,应用程序创建管理,组织和发布创建输出 把结果做成MSI文件包 创建专用的账号,建立与保持团队环境,开发工作机配置 Visual Source Safe 配置 各类服务器配置,建立与保持团队环境,开发工作机配置 使用映像文件安装工作机 软
6、件/硬件配置 Visual Studio.NET 企业模版,建立与保持团队环境,Visual Source Safe 配置 开发者域名配置 单独域名且有信任 单独域名且无信任 公司域名的一部分 VSS 服务器配置 VSS 安装与管理,建立与保持团队环境,各类服务器配置 SQL Server 配置 Web Server 配置 Windows 2000, Windows XP, 或 Windows Server 2003. 建议在NTFS分区上安装Web服务 使用 IIS 5.0 or 6.0.,议 程,用VS.NET 进行团队开发 UML建模和产品构架 开发项目组队,实施和升级要则,.NET中的
7、UML工具,Microsoft Visio Rational Rose/XDE Other tools,.NET应用程序的建模,.NET 企业模版 使用.NET 企业模版的收益 .NET 企业模版规则 自定义.NET 企业模版 发布.NET 企业模版,.NET 企业模版,.NET 企业模版的概念 .NET 企业模版的组成 .NET 企业模版在VS.NET中,使用.NET 企业模版的收益,定义应用程序的初始结构 减少开发人员的复杂度 提供关于技术和构架上的指导,.NET 企业模版规则,规则概览 规则验证 规则在VS.NET中的表现,规则概览,规则文件内容 规则与自定义开发环境 规则的应用,.NE
8、T 企业模版在VS.NET中,对属性窗口的影响 对新建对话框的影响 对工具栏的影响 对菜单的影响,自定义.NET 企业模版,建立新模版 通过向导建立新模版 把Web Service 加入新模版,发布.NET 企业模版,.NET 企业模版与结构 规则版本管理 分发自定义模版 .NET 企业模版常见问题,.NET 企业模版与结构,Enterprise Template project (ETP)结构 Microsoft Visual Studio Distributed Application Template File 1.00 BusinessFacadeProjectsBusinessFac
9、adeProjects.etp BusinessRulesProjectsBusinessRulesProjects.etp WebServiceProjectsWebServiceProjects.etp WebUIProjectsWebUIProjects.etp ,规则版本管理,规则文件位置 随时更改版本,分发自定义模版,模版文件位置 Web模版下载 在局域网中使用模版 为自定义模版提供帮助,.NET 企业模版常见问题,快捷方式 类的继承 设计时属性 COM引用 工具箱过滤 元素定义,议 程,用VS.NET 进行团队开发 UML建模和产品构架 开发项目组队,实施和升级要则,失败工程的特征
10、,建立良好的沟通,成功的目标,在合同期内完成,完成功能,在发布前解决问题,平化的分发过程,提高用户使用效率,这个工程延期且超支,我们所得到的 不是我们想要的,整个事情不受控制我们总是不断发现问题,我们不能在这 个环境中使用它,它太难以使用了,成功项目的目标,典型失败项目的特征,满意的客户,责任方,它不满足我们的期望, 我门不开心,?,?,?,?,?,?,“有效的信息不能被及时地共享,?,MSF团队模式,沟通,其余的项目参与者,项目发起人 发起并批准该项目的人 客户(商业发起人) 期望从项目中获取商业价值的人 最终用户 最终使用这个产品的个人或系统 操作者 产品发布后的相关操作人员,MSF 团队
11、模式的基本原则,向着共同的目标努力,专注于商业价值,灵活,机动,MSF 团队模式的基本原则(续),提高每个团队成员的能力,培养公开平等的交流,树立清晰的责任,共同的责任感,关键概念与实践经验,关键概念 小组成员意识 客户至上的意识 整个产品的意识 无缺陷意识 热心学习 实践经验 建立小规模的,包括各方面人才的团队 是整个团队在同一个地点工作 在设计解决方案时需要整个团队的参与,MSF 团队角色环,沟通,MSF 团队角色环与职责范围,商业价值市场客户咨询产品规划,项目管理解决方案构架过程保证管理员服务,技术顾问软件构架与设计软件开发基础开发,测试计划 测试工程 测试报告,基础支持 操作 后勤 商
12、业发布管理,辅助功能 国际化客户咨询培训与技术支持可用性测试用户界面设计,MSF 团队角色环结构,示例,角色环,功能区域,职责,任务,项目经理,项目管理,驱动整体解决方案设计 管理功能规范,维护可追踪记录与其他项目小组保持联系, 交互信息,解决方案构架,项目经理角色职责,目标: 按项目合同条件发布产品 功能区域 项目管理 解决方案构架 过程保证 管理员服务,开发人员职责,目标: 根据设计规范开发软件 功能区域 技术顾问 软件构架及设计 软件开发 软件基础开发,测试人员职责,目标: 当且仅当所有问题被解决后批准发布 功能区域 测试计划 测试工程 测试报告,发布管理人员职责,目标: 保证发布过程平
13、滑进行 功能区域 基础功能 技术支持 功能操作 后勤 商业发布管理,用户体验职责,目标: 增强用户使用效率 功能区域 辅助功能 国际化 客户咨询 技术支持 可用性研究及测试 用户界面设计,产品经理职责,目标: 使客户满意 功能区域 商业价值 市场 客户咨询 产品计划,扩展的项目团队,操作与 支持,技术专注,商务专注,最终用户,项目发起者,客户,技术构架,客户服务,Project Team,用户体验,开发人员t,测试人员,发布管理,产品经理,项目经理,提高团队效率的方法,在复杂度,风险,技术方面提高效率 把大的团队分成多个小的子团队,使得他们在流程,管理,沟通方面的成本更低,更容易组建 为每一个
14、子团队配置主管 使用核心团队来管理整个项目 核心团队由子团队主管及项目经理组成 核心团队负责各子团队之间的同步与协调,特性团队,围绕产品特性或某一能力而建立的子团队,项目经理,发布管理人员,产品经理,用户体验,开发人员,测试人员,管理团队,何时使用特性团队,以下情况可使用特性团队 解决方案的各个组件互相独立 团队成员由于组织或地理位置的原因分散各处 由于软件开发的局限(如部分外包),功能团队,根据团队角色的功能建立的子团队,团队主管,可用性研究与测试,Training/support material,国际化,客户咨询,用户体验,用户界面设计,辅助功能,何时使用功能团队,以下情况可使用功能团队
15、 在工程中,某个角色的任务需要强大的团队努力来共同完成 在工程中,某个角色的任务需要各种能力来共同完成,大型项目中的团队主管,特性团队主管担当该团队项目经理的职责 主管直接向该项目的项目经理汇报本团队的总体计划与时间表 项目的管理层在整个项目的生命周期中需对角色转换进行关注,MSF 子团队与领导团队的关系,功能团队,特性团队,领导团队,项目经理,发布管理人员,产品经理,用户体验,开发人员,测试人员,在小的团队中合并角色,团队中的角色可以被合并,但某些合并会产生风险,发布管理,P 可行,U 不太可能,N 不建议,产品经理,项目经理,开发人员,测试人员,用户体验,发布管理,产品经理,项目经理,开发
16、人员,测试人员,用户体验,用户体验,产品经理,测试人员,项目经理,发布管理,开发人员,示例:小团队,角色合并,项目管理人员准则,项目管理人员的主要作用是在项目进行中运用他们的知识,技巧,工具和技术使得项目能够达到预期的要求,不要等同于老板 对于大型的项目来说尤为重要,项目管理人员的知识领域,项目管理人员需要以下知识: 项目综合管理 项目阶段管理 项目时间管理 项目花费管理 项目人力资源管理 项目沟通管理 项目风险管理 项目收益管理 项目质量管理,大型项目中的分布式管理,每一个角色的团队主管对于下表中相对应的领域负责,整个项目层,子团队层,项目经理的特殊职责,项目经理在整个角色环中起到特殊的重要作