94 research outputs found

    Attribute Grammar Applications in Prototyping LOTOS Tools

    Get PDF
    What is the practical applicability of attribute grammars? As we show in this paper, attribute grammars are at least good enough for the prototyping of fully functional interactive tools. Going from a definition of a language and the functionality of its tools to an attribute grammar is a discipline in need of a systematic approach, for which we give some initial material. As is inevitable when a system is extensively used (in our case the Cornell Synthesizer Generator), this paper also proposes extensions to the attribute grammar formalism and its supporting systems. 1 Introduction This paper represents, in some way, a view from the trenches. How we prototyped tools contributing to a specification environment for LOTOS is the main topic here. Attribute grammars were chosen because they promised to be a good prototyping approach to language based software development, and the close relation between attribute grammars and the description of tool functions helps ensure the correctness of..

    The Design and evaluation of the specification framework for user interface design

    Get PDF
    This thesis presentsthe design and evaluation of an interface specification meta-language(ISML) that has been developed to explicitly support metaphor abstractions in a model-based, user interface design framework. The application of metaphor to user interface design is widely accepted within the HCI community, yet despite this, there exists relatively little formal support for user interface design practitioners. With the increasing range and power of user interface technologies made widely available comes the opportunity for the designof sophisticated, new forms of interactive environments. The inter-disciplinary nature of HCI offers many approaches to user interface design that include views on tasks, presentationand dialogue architectures and various domain models. Notations and tools that support these views vary equally, ranging from craft-based approachesthrough to computational or tool- based support and formal methods. Work in these areas depicts gradual cohesion of a number of these design views, but do not currently explicitly specify the application of metaphorical concepts in graphical user interface design. Towards addressing this omission, ISML was developed based on (and extending) some existing model- based user interface design concepts. Abstractions of metaphor and other interface design views are captured in the ISML framework using the extensible mark-up language(XML). A six-month case study, developing the `Urban Shout Cast' application is used to evaluate ISML. Two groups of four software engineers developed a networked, multi-user, virtual radio-broadcasting environment. A qualitative analysis examines both how each group developed metaphor designs within the ISML framework and also their perceptions of its utility and practicality. Subsequent analysis on the specification data from both groups reveals aspects of the project's design that ISML captured and those that were missed. Finally, the extent to which ISML can currently abstract the metaphors used in the case study is assessed through the development of a unified `meta-object' model. The results of the case study show that ISML is capable of expressing many of the features of each group's metaphor design, as well as highlighting important design considerations during development. Furthermore, it has been shown, in principle, how an underlying metaphor abstraction can be mapped to two different implementations. Evaluation of the case study also includes important design lessons: ISML metaphor models can be both very large and difficult to separate from other design views, some of which are either weakly expressed or unsupported. This suggests that the appropriate mappings between design abstractions cannot always be easily anticipated, and that understanding the use of model-based specifications in user interface design projects remains a challenge to the HCI community

    Developing and integrating tools in Eclipse/PCTE

    Get PDF
    The whole area of software engineering environments is an emerging one. Such environments have become necessary due to the rapid changes which have occurred in the software industry in the last twenty years. The desire is to produce products of high quality and at a reasonable cost. Unfortunately history shows that, in general, software systems rarely met the specific need for which they were developed and were often unreliable, inefficient , poorly documented and required considerable maintenance. One of the main areas of research into increasing both the productivity and the quality of software has been the use of software engineering environments. The area of software engineering environments is a changing one with evolving definitions. What can be stated is that a key objective of software engineering environments is the support of software process from requirements definition through to system maintenance. Such support can only be provided through the development of integrated sets of tools each supporting various aspects of the software development process. In order for tools to be fully integrated and have the same ’look and feel’ it is necessary that they are developed on a common platform, providing all the facilities needed for tool development and integration. Such a platform is the Eclipse tool builder’s kit based on the Portable Common Tool Environment (PCTE). The work in this thesis was based on an evaluation of this development platform for developing and integrating software tools, particularly real-time telecommunications software tools. The work in this thesis was carried out as part of the European Community’s RACE programme. The project was called SPECS 1. The SPECS project is outlined in chapter one of this thesis along with a brief history of the research into software engineering environments to date. The work which I was responsible for involved both the integration of existing toolsets and tools, developed by other partners in the SPECS project, as well as the development of new "native" tools within Eclipse/PCTE. This work was necessary so that the SPECS project could produce an integrated set of tools at the end of its research. It was my job to evaluate the potential of Eclipse/PCTE as a basis for this integration

    The proceedings of the first international symposium on Visual Formal Methods VFM'99, Eindhoven, August 23rd, 1989

    Get PDF

    Early aspects: aspect-oriented requirements engineering and architecture design

    Get PDF
    This paper reports on the third Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design Workshop, which has been held in Lancaster, UK, on March 21, 2004. The workshop included a presentation session and working sessions in which the particular topics on early aspects were discussed. The primary goal of the workshop was to focus on challenges to defining methodical software development processes for aspects from early on in the software life cycle and explore the potential of proposed methods and techniques to scale up to industrial applications

    The design and evaluation of the specification framework for user interface design

    Get PDF
    This thesis presentsthe design and evaluation of an interface specification meta-language(ISML) that has been developed to explicitly support metaphor abstractions in a model-based, user interface design framework. The application of metaphor to user interface design is widely accepted within the HCI community, yet despite this, there exists relatively little formal support for user interface design practitioners. With the increasing range and power of user interface technologies made widely available comes the opportunity for the designof sophisticated, new forms of interactive environments. The inter-disciplinary nature of HCI offers many approaches to user interface design that include views on tasks, presentationand dialogue architectures and various domain models. Notations and tools that support these views vary equally, ranging from craft-based approachesthrough to computational or tool- based support and formal methods. Work in these areas depicts gradual cohesion of a number of these design views, but do not currently explicitly specify the application of metaphorical concepts in graphical user interface design. Towards addressing this omission, ISML was developed based on (and extending) some existing model- based user interface design concepts. Abstractions of metaphor and other interface design views are captured in the ISML framework using the extensible mark-up language(XML). A six-month case study, developing the `Urban Shout Cast' application is used to evaluate ISML. Two groups of four software engineers developed a networked, multi-user, virtual radio-broadcasting environment. A qualitative analysis examines both how each group developed metaphor designs within the ISML framework and also their perceptions of its utility and practicality. Subsequent analysis on the specification data from both groups reveals aspects of the project's design that ISML captured and those that were missed. Finally, the extent to which ISML can currently abstract the metaphors used in the case study is assessed through the development of a unified `meta-object' model. The results of the case study show that ISML is capable of expressing many of the features of each group's metaphor design, as well as highlighting important design considerations during development. Furthermore, it has been shown, in principle, how an underlying metaphor abstraction can be mapped to two different implementations. Evaluation of the case study also includes important design lessons: ISML metaphor models can be both very large and difficult to separate from other design views, some of which are either weakly expressed or unsupported. This suggests that the appropriate mappings between design abstractions cannot always be easily anticipated, and that understanding the use of model-based specifications in user interface design projects remains a challenge to the HCI community.EThOS - Electronic Theses Online ServiceGBUnited Kingdo

    Object-Oriented Modeling and Design Using DELTA, an Incremental Design Language.

    Get PDF
    Object-oriented technology has opened the doors for many new ideas in system development. The object-oriented paradigm has produced many new object-oriented programming languages. As with any new methodology, a need for formalism arises to remove ambiguities and inconsistencies and to bring a sense of continuity to software design. Formal languages provide a sound basis for software development throughout the software life cycle. This work presents a set of characteristic features for object-oriented design languages and defines a formal object-oriented design language, DELTA. The rapidly changing face of software has led to an ever increasing need to update out-of-date methods and user interfaces. Software developers want to be able to use the same type of visual interfaces available in application software. The introduction of windowing environments has led to a market for methodologies which incorporate graphical features to supplement textual components of software. The present genre of formal languages must evolve in the same direction to be considered as effective in the design process. DELTA meets this need by providing a modern development environment with graphical features to complement the text that is necessary in any design specification. Researchers and prominent software engineers have provided a litany of object-oriented methodologies. The commonality of these methods is the step-by-step approach to software development. Software engineers agree in theory that the best approach to designing software which will stand the test of time is one which has a sound established discipline. Such a discipline produces a design in incrementations. DELTA supports this theory by providing established levels of incremental design representation. The advent of computer-aided design has led to the evolution of rapid-prototyping. Changes in system requirements, detection of errors, competition in the market, and the ongoing maintenance of software systems can be addressed by the development of system prototypes. DELTA responds to this challenge by establishing a design specification representation which can be easily mapped to an object-oriented programming language. This transition from design to prototype can be enhanced by formal annotations to the chosen implementation language. Annotations have been developed for DELTA software designs prototyped in the object-oriented language Actor

    An Integrated Methodology for Creating Composed Web/Grid Services

    Get PDF
    This thesis presents an approach to design, specify, validate, verify, implement, and evaluate composed web/grid services. Web and grid services can be composed to create new services with complex behaviours. The BPEL (Business Process Execution Language) standard was created to enable the orchestration of web services, but there have also been investigation of its use for grid services. BPEL specifies the implementation of service composition but has no formal semantics; implementations are in practice checked by testing. Formal methods are used in general to define an abstract model of system behaviour that allows simulation and reasoning about properties. The approach can detect and reduce potentially costly errors at design time. CRESS (Communication Representation Employing Systematic Specification) is a domainindependent, graphical, abstract notation, and integrated toolset for developing composite web service. The original version of CRESS had automated support for formal specification in LOTOS (Language Of Temporal Ordering Specification), executing formal validation with MUSTARD (Multiple-Use Scenario Testing and Refusal Description), and implementing in BPEL4WS as the early version of BPEL standard. This thesis work has extended CRESS and its integrated tools to design, specify, validate, verify, implement, and evaluate composed web/grid services. The work has extended the CRESS notation to support a wider range of service compositions, and has applied it to grid services as a new domain. The thesis presents two new tools, CLOVE (CRESS Language-Oriented Verification Environment) and MINT (MUSTARD Interpreter), to respectively support formal verification and implementation testing. New work has also extended CRESS to automate implementation of composed services using the more recent BPEL standard WS-BPEL 2.0

    PSF : a process specification formalism

    Get PDF
    corecore