Introduction
1. Why study TSP & What's TSPi(了解)
2. TSPi Design(了解)
- simple framework based on PSP
- several cycles
- standard measures for quality, performance and for teams & students
- use role & team evaluations
- require process discipline
- guidance on teamwork
3. TSPi Structure & Flow(掌握)
- 最基本的开发策略:循环(Cyclic)
- 8个过程阶段(比TSP多一个,要知道8个阶段,不能有单词拼写错误)
- Launch
- Strategy
- Plan
- Requirement
- Design
- Implementation
- Test
- Postmortem(事后析误)
4. The Cyclic Development Strategy(了解)
- 每个迭代生产前期可测试版本
- small enough, 能够在规定时间内完成
- 迭代结束后,最终产品
The Logic of the Team Software Process
Vocab.
- procrastination
- creep
- cohesion
- jell
- arbitrary
Why Project Fail
- 原因:对压力的不良反应
- In Software Project:压力主要来源于日程表太过紧凑
- TSP通过Strategy & Planning process, 安排与能力匹配的时间表,来解决这个问题
2.2 Common Team Problems(掌握)
- Ineffective Leadership 领导不力
- Failure to Compromise or Cooperate 妥协或团队合作不力
- Lack of Participation 缺乏参与
- Procrastination and Lack of Confidence 拖延且缺乏信心
- Poor Quality 低劣的软件质量
- Function Creep 功能蔓延
- Ineffective Peer Evaluation 无效的同伴评价
2.3 What is a Team?
- 定义(掌握)
- 一个Team包括至少两个人
- 这些成员为一个共同目标努力
- 每个成员都有特定的被指派的角色或者功能
- 实现目标依赖于成员的相互依赖合作
- 与group区别:group不一定有相同目标
2.4 Building Effective Teams掌握
- Team Cohesion 团队内聚力
- Challenging Goal 挑战性目标
- Feedback 反馈(能知道每个成员做了什么和他们的表现)
- Common Working Framework 达成一致的工作框架(如开始/完成时间,阶段)
2.5 How Teams Develop
- 需要时间累积
- 分为以下三方层次
- outset:最开始成员有不同目标
- jell:成员接受团队目标(Launch)
- arbitrary:团队对目标还有争议,但共同处理建设
2.6 How TSPi build Teams(注意与2.5节区别)掌握
- Goals:by having all team members participate in defining a set of common goals
- Roles:defines a standard set of team-member roles
- Plans
- Communication(Internal Communication):hold team meetings every week.
- External Communication:make weekly summary reports to the instructor
Chapter 3 Launch
Vocabulary
Complementary:互补的
Yield:产量,利润
Facilitator:促进者
Moderate:适度的,使缓和
Baseline:基线
3.1 Student Infomation
- step
- each student fill INFO form
- The instructor make team and role assignments.
3.3 Team Role
- Team leader
- Development Manager
- Planning Manager
- Quality/Process Manager
- Support Manager
3.4 Team Goals
Why Team Goals
- an essential step at the start
Goals Setting Consideration(掌握)
- set aggressive but realistic goals有挑战性,可实现
- set specific and measured goals简单的,可评估的
3.5 Goal Setting for TSPi(模板)
- Goal 1: produce a quality product
- Measure 1.1: Percent of defect found before the first compile (Process Yield):80%
- Measure 1.2: Number of defects found in system test:0
- .. Requirements functions included at project completion:100%
- Run a productive and well-managed project.
- Error in estimated product size: < 20%
- Error in estimated development hours: < 20%
- Percent of data recorded and entered in project notebook: 100%
- Finish on time
- Days early or late in completing the development cycle <4
3.6 Team Member Goals(理解)
3.7 The Role Goals掌握
Team Leader
- build & Maintain an effective team创建高效团队
- Motivate all team members to work aggressively on the project.激发团队成员的工作进取心
- Resolve all the issues team members bring to you.解决所有问题
- Keep the instructor fully informed about the team's progress. 与指导者之间良好沟通
- perform effectively as the team's meeting facilitator. 团队会议的组织者
Development Manager
- produce a superior product
- fully use the team members' skill and ability.
Planning Manager
- Produce a complete,precise,and accurate plan for team and members.负责完整精确正确的计划
- Accurately report team status every week.
Quality/Process Manager
- All team members accurately report and properly use the TSPi process data
- The team faithfully follows the TSPi and produces a product.
- All team inspections are properly moderate and reported.
- All team meetings are accurately reported, and the reports are put in the project notebook.
Support Manager
- Team has suitable tools and methods to support its work.
- No unauthorized changes are made to baselined products
- All team's risks and issues are recorded in the risk-tracking system and report each week
- The team meets its reuse goals for the development cycle
3.8 Team Meeting
- 作用:
- team communication
- planning
- decision making
- 最重要作用(理解)
- 收集分析团队数据
3.9 The first Team Meeting(重要,掌握)
- startup
- 具体需做
- 讨论角色
- 复查和修订团队目标(如TSPi模板)
- 确定每周例会时间
- 确定每周把TSPi相关文档数据提交给计划经理的时间
3.10 Data Requirements
- 每个团队成员每周都需要更新自己的TASK,SCHEDULE,WEEK表格并交给计划经理
- 计划经理产生每周回报
- Team leader汇报给指导者
Chapter 4 The Development Strategy
Vocabulary
- postulate 要求,假定,以...为出发点
- identify 识别
- preliminary 预备的
- figure out
- justified 有道理的
- compromise 损害,连累,危及
- justify 证明...有道理的
4.1 What the Strategy is
- 策略是为了找出构建大型系统的方法(了解)
- 目标是尽可能减少风险(日程太近导致项目做不出来)
- 循环开发策略
4.2 How the Strategy is produced(了解)
- 列出策略约束
- 列出可能策略
- 列出利弊
- 评估
- 决定
- 记录
4.3 Establish Strategy Criteria(了解)
评估策略是否合理的标准
- 周期一一定生产出最终产品的最核心功能集
- 周期1核心版本后续可以升级加强
- 每个周期的产品高质量且可测
- 采取模块化结构,工作相对独立完成
4.4 策略周期主要做的三件事-Produce the conceptual Design
- 确定所有周期会开发的功能
- 分配到不同周期how/component/function/big
4.5 策略周期主要做的三件事-Produce the Preliminary Size Estimate
- Planning Manager计算大概需要多少行新添加或者修改的代码
- 计入STRAT表
4.6 策略周期主要做的三件事-Produce the Preliminary Time Estimate
- Planning Manager使用LOC-per-hour计算工时
4.7 第二件重要的事-风险评估
- Risk 可能发生 Issue 必然发生
- 常见风险问题(掌握)
- Too large a product
- 解决:先建立小的核心功能早期版本,功能分周期迭代
- Difficult or complex function
- 解决:建立原型进行取舍
- Support System Problem
- 解决: 先做demo了解支持系统工作原理
- Testing time:
- 原因:缺陷太多测试期长
- 解决:依据TSP和PSP过程
- Product Control
- 解决:TSP强调配置管理
- Teamwork Problem
- Too large a product
- 过程
- 找出risk
- 给risk打分
- 分配等级高于LL的给成员来跟踪,在周会讨论
- 记录到ITL表
4.8 记录risk到ITL表
4.9 第三件重要的事-Produce the Configuration Management Plan掌握
- SCM(Software Configuration Management)
- CIP 配置标识计划
- 给出命名规则,保证产品无重名
- 标识产品纳入配置管理控制下的时间点
- 标出product的owner,需要通过拥有者同意才能修改
- CCP 配置控制规程
- 保证更改不冲突
- CCB 配置控制委员会
- 一定包含Development Manager
- 由Support Manager负责
- CIP 配置标识计划
- 目的:确保所有软件产品的内容已知,可用,可追踪的
4.11 Exit Criteria(掌握)
- STRAT form
- ITL form
- 软件配置管理SCM