面向构件化软件开发_第1页
面向构件化软件开发_第2页
面向构件化软件开发_第3页
面向构件化软件开发_第4页
面向构件化软件开发_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、编辑ppt面向构件的体系面向构件的体系-软件产业化软件产业化-编辑ppt面向构件是产业成熟的标志编辑ppt裁缝、木匠、号码、组合家具 裁缝是量身订制的艺术家 号码是人体身材的标准化 木匠是因才施用的艺术家 组合家具是需求的产业化编辑ppt科学、技术、工程 科学: NP-Complete问题 技术: 1997年深蓝计算机战胜卡斯帕罗夫 工程 互联网时代编辑ppt高科技为什么低回报 软件产品化成为神话 技术变化太快 需求变化太快 覆盖的面太宽编辑ppt软件工程的银弹单机单机客户客户/服务器服务器互联网互联网单一事务单一事务部门部门全企业全企业开盒即用开盒即用二次开发二次开发构件集成构件集成编辑pp

2、t面向构件的产业化价值编辑ppt降低生产成本编辑ppt适应需求变化编辑ppt快速推出稳定新产品编辑ppt降低提交安装维护成本编辑ppt面向构件的应用软件体系编辑ppt编辑pptCORBATuxedoJ2EE面向构件的面向构件的 应用软件平台应用软件平台 EAI编辑ppt软件和知识表达0101机器语言机器语言0101机器语言机器语言0101机器语言机器语言0101机器语言机器语言GOTO 23汇编语言汇编语言GOTO 23汇编语言汇编语言GOTO 23汇编语言汇编语言While 高级语言高级语言While 高级语言高级语言面向构件面向构件编辑ppt面向构件是下一代的中间件CORBAJ2EE面向构

3、件面向构件EAI/SOA编辑pptDB/OSERPOA基于基于C/S应用系统应用系统美国应用软件的沿革路径基于中间件应用系统基于中间件应用系统DB/OSJ2EECRMERPOACRMERPOA基于集成应用系统基于集成应用系统ECDB/OSCRMERPOAEAI/SOA员工客户主管伙伴J2EE编辑ppt中国应用软件的沿革路径PREMARCOCE户客工管员主伴伙面向构件J2EEDB/OS新型面向构件应用系统新型面向构件应用系统EAI/SOA编辑ppt中间件体系基基 础础 中中 间间 件件 平平 台台面向领域的专用平台面向构件的中间件平台面向构件的中间件平台面向构件的业务模块面向构件的业务模块操作系

4、统及数据库应用系统编辑ppt中间件平台开开发发环环境境基础构件库基础构件库页面页面流程流程业务业务方法方法数据数据数据模型数据模型运运行行环环境境开发开发调试调试部署部署管理管理PortalPortalBPML/BPML/WorkflowWorkflowJ2EEJ2EE.Net.NetCorbaCorbaMSQMSQDataDataDIDIJavaJavaC#C#内容内容流程定义流程定义规则规则权限权限报表报表编辑ppt面向构件的中间件的特征+页面页面展现展现服务服务对象对象数据数据COM+CORBAJ2EEEAISOACOA业务业务Portal编辑pptpublic final class

5、OrderHTMLAction extends HTMLActionSupport public Event perform(HttpServletRequest request) throws HTMLActionException / Extract attributes we will need / XXXX this needs to be part of the form ContactInfo shipper = extractContactInfo(request, _a); ContactInfo receiver = extractContactInfo(request, _

6、b); CreditCard creditCard = new CreditCard( 1234-2334, Duke Express, 10/2001) ; return new OrderEvent(shipper,receiver,creditCard); /* parse address form and generate a ContactInfo object */ private ContactInfo extractContactInfo(HttpServletRequest request, String suffix) throws HTMLActionException

