Architectural level design and synthesis requires a versatile library support system. Such a syst... more Architectural level design and synthesis requires a versatile library support system. Such a system must have provisions for organ- izing abstract models in a hierarchical manner as well as retrieval and storage of components in an object-oriented manner. Common rela- tions between models can then be captured and different library models substituted and re- used within the environment. An example of the capabilities of the library system for DASE is also provided.
Software Engineering is the application of methodical principles to the planning, design, develop... more Software Engineering is the application of methodical principles to the planning, design, development, testing, implementation, and maintenance of software-based systems. Each phase of the Software Design Life Cycle (SDLC) addresses a different set of problems, commencing from an abstract need with the eventual goal of producing a stable working solution. To accomplish this, many different tools and techniques may be employed, from project management planning estimators to automated code testers. However, a specific tool-simulation—has found its way into almost every phase of the SDLC. As a general-purpose technique, it can be invaluable for assessing complex multifaceted solution spaces early on during the planning and design phases in a cost-effective and timely manner without the need for physically deploying possible design alternatives. A major and often overlooked element in the design of a new complex solution is the impact on the business and information technology processes...
In the design of computer-based systems, simulation tools employed during various stages of the d... more In the design of computer-based systems, simulation tools employed during various stages of the design cycle can provide significant insight into the behavior of the proposed design. Unfortunately the knowledge gained through the course of a simulation exercise is typically lost and inaccessible to other designs. One promising solution to this is the utilization of development environments that can support libraries of models at high levels of abstraction --- more suitable for reuse. One such environment is the Design Analysis and Synthesis Environment (DASE) based on the Design Specification Language, or DSL. DASE allows designers to model, experiment with, and reuse model components in other designs. Whereas component reuse has beenstudied extensively and widely supported in environments such as DASE, reuse of a different form --- structural reuse --- is still relatively poorly understood. The Extended Style Notation (ESN) establishes a basis for describing the abstract structure ...
Part I: Empirical Studies: O-O Metrics: Principles and Practice. Experiences Conducting Studies o... more Part I: Empirical Studies: O-O Metrics: Principles and Practice. Experiences Conducting Studies of the Work Practices of Software Engineers. Towards Assessing the Usefulness of the TKSee Software Exploration Tool: A Case Study. Comparison of Clones Occurrence in Java and Modula-3 Software Systems.- Part II: Architectural Recovery: The SPOOL Approach to Pattern-Based Recovery of Design Components. Evaluation of Approaches to Clustering for Program Comprehension and Remodularization. Automatic Architectural Clustering of Software. Discovering Implicit Inheritance Relations in Non Object-Oriented Code.- Part III: Maintainability: Design Properties and Evolvability of Object-Oriented Systems. Using Textual Redundancy to Study Source Code Maintainability. Building Parallel Applications Using Design Patterns.- Part IV: Tool Support: The SPOOL Design Repository: Architecture, Schema, and Mechanisms. The Software Bookshelf. Dynamic Documents Over the Web. Support for Geographically Disperse...
In this paper, we propose an automatic digital microstructure image analysis system to qualify an... more In this paper, we propose an automatic digital microstructure image analysis system to qualify and quantify the graphite in the form of nodular shape in ductile cast iron material based on ASTM E2567-11 standard specifications. The ASTM E2567-11 standard is for determining the nodularity and nodule count in ductile iron using image analysis method. The proposed system can distinguish between the two forms of graphite grains from microstructure images of ductile cast iron, namely, 'nodular' and 'non-nodular', based on the nodularity shape factor value. The proposed method implements the standard test procedure, proposed by ASTM E2567-11 standard. The proposed system is tested on various microstructure images of ductile cast iron. The images are obtained from the light optical microscope. The results are consistent over a wide range of images (in terms of resolution, noise and composition) in comparison with manual method. The results are compared with expert methods and they are found to be very close, reliable and reproducible in nature. The paper also demonstrates the inconsistencies and unreliability of manual method.
... Dr. Holt worked on a number of compilers such as Cornell's PL/C (PL/I) compiler,... more ... Dr. Holt worked on a number of compilers such as Cornell's PL/C (PL/I) compiler, the SUE compiler, the SP/k compiler, and the Euclid and Concurrent Euclid ... Scott Kerr is a research associate and Master's student at the Department of Computer Science, University of Toronto. ...
[1993] Proceedings The Fourth International Workshop on Rapid System Prototyping, 1993
Architectural level design and synthesis requires a versatile library support system. Such a syst... more Architectural level design and synthesis requires a versatile library support system. Such a system must have provisions for organizing abstract models in a hierarchical manner as well as retrieval and storage of components in an object-oriented manner. Common relations between models can then be captured and different library models substituted and reused within the environment. An example of the capabilities of the library system for DASE is also provided.
[1992 Proceedings] The Third International Workshop on Rapid System Prototyping, 1992
Current state-of-the-art in design automation presents a slew of design aids for low level logic ... more Current state-of-the-art in design automation presents a slew of design aids for low level logic construction, layout planning and chip design. Synthesis, in its various forms, have been a major contribution in the design automation area. Synthesis is an operation whereby a given specification of system behaviour with its associated set of constraints and goals are used to find a suitable structure that implements the behaviour while satisfying the constraints and goals. This paper will present a framework for system level synthesis and propose a suitable laguage for capturing design specifications and generating control graphs amiable to 2ynthesis. Digital system design can be described at different levels of abstraction and synthesis can occur at any one of these design levels. Bell and Newel1 [BEL] first classified the various levels of computer design and a complete representation of the design hierarchy based upon their classification is presented in table 1. Traditional synthesis and design literature defines various forms of synthesis possible between levels [McF]. Although the terminology used may fluctuate in the literature, these levels are typically defined as (in increasing order of abstraction!: i) Logic level, ii) Register transfer level, iii) High level and iv) System level synthesis. It is useful to provide an overview of the different issues at each level.
[1993] Proceedings of the IEEE Workshop on Real-Time Applications, 1993
The Design, Analysis and Synthesis Environment (DASE) has been developed to aid the designer in e... more The Design, Analysis and Synthesis Environment (DASE) has been developed to aid the designer in exploring the design space of telecommunication systems at the architectural level of design abstraction. DASE utilizes an internal representation called DSL (Design Specification Language) to capture the design intent and simulate, reconfigure and experiment with models using a DSL simulator. These features are supported through
Design automation (DA) has steadily contributed to improvements witnessed in the system design pr... more Design automation (DA) has steadily contributed to improvements witnessed in the system design process. Initial applications were to address low level design concerns such as transistor layout; however the focus of tools has slowly progressed up the design abstraction scale. The current state-of-the-art provides solutions for synthesis issues at the register-transfer (high level) and lower levels. While DA has helped
Proceedings [1990]. AI, Simulation and Planning in High Autonomy Systems, 1990
The concept of a simulation environment combines the various different aspects of the simulation ... more The concept of a simulation environment combines the various different aspects of the simulation process into one complete powerful tool. The environment is intended to provide all the necessary state-of-the-art advances and concepts that a modeller may require during the simulation development and execution process. Hence the "environment" requirements must be suited towards the end user needs, free of obligations to learn a new language. The requirements must specify the useful features, independent of different platforms and implementation languages.
In multiprocessor systems, processing nodes contain a processor, some cache and a share of the sy... more In multiprocessor systems, processing nodes contain a processor, some cache and a share of the system memory, and are connected through a scalable interconnect. The system memory partitions may be shared (shared-memory systems) or disjoint (messagepassing systems). Within each class of systems many architectural variations are possible. Fair comparisons among systems are difficult because of the lack of a common hardware platform to implement the different architectures. RPM (Rapid Prototyping engine for Multiprocessors) is a hardware emulator for the rapid prototyping of various multiprocessor architectures. In RPM, the hardware of the target machine is emulated by reprogrammable controllers implemented with Field-Programmable Gate Arrays (FPGAs). The processors, memories and interconnect are off-theshelf and their relative speeds can be modified to emulate various component technologies. Every emulation is an actual incarnation of the target machine and therefore software written for the target machine can be easily ported on it with little modification and without instrumentation of the code. In this paper, we describe the architecture of RPM, its performance and the prototyping methodology. We also compare our approach with simulation and breadboard prototyping.
In the design of computer-based systems, simulation tools employed during various stages of the d... more In the design of computer-based systems, simulation tools employed during various stages of the design cycle can provide significant insight into the behavior of the proposed design. Unfortunately the knowledge gained through the course of a simulation exercise is typically lost and inaccessible to other designs. One promising solution to this is the utilization of development environments that can support libraries of models at high levels of abstraction-more suitable for reuse. One such environment is the Design Analysis and Synthesis Environment (DASE) based on the Design Specification Language, or DSL. DASE allows designers to model, experiment with, and reuse model components in other designs. Whereas component reuse has been studied extensively and widely supported in environments such as DASE, reuse of a different form-structural reuse-is still relatively poorly understood. The Extended Style Notation (ESN) establishes a basis for describing the abstract structure of systems at a high level-thus facilitating structural reuse. This paper presents a framework-a marriage of ESN and DSL-to create a rapid prototyping and simulation environment supporting both structural and component reuse.
... Bell Canada, Quality Engineering & Research 2265 Roland Therrien Blvd., Longueuil, QC, J4... more ... Bell Canada, Quality Engineering & Research 2265 Roland Therrien Blvd., Longueuil, QC, J4N 1C5 ... This section illustrates structural reuse through a small example: design of Banyan and Knockout fabrics for Asynchronous Transfer Mode (ATM) switches [7]. The switch fabric ...
As designs have become more complex, the need for tools to support reuse in the early stages of t... more As designs have become more complex, the need for tools to support reuse in the early stages of the design process has become increasingly important. Such tools have the potential to facilitate the simulation and evaluation of designs far before actual implementation. To support these applications, simulation environments must be able to support the reuse of models in many ways. This paper complements work regarding structural reuse and presents some insight in designing models that are amiable for component based simulation.
Architectural level design and synthesis requires a versatile library support system. Such a syst... more Architectural level design and synthesis requires a versatile library support system. Such a system must have provisions for organ- izing abstract models in a hierarchical manner as well as retrieval and storage of components in an object-oriented manner. Common rela- tions between models can then be captured and different library models substituted and re- used within the environment. An example of the capabilities of the library system for DASE is also provided.
Software Engineering is the application of methodical principles to the planning, design, develop... more Software Engineering is the application of methodical principles to the planning, design, development, testing, implementation, and maintenance of software-based systems. Each phase of the Software Design Life Cycle (SDLC) addresses a different set of problems, commencing from an abstract need with the eventual goal of producing a stable working solution. To accomplish this, many different tools and techniques may be employed, from project management planning estimators to automated code testers. However, a specific tool-simulation—has found its way into almost every phase of the SDLC. As a general-purpose technique, it can be invaluable for assessing complex multifaceted solution spaces early on during the planning and design phases in a cost-effective and timely manner without the need for physically deploying possible design alternatives. A major and often overlooked element in the design of a new complex solution is the impact on the business and information technology processes...
In the design of computer-based systems, simulation tools employed during various stages of the d... more In the design of computer-based systems, simulation tools employed during various stages of the design cycle can provide significant insight into the behavior of the proposed design. Unfortunately the knowledge gained through the course of a simulation exercise is typically lost and inaccessible to other designs. One promising solution to this is the utilization of development environments that can support libraries of models at high levels of abstraction --- more suitable for reuse. One such environment is the Design Analysis and Synthesis Environment (DASE) based on the Design Specification Language, or DSL. DASE allows designers to model, experiment with, and reuse model components in other designs. Whereas component reuse has beenstudied extensively and widely supported in environments such as DASE, reuse of a different form --- structural reuse --- is still relatively poorly understood. The Extended Style Notation (ESN) establishes a basis for describing the abstract structure ...
Part I: Empirical Studies: O-O Metrics: Principles and Practice. Experiences Conducting Studies o... more Part I: Empirical Studies: O-O Metrics: Principles and Practice. Experiences Conducting Studies of the Work Practices of Software Engineers. Towards Assessing the Usefulness of the TKSee Software Exploration Tool: A Case Study. Comparison of Clones Occurrence in Java and Modula-3 Software Systems.- Part II: Architectural Recovery: The SPOOL Approach to Pattern-Based Recovery of Design Components. Evaluation of Approaches to Clustering for Program Comprehension and Remodularization. Automatic Architectural Clustering of Software. Discovering Implicit Inheritance Relations in Non Object-Oriented Code.- Part III: Maintainability: Design Properties and Evolvability of Object-Oriented Systems. Using Textual Redundancy to Study Source Code Maintainability. Building Parallel Applications Using Design Patterns.- Part IV: Tool Support: The SPOOL Design Repository: Architecture, Schema, and Mechanisms. The Software Bookshelf. Dynamic Documents Over the Web. Support for Geographically Disperse...
In this paper, we propose an automatic digital microstructure image analysis system to qualify an... more In this paper, we propose an automatic digital microstructure image analysis system to qualify and quantify the graphite in the form of nodular shape in ductile cast iron material based on ASTM E2567-11 standard specifications. The ASTM E2567-11 standard is for determining the nodularity and nodule count in ductile iron using image analysis method. The proposed system can distinguish between the two forms of graphite grains from microstructure images of ductile cast iron, namely, 'nodular' and 'non-nodular', based on the nodularity shape factor value. The proposed method implements the standard test procedure, proposed by ASTM E2567-11 standard. The proposed system is tested on various microstructure images of ductile cast iron. The images are obtained from the light optical microscope. The results are consistent over a wide range of images (in terms of resolution, noise and composition) in comparison with manual method. The results are compared with expert methods and they are found to be very close, reliable and reproducible in nature. The paper also demonstrates the inconsistencies and unreliability of manual method.
... Dr. Holt worked on a number of compilers such as Cornell's PL/C (PL/I) compiler,... more ... Dr. Holt worked on a number of compilers such as Cornell's PL/C (PL/I) compiler, the SUE compiler, the SP/k compiler, and the Euclid and Concurrent Euclid ... Scott Kerr is a research associate and Master's student at the Department of Computer Science, University of Toronto. ...
[1993] Proceedings The Fourth International Workshop on Rapid System Prototyping, 1993
Architectural level design and synthesis requires a versatile library support system. Such a syst... more Architectural level design and synthesis requires a versatile library support system. Such a system must have provisions for organizing abstract models in a hierarchical manner as well as retrieval and storage of components in an object-oriented manner. Common relations between models can then be captured and different library models substituted and reused within the environment. An example of the capabilities of the library system for DASE is also provided.
[1992 Proceedings] The Third International Workshop on Rapid System Prototyping, 1992
Current state-of-the-art in design automation presents a slew of design aids for low level logic ... more Current state-of-the-art in design automation presents a slew of design aids for low level logic construction, layout planning and chip design. Synthesis, in its various forms, have been a major contribution in the design automation area. Synthesis is an operation whereby a given specification of system behaviour with its associated set of constraints and goals are used to find a suitable structure that implements the behaviour while satisfying the constraints and goals. This paper will present a framework for system level synthesis and propose a suitable laguage for capturing design specifications and generating control graphs amiable to 2ynthesis. Digital system design can be described at different levels of abstraction and synthesis can occur at any one of these design levels. Bell and Newel1 [BEL] first classified the various levels of computer design and a complete representation of the design hierarchy based upon their classification is presented in table 1. Traditional synthesis and design literature defines various forms of synthesis possible between levels [McF]. Although the terminology used may fluctuate in the literature, these levels are typically defined as (in increasing order of abstraction!: i) Logic level, ii) Register transfer level, iii) High level and iv) System level synthesis. It is useful to provide an overview of the different issues at each level.
[1993] Proceedings of the IEEE Workshop on Real-Time Applications, 1993
The Design, Analysis and Synthesis Environment (DASE) has been developed to aid the designer in e... more The Design, Analysis and Synthesis Environment (DASE) has been developed to aid the designer in exploring the design space of telecommunication systems at the architectural level of design abstraction. DASE utilizes an internal representation called DSL (Design Specification Language) to capture the design intent and simulate, reconfigure and experiment with models using a DSL simulator. These features are supported through
Design automation (DA) has steadily contributed to improvements witnessed in the system design pr... more Design automation (DA) has steadily contributed to improvements witnessed in the system design process. Initial applications were to address low level design concerns such as transistor layout; however the focus of tools has slowly progressed up the design abstraction scale. The current state-of-the-art provides solutions for synthesis issues at the register-transfer (high level) and lower levels. While DA has helped
Proceedings [1990]. AI, Simulation and Planning in High Autonomy Systems, 1990
The concept of a simulation environment combines the various different aspects of the simulation ... more The concept of a simulation environment combines the various different aspects of the simulation process into one complete powerful tool. The environment is intended to provide all the necessary state-of-the-art advances and concepts that a modeller may require during the simulation development and execution process. Hence the "environment" requirements must be suited towards the end user needs, free of obligations to learn a new language. The requirements must specify the useful features, independent of different platforms and implementation languages.
In multiprocessor systems, processing nodes contain a processor, some cache and a share of the sy... more In multiprocessor systems, processing nodes contain a processor, some cache and a share of the system memory, and are connected through a scalable interconnect. The system memory partitions may be shared (shared-memory systems) or disjoint (messagepassing systems). Within each class of systems many architectural variations are possible. Fair comparisons among systems are difficult because of the lack of a common hardware platform to implement the different architectures. RPM (Rapid Prototyping engine for Multiprocessors) is a hardware emulator for the rapid prototyping of various multiprocessor architectures. In RPM, the hardware of the target machine is emulated by reprogrammable controllers implemented with Field-Programmable Gate Arrays (FPGAs). The processors, memories and interconnect are off-theshelf and their relative speeds can be modified to emulate various component technologies. Every emulation is an actual incarnation of the target machine and therefore software written for the target machine can be easily ported on it with little modification and without instrumentation of the code. In this paper, we describe the architecture of RPM, its performance and the prototyping methodology. We also compare our approach with simulation and breadboard prototyping.
In the design of computer-based systems, simulation tools employed during various stages of the d... more In the design of computer-based systems, simulation tools employed during various stages of the design cycle can provide significant insight into the behavior of the proposed design. Unfortunately the knowledge gained through the course of a simulation exercise is typically lost and inaccessible to other designs. One promising solution to this is the utilization of development environments that can support libraries of models at high levels of abstraction-more suitable for reuse. One such environment is the Design Analysis and Synthesis Environment (DASE) based on the Design Specification Language, or DSL. DASE allows designers to model, experiment with, and reuse model components in other designs. Whereas component reuse has been studied extensively and widely supported in environments such as DASE, reuse of a different form-structural reuse-is still relatively poorly understood. The Extended Style Notation (ESN) establishes a basis for describing the abstract structure of systems at a high level-thus facilitating structural reuse. This paper presents a framework-a marriage of ESN and DSL-to create a rapid prototyping and simulation environment supporting both structural and component reuse.
... Bell Canada, Quality Engineering & Research 2265 Roland Therrien Blvd., Longueuil, QC, J4... more ... Bell Canada, Quality Engineering & Research 2265 Roland Therrien Blvd., Longueuil, QC, J4N 1C5 ... This section illustrates structural reuse through a small example: design of Banyan and Knockout fabrics for Asynchronous Transfer Mode (ATM) switches [7]. The switch fabric ...
As designs have become more complex, the need for tools to support reuse in the early stages of t... more As designs have become more complex, the need for tools to support reuse in the early stages of the design process has become increasingly important. Such tools have the potential to facilitate the simulation and evaluation of designs far before actual implementation. To support these applications, simulation environments must be able to support the reuse of models in many ways. This paper complements work regarding structural reuse and presents some insight in designing models that are amiable for component based simulation.
Uploads
Papers by Oryal Tanir