用户名: 密码: 验证码:
基于软件复用技术的CAPP系统的设计和实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
软件复用一直以来都是我国软件企业发展探索的热点之一,如今软件复用已经被广泛的重视和应用。基于CAPP本身复杂的逻辑关系,软件复用技术在CAPP上的应用显得极为重要。
    本文首先对现代CAPP的技术作了深入的研究和分析,并在此基础上阐述了软件复用对CAPP开发的意义,并进一步讨论了基于启明PDM上的启明CAPP集成框架和总体设计思路。最后针对现在启明CAPP框架的分析结果,提出其存在的弊端和解决方案。
    本文的重点就是解决当前启明CAPP在开发过程中存在的问题,并将软件复用技术应用到CAPP中。在对启明CAPP进行了认真的分析之后发现启明CAPP虽然使用了三层分布式结构设计,但是从总体上看仍然不能满足开发的需求。问题主要在于编码不规范,局部设计结构不合理上,以至造成我们在开发难度加大,维护工作量加重,开发周期延长
    
    
    等不必要的麻烦。
    本文解决的主要问题就是使启明CAPP软件开发规范化。在设计过程中采用软件复用技术和多种设计模式来优化软件。其中设计的重点内容为三个:第一就是客户端的通用性设计;第二就是服务端的通用性设计;第三就是统一数据模型的设计。
    客户端采用MVC设计模式、观察者模式和工厂模式等相结合的形式,设计了通用的界面。以公用的控制模块来观察数据模块的变化,若数据模块变动立即通知界面更新。而界面的更新只受控制模块的影响,并且数据模块设计成统一数据模式,所以不管界面如何更改,控制模块和数据模块无须变动。这样就大大提高了开发的效率,在二次开发过程中,我们只需要按照需求对相应的界面作一些改动就可以了。
    在服务端我们设计了一个远程接口供客户端调用,在接口里我们只对客户端传来的统一模型数据处理,而不是具体的对象。这样我们就不用再具体处理要持久化的对象是设备、工装还是其它的了。因此对于服务端来说只要在接口里定义几个公共的方法就可以,不用针对每个对象都设计一套处理方案。不管以后启明CAPP 软件开发要用到那些对象,我就只要提供一套指针对统一数据模型的就可以了。
    在整套设计方案的实现中最基本一个环节在于设计了统一数据模型。统一数据模型里封装的是具体持久化对象上抽象出来的父类和它们之间的关联对象。封装的父类里定义了获得对象类型的方法,所以不管统一数据模型里封装的具体对象是什么类型,当存到数据库里时,自动查询相应的表来存放它。
    以上就是本文的主要设计思想,软件复用的实施对启明公司来说不仅仅是CAPP这块受益,其它软件开发都能够得到意想不到的效率。从长远来看,启明CAPP是一个专做汽车工艺的,如果它能够很好的应用软件复用的技术,不用开发重复代码的话,那么不久的将来启明CAPP将走上工程化管理道路,实行工厂化开发,其开发效率将得到大大的提高,其开发周期将不会是现在每月一个项目。按照理论上完全可能像现在汽车每分钟甚至每秒钟一辆车的速度生产。
    企业推行软件复用的目的是为了降低成本。大量地复用软件构件后,企业投入的人力少了,开发周期缩短了,系统的可靠性也提高了,能以优惠的价格和优质的产品赢得客户,企业的竞争力也随之增强了。当然,因为软件复用涉及到企业机构重组,对企业管理者来说需要谨慎考虑,反复权衡。软件复用相对于以前的项目组开发方式来说,启动实施的投入成本很大,约为以前的2~3倍。如果只是做一个项目,也许没有必要实施软件复用,但如果企业计划长期从事某个领域的软件开发,实施软
    
    
    件复用所带来的收效将是很大的。对于国内的软件企业来说,如果没有能力全面推广软件复用,也可以在一定程度上实施,如加强项目组之间的沟通和交流等,充分利用已有资源,通过逐步的积累,最终走向系统化的软件复用。
