个人作业-Week1

几个问题:

  • 1.就第五章团队与流程的练习与讨论中的第6题发表一点自我的观点:

 

  有人说——现代软件工程分为四个阶段:和PM吵,和设计吵,和测试吵,和用户吵;你觉得应该如何避免吵架?

 

    • 首先,我认为应该增加各个团队之间的交流,有一些外国的公司会专门留出一些下午茶时间,这个时候整个公司的各种人员都会聚集到一起,谈天说地,虽然有时候不会谈关于工作的问题,但是即使这样也能拉近各人之间的距离。一起做项目的时候也有很多共同语言,甚至能因为这个项目找到和自己爱好相同的人,就会谈到更多和项目有关的东西。在这种过程下,能够升级到吵架程度的问题就被化解了。

 

 

  • 2.关于第八章中的“杀手功能”的一点不同的理解:

  我们决定做蟹黄小笼包,什么是杀手功能?当然是蟹黄!

    • 有的时候,随我们来说,杀手功能往往是在我们看来超凡脱俗的,一般是那种在行业前沿的新技术。但我认为这样的杀手功能也许只是开发人员认为的杀手功能,用户可能并没有听说过它的名字,即使有人听说过,但那也只是起到博人眼球的作用,到底这个功能算不算好,那只能是用户决定。有的人觉得蟹黄小笼包好吃,但有的人觉得灌汤包好吃,都是因人而异的,就像有的地方菜拿到外面就没有人买一样。最近有一款Tecno手机在非洲火起来,其性能看起来也一般,在国内就从没听说过,但他的特点就是对非洲人专门设计的美颜功能,而一般手机的美颜功能就只能把非洲人美颜得只剩牙齿。仅在2016上半年,Tecno就高居中国出口量榜首,在非洲最大经济体尼日利亚也拥有40%的市场占比。所以,就像一些在行业最棒的产品往往不是最火的产品这个道理一样,所谓的“杀手功能”有的时候不是前沿新技术,而往往是最适应“环境”的。

 

  • 3.读完第12章后关于用户调研的一些思考:
    • 我在生活中经常看见很多软件的调研问卷,问题都涉及广泛,基本上能够反映用户的意愿,但那些我不关心的软件,我就不会管它的调研问卷。以前看Ted的时候听过一个故事。二战的时候,工程师决定为飞机增加防护板,因为当时修理厂的飞机所受的伤害都集中在驾驶舱附近,飞行员的意愿也是增强驾驶舱的防护,但有个老兵建议增加发动机附近的防护。事实证明,在增加发动机的防护之后,飞机的生还几率大大增加。因为发动机是飞机的致命弱点,那些发动机被损害的飞机完全无法回到修理厂。这也就和调研问卷一样,那些对这个软件真正失望的人群是不会去填的。所以,我认为调研必然只能反应一方面的问题,真正重要的问题会出现在调研所发现的问题之外。

 

  • 4.关于第4章的阅读代码的思考:
    • 在读完http://kb.cnblogs.com/page/192086/之后,加上自己看过室友写的一些代码,看别人写的代码真的很难,命名风格、缩进格式、代码结构都是很不相同的;但我认为如果一个人能够把代码结构写好,像上次OO课学的,面向对象式编程,如果能够将代码的封装做好,那是不是也能够加快别人的阅读呢?

 

  • 5.第16章能够创新的团队:
    • 以前看过一些Ted,提到“鸡群效应”,也就是团队中能力强的人员相互竞争,造成资源的浪费。我认为好的团队应该是技术水平都差不多,即使有那种非常出众的人才,也应该照顾到其他个体的感受,能够让每个人的付出时间差不多,既能减少大家的压力,也能让团队相互了解,甚至互相垂青,出于想让别人了解自己的想法,想让别人提出他的更精彩的观点而付出,而不是竞争的关系。

 

“软件” 和 “软件工程” 这些词汇是如何出现的 - 何时、何地、何人?

  • “软件”是由1935年图灵在一篇题目为“omputable numbers with an application to the Entscheidungsproblem (decision problem)”的论文中提出的
  • “软件工程”是1968 年北大西洋公约组织在前联邦德国开会提出的

 

【附加题】:大家知道了软件和软件工程的起源,请问软件工程发展的过程中有什么你觉得有趣的冷知识和故事?

  • 现在微信中输入15个中文句号会崩溃。

 

上网调查一下目前流行的源程序版本管理软件和项目管理软件都有哪些, 各有什么优缺点?

  1. Git:
    • 优点:分支能力强大,开源
    • 缺点:使用难度大
  2. Mercurial:
    • 优点:跨平台,简单上手
    • 缺点:分支管理不好
  3. Trac:
    • 优点:灵活
    • 缺点:核心功能少
  4. Bugzilla:
    • 优点:有强大数据库支持
    • 缺点:界面不够友好
posted @ 2017-09-28 19:53  qwellk  阅读(211)  评论(4编辑  收藏  举报