| Ph.D. | Computing and Information Science, 1996 Queen's University, Canada. Thesis: Behavioral Views for Software Requirements Engineering. Supervision: Professors David A. Lamb, James R. Cordy, and Terry Shepard. |
| M.S.E. | Electrical Engineering
and Computer Science,
1978 Princeton University, USA. Emphasis on Software Engineering, Database Management Systems, and Theory of Automata. |
| B.Sc. | Mathematics, 1971 University of Tabriz, Iran. Emphasis on Mathematical Logic, Mathematical Analysis, and Theory of Numbers. |
For the first time in University of Tabriz, in 1999, founded and established the Department of Computer Science and, as the department head, carried out all the responsibilities associated with this position, until 2004.
Responsibilities, as the department head, included attracting and hiring faculty members, admitting students, offering courses, and trying to set and maintain an excellent standard on research and teaching programs.
Other responsibilities include teaching graduate and undergraduate
courses in computer science and applied mathematics,
supervising graduate students, and leading research projects.
Queen's University, Canada (September 1996 - January 1997)
Post-Doctoral Fellow
Research involved software behavioral requirements engineering.
Queen's University, Canada (September 1992 - August 1996)
Teaching and Research Assistant (TA & RA)
Assisted in teaching (grading and occasional lecturing) two undergraduate
courses: Information Structures and Formal Methods.
Research involved software behavioral requirements engineering.
University of Tabriz, Iran (April 1990 - August 1992)
Member of Faculty
In addition to some research activities,
taught undergraduate computer science courses, including
Introduction to Computing Science, Data Structures, Algorithms,
and Automata Theory.
AT&T Bell Laboratories, USA (November 1981 - April 1990)
Member of Technical Staff (MTS)
Designed and developed a data communication protocol verification software system, simulating the ITU (formerly CCITT) Telematic Services Protocol for facsimile data communications. This system was used to check the communication network compatibility of the Telematic Services Terminals.
Involved in definition, design, and development of a Manufacturing Process Control System (MPCS) for various AT&T circuit pack manufacturing shops. Specific responsibilities included:
Designed and proposed a standard procedure for PBXs in ISDN environment. Each PBX was to implement this procedure in its communication with the network and other PBXs to provide user-transparent features in a network of different PBXs.
Studied neural computing technology, its capabilities and limitations compared to traditional computing technology; designed and proposed an application of neural networks in manufacturing automation.
Other accomplishments, in Bell Labs, included direct involvement in the design and development of the following software systems which have been marketed by the company:
Sun Information Services, USA (October 1980 - October 1981)
Systems Analyst
Initiated, designed, and proposed a business graphics software system and,
as the project manager, led the development efforts covering all phases of
system life-cycle. The system was designed to produce output on the Calcomp
pen plotters, Versatec laser jet plotters, and Tektronix high-resolution
graphics terminals. A simple English-like command language was also provided
for the user interface. This system was developed within the proposed time
frame and marketed by the company.
Central Bank of Iran, Iran (July 1978 - October 1980)
Systems Analyst
Manuchehri High School, Iran (September 1973 - May 1976)
Mathematics Teacher
Iranian Army, Iran (April 1971 - April 1973)
Military Service
Served as an Officer in command of over 100 military personnel.
My major contributions so far have been the introduction of an approach to software behavioral requirements specifications using behavioral views and a formal notation called Viewcharts that supports the approach.
Large-scale software systems, distributed or otherwise, are generally complex to describe, construct, manage, understand, and maintain. Current research approaches to reducing this complexity separate software structural and behavioral descriptions. It is important to study and analyze the behavioral as well as structural aspects of software systems. Much research continues on software structures and their patterns, characterizations, and classifications. Currently, research on the behavioral aspect of software systems includes using formal notations for specifying software behaviors and possibly refining the specifications to design and implementation. Large formal specifications, however, can be difficult to create and to understand; more research is needed into methods for assisting software requirements engineers in reducing these difficulties.
This dissertation introduces the idea of a software "behavioral view": intuitively, this is a complete description of the behavior of the system observable from a specific point of view. We believe that a fully-developed methodology based on views would significantly reduce the complexity of creating and understanding software requirements. In this dissertation we take the first steps towards such a methodology. We define a formal notation, Viewcharts, with a well-defined semantics based on Statecharts. Viewcharts gives a means for precisely describing views and their compositions. We show that Viewcharts reasonably capture the informal idea of a view by giving two examples: a manufacturing control system, and a plain old telephone system. We show that Viewcharts have some advantages over Statecharts; in particular, Viewcharts adds name space control to limit the scope of broadcast communication, solving a problem with Statecharts presented by Harel.
Publications
For a list of publications click here .
| Back to Homepage |
