背景

  1. 复习软件开发过程可能出现的问题。
  2. 沉淀经验教训。

过程

  • 如果你不知道如何写代码,是因为你的需求不明”。分享一个有力的观点。这是刚入行的时候,同事告诉的。
  • DDD过程
  1. 业务研究员(产品经理)与领域专家进行沟通,在这个过程中,如果有机会,程序员也可以参与讨论,学习更多领域知识。当然,如果有机会,也可以参与模型的设计。
  2. 无论是产品经理,还是程序员刚接触一个领域的时候,对领域的概念存在错误理解和理解的不够深,都是正常的。
  3. 产品经理设计的模型也可能存在不合理的地方,甚至是错误的。因此,开发前发现不合理的地方,就需要讨论和沟通了,这个是非常正常的即使,在具体设计和编码的过程中,发现了模型的错误设计,也需要讨论和沟通,并修改设计,这个也是非常正常的
  4. 如果设计的模型确实相对复杂,那么,可以多想,能不能提供另外的简单的解决方案,然后,讨论沟通一下。如果依然不愿意妥协,那么可以多要一点儿开发时间。
  • 设计阶段
  1. 无论是模块设计,还是功能设计,都需要做到分层定义好层与层之间的交互协议。通过这样的方式,训练自己去架构功能,架构模块,构架整个项目。
  2. 层与层之间的交互协议并不一定是严格的。比如某些固定逻辑A项目与B项目是通过mq交互的,但是某些其他逻辑A项目和B项目是可以通过dubbo协议交互。要灵动,不然,太过于严格,反而设计是不好的。
  • 横向开发模式
  1. 不要关心边界以外的事情。不要关心边界以外的事情。不要关心边界以外的事情。这句话很管用,要这样用。在开发前,不要担心模型建立的复杂,不要担心模型建立的不合理,有责任人的,不关开发者的事情。在开发过程中,一定要尽可能减少焦虑,不要太担心,做到谨慎、细心就行了。在开发结束后,去学习和了解,把整个项目从头到尾都梳理一次,架构设计,业务功能,然后做到心中有数。
  2. 记录好日志是开发过程中的一件非常重要的事情。因为,这样就知道自己的代码的运作过程,非常方便定位问题。尤其是横向开发,把api的入参记录好,然后调用别人的api的时候把参数也记录一下。 如果是纵向开发的话,自己非常好调试,因为整个逻辑代码都是自己写的,可是横向的话,就需要详细记录日志了。
  • 上线
  1. 代码是永远存在bug的。不要追求完美。只需要写的代码bug的个数在合理的范围内即可。

小结

梳理一下经验教训。

软件开发流程(一):总结软件开发流程的经验教训相关推荐

  1. 适合开发桌面程序的软件工厂流水线组织结构和流程设计

    开发桌面程序的软件工厂通常需要有一个良好的组织结构和流程设计,以确保项目能够高效地完成并满足质量标准.以下是适合开发桌面程序的软件工厂流水线组织结构和流程设计的建议: 1. 组织结构 软件工厂的组织结 ...

  2. 软件开发--从设计到测试整体流程

    目录 范围 总体要求 2.1 总体功能要求 2.2 软件开发平台要求 2.3 软件项目的开发实施过程管理要求 2.3.1 软件项目实施过程总体要求 2.3.2 软件项目实施变更要求 2.3.3 软件项 ...

  3. 一起来开发Android的天气软件(三)——使用Volley实现网络通信

    距离上一篇一起来开发Android天气软件二的时间又将近半个月了,之间一直因为有事而没有更新实在抱歉,最近会加快更新的步伐,争取在2015年到来前写完这系列的博文,上一章我们已经使用LitePal框架 ...

  4. 一起来开发Android的天气软件(二)——使用LitePal搭建数据库

    谢谢大家对该系列博文的支持与关注,我们现在趁热打铁正式开始我们的Android天气软件的开发吧!没有阅读过之前关于该软件的功能需求的同学可以先看一下一起来开发Android的天气软件(一),可以先去快 ...

  5. app测试流程和重点_APP开发测试流程是怎么样的?

    一款APP产品在上线之后的稳定性,取决于上线之前的软件测试,也就是说在上线之前,能找出更多的软件问题并解决,那么上线以后,APP软件自然就很少出现问题,系统性能自然就更加的稳定.那么正规的测试流程是怎 ...

  6. 在将计算机技术应用于会计工作的初期,所开发的会计核算软件主要用于,电算化考前试七.doc...

    一.单项选择题 (本题共60题,每题1分,共60分.) 1.会计电算化简单地说就是( )在会计工作中的应用. A.会计理论 B.会计准则 C.计算机技术 D.会计法规 2.下列不属于模拟手工记账的探索 ...

  7. 华为ipd项目管理流程_开发一个产品,就是开发一门新的生意IPD落地直播问答精选...

    华为有一条非常著名的流程,就是"集成产品开发流程"(英文缩写是IPD).这是跟IBM学来的,华为为此光咨询费就掏了20亿元,而且,这可是1998年时的20亿.当然,IPD流程在华为 ...

  8. 软件集成测试采用,集成测试的组成以及流程

    集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展.它的最简单的形式是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口.从这一层  意义上讲,组件是指多个单元的集成聚合.在现实方案中, ...

  9. 《软件方法》读后感-三年前端开发的思考,如何有效地阅读需求?

    DDD领域驱动设计批评文集>> <软件方法>强化自测题集>> <软件方法>各章合集>> 本文转载自:https://juejin.cn/po ...

最新文章

  1. CentOS 8 安装图解
  2. 点云处理关键算法剖析及实现(涉及滤波、分割、配准、识别、重建)
  3. ubuntu安装迅雷软件
  4. 根据文字计算Label的尺寸
  5. 几个简单的shell脚本
  6. Academic English Reading Notes
  7. stm32之iap实现应用(基于串口,上位机,详细源码)
  8. OpenGL抗锯齿实例
  9. 使用msui的回到顶部的一个小问题
  10. mysql联合索引数据库查询数据会变慢_如何定位并优化慢查询SQL以及联合索引和索引多的弊端...
  11. OJ1054: 猴子吃桃(C语言)
  12. KVM 介绍(6):Nova 通过 libvirt 管理 QEMU/KVM 虚机 [Nova Libvirt QEMU/KVM Domain]
  13. delphi判断线程是否正在运行
  14. 《基于Nginx的中间件架构》学习笔记---3.nginx的目录分析
  15. 爱情指数测试脸型软件,心理测试:你和谁的脸型最像?测出你的幸运指数是多少!...
  16. 雷电游戏java源代码,java雷电游戏源码项目
  17. 联想K31笔记本完全拆解,装不回去了。想做个电视机或者显示器
  18. 【Python基础 | 文件】小实验:将古诗写入一个文件,并复制到另一个文件中
  19. 最新十大透支健康行业(2019年版)
  20. 论文阅读:LinkNet: Exploiting Encoder Representations forEfficient Semantic Segmentation

热门文章

  1. QGIS基础:根据字段属性值或基于规则进行分类符号化显示
  2. H5新特性(五)——增强型表单
  3. comps电磁场模拟软件_现在主流的电机仿真分析软件是哪个,电机厂商都用哪些软件?...
  4. CocosCreator-3D 拖动卡片放置3d物体
  5. 树莓派Zero制作U盘
  6. 被限制的ckplayer播放器如何实现倍速播放和快进
  7. sensor_msgs/Image消息格式
  8. SAP-ABAP会计凭证创建BAPI
  9. php查询快递,PHP查询快递信息的方法_PHP
  10. oracle分页怎么查询,Oracle的分页查询