`
hongnaiqin
  • 浏览: 37919 次
  • 性别: Icon_minigender_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)或者有类似的功能?
分享到:
评论
7 楼 hongnaiqin 2007-05-17  
引用
抛出异常的爱  
PS:java代码级的可能有点困难
不过我们都是新作一个类,
类对应那个表只含有id与新加的列
原类不变。。。
这样就可以对一些新的需求进行定制。


好,这个是一个解决办法!
Embedded and associated objects。
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与新加的列
原类不变。。。
这样就可以对一些新的需求进行定制。


新做一个类?能看看你代码吗吗?
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与新加的列
原类不变。。。
这样就可以对一些新的需求进行定制。
4 楼 hongnaiqin 2007-05-17  
好像没人回答。。。
3 楼 hongnaiqin 2007-05-16  
引用
lighter     2 分钟前

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


不是这样的,我现在想做一个通用的权限管理系统,能适合于中小型的B/S系统。因为每个系统的权限管理系统是各字段可能会不一样的。这样只要能修改一下配置文件,其他都不用修改,就能做到通用的效果,那该多好啊!!
2 楼 lighter 2007-05-16  
这样的需求改变根本就很少的,很麻烦吗?
你可以选择"希望通过一个配置文件(里面存放一些新增加的字段,数据类型等信息)对新增加的字段直接进行操作"
改啊改啊,没有单元测试的话,最后可能恶梦来了
1 楼 giscat 2007-05-16  
好的设计和架构拥抱变化
   

相关推荐

    delphi 监视文件夹改动

    本项目名为"Delphi 监视文件夹改动",提供了完整的Delphi源码,允许开发者轻松地监控指定文件夹中的任何更改,如文件的创建、修改、移动或删除。以下将详细讲解实现这一功能所需的知识点。 1. **文件系统监视器 ...

    需求变更的管理

    2. **外部环境变化**:如国家政策调整、市场趋势变化等,这些外部因素可能导致项目需求的重新评估。 3. **需求分析的缺陷**:系统分析员或客户在需求收集过程中可能遗漏或误解某些关键需求,导致后期需要进行变更...

    软件开发项目需求变更管理及应对之.doc

    软件开发项目需求变更管理及应对之 软件开发项目需求变更管理是软件开发过程中不可避免的一个步骤。在软件开发过程中,需求的变更会给开发带来不确定性,但只要把需求变更作为重点、难点小心加以控制,软件开发的...

    判断文件是否被改动

    在IT领域,尤其是在软件开发中,确保文件的完整性和未被改动是至关重要的。...总之,判断文件是否被改动是软件开发中的常见需求,可以通过多种技术手段来实现。理解并掌握这些方法,有助于构建更加稳定和安全的系统。

    需要改动的地方1

    这个地址定义了应用程序的起始位置,可以根据实际需求增加或减少IAP程序的存储空间。 最后,参考链接提供了一个关于STM32 IAP在线升级的详细教程,包括使用手册和源代码。超级终端的使用有助于通过串口进行固件上传...

    项目管理_PMP_培训08_软件项目配置管理.pptx

    2. 变更管理:当需求、设计或实现发生变化时,需要通过变更控制流程审批,确保变更的必要性和可行性,防止未经验证的变更引入问题。 3. 配置状态监测与报告:定期生成配置状态报告,跟踪项目的进度和健康状况,帮助...

    用户部门新需求申报单.doc

    在IT行业中,用户需求是项目开发的核心驱动力。"用户部门新需求申报单"是一个重要的文档,用于记录和管理用户提出的新的功能需求。这个文档通常由业务部门的负责人填写,以便向技术团队清晰地传达他们期望的新功能...

    判断文件是否被改动vc源代码

    当定时器触发时,再次调用`CFile::GetStatus()`获取当前文件状态,并与原始时间戳进行比较。 ```cpp class CMyApp : public CWinApp { public: virtual void OnTimer(UINT_PTR nIDEvent) { CFileStatus current...

    实施SOA项目白皮书

    **5.1 SOA项目需求来源** SOA项目的启动通常源于业务部门的需求或者技术部门为了提高现有系统的灵活性和可扩展性而提出的倡议。需求来源多样,可能来自于业务流程优化、系统整合、新业务模式探索等多个方面。 **...

    apk改动工具

    而APK改动工具则是在编译后,对已经生成的APK进行二次操作,例如修改AndroidManifest.xml文件以改变权限设置,或者替换资源文件以实现UI个性化。 【压缩包子文件的文件名称列表】:ArscEditor ArscEditor是这个APK...

    COE实训项目案例描述(BBS系统)

    ### COE实训项目案例描述——BBS系统知识点详解 #### 一、项目背景与目标 ...此外,通过对比新需求与已有系统的关系,以及对新需求实现可能性的分析,我们能够更好地规划项目的实施路径,确保项目目标的成功达成。

    易语言源码易语言监视文件夹是否被改动.rar

    在计算机编程中,监视文件夹或目录的改动是一项常见的需求,例如在文件管理系统、备份程序或自动化工具中。这个源码实例将教你如何使用易语言实现这一功能,这涉及到以下几个关键知识点: 1. 文件系统监控:在...

    业主外墙排烟改变位置承诺书.docx

    业主在签署此类承诺书时,不仅要明确自己的权利与义务,还需要充分考虑相关的法律法规和技术标准,确保改动后的排烟系统既能满足自身需求,又不会对周围环境和其他业主造成不良影响。此外,良好的沟通与合作机制也是...

    软件项目的配置管理

    6. **配置审计**:验证配置项的完整性,确保符合项目需求和标准。 **8.3 配置管理需求** 配置管理需求通常由项目规模、团队结构、开发方法论等因素决定。对于大型或复杂的项目,严格的配置管理尤其必要,以确保团队...

    开天机型直通率改善.doc

    5. 争议处置:当小组内部出现分歧时,leader应运用一些工具方法统一思想,若仍不能达成一致,应请sponsor进行决断。 6. 小组决议的执行:在达成决议之前,个人应能充分发表自己的见解,但在形成决议后,应该严格按...

    【计算机专业-Andorid项目源码100套之】竖直SeekBar源码

    2. **集成到项目**:将源码导入到你的Android Studio项目中,根据项目需求进行必要的修改。 3. **测试与调试**:确保在不同设备和Android版本上都能正常工作,处理可能出现的兼容性问题。 4. **自定义样式**:根据UI...

    开源项目-mdempsky-unbed.zip

    开源项目-mdempsky-unbed....通过解压并浏览这些文件,你可以深入了解unbed的工作原理,甚至对其进行定制以适应特定的项目需求。对于想要提升代码质量和遵循良好编程实践的开发者来说,unbed是一个非常有价值的工具。

    信息系统项目管理师:软件工程篇(四).docx

    这些改变可能是由于用户发现的错误需要纠正,或者是外部环境(如硬件、操作系统更新)变化导致的适应性改动,也可能是为了提升软件功能和用户体验的完善性维护。 2. 软件维护的分类 - 纠错性维护:这是最直接的...

    广东汉凯实业有限公司(林振弟项目报备).zip

    这种项目具有环保、节能、减少碳排放等优点。广东汉凯实业有限公司可能在考虑实施这样一个项目,以提高能源效率,降低运营成本,同时响应国家的绿色能源政策。 在分布式光伏项目中,"收资清单"通常包括以下内容: 1...

Global site tag (gtag.js) - Google Analytics