T.C. Hartrum’s research while affiliated with Wright State University and other places

What is this page?


This page lists works of an author who doesn't have a ResearchGate profile or hasn't added the works to their profile yet. It is automatically generated from public (personal) data to further our legitimate goal of comprehensive and accurate scientific recordkeeping. If you are this author and want this page removed, please let us know.

Publications (36)


The automated transformation of statecharts from a formal specification to object-oriented software
  • Conference Paper

September 2005

·

10 Reads

·

1 Citation

Midwest Symposium on Circuits and Systems

B. Raghunathan

·

T.C. Hartrum

State transition models are frequently used in the specification and design of complex systems. The unified modeling language (UML) includes state transition models in the form of statecharts. State models have been around a long time and are used in many design paradigms from low-level hardware sequential circuit design to more complex finite state automata. The formalisms of state transition models are well known. However, formal techniques for transforming system-level state models into executable code, especially object-oriented code, are not as well developed, and as with most manual techniques are prone to errors. This paper describes an approach to automating this process.


Figure 3. Sequence Diagram
Figure 5. Pilot human subjects study with planning metaphors
Figure 8. Deployment Diagram
Figure 11. Agent Event Flow Diagram.
Figure 13. Result of Nonnweiler Integration.

+2

Agent-Based Mixed-Initiative Collaboration: The ABMIC project final report
  • Article
  • Full-text available

August 2002

·

58 Reads

The research looks at collaboration in general and planning in particular. Our project goal was to investigate agent-based frameworks for distributed collaborative planning using a goal-centered approach. One major thrust of the project was to examine intelligent agent and multiagent system architectures to model distributed planning (i.e., teamwork). In a second thrust we looked at mixed-initiative systems in which a symbiosis between human and machine planners is the main objective. To demonstrate the problems and solutions we have tackled, we have built a number of prototypes that solve basic collaborative problems in both a small air campaign scenario and in a small business logistics scenario. Many of these programs are available on the Web.

Download

Design Issues for Mixed-Initiative Agent Systems

June 2001

·

41 Reads

·

11 Citations

This paper addresses the effect of mixed-initiative systems on multiagent systems design. A mixed-initiative system is one in which humans interact directly with software agents in a collaborative approach to problem solving. There are two main levels at which multiagent systems are designed: the domain level and the individual agent level. At the domain level, there are few unique challenges to mixedinitiative system design. However, at the individual agent level, the agent itself must be designed to interact with the human and the agent system, integrating the two into a single system.


Representing Object Models as Theories

June 2001

·

43 Reads

·

1 Citation

Although techniques for using formal specifications have been progressing, methods for developing formal specifications themselves have improved little. To alleviate this problem, we propose a parallel refinement approach to specification acquisition wherethe designer uses an object-orientedspecification representation while an underlying specification composition system manipulates an equivalent theory-basedspecification. This paper presents the key to such a system --atheory-based object model. Our theory-based object model formally defines object-orientedconcepts in terms of algebraic theories and category theory operations. The theory-based object model provides the basis for the translation of the specification from a semi-formal, object-orientedrepresentation to a formal theory-based specification suitable for input to semi-automated software synthesis systems. 1


Software system integration methodology using formal specifications

February 2001

·

18 Reads

·

1 Citation

This work proposes a methodology that can be used to integrate formal models representing software components. The integration ensures that the correctness of each input model is maintained while adding the desired functionality to the integrated model. Further, because of the inherent knowledge captured in the formal models, automated tool support can be developed to assist the application engineer in this process. This allows needed middleware for connecting the components to be synthesized from the formal specifications developed


Figure 1: Parallel Reenement Speciication Acquisition Mechanism
Figure 7: Savings Account Statechart of the subclass. This implies that all operations deened in a superclasses are applicable in the subclass as well. This deenition ensures that the subclass D inherits, in the sense of Deenition 2, from each superclass in fC 1 .. C n g as shown in Theorem 2 below 11].
Figure 18: Automobile Aggregate Functional Decomposition
A theory-based representation for object-oriented domain models

June 2000

·

210 Reads

·

40 Citations

IEEE Transactions on Software Engineering

Formal software specification has long been touted as a way to increase the quality and reliability of software; however, it remains an intricate, manually intensive activity. An alternative to using formal specifications directly is to translate graphically based, semiformal specifications into formal specifications. However, before this translation can take place, a formal definition of basic object oriented concepts must be found. The paper presents an algebraic model of object orientation that defines how object oriented concepts can be represented algebraically using an object oriented algebraic specification language O-SLANG. O-SLANG combines basic algebraic specification constructs with category theory operations to capture internal object class structure, as well as relationships between classes


