中国软件网

您现在的位置是:网站首页>软件头条

软件头条

牛巨微|软件开发的理念与流程

中国软件网2023-05-08软件头条qq刷群软件
斗鱼是什么软件,qq刷群软件,办公看图软件,牛巨微|软件开发的理念与流程,斗鱼是什么软件,qq刷群软件,办公看图软件软件开发的指导理念总结为三个方面:沟通、简单、灵活,三者相互作用不可分割。道可道非常道,阐释总是一种限定。“沟通、简单

牛巨微|软件开发的理念与流程

牛巨微|软件开发的理念与流程,

  斗鱼是什么软件,qq刷群软件,办公看图软件软件开发的指导理念总结为三个方面:沟通、简单、灵活,三者相互作用不可分割。道可道非常道,阐释总是一种限定。“沟通、简单、灵活”三个概念需要在实际工作中不断体会和领悟。

  原则是原理准则,是遵循规律,是方法论,是做事指导。原则帮助我们在关键环节采取合适的举措,为具体工作提供方法指导。

  软件开发的基本原则总结为“找到感觉”,即在关键环节工作中找到相应的感觉,并遵循这种感觉(原则)。

  需求分析人员一定要到客户现场并面对面沟通。不具备现场条件的,要学**电影《唐人街探案》中的少年秦风,模拟案发现场,尽量真实的体验各角色的行为。

  界面原型要高度仿真,仅停留在草图、Axsure或Mockplus效果图上是不能满足要求的,一定要利用H5技术做出仿真软件。客户只有见到真品,才确切知道自己的需要。基于高保真原型的需求确认,才是最有效的沟通。

  架构师的心中要有项目全局:深度理解需求、怀揣完整流程、深刻理解技术,设计时又不能陷入技术实现细节。设计是设计,实现是实现,思想上要切割。要适度考虑实现,切不可为了实现扭曲了设计。

  代码编写是实现,但实现中也有设计,设计无处不在。局部逻辑设计、实现步骤设计、变量命名设计等,是代码质量的重要体现,代码质量即产品质量。设计即思想,“思想走在行动之前,就像闪电走在雷鸣之前一样”。

  小步前进、不断验证,持续部署、一键部署,及早交付、持续交付。围绕主流程、最小闭环、持续高质量交付,切忌低质量交付,低质量交付有时还不如不交付。持续有价值的交付,是快速响应的体现,是与客户最有效的沟通。

  没有分工,就没有协作,要清晰界定任务边界。经理人员:拆解拆解再拆解,紧盯紧盯再紧盯!对结果负责:谁的问题?我的问题!沟通是否做到了,心是否操到了?

  工作进展上要有里程碑意识,里程碑是一种承诺,努力捍卫自己的承诺。里程碑是一种责任感,对公司负责,也是对自己负责。对自己负责即主动的自我成长意识。

  本部分描述基本开发流程,具体工作结果的界定,可本着简单实用的原则根据实际工作进行细化,并补充为本流程的实施细节要求。流程本质可归纳为“输入-处理-输出”过程,开发流程的“输入-处理-输出”过程简要划分为六个阶段,过程示意如下:

  流程并不是完全瀑布式的,各阶段可适当迭代交叉进行;各阶段内都应遵循MVP(最小化可行产品)原则,紧紧围绕主流程不断完备本阶段交付物。

  流程的实施应遵循“先僵化、后优化、再固化”的原则,在执行过程中完善和巩固。在执行过程中,对于大家一致认可、不可二犯的错误,一犯后要反思并约定二犯时的惩罚措施。

  (2)需求分析文档:主要体现项目背景和目标、业务流程(图)、现场感的业务描述(案例描述)、各角色功能清单、主要界面草图;

  (4)项目合同:合同金额、支付方式、违约责任,界面原型设计周期、功能开发周期、部署交付周期,销售、设计、开发三方经理沟通项目风险并确认合同内容,客户确认。

  工具:需求分析文档模板、项目合同模板、各确认文档模板、项目风险分析文档模板。

  (2)高保线界面,无后端逻辑代码的真实软件,前端即软件;体现各角色真实操作流程和界面效果;与后端无缝对接的代码架构;

  备注:本阶段可称为前端设计/开发阶段,需要需求分析、美工、前端开发等能力的集成。可交叉进行数据结构设计、架构设计和关键技术探索,但就是不写后端逻辑代码。

  (1)数据库设计:数据库表结构文档、数据库初始化SQL脚本;数据库实际是数据结构,是软件的高度抽象,是系统业务的灵魂,是架构设计和代码开发的根基,设计阶段要极度重视!

  (2)代码架构设计:逻辑模块分解(Solution/Project/Package)、目录结构设计、主要程序文件名确定;Code First实体类代码生成;

  (3)交互接口设计:前后/端交互接口设计(如JSON数据格式、QueryString传参内容)、核心函数接口设计;

  (4)关键技术突破:公共基础代码编写(要逐步模板化,如认证、权限、日志、异常处理),关键点/难点技术突破、易错问题预先避免的设计。

  工具:数据库设计规范、代码架构设计规范、交互接口设计规范、代码自动生成工具、项目代码模板;

  备注:不要把架构师或系统设计想得太高大上,预估程序员的能力及其可能出错的问题,提醒程序员并在设计上尽力避免出错的可能性,就是设计。避免问题,总比解决问题简单。凡事预则立,不预则废!

  我们交付的是功能,不是代码。代码是个无底洞,越晚动手越好。代码的过早付出,会带来负面情绪。因为懒了脑子,所以累了身体。本质还是先动脑再动手,克制不动脑子蛮干的冲动。

  不过度设计,但不能不设计。不能以“敏捷、试错”的名义不设计、不思考、不想静静!

  再次提醒:架构师的心中要有项目全局,深度理解需求、怀揣完整流程、深刻理解技术,设计时又不能陷入技术实现细节。设计是设计,实现是实现,思想上要切割。要适度考虑实现,切不可为了实现扭曲了设计。

  (1)进度清单:进度清单(进度优先级),任务分工,里程碑节点;进度清单更新频率;

  (2)日会制度:前一天做了什么;今天准备做什么;遇到了什么问题。项目经理应时刻关注程序员开发情况,不能仅停留在一日一会上。

  (3)任务细分:项目经理要将开发模块任务细分,明确任务效果——逐条列出任务效果要求,并不断检查任务效果。

  (4)主流程畅通:优先实现主流程,紧紧围绕主流程,确保主流程畅通;优先解决关键路径上的关键问题;

  (5)面向界面编程:界面即结果,结果倒推过程。开发人员要面向界面编程、面向接口编程。

  (6)用注释理思路:找到设计感,理清思路再动手,画草图理流程,列出实现步骤,一定要克制一头扎进代码堆里的冲动!

  (7)自我测试:小步前进,不断测试;步子足够小,不用Debug;单元测试(尝试);

  工具:开发进度一览表模板,任务细分清单模板,单元测试工具,SVN/CVS,自动编译部署工具。

  上海牛巨微网络科技有限公司高新技术企业(2022)经营范围包括一般项目:网络技术服务;软件开发;信息系统运行维护服务;信息技术咨询服务;大数据服务;物联网技术研发;人工智能公共服务平台技术咨询服务;数据处理服务;计算机系统服务;动漫游戏开发;数字文化创意内容应用服务;咨询策划服务;物联网技术服务;市场营销策划;组织文化艺术交流活动;品牌管理;专业设计服务;供应链管理服务;人工智能硬件销售;工业机器人安装、维修;智能机器人销售;智能机器人的研发;

很赞哦!