开发项目之分析和设计

原创 2007年09月27日 23:56:00

我们开始启动一个项目之前,不论项目大小 、参与人员把握项目能力水平的高低,都会似模似样地安排一个分析设计阶段,这说明大家都清楚,做事情之前得有个准备。究竟分析和设计各自的内涵如何,它们之间的区别是怎样,却不是每一个项目实施者都十分明白。不明白没关系,学习一下!这里有我的一些学习内容和体会!

什么是分析和设计

分析和设计可以被概括为:做正确的事(分析)和正确地做事(设计)。

“分析强调的是对问题和需求的调查研究,而不是解决方案。”例如,如果需要一个新的计算机化的图书管理系统,那么如何使用这一系统。我真希望把这段话裱出来送给我的一位哥们,恳求他每天早上起床念30遍,晚上睡觉前再念30遍。因为我和他合作的项目里面,他从没有就一次调研情况提供过只言片语,永远都是洋洋洒洒的技术方案拿出来了事,问他为什么要这样子作,他却含含糊糊说不清楚。这让我时常陷入担忧中,我按他的方案怕做了白做,因为别人不要。哥们,拜托在你的技术方案前加个缘由和分析先!

其实,他这样做也不是没有原因。他的领导注重结果甚于注重过程,如果上交的文档在解决方案这一部分不够长篇大论,铁定挨批,大部分时间是在满足自己的领导对文档的阅读和理解的习惯,劳神费力还不讨好。批到我这位哥们都摸清了套路,知道该怎么应付上面了,既然用户的实际情况并不是领导所关心的,这个阶段给的时间也有限,分析多了无疑是给自己添麻烦,那拍拍脑袋写几行解决方案的文字可是轻松多了,随手可以抄出一大摞来,多快好省表扬多

“设计强调的是满足需求的概念上的解决方案,而不是其实现。”例如,对数据库方案和软件对象的描述。最终,设计可以被实现。这里我又要另裱一幅字给一个刚由程序员提升到开发经理的哥们,不过他上个月又被调回开发岗位了。

他对做设计相当反感,我能理解他的心情,他不愿意为此耽误了他宝贵的编程时间,边做边象是他的习惯。我看他算得上是个勤奋的人,只要进入工作就不知疲倦了,我觉得他挺累的!前一段时间我“有幸”和他一起做项目,虽然我不需要和他一起编程序,但我的那个急啊,每次只有通过祷告才能使自己心里的压力得以交托。

作为项目配备的开发经理,对于系统的架构、可能采用的技术手段、会遇到的技术难点、攻关所需要的时间、需要什么样的开发人员来做帮手、有没有参考和对比的系统、能否借鉴其中的实现方案或是有更好的解决思路等等,完全心里没谱,任何时候和他沟通,他都会说正在做,至于在做什么、当前的进度如何、何时可以告一段落,不可能得到一个感觉有底气的答复,总是一而再再而三地跳票,严重地影响了项目的实施进度。花了那么多时间,最后赶工出来的东西却不伦不类,完全不符合产品规格要求。后来,他被撤换了,继续去做他擅长的编程开发。但我看他如此缺乏规划和设计的能力,对他写出来的代码质量也感到担心。后来我去看他所写的程序,证明我的担心并不多余。他的代码缺少有用的注释,晦涩难理解。类、方法的命名不遵循任何原则,随意性很大,特别是一个类被命名为BaseObject,给我的印象特别深刻,以我的理解,以BaseObject为名称的类,应该可以是任何类的基类。我特别查找了这个类被引用的各个地方,发现这仅仅只是几个实体类的基类而已,里面只有三个属性,Name,Description和Alias。更有意思的是,对大多数派生类而言,Decription和Alias属性都是多余的。

经过一些项目的经验,我已经不像过去那么偏激,不再动不动就想把人给赶走、动不动就想找新人,事实上人都是培养出来的。我这个朋友的现象,在公司并不是个别,因为人员普遍层次较低,所以在公司经历过两个项目的编码之后就可能被安排当头了,被赋予了新的职责、走入新岗位前也不进行相关培训,这其实是拔苗助长的行为。他们被赋予了权力而仍然缺乏能力,最后可能变成眼高手低的人。我本人就曾经吃过这样的亏,因为能力低过权利,技术水平达不到主持一个项目所需的要求,也不懂得协调处理项目中各样的非技术问题,再加上一些其他原因,最后从公司辞职走人。那时的心情,不只是羞愧那么简单,自信心受到了打击,长时间里我都不知道自己能干什么。

说着说着似乎偏离了分析和设计的主题,就此打住。了解什么是分析和设计,懂得区分这两者的差别,再加上从理论层面上升到实践层面所经过好多次的涅磐,在项目里举重若轻的那种阶段,应该是能够到来的吧!

 

 

相关文章推荐

MP3播放器开发(一)——项目功能分析和详细设计

1、播放MP3文件 2、在播放MP3文件的同时显示歌词 3、从服务器下载歌曲列表(XML形式) 4、从服务器下载MP3和LRC文件 基本流程: 1、客户打开MP3播放器时向服务器发送...

软件项目开发中需求分析与设计时间和开发时间的比例分配的问题

从毕业到现在做开发已经有近7年了,大大小小的项目也经历了几十个了。在项目开发的过程中很少有项目在设计阶段投入很多时间的, 有很多情况下,甚至都没有怎么做设计就直接开始编码了,处于一种边开发边设计到状...

!金尚网上商城 03~07、WEB项目开发的一般流程—分析与设计之业务逻辑分析设计

业务逻辑分析 用户才是主语,站在用户角度上考虑才是正确的 A:根据需求分析业务逻辑 有哪些人会使用本系统他们会使用本系统做什么通常他们使用本系统的步骤是什么样的会有哪些明显的类来支撑本系统的...

项目子模块设计分析

项目子模块设计说明 1) 需求分析 组长: 1.老师给出项目主题后,在已有小组的条件下,组长可以在某一项目主题下新建项目和关闭已有项目 2.项目建立后组长可以发布一个或多个任务,指派人员完成某...

Java 项目ui设计分析

  • 2014年03月30日 12:02
  • 29KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:开发项目之分析和设计
举报原因:
原因补充:

(最多只允许输入30个字)