7、ArrayList missingFields = null; String familyName = request.getParameter(family_name +suffix).trim(); if (familyName.equals() if (missingFields = null) missingFields = new ArrayList(); missingFields.add(Last Name); String givenName = request.getParameter(given_name +suffix).trim(); if (givenName.equ

8、als() if (missingFields = null) missingFields = new ArrayList(); missingFields.add(First Name); String address1 = request.getParameter(address_1 +suffix).trim(); if (address1.equals() if (missingFields = null) missingFields = new ArrayList(); missingFields.add(Street Address); String address2 = requ

9、est.getParameter(address_2 +suffix).trim(); if (address2.equals() address2 = null; String city = request.getParameter(city +suffix).trim(); if (city.equals() if (missingFields = null) missingFields = new ArrayList(); missingFields.add(City); String stateOrProvince = request.getParameter(state_or_pro

10、vince +suffix).trim(); if (stateOrProvince.equals() if (missingFields = null) missingFields = new ArrayList(); missingFields.add(State or Province +suffix); String postalCode = request.getParameter(postal_code +suffix).trim(); if (postalCode.equals() if (missingFields = null) missingFields = new Arr

11、ayList(); missingFields.add(Postal Code); String country = request.getParameter(country + suffix).trim(); String telephone = request.getParameter(telephone_number +suffix).trim(); if (telephone.equals() if (missingFields = null) missingFields = new ArrayList(); missingFields.add(Telephone Number); S

12、tring email = null; if (request.getParameter(email +suffix) != null) email = request.getParameter(email +suffix).trim(); if (missingFields != null) MissingFormDataException ex = new MissingFormDataException(Missing Address Data, missingFields); request.setAttribute(PetstoreKeys.MISSING_FORM_DATA_EXC

13、EPTION_KEY, ex); return null; Address address = new Address(address1, address2, city, stateOrProvince, postalCode, country); return new ContactInfo(familyName, givenName, address, email, telephone); public class OrderEJBAction extends EJBActionSupport public EventResponse perform(Event e) throws Eve

14、ntException OrderEvent oe = (OrderEvent)e; PurchaseOrder purchaseOrder = new PurchaseOrder(); ContactInfo billTo = oe.getBillTo(); ContactInfo shipTo = oe.getShipTo(); CreditCard creditCard = oe.getCreditCard(); String orderIdString = null; / get the UniqueIdGenerator EJB UniqueIdGeneratorLocal uidg

15、en = null; try ServiceLocator sl = new ServiceLocator(); UniqueIdGeneratorLocalHome home = (UniqueIdGeneratorLocalHome)sl.getLocalHome(JNDINames.UIDG_EJBHOME); uidgen = home.create(); catch (javax.ejb.CreateException cx) cx.printStackTrace(); catch (ServiceLocatorException slx) slx.printStackTrace()

16、; orderIdString = uidgen.getUniqueId(1001); / get ther userId ShoppingClientFacadeLocal scf = null; scf = (ShoppingClientFacadeLocal)machine.getAttribute(PetstoreKeys.SHOPPING_CLIENT_FACADE); String userId = scf.getUserId(); purchaseOrder.setOrderId(orderIdString); purchaseOrder.setUserId(userId); p

17、urchaseOrder.setEmailId(billTo.getEmail(); purchaseOrder.setOrderDate(new Date(); purchaseOrder.setShippingInfo(shipTo); purchaseOrder.setBillingInfo(billTo); purchaseOrder.setCreditCard(creditCard); int lineItemCount = 0; float totalCost = 0; / Add the items from the shopping cart ShoppingCartLocal

18、 cart = scf.getShoppingCart(); Locale locale = (Locale)machine.getAttribute(PetstoreKeys.LOCALE); purchaseOrder.setLocale(locale); Collection items = cart.getItems(); / if the cart is empty throw an exception saying so if (items.size() = 0) throw new ShoppingCartEmptyOrderException(Shopping cart is

19、empty); Iterator it = items.iterator(); while (it.hasNext() CartItem item = (CartItem)it.next();编辑ppt互联网!互联网! 互联网!互联网! 机构重组机构重组! 流程重组流程重组! 业务拓展业务拓展! 政策法规政策法规! 编辑ppt什么是软件构件? 构件的中心是建筑师 构件不能脱离业务范畴存在 构件不能对应到技术层的概念 构件有多个层次 可封装高密度的、高复杂度的业务逻辑 可被重复使用 可以适应具体化要求 可以组合为更大的构件编辑ppt构件定义编辑ppt构件复用编辑pptEOS构件接口依赖关系自依赖

20、依赖关系编辑ppt传统构件接口方式-接口异常复杂编辑ppt数据总线的构件接口方式数据总线编辑ppt面向构件-软件架构师编辑ppt构件就是艺术 基础构件的标准化 业务构件的艺术性 软件建筑师是业务专家和艺术家 软件建筑师不是技术工人编辑ppt面向构件的软件开发 确定业务范围和框架 确定应用环境和技术 选择开发平台 建立构件化开发体系 建立构件库编辑ppt面向构件的开发跟踪点StabilizingApprovedBlueprintApprovedPositionApprovedDetailingApprovedScreening ApprovedPositioning Plan ApprovedP

21、ositioning Internal ApprovedTeam SetupProject Plan ApprovedRequirement Doc ApprovedFeature List ApprovedBlueprint Internal ApprovedCM SetupProgramming Doc ApprovedProduct Release Plan ApprovedMarketing Doc ApprovedDetailing Doc Internal ApprovedProduct Release Internal ApprovedRM Report Approved编辑pp

22、t面向构件-软件工厂编辑ppt构件就是软件 应用软件公司创造构件体系 软件服务公司用构件搭建系统编辑ppt定位核心竞争能力 选择放弃才能有核心能力 在领域里不断积累软件财富 合作、多赢编辑ppt面向构件的软件企业商业模型 构件管理、构件组装平台厂商 基础构件厂商 构件化业务框架厂商 构件化行业应用厂商 构件组装服务厂商编辑ppt面向构件-信息化企业编辑ppt构件就是知识 知识通过构件积累 知识需要收集 知识需要管理 知识需要重用编辑ppt介绍普元编辑ppt公司简介 人数人数:180+ 教育背景教育背景: 10 Ph.D.; 26 M.S.普元普元EOS:基于:基于J2EE、XML标准的面向构件

23、的应用软件平台标准的面向构件的应用软件平台成立成立: 2001年年4月月 注册注册资本资本:5000万万编辑ppt普元创始人普元创始人刘亚东刘亚东 董事长,董事长,CEOCEO。美国马里兰大。美国马里兰大学物理学博士,亚信(学物理学博士,亚信(AsiaInfoAsiaInfo)创始人之一,曾任亚信科技执行副创始人之一,曾任亚信科技执行副总裁,杰出的企业领导者。总裁,杰出的企业领导者。黄柳青黄柳青 董事,董事,CTOCTO。美国马里兰大学。美国马里兰大学计算机博士,曾任亚信科技计算机博士,曾任亚信科技(AsiaInfoAsiaInfo)副总裁,首席技术长)副总裁,首席技术长官(官(CTOCTO)

24、,世界一流的计算机科学),世界一流的计算机科学家。家。编辑ppt普元EOS-面向构件的应用软件平台编辑ppt开开发发环环境境工作流构件库工作流构件库基础构件库基础构件库OLAP构件库构件库页面页面构件构件展现流展现流构件构件服务服务构件构件对象对象构件构件数据数据构件构件数据模型数据模型运运行行环环境境开开发发调调试试部部署署管管理理普元EOS应用软件平台EOS构件平台总体结构构件构件开发开发运算逻辑数据逻辑工作流引擎工作流引擎EOSEOS构件化平台构件化平台ServicService e业务逻辑展现逻辑页面引引擎擎权限权限管理管理日志日志查看查看监控监控构件构件管理管理团队团队开发开发开发开

25、发调试调试数据库数据库业务流程其他系统其他系统 其他其他web服务服务资源库资源库构件库构件库统一资源访问统一资源访问数据服务数据服务展现引擎展现引擎WEB框框架构架构EOS管管理理业务引擎业务引擎项目库项目库项目库项目库安装包安装包开发人员项目管理测试人员应用组装应用组装业务管理权限管理开发环境开发环境测试环境测试环境运行和管理环境运行和管理环境构件库管理环境构件库管理环境业务环境业务环境知识管理员业务测试人员系统管理员应用部署服务器服务器构件运行系统监控系统管理构件库管理构件库管理EOS用户开发场景资源层次资源层次构件部署构件组装构件开发构件引用EOS构件库-丰富的构件库数据库构件包数据库

26、构件包业务参数管理业务参数管理业务日志业务日志通用文件管理通用文件管理 基于模板文件生成基于模板文件生成工作协同工作协同菜单管理菜单管理工作流管理工作流管理分析构件库分析构件库组织机构管理组织机构管理客户管理客户管理权限管理权限管理XML操作构件包操作构件包字符串构件包字符串构件包日期操作构件包日期操作构件包文件上传构件包文件上传构件包信息发送构件包信息发送构件包配置信息构件包配置信息构件包定时器管理构件定时器管理构件其他构件包其他构件包构件管理体系HTML Tag库库Logic Tag库库Java Script库库SQL查询构件查询构件 DISPLAY列表构件列表构件 动态生成表单动态生成表

27、单TAB式标签库式标签库业务字典库业务字典库 Chart构件构件异常显示构件异常显示构件树形构件库树形构件库菜单构件库菜单构件库数学计算构件包数学计算构件包事件管理构件包事件管理构件包自定义构件包自定义构件包组织机构管理组织机构管理组织机构管理组织机构管理工作协同工作协同业务字典业务字典业务字典业务字典构件集成开发环境EOS Server-控制台应用配置:应用配置:应用管理:应用管理:系统监控:系统监控:统计信息:统计信息:安全控制:安全控制:日志查看:日志查看:控制台管理:控制台管理:日志查看:日志查看:EOS工作流-总体结构数据访问服务数据访问服务工作流定义工作流定义工作流客户端工作流客户端管理与监控管理与监控Tag标签库标签库应用代理服务应用代理服务日志服务服务日志服务服务工作项服务工作项服务工作流工作流构件库构件库引擎服务层引擎服务层工作项处理工作项处理异常处理异常处理事件处理事件处理EOS 业务构件调用业务构件调用API EOS 展现构件调用展现构件调用APIEOS Common API原子构件调用原子构件调用API资源管理系统资源管理系统EOS工工作作流流EOS事件服务事件服务流程同步服务流程同步服务资源管理服务资源管理服务时限服务时限服务应用调用应用调用流程调度流程调度活动执行活动执行EOS完整的互联网应用体系结构EOS框架框架业务框架菜单管理工作流管理管

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论