软件设计:多条件组合分析的可配置性问题

问题描述

软件设计:多条件组合分析的可配置性问题

需求目标:让用户自己组合分析条件,进行数据分析,生成分析结果,简单说就是筛选出符合条件的账号。
需求描述:
1、本功能用于银行账号交易分析(有交易账号、对方账号、交易时间、交易金额、入出帐标识等信息),即通过用户的组合条件,筛选出符合条件的账号。
2、分析的原子条件很多,比如:在一天内转入的金额大于一定的额度;又如:每笔转入的资金转入后都在当天转出;又如:转入该账户的对方账号个数大于N个账号;等等。
3、这些条件有些已经可以明确,但有些尚未得到客户的明确,即后期可能随时增减条件。
4、客户要求所有原子条件可以进行自主组合,即用户自己对原子条件进行AND、OR的运算组合,完成用户的账户筛选功能。
希望得到的帮助:
1、提供一种能满足以上需求的设计思路(由于本人没有积分,所以没有悬赏,望各位见谅!)。

解决方案

1.从需求上理解,客户需要一种可以通过添加一个或者多个条件,这些添加进行组合来查询信息;
2.可能用到的条件组合有AND,OR,IN,BETWEEN AND, ORDER BY DESC(ASC);
3.在设计上可以将分析的信息(字段)分为一组,条件词一组,然后让用户通过选择,添加的方式组合查询条件(即就是WHERE后的SQL语句);
4.程序对最后的组合进行检验,生成对应的SQL;

时间: 2024-08-04 03:25:39

软件设计:多条件组合分析的可配置性问题的相关文章

了解LabVIEW FPGA和软件设计射频仪器的优势所在

概览 无线设备的数量.通信标准的多样性,以及调制方案的复杂度,每一年都在不断增加.而随着每一代新技术的诞生,由于使用传统技术测试无线设备,需要大量更复杂的测试设备,其成本也在不断提高.    使用虚拟(软件)仪器与模块化I/O相结合是一种最小化硬件成本并减少测试时间的方法.软件设计仪器的新方法使得射频测试工程师无需凭借自定义或特殊标准的仪器,就能以多个数量级的幅度减少测试时间.   阅读此文可以帮助您了解如何使用NI LabVIEW FPGA来设计和自定义您的射频仪器,以及通过软件设计的仪器能为

学习软件设计的非功能性需求

    非功能需求是产品必须具备的品质或者它将事情做到了多好,它们可以让产品有吸引力.易于使用.快速.可靠或者安全.通常并不改变产品的功能,功能性需求是让产品工作的需求,非功能需求是为工作赋予特征的需求.所以说,功能性需求和非功能性需求是相辅相成密不可分的.非功能性需求经常被忽略,因为它们不易被发现,发现后不易表达.实现以及测试.其实我们很多时候都将非功能需求不自觉的融入到了功能需求中.软件产品的非功能性需求包括系统的性能.可靠性.兼容性.可维护性.配置.界面.安全性.可扩充性和对技术和对业务的

《挖掘管理价值:企业软件项目管理实战》一2.4 软件设计过程

2.4 软件设计过程 挖掘管理价值:企业软件项目管理实战 软件设计是根据需求的内容,运用计算机理论.技术和工具将其合理地.有机地.具体地转化为功能,并演示其实现的方法.过程和结果.设计人员在理解了用户的需求之后,首先在自己的脑海中会有一个大致的概念和思路,然后考虑如何去实现这些功能,当然这需要一定的专业知识和实践经验.这里就不阐述软件或数据库设计的理论知识了,而重点介绍如何将设计人员脑子里对软件的设计和理解反映到文字.图形和流程上,使得用户可以了解计算机是如何实现他们的需求的.我们用图 2-9

由学习《软件设计重构》所想到的代码review(二)

前言 对于一个程序员来讲如何来最直接的来衡量他的技术能力和产出呢?我想最直观的作法是看他的代码编写能力,就拿我经常接触的一些程序员来看,他们买了很多技术重构类书籍,但是看完后代码编写能力并没有显著提高.有人说可以用代码review工具啊,但是像市面上的这些代码review工具,只能帮助我们解决表面的bug和规范点,还无法帮助我们发现更深层次的设计问题. 上一篇<由学习<软件设计重构>所想到的代码review(一)>我结合<软件设计重构>这本书谈谈在进行代码review的

link环境下,制作一款《订餐软件》,条件不写死的情况下,如何做第二份半价之类的功能?

问题描述 link环境下,制作一款<订餐软件>,条件不写死的情况下,如何做第二份半价之类的功能? link环境下,制作一款<订餐软件>,条件不写死的情况下,如何做第二份半价之类的功能? 解决方案 这个不是计算出来的,你可以在你的业务逻辑的地方统一判断就可以了. 无非就是点2份以后价格*0.66就可以了.具体你可以在数据库或者BLL里设计.

没有银弹-谈谈软件设计的几个矛盾

最近在做项目的重构和功能改进,设计做了很多,也发生了一些争执.其实总结下来,很多争执的内容其实早就是经典的问题.这些问题没有孰优孰劣,具体采用哪种方案,还得因地制宜,详细分析项目需求和复杂度之后,再做决定.之前很多人都试图只从宏观指导思想来决定设计,最后大家谁也不服谁,所以先把问题确定下来,至少以后思考问题会直接一点. 1. 拆分与合并 从现实世界来说,事物本身就是互相联系的,从这个观点来看,任何对事物的拆分都是不完全正确的. 但是软件开发中,人的理解能力是有限的,而拆分目前看来是降低单个项目复

联发芯软件设计公司拟11月开始运营

本报讯 (记者 黄颖) 全球IC设计巨头台湾联发科技在成都设立的联发芯软件设计(成都)有限公司已于本月中旬完成注册,拟于11月开始运营.昨日,市委副书记.市长葛红林会见了台湾联发科技有限公司董事长蔡明介一行. 台湾联发科技http://www.aliyun.com/zixun/aggregation/7494.html">股份有限公司是全球IC设计领导厂商,专注于无线通讯及数位媒体等技术领域.今年以来,经过多次考察,联发科技决定在成都高新区设立外商独资企业形式的IC设计研发中心,公司注册资

如何写软件设计文档

软件设计的不同模型:瀑布式.快速原型法以及迭代式 自从1968年提出"软件工程"概念以来,软件开发领域对于借鉴传统工程的原则.方法,以提高质量.降低成本的探索就从未停止过.而在这个过程中,提出了许多不同的软件开发模型,典型的有:瀑布式,快速原型法,以及迭代式开发等. 瀑布式模型 是由W.W.Royce在1970年最初提出的软件开发模型,在瀑布模型中,开发被认为是按照需求分析,设计,实现,测试 (确认), 集成,和维护顺序的进行. 快速原型法 快速原型模型的第一步是建造一个快速原型,实现

软件设计漫谈之二:设计模式只是一把锤子!

              设计模式只是一把锤子!     谈起设计模式,那是几乎无人不知,无人不晓,大名鼎鼎的"GOF"(中文有的翻译为"四人帮")惊世之作,真是"平生不识GOF,学尽设计也枉然!"     然而,设计模式真的是软件设计的"瑞士军刀",切.削.锯.钻样样精通么?     读过设计模式的朋友估计不少,但真正注意过<设计模式>的副标题的估计很少,而这个副标题却是避免误解设计模式的关键.<设计模式