1、引言
最近为公司做一些架构方面的整理工作,记得以前给新人写过一篇PPT,关于软件的认识方法,其中对软件的划分方法值得借鉴,于是整理出本文。
2、一维软件划分
回想我刚开始做软件开发的时候,对软件的认识,停留简单的表面,收到客户的需求,分解成为几个模块,划分几个人手,吭哧吭哧上马干活,这个时候的对软件的认识,犹如小孩子对几何的认识,仅知道几个点连成一个线而已,姑且将这种认识层次,或者说采用这样的观点划分的软件,称之为:
3、二维软件划分
刚开始的时候,做了一些桌面型的应用Delphi(C++Builder)+Interbase,VB+Access,这种单纯而直接的应用开发岁月没持续多久,还没等我用上传说中最牛叉的Power Builder,CS,BS,三层,N层架构就接踵而至,作为可怜的开发人员,学完这个学那个,真实的需求根本没有,完全是技术驱动的学习。
在多层架构下,软件产品和开发角色的划分,也跟着进行了细分,大家往往将服务器、客户端开发人员分开,大的项目,甚至有单独DBA,此时的软件划分,已经不再是一维的,而是二维的:
4、三维软件划分
二维的软件划分,可以用于大多数项目的开发,对于小公司特别有效,但对于一些大的项目或者产品的开发,总显得那么捉襟见肘。
这是因为在大的团队,随着产品开发的时间累计,不断有避免重复(现在流行的叫做DRY),加强建设产品公用部分,节省人力的需求,这时候,往往会成立单独的平台组,系统组,将团队的核心知识固化在一些可复用的软件模块中,将这些软件模块包装成为平台,框架,构件等。
在这个时候,对软件的认识和划分,需要摆脱二维软件单纯的平面思想,进行三维立体的划分:
三维软件的划分方法,相比于二维,主要增加了一个逻辑轴,该轴的一般体现了软件的平台,框架,构件等思想;我个人一般将该维的层次划分为
- 外部Library
- 技术平台与框架
- 业务平台与框架
- 业务实现
相信不同的公司,不同的人对这块的划分都有不同的认识,但是,引入了第三维,软件变成一个立体的,可触摸的东西。
5、四维软件划分
三维的软件划分,是一个单纯的技术路线的划分,考虑到软件开发的实际情况,总觉得缺少点什么,对了!时间,就是时间。
时间在软件的开发中,毫无疑问是非常重要的,静态的看一个软件是不现实的,我们站在时间轴上去看软件,软件才是一个有生命力的,活生生的。
开发一个软件产品的时候,即便我们能够按照三维的思路将目标产品进行分解,或者对现有产品划分,但如果没有考虑到版本因素,这样的产品开发无疑是不具有可行性。
好的架构师,需要对产品的版本特征规划胸有成竹,对于产品的开发具有很好的节奏感,这就构成了软件的第四维。
分享到:
相关推荐
三维立体画制作软件2009三维立体图片制作软件
立体四维方向坐标图PPT模板.pptx,立体四维方向坐标图PPT,适用于分析企业有关活动或者四维方向坐标等情况,可以用在销售培训PPT中,项目推介PPT中,招商加盟PPT中,四维度分析,使得PPT展示更加具体,而且立体感
本套三维立体画制作工具提供了制作三维立体画所需的各种功能。国内此类产品不多,而这套工具提 供了几乎没有其它哪个免费产品... 凭借这套软件的优异性能,您会很快学会制作自己的三维立体画,满足您艺术创作的要求。
三维立体图制作精灵非常好用 三维立体图制作软件
C# OpenGL 三维立体图绘制 源码 用C#实现调用opengl实现三维图的绘制。如有问题,请发送邮件至gaocongly@126.com咨询讨论
这是一个很好的,三维立体图制作软件,可调整三维数据。自定义背景图,让你也可以制作自己的三维立体图。
这是这份关于三维立体验证的源码 特性 -验证码新方法,利用人的3D感知能力区别于机器。 -它使用一个马尔可夫链,以产生类似于人类语言。 -容易部署
奇妙的3D世界,软件内可以欣赏上千个精美三维立体图画,并定时增加新作品。提供强大、专业级的三维立体图画制作功能,操作简单,轻轻松松制作自己喜欢的三维图画。 1、内置50多个精美的立体图案背景模板,20多个精美...
MATLAB仿真矩形线圈垂向磁场,长度和宽度等参数可以调整,得出V=f(x,y,z)的四维立体图,较好的反映整体关系,可以通过修改Z的slice参数,进行切片分层仿真。
三维立体画制作软件,制作三维立体画用这个软件手绘三维仿真立体画
三维立体图像制作大师是一款简单实用,小巧易用的三维立体图像制作软件,只需三步即可制作出多层次立体感的精美作品!支持设定立体画画质,最高可达128层专业效果,完成后可保存图像到硬盘的文件,或者直接打印出来...
该软件能让你通过简单的步骤制作出立体感很强的三维立体画。
很多问题会设计到三个自变量,一个因变量,一般做图方法只有三个坐标轴,MATLAB可以用颜色作为第四维进行画图,画四维图,X轴,Y轴, Z轴分别代表三个自变量,颜色的变化代表因变量,可以很直观的体现三个自变量和一...
列主元三角分解法在 MATLAB 中的实现 在本篇文章中,我们将介绍 MATLAB 语言的使用,并给出使用 MATLAB 语言实现线性方程组的列主元三角分解法的方法。该方法的有效性已经在计算机实现中得到了验证。 一、MATLAB ...
用MATLAB写的四维数据空间建模源代码,十分简洁明了,如果你想用MATLAB做出四维数据[X,Y,Z,S]的空间立体图,其中X,Y,Z表示三维空间坐标,S是属性值,那么这两种方法一定对你有用!
对四维数组的直观表示,如(x,y,z,c),该程序可以在三维表示的基础上,用颜色表示出第四维数据。
三维立体图及答案.pdf
还忘记我们小时候经常看到的三维立体图没?现在我们只要通过这个软件,轻点鼠标,就可以把平面图巧变三维立体图了!
三维立体图片制作工具,制作具有个性化的三维立体图片!
3DBody2.0三维立体人体