第十四——十七章做业

                                                                                                     第十四章

15.3.1 有些成功人士或公司认为不须要独立的测试角色(Test),你怎么看?

      答:在一些软件公司中,QA的工做中包含了Test的角色,负责验证程序是否符合预先设计的功能和特性。可是QA的工做量是不少的,一个好的QA不只须要对程序架构有着很好的理解,对程序功能和性能都有着较深的理解,而且要对测试工程了如指掌,如测试用例、MTTF等不少方面。程序员

若是QA人员可以很好地完成工做,是能够的,可是细化分工可以使得每一个人专于一部分,更好地提高团队效率。数据库

15.3.2 为何一些成功的公司不用测试人员?

    答: 一些成功的公司中,软件开发人员的我的能力很强,可以保证自身代码的有效性。可是这要求开发人员充分信任本身的代码,而且本身对代码进行了很详尽的测试。可是若是开发人员不能有效测试代码,或者不肯意测试代码,那么须要测试人员来进行这项工做。编程

 

15.3.3 微软是怎么作的呢?

     答:微软的开发测试只要有三种角色:网络

SDE:Software Design Engineer,简称dev。架构

SDE/T:Software Design Engineer in Test,也写代码,可是重点在测试。运维

STE:Software Test Engineer。编程语言

15.3.4 团队应该如何安排QA 和测试工做?

     答:QA是质量保证,是对软件制做过程当中的制做质量进行管理,强调控制和评估。软件测试是对软件产品的质量自己进行测试,是从技术方面出发测试软件质量,属于Life cycle的一部分,更准确的说法应该是QC。。工具

     在工做安排上,测试关注的更可能是被测对象上线前的质量,而QA关注的是宏观意义上的质量,包括开发环节的质量控制(如何提升代码自己质量)、测试环节、上线环节以及运维环节(如线上出现问题后如何快速止损),甚至还包括用那种开发模式能更有效的提高项目开发质量和效率,于是是一个更宽泛的领域。性能

15.3.5  测试人员的职业发展

答:查阅一些资料,测试人员的职业发展能够分为如下几个阶段:学习

初级测试工程师

  刚入门的拥有科学学位的我的或具备一些手工测试经验的我的。开发测试脚本并开始熟悉测试生存周期和测试技术。

测试工程师/程序分析员

  具备1-2年经验的测试工程师或程序员。编写自动测试脚本程序并担任测试编程初期的领导工做。进一步拓展编程语言、操做系统、网络与数据库方面的技能。

高级测试工程师/程序分析员

  具备3-4年经验的测试工程师或程序员。帮助开发或维护测试或编程标准与过程,负责同级的评审,并为其它初级的测试工程师或程序员充当顾问。继续拓展编程语言、操做系统、网络与数据库方面的技能。

测试组负责人

  具备4-6年经验的测试工程师或程序员。负责管理1至3名测试工程师或程序员。担负一些进度安排和工做规模/成本估算职责。更集中于技能方面。

测试/编程负责人

  具备6-10年经验的测试工程师或。负责管理8至10名技术人员。负责进度安排、工做规模/成本估算、按进度表和预算目标交付产品。负责开发项目的技术方法。为一些用户提供支持与演示。开发一些特定领域的技术专长

测试/质量保证/开发(项目)、经理

  具备10多年的工做经验。管理8名或更多的人员参加的1个或多个项目。负责这一领域(测试/质量保证/开发)内的整个开发生存周期业务。为一些用户提供交互和大量演示。负责项目成本、进度安排、计划和人员分工

计划经理

  具备15年以上开发与支持(测试/质量保证)活动方面的经验。管理从事若干项目的人员以及整个开发生存周期。负责把握项目方向与盈亏责任。

 

我的观点是,在入行前,即工做前的1年时间内,选择一个大的入门方向;入行后的3~12个月,应该学习基本知识,如黑盒、白盒、自动化测试、测试工具等技能,培养测试、质量和项目管理的经验;入行后3~5年,根据选定方向,提高本身技能,根据管理或技术方向尽可能作到全面、熟练;在入行5~10内,提高本身宏观把握能力,考虑长远的发展计划。

15.4 如何衡量软件工程的质量

      答:除却邹老师提出的这些观点,我认为还能够从如下这些方面衡量代码:

  1. 设计/开发约束:在软件开发过程当中,许多设计约束和准则对于代码的可维护性和可读性都相当重要;
  2. 环路复杂度:对于代码实现和执行过程当中,不一样方法的环路复杂度不一样;
  3. Bug的严重程度与数量:不一样的Bug的严重程度不一样,咱们可以容许小Bug或小异常的出现,可是对于严重的Bug则属于不可原谅的。

 

                                                                                                 第十五章

15.1  案例分析

       答:根据书中的例子,推断出两个团队的血型:

             STG游戏的跳票(为了完美,推迟了7天,可是7天以后也没有发布……):O型或B型

             英语学习软件(说了“明早发布”,可是明早一直没到):O型

15.3.1  反动分子阿超

      答:阿超的作法是可取的,由于在稳定阶段,不适合对整个项目进行大的修改或增长工做,能够先行发布一个Alpha版本,后续发布Beta版本、RC、RTM来不断完善。可是须要对后续版本的工做明肯定义,不能只是简单的推脱工做。

15.3.2  银弹之战

     答:我以为是有必定做用的,由于首先简单的争论是会不容易上升到银弹程度的,而复杂的问题你们讨论好久可能仍是谁也不能说服谁,因此银弹政策可以在讨论的基础上节省时间。

可是,作项目有一个原则是:若是不一样意那么在拍板前必定坚定抗议,一旦决定就不要再提意见。

15.3.3 扁鹊三兄弟

     答:分析丹佛机场行李系统:

     项目需求:因为丹佛市原有机场能力有限,须要新建一个机场。新机场有3个中央大厅,2号中央大厅使用方“美国联合航空公司”委托“BAE公司”为其开发自动化行李处理系统。

     对于这个项目,乙方估计时间为2年半内完成,一开始事情都很顺利。可是,丹佛市负责新机场建设的小组认为若是可以假设一个同时为3个中央大厅同时使用的集成自动化行李处理系统是一个颇有意义的事情。因      此,他们说服原航空公司自行建设的方案,转而由BAE公司建设整个机场的集成自动化行李处理系统。

     BAE做为在领域内全球最为顶尖的公司,提出如下这些问题:

 * 缺乏安装行李系统所需的足够空间 
   * 建筑结构没法承受行李系统所附加的重量 
   * 缺乏行李处理系统所需的稳定的电力 
   * 缺乏消除行李处理系统散发的热量的通风和空调设施 

为了解决这些问题,提出如下条件:

* 上述的风险都将被做为项目可否顺利完成的重要里程碑 
   * 超出预订日期以后的需求或设计变动不被接受,而且需求和设计须要有一段冻结期 
   * BAE公司在整个新机场的施工现场拥有最高的优先权,包括场地的占用、工做顺序的安排等 

      虽然BAE公司从专业的角度意识到风险而且明确地提出来,可是因为项目任务过于庞大,影响因素太多,在前后通过PM辞职、需求变动频繁、首席工程师去世等事件,并不能按要求完成任务,从而引发了项目的失控。最终美联航承租的2号中央大厅,仍将由BAE公司建设自动化行李处理系统,大陆航空公司承租的1号中央大厅均使用传统的拖车系统。

 

     经过分析整个事件,咱们不难发现需求过多、系统过于庞大无疑是主要问题之一。众所周知,越庞大的项目需求就越复杂,不可控因素越多,也越容易失控。管理层的变更也是影响因素之一,由于通常状况下,失控项目最初是由项目团队发现的、甚至是管理层发现的。此外,太高的性能要求,如实时、大规模愈来愈称为影响项目的最终成功的问题;最终,大型的涉及到集成的应用,则越容易失控。

                                                                                                      第十六章

 

 

IT行业的创新 练习与讨论

 

16.6.1 VCD的创新

答:先行者如何把技术领先变为市场领先:

1.先行者善于发现机遇,把握机遇

2. 先行者在研发前进行了市场调研,了解消费者需求

3.先行者勇于投资

4. 先行者进行反复试验,反复研发

 

若是我是竞争者

1. 我会购买一台万燕VCD做为解剖样机

2. 在样机基础上进行进一步的研发与创新,发展更多功能

3. 多进行市场调研,把握消费者需求

 

16.6.2 BBS的创新

答:Stack Overflow以前是以程序开发为主题的论坛,现在Stack Overflow做为Stack Exchange network的子站,已经发展成为拥有43个主题讨论区的社区。

Stack Overflow成功的秘诀在于始终如一地推崇高质量的内容,并对服务进行意义明确的垂直划分。而后得到了许多贡献优质内容的用户,Stack Overflow也得以优化问答服务流程,这样,能够实现对少部分用户进行收费。和其余问答服务网站不一样的是,Stack Overflow对用户提问进行严格筛选,淘汰那些容易产生主观答案或难以产生高质回答的问题,网络社区管理员和成员都能投票删掉那些不合适的提问或者对提问进行修改和完善。

 

16.6.3 《梦断代码》大目标和远景

答:做为创新参考

 

16.6.4 讨论微软公司Xbox Kinect的创新,它是如何知足玩家需求的,给微软公司带来了多少营收,对所在行业的影响如何。

答:它是一种3D体感摄影机,同时导入了即时动态捕捉、影像辨识、麦克风输入、语音辨识、社群互动等功能。玩家能够经过这项技术在游戏中开车、与其余玩家互动、经过互联网与其余Xbox玩家分享图片和信息等。

Xbox Kinect采用最新的计算机图像处理技术,实现人的动态扑捉,将人和游戏结合,并进行实时反馈使玩家身临其境。知足玩家的互动感和代入感需求,不须要经过输入设备,人的自身就是游戏输入设备,能够得到更直接的体验。

微软CEO 鲍尔默18日在旧金山举办的Web 2.0高峰会上指出,今年假期旺季微软将针对Kinect、XBox推出一系列的重要创新。微软表示,Xbox 360销售量市占率达42%,已连续第7个月高于40%。Xbox 360已屡次成为全美最畅销的游戏机。微软指出,过去16个月当中Xbox 360有15个月是美国游戏机单月销售量冠军。

微软认为这种无遥控器式的系统将为电玩体验掀起革命。它同时表示人脸辨识功能将让电玩人物可以和玩家透过表情来沟通,所以游戏终将加入更多社交经验于内。

 

16.6.5 练习创新的招数

答:1.市场调研并分析客户以及潜在客户的进一步需求。

     2.积极研发,进行技术创新。

     3.对其进行新的设计,内部科技与外观双方面。

     4.聘用更好的广告团队,采起更积极的宣传方式。

 

16.6.6 软件工程的技术和实践如何帮助创新

答:好比以结对编程的合做方式来共赢互惠,经过合做来提升共同的工做效率,得到更完美的工做成果。

 

16.6.7 创业-坚持前进的方向VS尝试更多新的想法

答:我在创业,可是市面上和个人朋友圈又流传更cool 的想法和创新。

    做为创业者,我要深入思考这些新的想法的创新对个人创业有没有帮助和促进。若是是有帮助的,那么就把他们的cool想法吸取进来,为个人事业发展更添一块砖。这个新的想法创新是对个人创业没有什么实质性帮助的,那么我还要坚决本身的研发道路,同时注意本身的研发过程会不会出现与这些新想法同类型的错误,这样不断自我检讨,前进发展。

 

第十七章

人,绩效和职业道德

1比较不一样团队的绩效评估方法,提出本身团队的绩效评估计划

答:案例中五个小组的绩效评估方法各有利弊,咱们团队的绩效评估计划介于第一种和第五种之间,既分配好每一个人应作的任务和责任,又要造成以重要成员为中心的明星效应,以此来评估团队绩效。

 

2. 在团队中会不会出现“劣币驱逐良币”的现象?

答:在团队合做中确实有可能会出现这种很差的现象,这就须要咱们全部团队成员一块儿坚决不移地贯彻校训的思想:实事求是。一切从实际出发,用事实说话。

 

3. 讨论团队如何能让全部人都明确驱动和责任?

答:在一个责任驱动型团队内部,全部成员的职责都很肯定,分工明确。团队在完成工做时,表现出的就是分工协做,各司其职,团队气氛轻松和谐,不多或几乎没有内耗,是较高级的团队组织管理形态。

