• 《构建之法》读书笔记05


      团队有一些共同的特点:有一致的集体目标,成员之间有各自的分工,合作完成任务。团队一开始可能是"一窝蜂模式",都想写出好的软件,但是没有各自的分工,一般不会这种模式不会存活太久。慢慢会演化成其他模式,比如"主治医师模式",本来是不错的模式,但是在学生身上退化为了一个学生干活,其余打酱油的情况。还有比如明星模式,社区模式,业余剧团模式等,当然其中不乏一些好的模式,秘密团队,交响乐团模式,功能团队模式等。

      学校里面的软件工程专业的学生可能是"写了再改模式",因为作业是这么要求,但是这种开发方法的缺点特别大。

      软件行业一开始也会使用"瀑布模型",即分析-设计-实现-销售-维护的模式,但是对于软件工程来说,需要做很多次的回溯。但是慢慢发现回溯很困难等等的其他问题,需要在生产出产品之后才能知道产品的实用性,这是很头疼的问题。

      后来根据"瀑布模型"提出了生鱼片模型,但是问题是:不知道上一个阶段什么时候结束。后来引入了子瀑布模型,但是难度相当大,用户只有到了最后才能看到结果,也不实用。

      后来提出了Rational统一流程,即后面的统一建模,用精确的语言把用户的活动描述出来。流程为:业务建模,需求,分析和设计,实现,测试,部署,配置和变更管理,项目管理和环境。RUP分为四个阶段:初始,细化,构造,交付。

      在UML这门课中,我们学习了用例这一概念,用例包括标题、角色、主要成功场景、步骤、扩展场景这些元素。我们在使用用例时要遵守其使用规则。但同时,用例使用也有它的局限性:不适合交互式之外的系统;故事的粒度没有固定的标准,和具体的项目有关,初学者难以掌握;如果关键在于用户体验的细节,不能把UI的细节嵌入故事中,并保持故事的简明性。

      规格说明书包括软件功能说明书和软件技术说明书。功能说明书,主要用来说明软件的外部功能和用户的交互情况,从用户的角度描述软件产品的功能、输入、输出、界面、功能的边界问题、功能的效率、国际化、本地化、异常情况等,不涉及软件内部的实现细节。技术说明书又叫设计文档,它用于描述开发者如何去实现某一功能,或相互联系的一组功能。

      把用户的需求变成团队可以直接操作等工作,这是功能驱动设计。要进行构建总体模型、构建功能列表、制定开发计划、功能设计、实现具体功能五个步骤。

      如果软件团队在软件测试方面没有足够的投入,最终的系统会存在许多问题。

    有一种流程为老板驱动的流程,这种流程有好处也有坏处。好处是老板比一般技术人员懂的市场和竞争;坏处是领导毕竟对于软件开发是外行,并且不一定能管理好软件团队。

      还有渐进交付的流程,重复开发-发布-听取反馈-根据反馈做改进这个过程,直到完成迭代次数,或者客户满意。

  • 相关阅读:
    echarts 实时获取数据
    js 对象与数组相互转化的快捷方法 Object.keys()、Object.values()、Object.entries()
    koa2 中使用 svg-captcha 生成验证码
    分享面试资料包
    8位单片机中一个容易被忽视的溢出问题
    献给半夜加班到深夜的女程序员
    java调用WebService接口方法
    算法小记:快速排序
    STL源码剖析 迭代器(iterator)概念与编程技法(三)
    [置顶] 蓝牙基础知识进阶——Physical channel
  • 原文地址:https://www.cnblogs.com/yifengyifeng/p/6414787.html
Copyright © 2020-2023  润新知