首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

当项目需求改变时,怎么减少改动

2012-11-04 
当项目需求改变时,如何减少改动现在正碰到到两个问题:如一个User表,里面已经有Unique_Id、User_Name、User_P

当项目需求改变时,如何减少改动
现在正碰到到两个问题:

    如一个User表,里面已经有Unique_Id、User_Name、User_PassWord等几个字段。系统已经完成了,但是现在用户又要改变需求,要求在User表里加入几个字段,这样以来,就会涉及到很多东西要改,从BaseUser.java,User.java这些都要改掉。如果涉及多个表,更改的字段又不值一个,会变的很麻烦,而且容易出错。列举一个列子:如果一个User表,现在要为User表增加一个字段:User_Email(数据库已经增加了User_Email字段)。现在我不想改系统里面BaseUser.java,User.java等这样的类。希望通过一个配置文件(里面存放一些新增加的字段,数据类型等信息)对新增加的字段直接进行操作。不知道怎么做? 对对象User进行保存操作时:Hibernate.save(User),这样的操作能不能屏蔽一些字段如:Hibernate.save(user,user.User_Name.disabled)或者有类似的功能?
1 楼 giscat 2007-05-16   好的设计和架构拥抱变化
    2 楼 lighter 2007-05-16   这样的需求改变根本就很少的,很麻烦吗?
你可以选择"希望通过一个配置文件(里面存放一些新增加的字段,数据类型等信息)对新增加的字段直接进行操作"
改啊改啊,没有单元测试的话,最后可能恶梦来了 3 楼 hongnaiqin 2007-05-16   引用lighter     2 分钟前

这样的需求改变根本就很少的,很麻烦吗?
你可以选择"希望通过一个配置文件(里面存放一些新增加的字段,数据类型等信息)对新增加的字段直接进行操作"
改啊改啊,没有单元测试的话,最后可能恶梦来了

不是这样的,我现在想做一个通用的权限管理系统,能适合于中小型的B/S系统。因为每个系统的权限管理系统是各字段可能会不一样的。这样只要能修改一下配置文件,其他都不用修改,就能做到通用的效果,那该多好啊!! 4 楼 hongnaiqin 2007-05-17   好像没人回答。。。 5 楼 抛出异常的爱 2007-05-17   引用现在正碰到到两个问题:

   1. 如一个User表,里面已经有Unique_Id、User_Name、User_PassWord等几个字段。系统已经完成了,但是现在用户又要改变需求,要求在User表里加入几个字段,这样以来,就会涉及到很多东西要改,从BaseUser.java, User.java这些都要改掉。如果涉及多个表,更改的字段又不值一个,会变的很麻烦,而且容易出错。列举一个列子:如果一个User表,现在要为 User表增加一个字段:User_Email(数据库已经增加了User_Email字段)。现在我不想改系统里面BaseUser.java, User.java等这样的类。希望通过一个配置文件(里面存放一些新增加的字段,数据类型等信息)对新增加的字段直接进行操作。不知道怎么做?
   2. 对对象User进行保存操作时:Hibernate.save(User),这样的操作能不能屏蔽一些字段如:Hibernate.save(user,user.User_Name.disabled)或者有类似的功能?

你们的客户还管设计啊。。。
那就改吧有什么问题么?

PS:java代码级的可能有点困难
不过我们都是新作一个类,
类对应那个表只含有id与新加的列
原类不变。。。
这样就可以对一些新的需求进行定制。 6 楼 hongnaiqin 2007-05-17   引用抛出异常的爱     1 小时前

引用
现在正碰到到两个问题:

1. 如一个User表,里面已经有Unique_Id、User_Name、User_PassWord等几个字段。系统已经完成了,但是现在用户又要改变需求,要求在User表里加入几个字段,这样以来,就会涉及到很多东西要改,从BaseUser.java, User.java这些都要改掉。如果涉及多个表,更改的字段又不值一个,会变的很麻烦,而且容易出错。列举一个列子:如果一个User表,现在要为 User表增加一个字段:User_Email(数据库已经增加了User_Email字段)。现在我不想改系统里面BaseUser.java, User.java等这样的类。希望通过一个配置文件(里面存放一些新增加的字段,数据类型等信息)对新增加的字段直接进行操作。不知道怎么做?
2. 对对象User进行保存操作时:Hibernate.save(User),这样的操作能不能屏蔽一些字段如:Hibernate.save(user,user.User_Name.disabled)或者有类似的功能?

你们的客户还管设计啊。。。
那就改吧有什么问题么?

PS:java代码级的可能有点困难
不过我们都是新作一个类,
类对应那个表只含有id与新加的列
原类不变。。。
这样就可以对一些新的需求进行定制。

新做一个类?能看看你代码吗吗? 7 楼 hongnaiqin 2007-05-17   引用抛出异常的爱  
PS:java代码级的可能有点困难
不过我们都是新作一个类,
类对应那个表只含有id与新加的列
原类不变。。。
这样就可以对一些新的需求进行定制。

好,这个是一个解决办法!
Embedded and associated objects。

热点排行