10,326 research outputs found

    Application Frameworks Technology in Theory and Practice

    Get PDF
    Application frameworks is a technology concerning with building and implementing reusable software artefacts. Most current application frameworks are object-oriented and often domain specific. Advocates of application frameworks claim that the technology is one of the most promising technologies supporting large-scale reuse, increasing the productivity and quality, and reducing the cost of software development. Many of them project that the next decade would be the major challenge for the development and deployment of the technology. The objective of this study is to investigate the theory and practice of application frameworks and to determine if it has made a difference in systems development. The study indicates that the technology is still immature and not yet to be another silver bullet but potential is imminent

    Attribute based component design: Supporting model driven development in CbSE

    Get PDF
    In analysing the evolution of Software Engineering, the scale of the components has increased, the requirements for different domains become complex and a variety of different component frameworks and their associated models have emerged. Many modern component frameworks provide enterprise level facilities and services, such as instance management, and component container support, that allow developers to apply if needed to manage scale and complexity. Although the services provided by these frameworks are common, they have different models and implementation. Accordingly, the main problem is, when developing a component based application using a component framework, the design of the components becomes tightly integrated with the framework implementation and the framework model is embedded in the component functionality, and hence reduces reusability. Another problem arose is, the designers must have in-depth knowledge of the implementation of a component framework to be able to model, design and implement the components and take advantages of the services provided. To address these problems, this research proposes the Attribute based Component Design (AbCD) approach which allows developers to model software using logical and abstract components at the specification level. The components encapsulate the provided functionality, as well as the required services, runtime requirements and interaction models using a set of attributes. These attributes are systemically derived by grouping common features and services from light weight component frameworks and heavy weight component frameworks that are available in the literature. The AbCD approach consists of the AbCD Meta-model, which is an extension of the บML meta-model, and the Component Design Guidelines (CDG) that includes core Component based Software Engineering principles to assist the modelling process for designers. To support the AbCD approach, an implementation has been developed as a set of plug-ins, called the AbCD tool suite, for Eclipse IDE. An evaluation of the AbCD approach is conducted by using the tool suite with two case studies. The first case study focuses on abstraction achieved by the AbCD approach and the second focuses on reusability of the components. The evaluation shows that the artefacts produced using the approach provide an alternative architectural view to the design and help to re-factor the design based on aspects. At the same time the evaluation process identified possible improvements in the AbCD meta-model and the tool suite constructed. This research provides a non-invasive approach for designing component based software using model driven development

    Unified Approach in the DSS Development Process

    Get PDF
    The structure of today's decision support environment become very complex due to new generation of Business Intelligence applications and technologies like Data Warehouse, OLAP (On Line Analytical Processing) and Data Mining. In this respect DSS development process are not simple and needs an adequate methodology or framework able to manage different tools and platforms to achieve manager's requirements. The DSS development process must be view like a unified and iterative set of activities and operations. The new techniques based on Unified Process (UP) methodology and UML (Unified Modeling Language) it seems to be appropriate for DSS development using prototyping and RAD (Rapid Application Development) techniques. In this paper we present a conceptual framework for development and integrate Decision Support Systems using Unified Process Methodology and UML.Decision Support Systems, Unified Process, UML, Prototyping, DSS Tools

    Interactive Visual Analysis of Networked Systems: Workflows for Two Industrial Domains

    Get PDF
    We report on a first study of interactive visual analysis of networked systems. Working with ABB Corporate Research and Ericsson Research, we have created workflows which demonstrate the potential of visualization in the domains of industrial automation and telecommunications. By a workflow in this context, we mean a sequence of visualizations and the actions for generating them. Visualizations can be any images that represent properties of the data sets analyzed, and actions typically either change the selection of data visualized or change the visualization by choice of technique or change of parameters

    Adaptive object management for distributed systems

    Get PDF
    This thesis describes an architecture supporting the management of pluggable software components and evaluates it against the requirement for an enterprise integration platform for the manufacturing and petrochemical industries. In a distributed environment, we need mechanisms to manage objects and their interactions. At the least, we must be able to create objects in different processes on different nodes; we must be able to link them together so that they can pass messages to each other across the network; and we must deliver their messages in a timely and reliable manner. Object based environments which support these services already exist, for example ANSAware(ANSA, 1989), DEC's Objectbroker(ACA,1992), Iona's Orbix(Orbix,1994)Yet such environments provide limited support for composing applications from pluggable components. Pluggability is the ability to install and configure a component into an environment dynamically when the component is used, without specifying static dependencies between components when they are produced. Pluggability is supported to a degree by dynamic binding. Components may be programmed to import references to other components and to explore their interfaces at runtime, without using static type dependencies. Yet thus overloads the component with the responsibility to explore bindings. What is still generally missing is an efficient general-purpose binding model for managing bindings between independently produced components. In addition, existing environments provide no clear strategy for dealing with fine grained objects. The overhead of runtime binding and remote messaging will severely reduce performance where there are a lot of objects with complex patterns of interaction. We need an adaptive approach to managing configurations of pluggable components according to the needs and constraints of the environment. Management is made difficult by embedding bindings in component implementations and by relying on strong typing as the only means of verifying and validating bindings. To solve these problems we have built a set of configuration tools on top of an existing distributed support environment. Specification tools facilitate the construction of independent pluggable components. Visual composition tools facilitate the configuration of components into applications and the verification of composite behaviours. A configuration model is constructed which maintains the environmental state. Adaptive management is made possible by changing the management policy according to this state. Such policy changes affect the location of objects, their bindings, and the choice of messaging system

    Accessibility and adaptability of learning objects: responding to metadata, learning patterns and profiles of needs and preferences

    Get PDF
    The case for learning patterns as a design method for accessible and adaptable learning objects is explored. Patterns and templates for the design of learning objects can be derived from successful existing learning resources. These patterns can then be reused in the design of new learning objects. We argue that by attending to criteria for reuse in the definition of these patterns and in the subsequent design of new learning objects, those new resources can be themselves reusable and also adaptable to different learning contexts. Finally, if the patterns identified can be implemented as templates for standard authoring tools, the design of effective, reusable and adaptable resources can be made available to those with limited skills in multimedia authoring and result in learning resources that are more widely accessible

    OpenMI - The universal glue for integrated modelling?

    Get PDF

    Pattern languages in HCI: A critical review

    Get PDF
    This article presents a critical review of patterns and pattern languages in human-computer interaction (HCI). In recent years, patterns and pattern languages have received considerable attention in HCI for their potential as a means for developing and communicating information and knowledge to support good design. This review examines the background to patterns and pattern languages in HCI, and seeks to locate pattern languages in relation to other approaches to interaction design. The review explores four key issues: What is a pattern? What is a pattern language? How are patterns and pattern languages used? and How are values reflected in the pattern-based approach to design? Following on from the review, a future research agenda is proposed for patterns and pattern languages in HCI
    • …
    corecore