基于FCA的系统分析与设计方法研究及应用
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
为得到高度提炼、充分解耦的业务实体模型,解决传统的系统分析中业务模型抽象粒度不统一和主观因素干扰等问题,本文研究和探索一种基于形式概念分析(Formal Concept Analysis, FCA)的系统分析与设计方法。本文借鉴FCA的理论和方法对业务实体进行概念层次分析,对概念抽取、模型化、系统分析的模式和步骤进行了全面分析,并以一个实际保险应用系统为蓝本验证了新的分析方法在实体分析、数据库结构分析、模块分析、权限分析和SOA服务组件分析等方面的应用过程。
     研究结果表明:基于FCA的系统分析与设计方法为系统分析设计过程提供了一种新的抽象模式,并为模型的验证和实现提供了强大的支撑。基于形式概念分析的系统分析方法,可以得到一个高度抽象的、解耦的、客观的系统模型,这种形式化分析方法和模式极大地弥补了业务理解上的差异,降低了人为因素对系统的影响,将软件品质和质量控制提升到系统分析与设计的层次。
With the rapid development of computer technology and the urgently demand of informationization in various fields, software engineering projects become increasingly complex and large. The requirements of systems analysis, design, development, operation and maintenance, upgrading are unceasingly increasing. Take insurance industry as an example, as the domestic insurance industry growing fast, insurance companies pay much more attention to the enterprise informationization. Using information technology to support business activities is the way to maintain the competitive edge and better respond to international and domestic challenges brought by competition. Therefore, enterprises should have agile and flexible systems, but that often depends on the understanding and definition of the system of the system development process, that is, the traditional system analysis and design process. However, the large number of business data and the wide range of business kinds decide the complexity of the system. In such a complex industry, information systems need to be flexible. So that, we need a good method of analysis and design to support the definition of the system concepts and the reduction of the coupling among system elements, then we can make the system more flexible and easy to extend.
     To be highly refined, full decoupling of the business entity model and to resolve the system analysis problems of the traditional business model in an abstract non-uniform grain size and subjective factors interference, this paper explores an approach of system analysis and design that based on Formal Concept Analysis (FCA). Using the theories and methods of FCA for reference, we discuss about the business entities analysis and database design, module analysis and functional design, analysis and the role of authority, SOA reusable service components and system integration. And, we make a comprehensive analysis of the steps based on the method of analysis and design models. Based on a practical insurance system, we prove that the system analysis and design based on FCA works well in the process of business entity analysis, database analysis and database structure design.
     FCA is a branch of applied mathematics, which can classify the elements that being in some certain relationship or sharing common characters, and can find the concepts and the relationship between them, using mathematics way to express concepts and relationships. Based on an actual core business system of insurance, this paper chose some policies of different risk kinds for study, applied FCA to entities abstract, conceptual level analysis, clustering concept lattice properties, analysis of the database structure, and finally got the business entity database model. Practice has proved that the FCA-based method of analysis and design system in the insurance business entities analysis is feasible and effective.
     In this paper, the main work and innovation are:
     Summarizing the step of using the system analysis and design method that based on FCA: Choosing the right point for study, mark the "formal object" and "formal attribute"; to build the formal context base on the elements that have been selected; check semantic meaning and clear the context; to generate the corresponding Hasse diagram; Analyze the concepts and their relations; to modify the formal context; iterate the above steps until getting the satisfactory results.
     Apply FCA methods to analysis a new system. At present, in the field of software engineering, the applications of formal concept analysis in systems analysis and design are often based on the legacy systems or legacy databases. This article gets the business entities by choosing the elements from the carrier of information - the policy, and then using FCA-based method of analysis and design to analyze the Hasse diagram. Take these steps as a new way to abstract business entities and design database model of a new system.
     In the process of modifying formal context, we propose a way to examine the semantics meaning via industry-stand issues. To most system analysts, the understanding of the business is necessary. But the entire analysis and design process is often based on experience, training or knowledge that they have had. Now based on the industry-standard, analysis and design process can less rely on professional knowledge, as far as possible to reduce the cost of training and communication.
     The results of concept lattice analysis can be counterproductive to the policies. Analysis of the concept of policy is actually a high level of abstraction. If an abstract on the results shows that the policy is too fragmented, it means maybe there are certain problems in the policy design. The interaction between them can make the design of policy become standardization
     The application of system analysis and design base on FCA in new system analysis and design is an innovative attempt. Its visualization of the system concepts and their relationships can help developers understand the whole system more consistently and more intuitively, upon that, a more objective manner to design and a better architecture can be obtained. The loosely coupled concept hierarchy allows the system to be more flexible and extendable, and system components reusability are fully improve. Our study shows that the system analysis and design base on FCA breaks the traditional boundaries of the design process for system analysis. It provides a new abstract model of the system concepts in an effective way. For model validation and realization it provides a powerful support. The use of such method can obtain a highly abstract, decoupling and objective system model. This formal analysis method and model make up a great understanding of the differences among businesses and reduce the human interference on the system. It raises the software quality control to the analysis and design level. Even though the specific application of the system analysis and design base on FCA has some limitations, its potential is deserve expecting. We believe that with the follow-up research and exploration, this method would have more widespread applications.
引文
[1]WHITTEN J L, BENTLEY L D.系统分析与设计方法[M].肖刚,孙慧,等译.北京:机械工业出版社, 2007.
    [2]甘特尔,威尔.形式概念分析[M].马垣,张学东,迟呈英,等译.北京:科学出版社, 2007.
    [3]PRISS U. Formal concept analysis in information science [J]. Annual Review of Information Science and Technology (ARIST) ,2006,40.
    [4]PRISS U. Lattice-based Information Retrieval [R/OL]. [2009-3-18]. http://www.upriss.org.uk/papers/ko00.pdf.
    [5]PRISS U. A Graphical Interface for Document Retrieval Based on Formal Concept Analysis [R/OL]. [2009-3-18]. http://www.upriss.org.uk/papers/maics97.pdf.
    [6]CARPINETO C, ROMANO G. A lattice conceptual clustering system and its application to browsing retrieval [J]. Machine Learning, 1996, 24(2).
    [7]DEOGUN J S, RAGHAVAN V, SEVER H. Association Mining and Formal Concept Analysis [R/OL]. [2009-3-28]. http://cuadra.cr.usgs.gov/pubs/drs98a.pdf.
    [8]MARTIN B, EKLUND P. Applying Formal Concept Analysis to Semantic File Systems Leveraging Wordnet [J/OL]. [2009-3-28]. http://citeseer.ist.psu.edu/761290.html.
    [9]HERNáNDEZ C, PRIETO F, LAGUNA M A, et al. Formal Concept Analysis support for Conceptual Abstraction in Database Reengineering [R/OL]. [2009-3-29] http://www.giro.infor.uva.es/oldsite/docpub/DBMR-complete-lncs.pdf.
    [10]TILLEY T, COLE R, BECKER P, et al. A Survey of Formal Concept Analysis Support for Software Engineering Activities [C]. Proceedings of the First Interna- tional Conference on Formal Concept Analysis - ICFCA’03. zpringer-Verlag, 2003, 2.
    [11]LAUKAITIS A, VASILECAS O, PLIKYNAS D. Formal concept analysis for business information system [J]. Information technology and control, 2008,37(1).
    [12]AR′EVALO G, MENS T. Analysing Object-Oriented Application Frameworks Using Concept Analysis [M]. Advances in Object Oriented InformationSystem: OOIS 2002 Workshops, Springer Verlag, 2002:53-63.
    [13]AR′EVALO G. High-Level Views in Object-Oriented Systems using Formal Concept Analysis [R/OL]. [2009-3-28]. http://www.lifia.info.unlp.edu.ar/papers/2005/Arevalo2005b.pdf.
    [14]TIP F, SWEENEY P F. Class Hierarchy Specialization [J]. Proceedings of the 12th Annual ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA’97), 1997, 10.
    [15]MOORE I. Automatic inheritance hierarchy restructuring and method refactoring [C]. The Proceeding of OOPSLA, 1996.
    [16]蒋平,任胜兵,林鹃.形式概念分析在软件工程中的应用[J].计算机技术与发展, 2008, 18(4): 127-129.
    [17]沈夏炯,白景华,刘宗田,等.形式概念分析与软件过程改进[J].计算机科学, 2003, 30(07): 103-105.
    [18]FUNK P, LEWIEN A, SNELTING G. Algorithms for concept lattice decomposi- tion and their applications [R]. Technical Report 95-09, TU Braunschweig, 1995, 12.
    [19]LEBLANC H, DONY C, HUCHARD M, et al. An environment for building and maintaining class hierarchies [C]. A. Moreira and S. Demeyer, editors, ECOOP’99: Workshop”Object-Oriented Architectural Evolution”, number 1743 in Lecture Notes in Computer Science, Heidelburg, Springer-Verlag, 1999.
    [20]DEKEL U. Applications of concept lattices to code inspection and review [C]. The Israeli Workshop on Programming Languages and Development Environments, chapter 6. IBM Haifa Research Lab, IBM HRL, Haifa University, Israel, July 2002.
    [21]LINDIG C, SNELTING G. Assessing modular structure of legacy code based on mathematical concept analysis [C]. Proceedings of the International Conference on Software Engineering (ICSE 97), 1997: 349–359.
    [22]GODIN R, MILI H, MINEAU G W, et al. Design of class hierarchies based on concept (Galois) lattices [J]. Theory and Application of Object Systems (TAPOS), 1998, 4(2):117–134.
    [23]HUCHARD M, LEBLANC H. From Java classes to Java interfaces through galois lattices [C]. Actes de ORDAL’99: 3rd International Conference on Orders, Algorithms and Applications, Montpellier, 1999: 211–216.
    [24]SIFF M, REPS T. Identifying modules via concept analysis [C]. Proceedings of the International Conference on Software Maintenance, IEEE Computer Society Press, 1997: 170–179.
    [25]DEURSEN A VAN, KUIPERS T. Identifying objects using cluster and concept analysis [C]. Proceedings of the 21st International Conference on Software Engineering, ICSE-99, ACM, 1999: 246–255.
    [26]KRONE MAREN, SNELTING GREGOR. On the inference of configuration structures from source code [C]. Proceedings of the International Conference on Software Engineering (ICSE 1994), 1994: 49–57.
    [27]SNELTING G, TIP F. Reengineering class hierarchies using concept analysis [C]. Proceedings of ACMSIGSOFT Symposium on the Foundations of Software Engineering, 1998, 11: 99–110.
    [28]SNELTING G, TIP F. Reengineering class hierarchies using concept analysis [R]. Technical Report RC 21164(94592)24APR97, IBM T.J. Watson Research Center, IBM T.J. Watson Research Center, P.O. Box 704, Yorktown Heights, NY 10598, USA, 1997.
    [29]SNELTING G. Reengineering of configurations based on mathematical concept analysis [J]. ACM Transactions on Software Engineering and Methodology, 1996, 4, 5(2):146–189.
    [30]SNELTING G. Software reengineering based on concept lattices [C]. Proceedings 4th European Conference on Software Maintenance and Reengineeering, pages 3–12. IEEE, 2000.
    [31]KUIPERS T, MOONEN L. Types and concept analysis for legacy systems [R]. Technical Report SEN-R0017, Centrum voor Wiskunde en Informatica, 2000, 7.
    [32]AR′EVALO G. Understanding behavioral dependencies in class hierarchies using concept analysis [C]. Proceedings of LMO 2003 (Langages et Mod′eles′a Object), Paris (France), Hermes, 2003, 2.
    [33]SNELTING G, TIP F. Understanding class hierarchies using concept analysis[J]. ACM Transactions on Programming Languages and Systems, 2000, 5: 540–582.
    [34]FISCHER B. Specification-based browsing of software component libraries [M]. In Automated Software Engineering, 1998: 74–83.
    [35]LINDIG C. Concept-based component retrieval [M]. Working Notes of the IJCAI-95 Workshop: Formal Approaches to the Reuse of Plans, Proofs, and Programs, 1995, 8: 21–25.
    [36]TILLEY T, HESSE W, DUKE R. A software modelling exercise using FCA [M]. Using Conceptual Structures: Contributions to ICCS 2003, Shaker Verlag, 2003: 213–226.
    [37]DUWEL S, HESSE W. Bridging the gap between use case analysis and class structure design by formal concept analysis [M]. Modelle und Modellierungssprachen in Informatik und Wirtschaftsinformatik. Proceedings”Modellierung 2000”, Koblenz, 2000: 27–40.
    [38]AMMONS G, MANDELIN D, BODIK R, et al. Debugging temporal specifica- tions with concept analysis [C]. Proceedings of the Conference on Programming Language Design and Implementation PLDI’03. ACM, 2003, 6.
    [39]BALL T. The concept of dynamic analysis [C]. Proceedings of ACM SIGSOFT Symposium on the Foundations of Software Engineering, 1999, 9: 216–234.
    [40]KUZNETSOV S, OB’’EDKOV S. Comparing performance of algorithms for generating concept lattices [J]. ICCS’01 Int’l. Workshop on Concept Lattices?based KDD, 2002.
    [41]NOURINE L, RAYNAUD O. A fast algorithm for building lattices [J]. Information Processing Letters, 1999, 17: 199–204.
    [42]GODIN R, MISSAOUI R, ALAOUI H. Incremental concept formation algorithms based on Galois (concept) lattices [J]. Computational Intelligence,1995, 11(2): 246-247.
    [43]谢志鹏,刘宗田.概念格的快速渐进式构造算法[J].计算机学报, 2002, 25(5): 490-496.
    [44]翟岩慧,曲开社,曹桃云.基于矩阵秩的概念格生成算法[J].电脑开发与应用, 2005, 19(5): 11-12.
    [45]李云,程伟,陈崚,等.基于消息传递的概念格并行构造[J].计算机应用与软件, 2006,23(8): 3-5.
    [46]WOLFF K E. A First Course in Formal Concept Analysis [R/OL]. [2009-3-29]. http://www.fbmn.fh-darmstadt.de/~wolff/Publikationen/A_First_Course_in_Formal_Concept_Analysis.pdf.
    [47]YEVTUSHENKO S A. On algorithms for construction line diagrams of concept lattices and the set of all concepts [EB/OL]. [2009-3-29]. http://conexp.sourceforge.net/AlgConSet.pdf.
    [48]全国保险业标准化技术委员会.保险术语[M].北京:中国财政经济出版社, 2007.
    [49]全国保险业标准化技术委员会.保险术语新增与修订部分[M].北京:中国财政经济出版社, 2008.
    [50]中华人民共和国保险法[M].北京:法律出版社, 2009.
    [51]许伟,刘倩.形式概念分析中的粗糙集方法[J].河北农业大学学报, 2005, 28(6): 104-108.
    [52]钱杰.基于形式概念分析的本体构建与映射方法研究[D].长沙:国防科技大学, 2006.
    [53]杨丽.基于对象间相互作用的形式概念分析[J].计算机工程与应用, 2006, 29: 33-35.

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

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

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