zoukankan      html  css  js  c++  java
  • [读书报告]构建之法(五)

    今天读了《构建之法》的第十一章和第十二章

    第十一章,软件设计与实现主,要讲了以下几个问题:

    1.从规格到实现

      主要要经历以下阶段:

      1.估计开发所需时间

      2.写一些原型代码,看看效果

      3.写设计文档

      4.按照文档写代码

      5.对照设计文档和代码指南进行复审

      6.创建或更新单元测试

      7.进行单元测试

      8.得到一个可以的测试版本

      9.修复测试人员发现的问题,请同事复审

      10.根据代码复审意见修改代码,签入代码

    2.开发阶段的日常管理

      一个比较重要的问题是实现每日构建。

      书中宣称,经调查,成功的公司中有94%每天或至少每周完成构建。

      构建中可能遇到的问题是可能会把大部分时间花在没有价值的"同步/编译/验证/再同步"的循环中。

      一种解决方案是对于每一个步骤,如果团队成员的行为只是影响到个人,就让个人根据自己的情况处理。如果会影响到团队,就应该严格控制。比如要求每个人可以自由签出而要在每天的固定时间签入。

      书中讲的小强地狱也很有意思。设计一个阈值,使5%~30%进入小强地狱。入狱的人必须先使bug的数量低于阈值才能继续进行开发工作。

    这一章有两句话使我印象深刻

    1.当有一个能运行的系统时,即使只是一个简单的系统,(团队的)积极性也会上升

    2.在理论上,理论和实践是一回事,而在实践上,理论和实践是两回事

    第十二章,用户体验,讲了以下几个方面

    用户体验的要素

    1.用户的第一印象

      使用5H1W方法对设计做出判断

      Who:谁是你的目标用户?

      When:他们会在什么时间使用你的产品?

      Where:目标用户会在哪里和你的产品交互?

      What:你的产品是什么?用户的期待是什么?

      Why:用户为什么要使用你的产品?他们的动机是什么?在众多竞争产品中,用户为什么会选择你的产品?

      How:用户是如何与你的产品发生交互的?

    2.从用户的角度考虑问题

      使用户操作尽可能简单的方便

    3.软件服务始终要记住用户的选择

      软件应该越用越好用

    4.要把短期此时转化为长期影响

      要使能让用户眼前一亮的功能易于被长期使用

    5.不让用户犯简单的错误

      应该将有副作用的操作和常用操作分开

    用户体验设计的步骤

    概要设计:用户要解决的痛苦是什么,如何给用户提供价值?在此之前,可以做用户调研。

    行为(交互)设计:通过一系列用户和软件系统的互动,帮助用户解决问题。

    界面设计:通过读取用户的输入,以及创造和改进交行的媒介,帮助用户进行交互

    评价标准

    1.尽快提供可感触的反馈

    2.系统界面符合用户的现实惯例

    3.用户有自由控制权

    4.一致化和标准化

    5.适合各种类型的用户

    6.帮助用户识别、诊断并修复错误

    7.有必要的提示和帮助文档

  • 相关阅读:
    spark 读取mongodb失败,报executor time out 和GC overhead limit exceeded 异常
    在zepplin 使用spark sql 查询mongodb的数据
    Unable to query from Mongodb from Zeppelin using spark
    spark 与zepplin 版本兼容
    kafka 新旧消费者的区别
    kafka 新生产者发送消息流程
    spark ui acl 不生效的问题分析
    python中if __name__ == '__main__': 的解析
    深入C++的new
    NSSplitView
  • 原文地址:https://www.cnblogs.com/buaasts/p/4179971.html
Copyright © 2011-2022 走看看