为了保持这种管理形态必需要坚持几点原则:

原则1 每一个责任都有人负责;每一个责任都只有一我的负责。团队承担的全部责任,应当都能找到具体负责的人,团队全部人承担的责任之和,就是团队在组织内部承担的责任。

原则2 权责利、义务、能力和岗位名称要匹配。权责利要统一不少人都知道,可是在责任驱动型团队中,强调的是权责利、义务、能力和岗位。

原则3 别人的责任,不要擅自去承担,团队应当作到每一个成员都了解彼此承担的责任。

原则4 帮助原则。当你看到别人须要帮助,或当你收到别人的帮助请求时,你在确保不耽误本身履职的状况下,给予了他人帮助。而不能出现你帮助了别人,结果本身的责任没承担好的状况。

原则5 分歧处理原则。若是你以为你的同事作得不对,请当面告诉他你的建议,而不是背后去告诉他的上级。

原则6 卫兵原则。卫兵的职责是确保每一个通行者都有通行证,他的权力是阻止没有通行证的人通行。所谓的卫兵原则是,卫兵的上级领导有撸掉卫兵的权力,可是他没有权力干涉卫兵履职,即要求卫兵放行一个没有通行证的人。

 

4. 采访并收集下面几类公司对员工绩效考核的作法:

答:采访

 

5. 走出“自我”和“当下”

答:我以为这些活动是有价值的

人类是社会性的动物,尤为在这个高度发达的信息社会,不可能将本身封闭起来不问世事。在一个软件团队工做,只考虑到“自我”,不考虑“别人”是不行的。一样,有些同窗得过且过,只看到“当下”,不放眼“将来”的心态也是不积极的。

在成功的大型企业中,人际交流能力和人际觉察是员工素质培训的一个重要部分,它包括如何与别人创建平等而融洽的合做关系,如何处理矛盾与冲突,如何影响同事,如何给别人的工做作评价,如何能了解别人表面行动下的言外之意、隐含的动机等等。这正是很多在校学生所缺陷的部分,而课堂上这些活动能够弥补这个缺陷,因此我以为它们是很是必要的。

 

6. 刷课软件和刷票软件

答:现阶段的法律中,使用这些插件,并不能算是违反法律。同时它又缺失的损害了大部分人的一部分利益,在这个领域合理运用法律法规与行业道德规范来约束,也是一个问题。

 

7. A/B 测试和道德

 

8. 软件团队的发展阶段

答:我的咱们的团队处于规范阶段,由于咱们的团队的任务个工做职责都是公开的、分配到每个人的。每一位成员都对本身要作的事情很是清楚。你们互相了解,互相尊重,有一个共同奋斗的目标与决心。

 

9. 团队如何作决定

答:(1) 独裁:领导说了算

优:最明显的优势就是团队不会因意见不合而踟蹰不前。

缺:缺点就是独裁带来的没法群策群力,员工不能参与决策,一旦领导出现决策失误殃及整个团队。

 

(2) 独裁+顾问:领导和一些外部的顾问商量以后作决定

优:优势是比起独裁,这种方式使得领导出现错误毁灭团队的可能性大大下降。

缺:一样也是没法群策群力,员工参与不到决策里来,积极性不高。

 

(3) 民主投票:这样就产生了赢家和输家

优:优势为民主。

缺:缺点为决策缓慢及易产生小集团派系斗争。

 

(4) 全体一致赞成后再决定:皆大欢喜?

优:优势为绝对民主?

缺:缺点为决策缓慢以及可能并不会产生真正有利于集体发展进步的决策。

  

12. 职业道德评论

答:对照软件工程师职业道德的条款, 评价当事人的软件工程师职业道德如何。

下面几点对软件工程师而言,应该是最基本的要求:

有高度的责任心和强烈的使命感

有自觉的规范化和标准化意识

有强烈的相互协做的团队精神

有良好的和同事沟通的能力

正确对待客户需求,认真弄懂客户需求,不任意解释客户需求

有自觉的保密意识和产权意识

经过实践养成良好的文档习惯

经过学习和总结而引起出创新精神和创新能力

服从上级主管分配的任务和安排

具备软件工程的概念。

相关文章
相关标签/搜索