The Designing and Implementation of CAPP System base on Technologic of Software-Reuse
    Software reuse is always one of the hotspot of our country's software project research. Now, it has been widely received much recognition and applications. Considered that the CAPP's logistic relation is complicated, the technique of software reuse bulks large in applications of CAPP.
    At first, we do a deep research and analyze on modern technique of CAPP, and show the meaning of software reuse to CAPP's exploitation, and further we discuss the QM-CAPP integration frame and general idea for design based on QM-PDM. Finally, we point out the shortcoming and solution aimed at the analytical result of QM-CAPP frame.
    The emphases of the paper are solving the problems in QM-CAPP exploitation period, and apply the technique of software reuse to CAPP. After analyzing QM-CAPP, we can see that QM-CAPP cant satisfy exploitation requirement in the mass though it using three layers of distributed structural design. The main problem is that coding is nonstandard and structure of local design is unreasonable, so we have more troubles about exploitation difficulty, protection work, and exploitation period.
    The main problem we solve in this paper is to standardize the software exploitation of QM-CAPP. In the designing process, we optimize the software by the technique of software reuse and many kinds of designs modes. The keys of the design are the following three: the first one is the general design for clients, the second is the general design for service, the third is the design of a unified data model.
    The customer end adopts the form in which MVC designs the mode, observer's mode and combines with mode of the factory, etc.,
    
    
    
    Have designed the interface in common use, We observe the data module's change by public control module, which will give immediate notice to interface for update if the data module have any changes. Update of interface is affected by control module, and we design data module into a unified data model. So no matter how the interface alters, controlling module and data module needn't be changed. Improve the efficiency developed greatly like this ,ln the course of secondary development, we only need to do some change to the corresponding interface according to the demand.
    In the service end We have designed a long-range interface and supported the customer end to transfer, and We are only the unified model data processing to the thing that the customer end came in the interface, But not concrete target. So, We needn't concrete to deal with target taken enduringly to want equipment, frock, other in this way. Therefore, for service, we can define several public method in interface, rather than design one set and deal with the scheme direct against each target. No matter QM-CAPP software development will use those targets, I so long as offer a set of indicators all right to what has been unified the datum model. A link basically the most in the realization of a whole set of plan of design lie in have designed the unified data model.
    Encapsulation in Unify data model is Related father class abstracted from Concrete to take target enduringly and target concrete at them .It define obtain target method in Encapsulation father class, so, Unify data model what type concrete target of encapsulation, when store into the database, inquire automatically that the corresponding table preserves it.
    The above is the main design philosophy of this paper, The implementation that the software reuse is not merely that this one of CAPP is benefited for QM company, the other software development can get the unexpected efficiency. In the long run, QM-CAPP is a piece of software specializing in the automobile craft, If it can applied Software Reuse very good, needn't develop which repeat the code, The QM-CAPP is go to the engineering turns manage the road, practicing the development of the factory turn the development near future, then, its develops efficiency will get big improvement, Its development period will not be a project
引文
【1】Ravi S. Sandhu, Edward J. Coyne, Hal L. Feinstein and Charles E. Youman, Role-Based Access Control, IEEE Computer, Volume 29, Number 2, February 1996, pages 38-47.
    
     【2】DAVID F. FERRAIOLO,RAVI SANDHU,SERBAN GAVRILA and D. RICHARD KUHN,Proposed NIST Standard for Role-Based Access Control, ACM Transactions on Information and System Security, Vol. 4, No. 3, August 2001, Pages 224–274.
     【3】CIMdata, collaborative Product Definition management (cPDm): An Overview of a Collaborative Approach to Managing the Product Definition Lifecycle, August 2001
     【4】Bruce Eckel, Thinking in JAVA, Prentice Hall, 1998
     【5】叶晓俊,王建民,孙家广,产品数据管理概述,工程设计CAD及自动化,1998.2
     【6】邓集波, 洪帆 ,基于任务的访问控制模型,软件学报 Vol.14, No.1 Pages 76-82 2003, 14(1)
     【7】尹建伟,陈刚,董金祥,一个通用PDM安全管理模型及实现,计算机辅助设计与图形学学报,Vol.13, No.11, Nov.2001
     【8】王文涛,陆际光,PDM中人员管理的动态性描述,中南民族学院学报,Vol20,No.1, Mar.2001
     【9】约瑟夫·萧伯纳,制造企业的产品数据管理,机械工业出版社,2000
     【10】童秉枢、李建明,产品数据管理(PDM)技术,清华大学出版社,2000
     【11】刘润东,UML对象设计与编程,北京希望电子出版社,2001

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700