The AFIT Wide Spectrum Object Modeling Environment: an awesome beginning

February 2000

·

4 Reads

·

5 Citations

Over the past several years, the Air Force Institute of Technology (AFIT) has been developing a formal-based software synthesis system, the AFIT Wide Spectrum Object Modeling Environment (AWSOME), along with a specification language AWL (AFIT Wide-spectrum Language). Several tools have been developed, including a parser for the AWL syntax, an interactive object editor, a Java code generator, and a generator for database schemas and SQL queries. The paper describes the formal object-oriented meta-model, the AWL specification language, and transformations from specification to code, along with current and future tools and applications


Extending the notation of Rational Rose 98 for use with formal methods

February 2000

·

77 Reads

·

2 Citations

The Unified Modeling Language (UML) has been incorporated into the CASE tool, Rational Rose98, offering the user the capability of specifying systems using UML notation, Booch notation, or Rumbaugh notation. Through this research effort, Rose98 has been extended to allow formal notation to be entered in the class diagram text fields. Rose scripts were developed to transform the resulting extended Rose model into Z (zed) specifications in LATEX format. Z specifications are developed for the object model, dynamic model, and functional model based on information gathered from the class diagram and state transition diagram of the Rose model. These specifications can then be parsed into a tool supporting formal methods and Ada code can be automatically generated


A classification scheme for software modules

July 1998

·

4 Reads

·

5 Citations

Journal of Systems and Software

The current abstract view of the detailed architecture of a software program simply focuses on a set of modules that interact with each other. The pictorial view of the architecture of modules abstracts to a directed, connected, acyclic graph whose nodes are modules and whose arcs reveal the reference dependency relationship. No distinction exists among the modules. This paper provides a decided distinction. This paper introduces a new, formal, objective classification scheme of ten classes for modules. The process of fashioning the classification scheme applies the software principle of information hiding to three internal structural components of a module. These components are the variable, the data structure, and the subprogram. Two conceptual constructs enable information hiding. One is the encapsulation of a data structure (object). The other is the inaccessible section of a module which is the section that no external module can reference. Each module belongs to exactly one class. The assignment of a module to a class is objective, not subjective. The scheme opens up the opportunity for a deeper study into each class. The classes of the scheme are subjectively ranked into four categories, ranging from best to worst. The paper lists five benefits of this classification scheme, and relates these benefits to three application areas.


Extracting objects from legacy imperative code

December 1997

·

15 Reads

·

6 Citations

This paper presents a methodology for extracting objects from legacy imperative code. The parameter-based object identification (PBOI) methodology is based on the thesis that object attributes manifest themselves as data items passed from subprogram to subprogram in the imperative paradigm. A taxonomy of imperative subprograms is presented and the PBOI methodology is defined. Several examples are provided


Citations (20)


... Static workload can be obtained by parsing the original design and does not capture any dynamic behavior. There are several ways to estimate this number such as gate count in a partition, number of VHDL processes (in Verilog, number of always machines) [9], and some of them take activity rate into consideration and includes sensitivity of each component [10]. In this paper, number of variables and nets in a partition is used as static workload. ...

Reference:

Automatic partitioner for distributed parallel logic simulation
An improved cost function for static partitioning of parallel circuit simulations using a conservative synchronization protocol
  • Citing Article
  • July 1995

ACM SIGSIM Simulation Digest

... The growing interest in the domain and its historical background also encourage researchers to scrutinize the extant DSS research to understand how it is framed. Every decision support system is unique in its Conference Articles (Elam & Henderson, 1983), (Mori & Tsuji, 1983), (Shane et al., 1986), (Poore & Hartrum, 1988), (Kosaka et al., 1991), (Sugumaran, 1998), (Qiong et al., 2006), (Heilala et al., 2010), (Insel et al., 2018), (Brendel et al., 2017) Journal Articles (Bonczek et al., 1981), (Sprague & Watson, 1976), (Hill & Wallace, 1985), (Smith et al., 1985), (Merten, 1991), (Yates, 1993), (Recio et al., 2003), (Zhuang et al., 2009), (Angalakudati et al., 2014), (Dev et al., 2016) representation, and the research and practice community might benefit if the common elements from the presentation of these systems can be identified and synthesized. Acknowledging this, we present a four-level theoretical framework (i.e., decision environment, DS artifact, DS application, and context) for classifying DSS research by resorting to automated content analysis of available DSS publications and supplemented with classification of the emergent topics guided by the scenario classification framework. ...

A decision support system for distributed data allocation in support of C3 systems
  • Citing Conference Paper
  • January 1988

