D E V I E W
P R O J E C T S
(-::-)(-::-)(-::-)(-::-)

The projects that are included in the Deview research area are:

(-::-)(-::-)(-::-)(-::-)

Metasystems for CASE Environments

Primary Investigators: J. Paul Tremblay and Paul Sorenson (Alberta).

The general plan for this project is to address the part of the problem of developing a CASE environment using a metasystem approach. This approach is similar in concept to the use of compiler writing systems in generating compilers -- a practice that is now standard in the compiler industry.

More specifically, we will extend the existing Environment Definition Model (EDM) and metasystem prototype to support the definition and development of interactive graphics interfaces for software development tools. In his thesis, McAllister defined an extended EDM that incorporates graphical presentation, manipulation and constraints on design objects, their interrelationships and aggregation . This model will be further refined and implemented as part of an existing metasystem prototype.

A component of the metasystem is EDL (Environment Definition Language) which is a language used to specify different environments. We have specified environments to support structured systems analysis (data flow diagrams), HOS (Higher Order Software), Structured Design, Design Net, and Ward and Mellor's real-time systems specification environments. As well as the modelling of object-oriented development techniques such as the OMT and Shlaer-Mellor approaches have been modelled.

A major effort will be made to formalize an approach for describing how transformations occur as software development moves from one phase (eg., requirements definition) to another (eg., system design). These ``between phase'' translations are not formalized at present and are supported weakly, if at all, in existing software development tool sets. Our approach is to study how these between-phase transitions can be formalized and then develop a method for specifying such transformations. We have designed a preliminary version of an Environment Transformation Language (ETL) which facilitates the specification of these transformations. A transformation (including oracle intervention) that specifies the transformation of data flow diagrams to structure charts has been formulated.

An important area that Metaview must support is Software Process Modelling. The goal of this research is to develop an execution model for support of process models. The execution model is based on an active database model of automatically triggered values. A special language ECODE to describe process models has been designed. This language will be implemented in future versions of Metaview.

We have continued the preliminary work of Schaefer in the area of interactive graphics user interfaces. More specifically, his manual approach to generating these interfaces has been partially automated. Further work needs to be done in this area.

Another aspect of metasystems being investigated is the incorporation of a facility to permit the definition of software metrics for various specification environments. These metrics are used for the assessment and estimation of the quality of the software and to predict, at early stages of development, difficulties later on in the software life cycle. In our approach , metrics applicable to a particular environment are defined using ETL in conjunction with a formal definition of that environment. These metrics are kept in the specification database for future use.

Finally, work is underway in the process modelling area. Process modelling involves the specification of a development process (lifecycle model) to be used in the generation of software for and application. ETL is currently being expanded with suitable dynamics language constructs such as ``events'' and ``triggers'' to facilitate process modelling. This effort includes the design of a proper execution model for ETL and associated active database issues.

(-::-)(-::-)(-::-)(-::-)

Knowledge-Based Information Systems

Primary Investigators: J. Paul Tremblay and Paul Sorenson (Alberta)

Automated Diagram Layout

A useful tool in imformation systems development is an automated tool for producing various types of diagrams such as data flow diagrams and structure charts. MONDRIAN is such a system for automatically generating data flow diagrams from a specification database. We have surveyed automated layout systems and proposed an architecture for an automated diagram layout generation system for various diagrammatic types. A central part of this system is a relational algebra for specifying constraints for icon placement, arc routing, and, more generally, diagram orientations and constraints. An initial version of a parser has been obtained for this system. Work on the design of an object-oriented iconic graphical language and a study and taxonomy of graphical constraints for various types of diagrams is continuing. The object code produced by the system is fed into the ICOLA (Incremental Constraint-based Object layout Algorithm) platform. This seminal work has resulted in a prototype layout systems called ADL. Work is continuing on the second version of ADL.

Specifying Design Knowledge in Metaview

The Metaview metasystem facilitates the generation of CASE tools for different environments. The metasystem can support the generation of interactive graphical tools for methodologies such as structured systems analysis, modelling real-time systems requirements, and structured design. What is not represented currently in these tools, however, is a way of specifying how the development process using these tools should proceed (i.e., the methodology of design). We have been investigating, as a part of the IRIS subproject on the design of large information systems, how ``methodology knowledge'' can be modelled and incorporated into the Metaview architecture. That is, we want to generate ``smart'' tools. One approach is examining how ``methodology knowledge'' can be incorporated into ECL (Environment Constraint Language), a language for specifying consistency and completeness constraints in a software development environment definition. This extension would allow for the capture of rules governing the order and nature of design steps. Another approach is to formulate a language, based on the modelling of the design process, for expressing methodology knowledge. Such a language should be expressive enough to specify a wide family of methodologies.

Constraint-Driven Object-Oriented Design

We have proposed a paradigm, not yet implemented, to create class descriptions for an object-oriented environment that captures the characteristics and behaviour of real world objects. This is accomplished through the definition and incorporation of design constraints on those real world objects. The main notions of this paradigm are two-fold.

First, constraints are used to drive the definition and development of classes used to populate the object-oriented environment in which the designer will later work. These constraints are transformed into class features which, during object instantiation, are implicitly satisfied by the object-oriented system. Second, constraints on objects are used to specify the attribute values during the actual design of an assembly structure, such as a residential building. Using constraint satisfaction implicit to the objects, the system can guide the designer through the many decisions to be made. Since the constraints are integrated with the class definitions of the objects, the designer need not worry about overlooking some crucial aspect of the design .

Generating Natural Language From Formal Specifications

An important aspect in the capture, analysis, elicitation and specification of customer requirements in the system development is the communication link between customers and requirement engineers. Requirement engineers produce and are familiar with formal specifications of requirements while customers find formal specifications difficult to comprehend. In an attempt to more easily verify the accuracy of formal specifications which represent customer requirements, systems to convert formal specifications to English have be produced. We have designed a system called GETS to convert formal specifications in TELOS to English. We are currently developing a system called REVIEW that converts a specification database in any Metaview environment to English.

Modelling Requirements Traceability

Requirements traceability, the ability to trace requirements through all phases of the project life cycle, has become a necessary attribute of the software development process. As software systems become more complex, it becomes increasingly difficult to manage requirements and ensure that they are satisfied in the final product. Requirements traceability offers some assistance with these tasks.

Computer Aided Software Engineering (CASE) tools are required for achieving traceability, especially in the case of large projects. One of the concerns with the CASE tools that are currently available is that they are not adaptable to new environments and methodologies. Metasystems can help to alleviate this concern.

Work is being done to model a set of systems that foster requirements traceability in the Metaview metasystem.

(-::-)(-::-)(-::-)(-::-)

Information Systems

Primary Investigators: J. Paul Tremblay and Paul Sorenson (Alberta).

Tools for Analysis and Design

The emphasis in the DEVIEW project is on the investigation, design, and implementation of prototype systems that assist the systems analyst and designer in developing an information system.

Current research on the automatic aids for information systems development include a metasystem for deriving new versions or extensions to a problem statement language and analyser, a set of system prototyping support tools, and database and Structured System Design support tools. The design of the Metaview metasystem is continuing and the implementation of a prototype in Prolog is now taking place. Version 1 of the database engine is complete. The Metaview system is being expanded to contain a version and concurrency control subsystem for handling long transactions. We are also developing a graphical interaction model for specification environments which can be used in the generation of graphically-orientated tools.

(-::-)(-::-)(-::-)(-::-)
*Deview Main Page
*People *Projects *Papers
*Theses *Related Sites *Feedback

Wood burl letters were taken from Octagamm's Ball Boutique.