`
ygbb007
  • 浏览: 3144 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

【原创的软件开发模型】BOTC软件开发模型-初级版

阅读更多
目前,已经在完善第六版,所以就免费开放第一版。
BOTC软件开发模型,Based on the core code to plan of data processing 's Model 简称 (BOTC 软件开发模型)


基本理论:
任何一门编程语言包含的四元素:语法、类型、运算符、流程控制;
任何项目的开发,在确定了核心代码的基础后,剩下的就是组合代码的游戏。
任何项目要比较快捷组合代码,都需要一个比较系统的功能规划做蓝图。


编程语言=语法+数据类型+运算符+流程控制。
相当于,一个对象的外表,类别,行为准则,遇事机制。
数据类型,一般由函数改变其值,包含初始化、赋值、修改、注销等。


不管任何框架、核心技术,其知识都能分为成:语法、数据类型、运算符、流程控制四个基本分属。
PS:很多人觉得,这样区分没啥卵用...真没卵用???



基于编程知识归属于最基本的4类,可以进一步衍生一下观点:
任何一个项目模块,都是在处理数据与传递数据。
所以,能跟踪每一步的处理数据,通常就能规划与重构整个功能模块。


进一步,函数的存在意义,是为了处理数据(数据值或数据类型)。
最立马可见效的应用是——以后大家不用死记一大堆函数,因为函数都是依托数据而存在,那确定要处理的是啥样的数据,即构思或直接查找用啥样的函数。



再进一步,用知识归元的角度,亦可解释为嘛,项目开发最后会夭折。


大部分软件项目开发坏死胎中的原因:
需求前期不确定,导致后期需求改动过大,很容易就死;
--这是需要不确定引发工作量不确定,项目成果从而不可控。


开发木有自己的规范或没用统一的规范,这样多人开发的话,容易死;
--没有标准,多人开发时就会代码格式各类奇葩,同时团队协同把自己人堵死。


架构不彻底,就直接动工写功能代码--国内大部分都这样弄的,一旦遇难题即卡死。
--项目可行性分析时,若对核心实现没把握,最好不要做,不过,国内基本是接单再说的。


在确保具备核心实现代码的前提下,编程就很容易。
人只能以确定的代码实现确定的代码。
--因为人不是神,神可创造未知的东西,而人只能探索未知的东西,组合现有的东西为自己所用。
但是,大部分编程者苦逼,根源是在未确定代码(没核心实现代码)的前提,就去实现确定的代码(功能实现代码)。

基于上一个观点,可以推倒出下一个结论:
大部分公司都在玩人肉堆码的游戏,而不是真正在设计项目玩开发。
程序员入职后,低中高级都只是以编写功能模块实现为主要工作内容。


所谓人肉堆码:
1,有功能需求文档,但没其他太多的设计文档。
2,日常工作流程是——项目经理自认很聪明——弄个效果图或其他的,程序员只负责看需求写代码;
3,没对项目的实现做核心与非核心区分;
4,代码的优劣由编码人员决定,而不是编程规范决定。



基于以上观点,构思出BOTC软件开发模型理论。
应用步骤
第一步:需求分析——确定满足顾客需要的功能有啥效果?
第二步:流程设计——根据需求效果,设计功能实现流程;
第三步:功能模块实现流程 转为 数据处理流程
因为之前的结论,任何功能开发,都是在处理数据(数据值或数据类型=数据的属性)
第四步:功能模块构思的数据处理流程编写代码(初稿)
根据数据处理流程,不同的数据,采用不同的函数或自定义函数实现处理效果。
第五步:调试与测试
调试与测试——验证效果与性能。
这部分,也是基于数据处理。



以上观点,还不足以解决:
1,【会】与【不会】的精准定义;
2,如何识别与提取一个项目的核心实现,重点花费精力做攻克?
项目遇上难题,要是致命的,必定是核心实现脱节。
而大部分项目管理者,傻傻的分不清核心与非核心实现,或者没方法如何做到区分。
3,多人交互开发更好沟通?

为了应对以上几个问题,构思第二版...抽空发布。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics