June, 1999
Biographical Sketch
Frank L. Friedman
Professor
Department of Computer and Information Sciences
College of Arts and Sciences
Education
- Purdue University, West Lafayette, IN (1970-74), M.S. Computer Science
(1972),
Ph.D. Computer Science (1974)
- Johns Hopkins University, Baltimore, MD (1967-69), M.S. Numerical Sciences
(1969)
- Antioch College, Yellow Springs, OH (1960-65), B.A. Mathematics (1965)
Professional Experience
- (1974-present) Temple University, Philadelphia, PA 19122
Department of Computer and Information Sciences, Full Professor
(1990-present),
Chairman (1985-88, 1992-present)
- (1989-1990) Software Engineering Institute, Carnegie Mellon, Pittsburgh, PA
15213,
Visiting Computer Scientist
- (1984-1988) Computer Sciences Corp., Moorestown, NJ 08057,
Senior Computer Scientist, Defense Systems Division
- (1967-70) Goucher College, Towson, MD, 21204,
Director, Computer Center, Lecturer, Mathematics
- (1960-67) USN Ship Research & Development Cntr, Annapolis, MD
Student Trainee, Statistics and Computer Center (1960-65),
Computer Programmer/Analyst, Computer Center (1966-67)
Professional Summary
Frank Friedman is Professor and Chairman of the Department of Computer and
Information Sciences at Temple University, where he has taught for the
past 25
years. He has written numerous papers on computer science education and has
co-authored (with Elliot B. Koffman and Robin Koffman) eight books on
structured programming in
FORTRAN, BASIC, C, and, most recently, C++. Dr. Friedman was a Visiting
Scientist at Computer Sciences Corporation, Defense Systems Division (1984-85)
and at the Carnegie-Mellon University Software Engineering Institute (1989-90).
Dr. Friedman's current research interests are in software design paradigms
(especially object-oriented paradigms), and the study of the evolution of
software design approaches and notations. Earlier interests included software
portability and adaptability, the use of abstraction in software construction,
programming languages and software metrics.
Dr. Friedman served for four years on the ACM governing board (ACM Council) and
chaired the ACM Conferences Board (1986-92). From 1992-96 he has chaired the
Steering Committee for ACM Computing Week, the Association's annual conference
event. He chaired the 1984 ACM Computer Science Conference, the 1987 National
Education Computing Conference, and the 1987 ACM Conference on the History of
Scientific and Numeric Computation. He served on the Program Committees for
the 1989 ACM/CRA Strategic Directions Conference and the 1990 ACM Critical
Issues Conference. He also was a member of the Committee on the ACM 50th
Anniversary Celebration and the original planning committee for ACM 97.
Since coming to Temple in 1974, Dr. Friedman has taught graduate and
undergraduate courses in Software Design and Engineering and in Compiler
Design, the three course undergraduate programming/algorithms sequence, a
course involving the study of the evolution and comparison of Programming
Langauges, and a graduate course in Operating Systems. He has taught Ada,
BASIC, C and C++, FORTRAN, and Pascal.
Dr. Friedman's current research focus in the area of object-oriented design and
programming paradigms has been on the integration of object-oriented
techniques
into the graduate and undergraduate curricula at Temple. He and Elliot
and Robin Koffman
recently completed books entitled Structured Programming, Abstraction, and
Program Design using C++ (Second Edition, December,
1996; Vector Edition, August, 1998). In 1992, Dr. Friedman
and Professor Rajiv Tewari were awarded two NSF grants for design and
development work leading toward the introduction of software engineering
concepts and the object-oriented paradigm in the CS1 and CS2 curricula. This
work is now complete, and the new curricula is being implemented.
Publications
- (with Rajiv Tewari) Object-Oriented Engineering in the Undergraduate Computer
Science Curriculum", Proceedings of the ACM OOPSLA '92 Educator's
Symposium, October 18-22, 1992.
- (with Rajiv Tewari) "Incorporating Object-Oriented Concepts in the
Undergraduate Computer Science Curriculum", Proceedings of the Sixth SEI
Conference on Software Engineering Education, October 5-7, 1992.
- "A Separate Undergraduate Software Engineering Degree Considered Harmful,"
Proceedings of the 1989 SEI Conference on Software Engineering
Education, N. Gibbs, editor, Springer-Verlag, New York, July, 1989.
- (with Paul A. T. Wolfgang) "Choosing Appropriate Ada Tasking Models for
Real-Time Embedded Computer Systems", Defense Electronics, Spring,
1987.
- "The Teaching and Practice of Software Design Concepts Early in the CIS
Curriculum", Computers and Education, Spring, 1987, Vol. 2, pp.
291-303.
- "Issues Affecting Software Productivity Due to the Introduction of Ada",
Technical Report No. SP-IRD 4, Computer Sciences Corporation,
Moorestown, New Jersey, June, 1985.
- (with Paul A. T. Wolfgang) "Modeling a Real-Time Embedded Computer System using
Ada", Proceedings of the Workshop on Reusable Components of Applications
Software, Naval Research Lab, Washington, D.C., April, 1985.
- (with Elliot B. Koffman) Problem Solving Abstraction and Design Using
C++ , Addison-Wesley Corporation, March, 1994.
- (with A. Giacomucci) "Capsules: A Data Type Abstraction Facility for Pascal",
Proceedings of the 1981 ACM National Conference, Los Angeles, CA,
November, 1981, pp. 154-160.
- "FORTRAN 77: Impact on Teaching Problem Solving and Structured Programming",
Proceedings of the 1980 National Education Computer Conference, Norfolk,
VA, May, 1980, pp. 103-111.
- (with Elliot B. Koffman) "Teaching Problem Solving and Structured Programming
in FORTRAN", International Journal on Computers in Education (2,3),
Pergamon Press, April, 1978, pp. 235 - 45.
- (with Elliot B. Koffman) "A Computer-Aided Flow-Diagram Teaching System",
Proceedings of the ACM SIGCSE Technical Symposium on Computer Science
Education, Anaheim, CA, February, 1976, pp. 350-354.
- "Decompilation and the Transfer of Assembly-Coded Mini-Computer Systems
Programs", Proceedings of the MRI Symposium on Software Engineering,
Vol. XXIV, New York, NY, April, 1976, pp. 301-330.
- "An Adaptable Programming System for the Transport of Assembly-Coded Systems
Software", Proceedings of the European Computer Conference, London,
England, September, 1976, pp. 515-532.
- "An Experience in Teaching Disciplined Programming at an Elementary Level",
ACM SIGCSE Bulletin (7, 3), September, 1975, pp. 38-43.
- "A Programming Language for Mini-Computer Systems", Machine Oriented
Languages Bulletin, No. 3, Mark Rain, Editor, Norwegian Inst. of Tech.,
University of Trondheim, Norway, October, 1973.
- "A Systems Oriented Target Language for Decompiling", ACM SIGPLAN
Notices (8, 9), September, 1973, pp. 32-44.
- (with Victor B. Schneider) "A Systems Implementation Language for Small
Computers, Proceedings of the SIGPLAN-SIGOPS Interface Workshop,
Savannah, Georgia, April, 1973, pp. 60-63.
- (with Elliot B. Koffman) Six different textbooks (one in its fifth edition) and
two translations (Russian and Spanish) on introductory Problem Solving and
Structured Programming in FORTRAN and BASIC (1977-1991). Also (with Elliot B.
Koffman and Jeri Hanly), an introductory level programming text using C (1993)
and (with Elliot B. Koffman) an introduction to abstraction and program
engineering using C++ (March, 1994).
Work in Progress
- (with Sigal Mathalone) "A Behaviorally-Based Methodology for Real-Time System
Specifications" (paper).
- (with Sigal Mathalone) "A Proposed Classification of the Characteristics of
Real-Time Software Systems" (tentative title; paper, planned).
- "A Perspective on the History of Software Design Methods" (paper, in
progress).
- (with Daniel T. Joyce) "The Impact of an Abstraction-Based Programming Approach
Upon Software Quality" (unpublished manuscript).
Return to Previous Page