??xml version="1.0" encoding="utf-8" standalone="yes"?>
qW所理解Q其实很单:
1 把意图表辑և来,主要做法是画图?BR>2 把意图诏M去,主要做法是喷Q对象是目l、客戗公叔R对{?BR>
业务架构的目?/B>
按照优先U排?BR>1 固化开发和试模式Q减开发h员的自由发挥余地Q从而做刎ͼ
1 业务代码实现简单化和固定化Q降低对开发h员的技术要求(如要求了解J2EE框架或HTTP交互q程{)
2 复用开发h员的l验Q在下个使用业务架构的项目中Q不需要再行学?BR>
2 减少目的基?STRONG>技术代?/STRONG>开发工作和步骤Q这里的技术代码,指与业务无关的部分,如配|、日志、文件上传、ORM {等。这个目标需要在l织U维护跨目?STRONG>技术框?/STRONG>Q单靠个人是无法做到的?BR>
3 实现寚w目的业务代码的重用。这个目标几乎不可能实现Q业务代码重用的前提是它l过业务专家的提点{业务过E完整、可完全配置。假如这个目标能够实玎ͼ那么开发h员的角色cM?SAP 实施人员Q主要工作是配置Q而不是写代码?BR>
国内公司的业务架构实现的困境
对于国内公司来说Q由于中长期利益与短期利益的冲突Q架构一般很隑֝持下厅R?BR>国内公司限于成本压力Q经怼要求架构师在目中实C务框Ӟ但是q个目标与项目的直接目标是有冲突的?BR>
业务框架Z辑ֈ可重用的目标Q是需要比目完成要多做好多工作的Q如框架文、辅助工L{,q需要大量的开发工作量Q会与项目的直接目标发生冲突Q而冲H出现时Q公司和目l理一般都会选择牺牲重用的业务框架这个目标,保证目的完成?在项目完成后Q公怹很少单独l织人力寚w目成果进行评估和重构Q结果最l还是得不到一个重用的业务框架?BR>
]]>
业务产品的结构层ơ与实现重点
应用业务框架
感谢 好刚?同志对这文E的意见Q感?ji_cao 同志的从博弈度看待Y件开发的思\?/font>
]]>
变的是概念,不变的是产品
IBM ?MQ Series 的定位从老早?Link/Queue Q变?MOM Q再变ؓ EAI Q再变ؓ SOA 的基架构。MQ Series 产品的结构始l不变,?IBM 它用不同的概念包装hQ推向市场;客户为概念付费,?IBM 在收L金白银?/P>
变的是皮毛,不变的是基础
变的是排列组合,不变的是基本原理
仔细考究q些概念Q就会发玎ͼ概念其实只不q是对角艌Ӏ数据、处理和它们之间的相互关p,其固定化和明确化,再v个新名词。很多现在热炒的新概念,?0q代的主Z可以扑ֈ原型Q代码不是OOP q是 AOP Q最l还是要译成机器码Q由CPU 执行的?BR>别被新概늻骗了Q我们现在用的计机的结构,?950's Z曼提出开始,没有什么新变化。在可预见的来Q除非h工智能或量子计算机有什么新H破Q我们还是要l箋跟诺伊曼体系打交道?/P>
变的是银弹,不变的是失望(?)
巨型厂商所推的概念Q更多程度上是ؓ了营销所作的吹嘘。从用户角度来看Q只要开发速度_快,q行E_Q后l支持维护升U能够跟上;到底采用什么技术,是无所谓的事情。而技术或框架之间的差别,其实也没有它们的UC间的差别那么大?BR>
W笨所知的试大致分类
单元试/Unit test
Z代码中类或函CU的试
用例试/Use case test.
Z一个完整业务用例的试Q可以不包括用户业务pȝ环境的完整操作流E?BR>如,银行|银pȝ的{账测试可以认为是一个完整业务用例测试,但是不必要要求测试用例先执行dq程Q再q行转̎业务代码的测试?/P>
集成试/Integration test
׃务h员主|业务pȝ作ؓ一个完整黑盒,试pȝ功能和性能?/P>
用户接受试/User Accept test
集成试通过后,用户Z生pȝ剥离的实际数据,再一ơ对业务pȝ执行试Q如果集成测试不充分Q可以再一ơ有Z暴露pȝ的缺陗?/P>
目实施q程与测?/STRONG>
从项目的实施q程来说Q单元测试是E序员自,在开发阶D,集成试和用h受测试所占用旉能够辑ֈ目代码开发阶D늚一倍到两倍,大型目的测试阶D可能还要长?BR>而用例试目前很少作ؓ一个正式的阶段在项目实施过E中存在Q或q序员自行自测Q或合ƈ到集成测试过E中?/P>
对于大型业务pȝQ集成测试和用户试所p的主要工作量如下Q可能不全?BR>1 数据准备Q测试h员调配准备?BR>2 试q程中,试人员要找到哪些测试数据还能用Q再手工操作pȝ界面Q执行测试过E。对于大型业务系l来_可用试数据是随着试q展不断变化的,很有可能某个用户数据刚刚状态正常,现在欠费了。要x到合适的数据来测试系l,q是个费劲且混ؕ的过E?BR>3 集成回归试Q业务系l如果有升或改动,需要将所有交易重新测试一遍,以防止变更给原有代码引入~陷?/P>
用例试
用例试x业务?BR>
用例试集中在业务服务这一层,业务服务直接对应了业务用例?BR>用例试注重业务服务q行环境的模拟和重现Q从而支持业务服务层的自动测试?/P>
用例试的h(hun)?BR>1 减少集成试的时间和成本Q降低集成测试发现缺hQ从而降低项目ȝ陷修复代仗?BR> 用例试~陷修复代h(hun)q低于集成测试的~陷修复代h(hun)Q用例测试发现大部分~陷后,集成试q对轻松了?BR>2 可回归的用例试支持快速代码重构?BR>3 ...
单元试无法覆盖用例试
业务代码q行需要底层资源如数据库或其它业务pȝ配合Q单元测试工L乏提供业务服务运行所需环境的模拟,从Junitpd单元试工具来说Q它q是主要从技术角度考虑Q从业务角度的考虑如:
底层资源Q数据库QJMSQ模?BR>依赖服务模拟
服务讉K模拟
自动、重攑֒比对服务q行时的输入输出参数、资源、依赖服务?BR>服务接口变动波及分析
代码重构的成?BR>代码重构需要付Z仗集成测试费时费力,但用户不可能因ؓE序员说“我保证代码重构不会改变pȝ功能”,׃对变动后代码q行试?BR>用例回归试支持可以以较?yu)代h持代码重构,因ؓ它可在业务服务自动对功能进行验证,集成试工作能够相应的减?BR>
对于分布式应用,有可能需要自行编写元数据更新的分布式事务理器,自行实现元数据更新的两阶D|交过E。如果想hQ也可以考虑用JCA自行实现Resource ManagerQ借用应用服务器的Transaction Manager?BR>
开源Y件从M效果来看Q一斚wҎ(gu)术的自由扩散起到了推动作用,另一斚w也实质上加强了巨型厂商的垄断C?BR>从巨型厂商如IBM,BEA,Oracle的策略来看,他们們于将开源YӞOS 如LinuxQAppServer ?JBossQ组件如Struts,SpringQ,作ؓ自有高端产品的补充,用于占领低端部分Q另一斚w也可以提高Y件品商准入门槛或是直接对M$来竞争?/P>
开源Y件与q些巨型厂商产品的差距主要在如下几个斚wQ?BR>1 开源Y件缺乏商用Y件的所h的如可靠性、可扩展性、高可用性等Ҏ(gu)?BR>2 开源Y件在关键应用如TP Monitor(TUXEDO/CICS),MOM(MQ)斚w~Z相应的杀手Y件?BR> q个现状一斚w与开源组l的{略相关QTP Monitor之类的Y件是高度垄断的,很多开源组l是由巨型厂商所资助Q当然不会推动这斚w的Y件的开发?BR> 另一斚w也有可能是因cY仉要长旉的不断应用和实践Q才能逐步发展Q否则只能是一个实验室玩具。一开始时开源Y件的可靠性是无法保证Q用户也不会自q关键应用构筑在高风险基础之上Q不借助外力Q这个死循环无法打破?/P>
4 对于一些高端^台或闭q_Q开源Y件没有够的g基础条g发展?BR>5 开源Y件多C为技术型软g存在Q而非业务型YӞ在易用性、可操作性、文方面有所~Z?BR>6 开源Y件缺乏稳定的后箋l护和支持力量?BR>
一些基本数?/P>
发达国家IT投资软硬比ؓ2Q?Q中国ؓ1Q?Q中国大企业能够辑ֈ1Q??BR>对于中大型项目的软g投资Q购买基软g如数据库、应用服务器与项目实施费用比Uؓ1:1?BR>IT基础设施Q基软g+gQ的投入几乎全部为外国公司所独占?/P>
如上所qͼ中国IT投资中,目实施部分与IT基础设施比率?:4左右Q对于小目Q这个比率会高些Q部分原因在于基软g采用免费或开源品,g也未采用Unix型机?/P>
中美货币汇率8Q?Q按各自能自行生产的产品和服务算购买力^价则?Q??BR>IT基础设施架构按美元算Q与国大致相同Qh(hun)g者不低于1/2Q???Q?/P>
W笨刚刚l历的一个金融行业的目Q基软g(DB2Qh(hun)?50万左?Q项目实施费?20万左叟뀂其它基软g如应用服务器WebSphere未计入Q硬件成本也未计入?BR>
软g民工日子难过的一个重要原因:IT目的Yg?/P>
中国IT行业软g公司和广大的软g民工日子难过的一个重要原因,是由于发辑֛家对于IT基础设施的垄断,造成基础设施h刚性,消耗了中国IT投资的大部分资金Q国内公司如单做软g目实施只能l持生存Q基软g早已为国外公司所垄断Q无法介入;q也是国内Y件开发h员不会受重视一个重要原因?/P>
从国内公司的角度出发Q最Ҏ(gu)的大概是当代理商转手卖Yg了,其次是拉关pL来项目;至于靠技术积累提高核心竞争力Q则不是主要因素。事实上Q国内中大型软g公司都会面͙目盈利能力低下的问题,解决Ҏ(gu)也大致相同,如增加工作量Q直接降低工资或CU城市外包等?/P>
q既是国内Y件公司的不幸也是我等IT民工的不q,又更是国内IT行业的不q:对公司而言Q无法通过技术积累获得必ȝ发展资金Q公司很隑֏展ؓ能够跟国外Y件公司抗衡的企业Q对个h而言Q在低工资高工作强度的压q下QIT行业也就只能是个吃青春饭的地方;对中国IT行业而言Q依赖国外IT基础设施的局面一l生成,无法摆脱;在这U局势下Q国内Y件行业只可能q随国外潮流Q不可能提出自己的主?---那是需要有市场和资金支持的----中国IT领域Q始l是国外公司呼风唤雨的地斏V?/P>
龙芯与改善IT目软硬比的可能?/P>
要解册Y比的问题,最直接的办法是h民币与美元汇率拉q购买力^L水准1:1。但qƈ不现实,货币的购买力最l取决于该国的能用什么品与他国交换。国际市Z初产品和资源与_֯机电(sh)产品的h(hun)格相差天壤,要卖多少条裤子才能换回一台服务器?另一个问题是没有自己的硬件生产厂商时Q国家安全是要受制于人的?/P>
龙芯的出现预C着一U可能性,中国有可能出现自qg生厂商Q将g不正常的h拉低Q还lY件企业一个较正常的生态环境?BR>做个单的四则计算Q按2004qIT投资2549.8亿,当Y比?0%上升?0%Ӟ软g企业的收入会?65亿增加到1785ѝ?/P>
软g收入增加一倍,而硬件代理利润会降低70%上,此时软g目以支撑公司生存和发展,软g技术积累才有可能取代硬件代理成为公司的重要利润来源。以此ؓ出发点,公司才有可能Y件开发h员作为利润支柱对待,摆脱民工待遇?/P>
在此基础之上q一步的可能性是建立自己的,能够自主发展的IT体系Q基软gQ商用硬Ӟ计算机)?/P>
上面的可能性,最需要的是自d新的_和国家政{和投资的支持;有必要重温毛泽东时代的“自力更生,艰苦奋斗”的_?/P>
附一些中国IT投资的Yg比的一些公开资料
《中国Y件业h战急遽升温?l济观察?2005-10
在国外,企业在硬件、Y件和服务上的投入一般是1:2:3的比例,在国内这个数字就变成?:2:1Q正好相?BR>http://www.iteer.net/modules/news/article.php?storyid=425
?005/2006q中国行业IT需求趋势系列调研报告?商务部研I
报告昄Q?004q中国行业信息化IT投入额达2549.8亿元。同比增?1.8%
调研报告昄Q?004q行业信息化IT投入中,软g与IT服务的投入比例达C40.3%Q?5q则升至41.7%。调研报告认为,未来三年中国行业信息化IT投入中的软g和IT服务投入的比例将逐步上升Q?007q二者的投入比例达?6%?BR>http://www.chinabbc.com.cn/dxqy/news.asp?newsid=2005323101115887&classid=109103
计世资讯?005q中国大型企业信息化及IT应用势报告?/P>
2004q我国大型企业信息化投入总额?81.9亿元Q与2003要比增长15.3%?/P>
2005q大型企业硬件投入比例将首次降到50%以下Qؓ48.7%。此外:大型企业软g投入比例从2004q占M投资额的27.1%Q增长到 2005q的30.1%Q大型企业IT服务投入比例从2003q占M投资额的20.4%Q增长到2005q的21.2%。相对于其他企业而言Q大型企业的信息化投入结构已l基本稳定,在未来几q不会有大的变化?BR>http://www.ccwresearch.com.cn/store/list/products_service_list4.asp?columnId=493&view=#
中华工商时报 《神州数码:IT服务市场的长跑选手?2005-02
而从Ƨ美发达国家看,企业在硬件、Y件和服务上的投入比例是齐头ƈq的Q基本上???Q而在国内Q基本上l持着7??的关p?BR>http://www.surprising.cn/n332c7p2.aspx
对话州数码总裁郭ؓ 对话计世|?/P>
在美国IT市场QIT服务与Y件占的比例是70Q,PC及各U硬件品占的比例是30Q?BR>中国所谓的|络基础也远q滞后于Ƨ美市场Q整个市场结构是g产品?5%的比例,软g和服务只?5%?BR>www.ccw.com.cn/itlianghui/htm2005/20050929_17OEK.htm
《IT市场l结“迷狂”尚需5q?IDC
在我国,2003qY件、服务两Ҏ(gu)入相加,仅占整个IT市场?4.6%Q同q_全球市场两项之和Q占整个IT市场?2.1%Q远q高Z?7.5个百分点?BR>http://www.idc.com.cn/analysts/detailpoints.jsp?docid=5
02q数?/P>
一是对信息化徏讄投入以Y件ؓ主还是硬件ؓ丅R我国在信息化投入中QY比例失调。Y件加服务的投入与g投入的比例ؓ二八开Q其中集成与安装的比例约 8?0%QY件开发的投入U?0?2%Q?0%的资金是用于g购买。而据世界银行的统计,发达城市信息化投入一般ؓ七三开Q?0%用于软g和服务,购买g?0%?BR>http://www.centek.com.cn/news/20021218m2.htm
随着水利行业信息化徏讄不断深入Q硬件投资比例不断下降,软g和服务投资比例不断增加?004q硬件投资比例ؓ73.4%Q?005q这一比例下降?7.6%Q同时Y件和服务的投资比例相应提升,分别?1.5%?.1%上升?4.1%?.3%Q?BR>http://solution.chinabyte.com/shlxxh05/