...  Specifying semantics by formal languages (e.g., using language Z [31] or Object-Z [52]),  Using category theorycaptures relationships between specification objects (e.g., [1] and [20]),  Using stream theoryas streams is an adequate setting for the formalization of the semantics of concurrent systems (e.g., [16]),  Using -calculus or process algebra (e.g., [126]), and  Using algebraic approaches (e.g., using mathematical notation [122]) ...

A theory-based representation for object-oriented domain models

IEEE Transactions on Software Engineering

... Examples of conservative mechanisms include Chandy, Misra and Byrant's NMP [5], and Peacock, Manning, and Wong [16] avoided deadlock through null messages. Some intelligent approaches to null message generation include generation on demand [17], and generation after a time-out [18]. Some earlier research on DES has focused on variants of NMP, with the objective of reducing the high null message overhead. ...

Distributed discrete-event simulation using null message algorithms on hypercube architectures
  • Citing Article
  • April 1990

Journal of Parallel and Distributed Computing

... To give another example: Component-Based Software Development (CBSD) was a popular approach in the nineties that attracted considerable attention from SE researchers. It can be explained by analogy as building a house from standardized, components that are pre-fabricated off-site [62]. The analogy helps in understanding that components are built 'off-site' (i.e. by other teams or companies); that they have some standardized interface to connect them together, and that they exhibit certain pre-defined qualities. ...

Putting the Engineering into Software Engineering.
  • Citing Conference Paper
  • January 1992

Thomas C. Hartrum

·

Paul D. Bailor

·

J. A. Stewart

·

[...]

·

... Somestudiestriedtoestablishformalapproachesthat enable designers to construct diagrams for object-oriented models of requirements and designs, and then automatically generate formal specifications for the diagrams [9]. Other projects have explored the addition of formal syntax and/or semantics to informal modeling techniques [14, 16, 17, 25, 32]. In [20], a prototypetool–Venus–isproposedtointegratethepopularobject-orientedmodelingnotationUMLandthepopularformal notationZ[19].[37]givesabriefoverviewoftheprocessthathasbeendevelopedtosupportasystematicdevelopmentofthe ...

Teaching Formal Extensions of Informal-Based Object-Oriented Analysis Methodologies.
  • Citing Conference Paper
  • January 1994

... The process flow modeling and simulation level supports the design and analysis of biomedical applications, involving precision diagnoses, dispensing, and agent detection. The base simulation language is VHDL [9,10]. ...

Improving Conservative VHDL Simulation Performance by Reduction of Feedback.
  • Citing Conference Paper
  • July 1996

ACM SIGSIM Simulation Digest

... In previous decades, a significant amount of research was devoted to the development of an optimal modular architecture for component-oriented programming [1] based on a set of criteria [2] including the quality assessment of modular software architecture [3], increasing the productivity of modular software by various methods, including clustering methods [4], genetic algorithms [5], and other evolutionary algorithms [6]. These studies were aimed at the a priori optimization of component-oriented software architecture in terms of the structural connectivity of the modules, and provided preliminary expert assessments of the functional completeness of the selected components. ...

A classification scheme for software modules
  • Citing Article
  • July 1998

Journal of Systems and Software

... An example for a statechart-based behaviour model of a simplified car door and passenger room light is depicted in Figure 1. Employing statecharts for model checking and code generation is common practice [2,3] and the efficient interpretation of statecharts has also been researched by J. Ebert from a theoretical point of view [4]. First practical usage of interpreters for similar formalisms emerged in the last years out of the business process field [5]. ...

The automated transformation of statecharts from a formal specification to object-oriented software
  • Citing Conference Paper
  • September 2005

Midwest Symposium on Circuits and Systems

... Furthermore, among the latter, only a limited number attempt at the same time to deal with TCS. To the best of our knowledge the approaches that are the closest to the direction of work that we have pursued are France et al.'s translation of Octopus models into Z specifications [8], Jia's pragmatic approach for combining the strengths of object-oriented and formal notations, specifically UML and Z [14], Noe and Hartrum's extension of Rational Rose for the inclusion of formal specifications [19] and Kim and Carrington's combination of UML and Object-Z [16]. The only tool developed commercially to support an object-oriented modeling approach that combines the advantages of graphical, semi-formal notations with those of formal notations is RoZeLink, produced by Headway Software Inc. [22] (RoZeLink provides a bridge between the UML notation supported by Rational Software Corporation's Rose environment [21] and the ZEST objectoriented formal specification language supported by Logica's Formaliser [7]). ...

Extending the notation of Rational Rose 98 for use with formal methods
  • Citing Conference Paper
  • February 2000