作者 内容
 micromai   怎样才能用统一软件建摸做开发?
 

在做软件开发时,我一直想用统一软件建摸来设计,可是不知道怎样开始。最后还是没有做设计就开始编码的,走一步算一步,最后总是有很多不如意的地方。我看过UML用户指南,也会用ROSE,但一实际使用起来有不是那么一回事了,请各位告诉我软件设计怎样才能入门,需要怎样的一个学习过程。

 02/07/20 22:55 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 smilemac  设计无定式
 

为什么你认为直接开始编码就一定是没有设计呢?为什么你觉得走一步算一步不也是一种方法呢?你走一步算一步的时候,实际上可能你脑中已有一个轮廓,你在直接用计算机语言表达你的设计,而我们在使用rose,word, paper+pencil或其他工具作设计的时候,难道不也是走一步算一步然后反复迭代吗?至于怎么设计,一切是乎需要,重要的是在编码之前或之间要思考:我要做什么?怎么做?

很多开发过程实际上是刚开始只有关于一个点的想法就动手作了,然后在看到这一点的结果的时候又产生更多的想法,然后继续做下去,中间不断的refactoring,(传统软件工程会认为这是手工作坊式的开发,而现代敏捷型的软件工程则在认真研究这种开发方法,这是对待客观规律的正确态度,也是软件工程开始走出空中楼阁,踏足真实的地面的标志)。人类的有限理性决定了人只能看到有限远的地方,而不同的人看到的距离也不一样,对于程序员来说,有时看的太远反而什么都做不了,需要把握一个度,只有那些有比较强的心性控制能力,善于执行长期计划的人才能看得远,也做得好手边工作。

多做总结,随着你经验的积累,那些笼罩在各种设计方法上层层迷雾会逐渐退去,这时你会发现:原来如此。这时你会学会如何丝条析缕地针对具体项目分析应该怎么进行设计以确保成功。这时你脑中不再存在各种方法的区别了,你只是需要的时候就把它拿出来用,没准儿你用的方式并不符合原创者的本意,但有什么关系呢?重要的是它对你的工作有用。

 02/07/21 08:45 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 tsk   感觉应当回答“我看过UML用户指南,也会用ROSE,但一实际使用起来有不是那么一回事了”。
 
 02/07/21 17:59 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 smilemac  我回答的就是这个问题呀
 
 02/07/21 18:09 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 tsk   你好像是说UML和ROSE有很多不好,但是你没说出是什么地方造成误区?好像回答和提问是同样一种感叹而已。
 
 02/07/21 18:12 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 smilemac  你说的是我的回文吗?我说的是“设计无定式”,根据需要去使用工具,而不是为使用工具去使用工具,顺乎自然。
 
 02/07/21 18:15 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 smilemac  我文中的内容讲的是设计的规律,是一种肯定的态度,不是感叹。
 
 02/07/21 18:17 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 liyonghai@163.net  我觉得你首先得把面向对象搞好。如果你领悟到了面向对象的好处,你就不可能不在编码之前做个设计(除非是很小的系统才不需要)。因为只有使用了基于面向对象的设计,你才能真正享受到面向对象的好处。不要说你使用了一堆堆的class就是面向对象,那只是编码级别的面向对象而已。
 

我觉得你首先得把面向对象搞好。如果你领悟到了面向对象的好处,你就不可能不在编码之前做个设计(除非是很小的系统才不需要)。因为只有使用了基于面向对象的设计,你才能真正享受到面向对象的好处。不要说你使用了一堆堆的class就是面向对象,那只是编码级别的面向对象而已。设计搞懂了以后,就可以再去考虑分析和开发过程。否则搞那么花名堂真的没用。

 02/07/21 19:35 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 liyonghai@163.net  设计无定式 说的没错,但一般人很难达到这个境界的,这不正是学武的至高境界“无招胜有招,处处存杀机“吗?小的系统,你可以进行心中的设计,可以不写出来。但大的系统就不行,不写出来就难以能览全局。你说是不是?
 

设计无定式 说的没错,但一般人很难达到这个境界的,这不正是学武的至高境界“无招胜有招,处处存杀机“吗?小的系统,你可以进行心中的设计,可以不写出来。但大的系统就不行,不写出来就难以能览全局。你说是不是?

 02/07/21 19:40 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 smilemac  回复: 设计无定式 说的没错,但一般人很难达到这个境界的,这不正是学武的至高境界“无招胜有招,处处存杀机“吗?小的系统,你可以进行心中的设计,可以不写出来。但大的系统就不行,不写出来就难以能览全局。你说是不是?
 

对,大系统一般需要要起码有一些基本的设计文档。但只把握一个原则:一切从需要出发。

大系统也一样,设计到什么样的粒度取决于具体的条件,比如是小组开发还是个人开发?如果是小组开发,一共有多少人? 水平怎么样?是开发产品还是自己用?是商业开发还是研究性质的开发?有没有deadline?小组内部,小组与外部环境有没有沟通方面的障碍?等等。

无论是开发还是管理,有一剂万灵丹就是:去研究问题永远没错,因为答案就隐藏在问题之中!

 02/07/21 20:15 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 commondata   对统一软件平台的一些实践
 

对统一软件平台的一些实践
关于统一软件的开发环境:
1.跨操作系统
2.跨数据库
3.跨语言
关于统一软件平台的开发过程:
1.知识共享
2.组件化
3.并行

呵呵,就这一点点够了吗?我们2年前就考虑这个问题,就这一点点是不可能做到的。IEC的TC57专门从事电力自动化的通信协议构架,做了很多年了,完善的国际标准还没有制定处理呢。最近关于一个电力系统的这个数据的信息模型就要发布国际性标准了,在上面的应用也就快了,而且应用的技术也都在发生变化(指和现有的有很多要改变)。
一般来说,统一数据平台都是针对行业应用的。你如何可以做到满足各种应用的统一软件平台?统一数据平台首先就是要对行业的数据进行信息建模还要规范该行业各应用程序的接口规范,还有公共数据访问工具等。实际上就是基于网络建立一个网络集成总线平台,网络集成总线平台就其理念是应用于各种行业,但对于每一个具体的行业,其应用的方式都会发生变化的。例如我们在做电力自动化的集成总线、交通指挥中心的集成总线和海关方面的集成总线,其具体的应用都不一样的,但总得思路不变。
不知道,这样开发出来的统一软件平台会如何?又有什么应用价值?
欢迎大家同行多多交流!

 02/07/22 09:25 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首
 wbcp2000   回复: 怎样才能用统一软件建摸做开发?
 

建议你先简单应用UML,例如在需求分析中,画出用例图,并进行描述。
在设计时,画出类图,并标名他们之间的关系,然后,生成代码。
如果你还有余力的话,还可以接着画出交互图,还有你应该OO得有一定的
了解

 02/07/22 11:26 酷帖!    臭帖!    回复  
酷帖评价:           臭帖评价:
返回页首