282,161 research outputs found

    A Methodology for Structured Object-Oriented Elicitation and Analysis of Temporal Constraints in Hardware/Software Co-Analysis and Co-Design of Real-Time Systems

    Get PDF
    The hardware/software co-design of a high-quality real-time system relies heavily on the modeling of both the hardware and software components from three aspects: structures, functionalities, and constraints, especially the temporal constraints. However, there is not a systematic process for the elicitation and analysis of temporal constraints in hardware/software co-design. Furthermore, existing object-oriented methods provide no means for the explicit specification of system/component constraints in object models. This paper presents a systematic methodology for structured object-oriented analysis and specification of temporal constraints in hardware/software co-analysis and co-design using an extended High-Order Object-Oriented Modeling Technique (HOOMT). This methodology hierarchically elicits and analyzes the temporal constraints in hardware/software co-design based on the integration of the High-Order Object Model (HOOM) and Hierarchical Timed Automata (HTA). It helps to identify temporal constraints of hardware and software components as well as their interactions level by level. In addition, it helps trace the relationships among these constraints at multiple levels during the co-design of real-time systems. A case study from the hardware/software co-design of the simulated FACTS Power Transmission System is used to illustrate the feasibility and merits of this methodology

    Composing concurrent objects

    Get PDF
    Adopting the object-oriented paradigm for the development of large and complex software systems offers several advantages, of which increased extensibility and reusability are the most prominent ones. The object-oriented model is also quite suitable for modelling concurrent systems. However, it appears that extensibility and reusability of concurrent applications is far from trivial. In addition, very little attention has been paid by the conventional object-oriented development methodologies to the analysis and design of\ud synchronisation constraints for concurrent objects.\ud To address these problems, in this thesis the framework of composition-filters, an extension to the object-oriented model, is adopted. An analysis is presented of the problems involved in reusing and extending concurrent objects, in particular the so-called inheritance anomalies. Based on this analysis, a set of criteria for effective extensible concurrent objectoriented\ud programming languages is formulated.\ud The thesis introduces techniques for the creation of concurrency and the synchronisation of concurrent activities, fully integrated within the (object-oriented) composition-filters model. Important properties of the proposed object model are: all objects are -potentially- active, intra-object concurrency is supported and synchronisation specifications are fully separated\ud from method implementations. The applicability and expressive power of the proposed technique are demonstrated, and it is shown how reusability and extensibility of concurrent objects are achieved

    Integrating Schedulability Analysis with UML-RT

    Get PDF
    The use of object oriented techniques and methodologies for the design of real-time control systems appear to be necessary in order to deal with the increasing complexity of such systems. Recently many object-oriented methods have been used for the modeling and design of real-time control systems. We believe that an approach that integrates the advancements in both object modeling and design methods, and real-time scheduling theory is the key to successful use of object oriented technology for real-time software. However, past approaches to integrate the two either restrict the object models, or do not allow sophisticated schedulability analysis techniques. In this paper we show how schedulability analysis can be integrated with object-oriented design; we develop the schedulability and feasibility analysis method for the external messages that may suffer release jitter due to being dispatched by a tick driven scheduler in real-time control system, and we also develop the scheduliability method for sporadic activities, where message arrive sporadically then execute periodically for some bounded time. This method can be used to cope with timing constraints in complex real-time control systems

    UML Extensions for Real-Time Control Systems

    Get PDF
    The use of object oriented techniques and methodologies for the design of real-time control systems appears to be necessary in order to deal with the increasing complexity of such systems. Recently many object-oriented methods have been used for the modeling and design of real-time control systems. We believe that an approach that integrates the advancements in both object modeling and design methods, and real-time scheduling theory is the key to successful use of object oriented technology for real-time software. Surprisingly several past approaches to integrate the two either restrict the object models, or do not allow sophisticated schedulability analysis techniques. In this paper we show how schedulability analysis can be integrated with object-oriented design. More specifically, we develop the schedulability and feasibility analysis method for the external messages that may suffer release jitter due to being dispatched by a tick driven scheduler in real-time control system, and we also develop the scheduliability method for sporadic activities, where message arrive sporadically then execute periodically for some bounded time. This method can be used to cope with timing constraints in realistic and complex real-time control systems. Using this method, a designer can quickly evaluate the impact of various implementation decisions on schedulability. In conjunction with automatic code-generation, we believe that this will greatly streamline the design and development of real-time control system software

    Derived classes as a basis for views in UML/OCL data models

    Get PDF
    UML is the de facto standard language for analysis and design in object-oriented frameworks. Information systems, and in particular information systems based on databases and their applications, rely heavily on sound principles of analysis and design. Many present-day database applications employ object-oriented principles in the phases of analysis and design due to the advantages of expressiveness and clarity of such languages as UML. Database specifications often involve specifications of constraints, and the Object Constraint Language (OCL) - as part of UML - can aid in the unambiguous modelling of database constraints. One of the central notions in database modelling and in constraint specifications is the notion of a database view. A database view closely corresponds to the notion of derived class in UML. This paper will show how the notion of a derived class in UML can be given a precise semantics in terms of OCL. We will then demonstrate that the notion of a relational database view can be correctly expressed as a derived class in UML/OCL. A central part of our investigation concerns the generality of our manner of representing relational views in OCL. An important problem that we address in this respect is the representation of product spaces and relational joins. Joins are often essential in view definitions, and we shall demonstrate how we can express Cartesian products and joins within the current framework of UML/OCL language by employing the notions of derived class. As a consequence, OCL will be shown to be equipped with the full expressive power of the relational algebra, offering support for the claim that OCL can be useful as a general query language within the framework of the UML/OCL data model.

    Object-Oriented Multi-Disciplinary Design, Analysis, and Optimization Tool

    Get PDF
    An Object-Oriented Optimization (O3) tool was developed that leverages existing tools and practices, and allows the easy integration and adoption of new state-of-the-art software. At the heart of the O3 tool is the Central Executive Module (CEM), which can integrate disparate software packages in a cross platform network environment so as to quickly perform optimization and design tasks in a cohesive, streamlined manner. This object-oriented framework can integrate the analysis codes for multiple disciplines instead of relying on one code to perform the analysis for all disciplines. The CEM was written in FORTRAN and the script commands for each performance index were submitted through the use of the FORTRAN Call System command. In this CEM, the user chooses an optimization methodology, defines objective and constraint functions from performance indices, and provides starting and side constraints for continuous as well as discrete design variables. The structural analysis modules such as computations of the structural weight, stress, deflection, buckling, and flutter and divergence speeds have been developed and incorporated into the O3 tool to build an object-oriented Multidisciplinary Design, Analysis, and Optimization (MDAO) tool

    Object-Oriented Analysis: A Decision-Driven Approach

    Get PDF
    Recently, many object-oriented analysis and design approaches (OOADs) have been proposed. This research boom may be attributed to the success of applying object-oriented programming (OOP) in embedded systems and systems software. However, object-oriented analysis (OOA) does not seem as successful as object-oriented design (OOD) or OOP [3]. Whereas the extant OOADs claim to perform systems analysis, this goal is seldom fulfilled [3]. Systems analysis consists of two kinds of activities: requirement analysis (problem analysis) and requirement specification (product description) [1]. During therequirement analysis, analysts aim to understand the problem and identify all possible constraints on the problem\u27s solution through observations, interviews, and discussions with experts in the problem domain. The requirement analysis activity analyzes the requirement space of a problem domain. Here, the requirement space is defined as the range of all possible user needs and constraints in a problem domain. Requirement specification, on the other hand, is intended to resolve conflicting views, to eliminate inconsistencies and ambiguities, and to document some particular requirement which describes the expected behavior of the future system. As Hoydalsvik et al [3] indicate, the extant OOADs are target-system oriented. A target-system oriented OOA aims to construct an object -oriented system and represents the requirement in a way more consistent with the design issues than with the users\u27 perception of the problem domain. In other words, it concentrates on a solution and not on understanding the problem. Finding objects and classes is the prevalent trend in the pure OOA. However, as Rubin et al [5] note, there are several problems in searching for objects: 1) The availability of a written requirement specification is usually assumed. Assuming a narrative specification is accessible, an OOAD searches for nouns as objects and for verbs as methods. This approach ignores that a written specification is barely available; even if it is available, ambiguities of text, synonyms, and homonyms are not unusual, 2) there is a strong bias toward the tangible aspects of a problem, and 3) it tends to incorporate all tangible objects of the analysis results. In order to address these shortcomings, an OOA approach should include a systematic procedure to understand the problem and the organization before finding the objects. Decision making is a major activity of an organization [6]. This article proposes a decision-driven OOA approach, which consists of a set of well-organized guidelines and procedures, focuses on the understanding of organizations through the analysis of decision making, and helps derive requirement specification in the form of object models. In particular, this article aims to address the following issues: ‱What decision making model is more appropriate for understanding the organization? ‱What aspects of decision making should be captured for understanding the organization? ‱What steps should an OOA approach have? ‱What mechanisms can help verify and validate the process of OOA?We will briefly review several OOADs in the next section. The proposed approach will be discussed in the following sectio

    Integrating end-to-end threads of control into object-oriented analysis and design

    Get PDF
    Current object-oriented analysis and design methodologies fall short in their use of mechanisms for identifying threads of control for the system being developed. The scenarios which typically describe a system are more global than looking at the individual objects and representing their behavior. Unlike conventional methodologies that use data flow and process-dependency diagrams, object-oriented methodologies do not provide a model for representing these global threads end-to-end. Tracing through threads of control is key to ensuring that a system is complete and timing constraints are addressed. The existence of multiple threads of control in a system necessitates a partitioning of the system into processes. This paper describes the application and representation of end-to-end threads of control to the object-oriented analysis and design process using object-oriented constructs. The issue of representation is viewed as a grouping problem, that is, how to group classes/objects at a higher level of abstraction so that the system may be viewed as a whole with both classes/objects and their associated dynamic behavior. Existing object-oriented development methodology techniques are extended by adding design-level constructs termed logical composite classes and process composite classes. Logical composite classes are design-level classes which group classes/objects both logically and by thread of control information. Process composite classes further refine the logical composite class groupings by using process partitioning criteria to produce optimum concurrent execution results. The goal of these design-level constructs is to ultimately provide the basis for a mechanism that can support the creation of process composite classes in an automated way. Using an automated mechanism makes it easier to partition a system into concurrently executing elements that can be run in parallel on multiple processors

    UML Class Diagram or Entity Relationship Diagram : An Object Relational Impedance Mismatch

    Get PDF
    It is now nearly 30 years since Peter Chen’s watershed paper “The Entity-Relationship Model –towards a Unified View of Data”. [1] The entity relationship model and variations and extensions to ithave been taught in colleges and universities for many years. In his original paper Peter Chen looked at converting his new ER model to the then existing data structure diagrams for the Network model. In recent years there has been a tendency to use a Unified Modelling Language (UML) class diagram forconceptual modeling for relational databases, and several popular course text books use UMLnotation to some degree [2] [3]. However Object and Relational technology are based on different paradigms. In the paper we argue that the UML class diagram is more of a logical model (implementation specific). ER Diagrams on theother hand, are at a conceptual level of database design dealing with the main items and their relationships and not with implementation specific detail. UML focuses on OOAD (Object Oriented Analysis and Design) and is navigational and program dependent whereas the relational model is set based and exhibits data independence. The ER model provides a well-established set of mapping rules for mapping to a relational model. In this paper we look specifically at the areas which can cause problems for the novice databasedesigner due to this conceptual mismatch of two different paradigms. Firstly, transferring the mapping of a weak entity from an Entity Relationship model to UML and secondly the representation of structural constraints between objects. We look at the mixture of notations which students mistakenly use when modeling. This is often the result of different notations being used on different courses throughout their degree. Several of the popular text books at the moment use either a variation of ER,UML, or both for teaching database modeling. At the moment if a student picks up a text book they could be faced with either; one of the many ER variations, UML, UML and a variation of ER both covered separately, or UML and ER merged together. We regard this problem as a conceptual impedance mismatch. This problem is documented in [21] who have produced a catalogue of impedance mismatch problems between object-relational and relational paradigms. We regard the problems of using UML class diagrams for relational database design as a conceptual impedance mismatch as the Entity Relationship model does not have the structures in the model to deal with Object Oriented concepts Keywords: EERD, UML Class Diagram, Relational Database Design, Structural Constraints, relational and object database impedance mismatch. The ER model was originally put forward by Chen [1] and subsequently extensions have been added to add further semantics to the original model; mainly the concepts of specialisation, generalisation and aggregation. In this paper we refer to an Entity-Relationship model (ER) as the basic model and an extended or enhanced entity-relationship model (EER) as a model which includes the extra concepts. The ER and EER models are also often used to aid communication between the designer and the user at the requirements analysis stage. In this paper when we use the term “conceptual model” we mean a model that is not implementation specific.ISBN: 978-84-616-3847-5 3594Peer reviewe

    An Approach to Teaching Object-Oriented Analysis and Design

    Get PDF
    This paper presents a syllabus that attempts to address the problem of teaching systems analysis and design in the changing world of today. In the first part of the paper, major issues and constraints that affect the development of a syllabus for this discipline are identified and analyzed. The second part of the paper focuses on the key points of a methodology constructed from traditional and object-oriented techniques, designed to satisfy the academic demands of the subject and reflect current practice, while providing students with a coherent and organized approach to systems analysis and design. Analysis of the outcomes and experience of implementing the syllabus provide the basis for conclusions and identification of possible areas for future research
    • 

    corecore