一起来打太极(2)

了,被锁住了,明天开始卷铺盖到该公司自己的饭店里面入住,要住一个月,一直跟到这个项目结束为止,周六周日也要在那儿加班,好命苦呀。据说那个单位是军工企业,被美军卫星从天上照着,凡在此进入频繁者,不允许入境美国,呜呜呜,明年的MVP Summit参加不了了。

 这两天开始进入详细设计阶段,前段时间,项目组的几位负责人最终与需求方定下了需求,当然,我们在详细设计阶段,还是发现了很多需求不清晰的地方,不过,这种情况经常发生,不是吗?

今天上午搭建了代码编写环境,并且初步分派了任务。共分为三组,一组去进行数据库设计,一组进行业务逻辑层的搭建(含数据层),另外一组进行Web设计。

Web组的成员主要是将前期的实用设计界面(即使用HTML+JavaScript搭建的快速原型)翻译为ASP.NET界面,不过不需要写任何代码,只要把相应的模块转换为ASCX就可以,并且签入到VSS当中。

数据库组的人员按照需求方提供的数据字典建立数据库(数据库系统是Oracle 9i,不知道性能如何),并且建立表间关系、存储过程之类的。

而业务逻辑层组的人员主要搭建实体类及业务操作类,以及数据层,同时为了保证结构优化,数据库组与业务逻辑层组的人员每天要会面一次,讲解一下各自的见解。

为了便于日后的NLB或者CLB的扩展需要,Web层将不会直接调用业务逻辑层的东西,而是通过中间的Web Service进行调用(今天演示了一把Web Service的创建,他们感觉非常酷。因为有人原来是使用Java的,现在对.NET服了,用JBuilder写Web Service,光WSDL文件就让人厌烦)。

现在有几个问题,一直没有想好:

  • 业务逻辑层中的实体类用什么比较好?是创建自定义的实体类还是直接使用DataSet,使用DataSet便于绑定,而使用自定义的实体类则效率较高。那么使用强类型的DataSet呢?会有什么问题吗?需要今天研究决定。
  • 开发过程中如何齐头并进?因为三层结构是纵向分割的,所以会存在相互依赖的关系。难道先是所有人一起上来去做数据层,然后再搭建业务逻辑层,最后一齐完成Web层吗?我不希望这样,所以分为了多组,在两天内不会出现问题,但下周开始,则会有一组人没有事情做。这是我不愿意看到的。
  • 缓存是在页面级做好,还是在业务逻辑层实现好?如何把关键层次的运行效率调整好?前几天看了[ASP.NET的那个PPT](http://www.rob-howard.net/downloads/TechEd03/DEV307.zip),然后又去访问了[http://www.asp.net](http://www.asp.net/),发现并没有像他们鼓吹的有多大的改善,甚至跟CSDN一样,越调整,速度越慢了(CSDN这几天成笑话了)。
  • 如何掌控程序中的Bug?在目前的态势下,根本没有办法按照MS的那一套来做。虽然我提出过可以使用BMS XP来试试,但项目负责人担心如此一来会使项目组的编程方式发生更改(不过也是,光使用VSS我就感觉他们就不习惯了)。

    希望有经验的人能够给我一些见解,我也会在后续的过程中把太极十八式打好,供大家参考。