您的位置:首页 > 其它

需求:做软件的基础

2011-07-29 23:49 288 查看
最近几天有点纠结,好像又回到了很久之前学习的一种状态,在黑暗中摸摸索索,滚滚爬爬,可能就是这种感觉。
教务系统从真正开始分析需求,写需求,建模,代码,到现在已经两周了,今天在完善BLL层的代码(同时完善DAL层的代码。。)。还是自己想事情做事不够周到,到现在还在写DAL层中的方法。

这几天一直在想一个事情,做软件最重要的是什么,按照官方的语言做软件的流程就是理解需求,进行需求分析,然后进入数据库的设计,当然在数据库设计之前可以先画画界面帮助自己理解需求,对整体的业务有一个了解。然后再进行建模,写代码。对于这一套的理论自己并不陌生,因为之前在做机房收费系统的时候已经按照这个理论进行了N遍。但是机房收费系统是自己已经实现过的,需求对于我来说,不能说是如数家珍,但基本也已经了如指掌了。所以在上次做的过程中有很多问题没有暴露出来,比如说确定界面的问题,因为你的需求很明确了,所以你的界面对你来说很简单。界面能确定,数据库设计当然也不在话下,进而根据MVC的思想,DAL层,BLL层的书写都不是问题了。

会写程序的人应该都知道,做软件的人都有一个牵一发而动全身的感觉,而我们设计软件设计不好的始作俑者就是我们的需求分析没有做好。需求不明确,进而数据库设计不出来,就算勉勉强强的能把数据库设计出来,你模糊的阴影还是挥散不去,做每一步都会停留在这个阴影里。这次做就是一个很明显的例子,需求想不清楚之后做每一步心里都不踏实,写出的数据库,dal层的代码也是不完善的。

这几天的犯得几点错误和感悟:

1、从一接手某个项目开始,就要努力明确需求,通过需求然后进行数据库的设计,这时候通常是一个迷茫期,不知道从哪里下手,这时个人感觉可以先大致的划一下界面,确定有多少张表。有时大型项目不是你自己在做,很可能是合作,首先弄清楚自己这一块的内容,需要多少别人的接口,需要给别人提供多少接口,往来交流一定要用文档形式。写明提供参数,需要数据,数据类型等等。

2、弄清楚SVN服务器上的各个文件夹的含义,清楚各个文件夹的职责,这几天因为不熟悉SVN的环境没少吃亏,出错的具体原因还在调查之中。

3、这次的教务系统是从DAL层代码写起的,但是个人感觉在熟悉业务画出界面(同时数据库能设计出来的情况下)的时候,不妨确定一下BLL层需要哪些方法,先想一下BLL层实现都需要通过什么参数调用哪些数据,这样在做数据层时可以想的全面一些。

这几天的经历让我明白了一件事情,做软件最重要的是需求一定要明确,需求不明确,无论在怎么会设计,各种架构、设计模式运用的再好,那也是驴唇不对马嘴,都是浮云。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: