Knowledge-Based Support for Object-Oriented Software Design and Synthesis: a category theoretic approach

Yujun Zheng; Jinyun Xue; Qimin Hu
June 2007
Journal of Digital Information Management;Jun2007, Vol. 5 Issue 3, p115
Academic Journal
To reuse previous knowledge of object-oriented design and adapt them to solve new problems, the collaboration relationships and the responsibility distribution among software objects need to be thoroughly understood and precisely formulated. The paper proposes a knowledge-based approach that employs category theoretic models to formalize and mechanize object-oriented software design and synthesis by focusing concern on reasoning about the interdependency relationships at different levels of abstraction and granularity. The major benefit of our approach is twofold: First, it provides an explicit semantics for formal object-oriented specifications, and therefore enables a high-level of reusability and dynamic adaptability. Second, it utilizes the ability of categorical computations to support automated software composition and refinement. A prototype tool that demonstrates the feasibility and effectiveness of our approach is also presented.


Related Articles

  • State Based Static and Dynamic Formal Analysis of UML State Diagrams. Alhumaidan, Fahad // Journal of Software Engineering & Applications;Jul2012, Vol. 5 Issue 7, p483 

    Design and specification is a serious issue in software engineering because of the semantics involved in transforming the real world problems to computer software systems. Unified Modeling Language (UML) has been accepted as a de facto standard for design and specification of object oriented...

  • Transformation of Semantic Analysis to Com+ Business Requirements Using MDA Approach. Yamin, Mohammad; Tsaramirsis, George; Nistazakis, Manos; Naibai Zhang // Journal of Service Science & Management;Mar2010, Vol. 3 Issue 1, p67 

    Model Driven Architecture (MDA) is one of many competing techniques that have the potential to contribute towards the development of better software systems. However the business support at Computation-Independent Model (CIM) level does not necessarily allow the development teams to utilize its...

  • Managing Knowledge in Global Software Development Efforts: Issues and Practices. Desouza, Kevin C.; Awazu, Yukika; Baloh, Peter // IEEE Software;Sep/Oct2006, Vol. 23 Issue 5, p30 

    The article offers information about the knowledge-intensive nature of global software development efforts which has posed challenges for organizations. In software development, knowledge management should be applied in all stages including the encapsulation of the design requirements, the...

  • Three Algorithms and a Methodology for Amending Contracts for Choreographies. Bocchi, Laura; Lange, Julien; Tuosto, Emilio // Scientific Annals of Computer Science;2012, Vol. 22 Issue 1, p61 

    Distributed interactions are crucial design aspects to consider in modern applications. They can be suitably designed in terms of choreographies, that are global descriptions of the coordination of several distributed parties. Global assertions define contracts for choreographies by annotating...

  • Innocent Strategies as Presheaves and Interactive Equivalences for CCS. Hirschowitz, Tom; Pous, Damien // Scientific Annals of Computer Science;2012, Vol. 22 Issue 1, p147 

    Seeking a general framework for reasoning about and comparing programming languages, we derive a new view of Milner's CCS [34]. We construct a category E of plays, and a subcategory V of views. We argue that presheaves on V adequately represent innocent strategies, in the sense of game semantics...

  • Overview of Thirty Semantic Formalisms for Reo. Jongmans, Sung-Shik T. Q.; Arbab, Farhad // Scientific Annals of Computer Science;2012, Vol. 22 Issue 1, p201 

    Over the past decades, coordination languages have emerged for the specification and implementation of interaction protocols for communicating software components. This class of languages includes Reo, a platform for compositional construction of connectors. In recent years, many formalisms for...

  • Foundations of the Computational Technology Intended for the Investigation of Software Systems and Based on the Principles of Logic-Semantic Analysis. Chernyshov, M. Yu.; Abasov, N. V. // Bulletin of PNU;2012, Vol. 25 Issue 2, p27 

    The problem bound up with the absence of technologies of rapid development of software products, which could provide for high reliability, is discussed. The need for the development of technologies to study programs and program systems to reuse them or their blocks is considered. Problems, which...

  • Hottest Features of Monad. Otey, Michael // Windows IT Pro;Feb2005, Vol. 11 Issue 2, p67 

    Enumerates the features of Microsoft Corp.'s new scripting language called Monad. Capacity of Monad to replace the non-intuitive command naming scheme; Steps in defining the scope of the variable; Advantages of Monad.

  • Formal Validation for Software Modeling. Baojun Tian; Yanlin Gu // International Journal of Computer Science Issues (IJCSI);Mar2013, Vol. 10 Issue 2, p308 

    Currently,modeling for software is mostly semiformal, such as UML(Unified Modeling Language).The main problem is difficult to analyze semantics and verify correctness for a vital system. CPN(Colored Petri Net)as modeling and verification method provides formal semantics and a number of analysis...

  • The Semantic Service Search Engine (S3E). Loutas, Nikolaos; Peristeras, Vassilios; Zeginis, Dimitris; Tarabanis, Konstantinos // Journal of Intelligent Information Systems;Jun2012, Vol. 38 Issue 3, p645 

    Currently, the Web is an important part of people's personal, professional and social life and thousands of services are becoming available online to support these. Since 2005, many efforts have been made to semantically describe Web services and several models have been proposed towards this...


Read the Article


Sorry, but this item is not currently available from your library.

Try another library?
Sign out of this library

Other Topics