Bruce W. Weide
Professor Emeritus
Ph.D. Carnegie Mellon University, 1978
B.S.E.E. University of Toledo, 1974
Software Engineering Group
Research
The Resolve/Reusable Software
Research Group (RSRG) is part
of the Software Engineering Group in the Department of Computer Science
and Engineering at The Ohio State
University. Our charter is to explore all aspects of
component-based software engineering. Our approach involves
integrating several related subareas: formal specification of
functionality and performance, modular verification of correctness and
efficiency of implementations, design of programming languages and
systems, and adaptation of our Resolve technology to practice. Most of our efforts recently are related to the long-term
goal of laying the foundations for a "verified software" paradigm for
software engineering, including addressing Tony Hoare's Grand
Challenge of a "verifying compiler". Sponsors have included the
National Science Foundation, DARPA, Lucent Technologies, and Microsoft
Research. Selected publications are listed below under "Publications"; see the RSRG
Home Page for more details.
Teaching
With Paolo
Bucci and Wayne
Heym, among others, I have been engaged in a long-term effort to
integrate into the undergraduate computer science curriculum
component-based software engineering principles developed through RSRG
research activities. We have designed, developed, installed, and
evaluated aspects of an innovative first-year undergraduate course
sequence in software design and development for computer science and
engineering students. The goal of these activities is to create
the core of an instructional system capable of producing software
professionals with greater awareness and understanding of the
technical issues faced by tomorrow's software industry, and with
measurably better software design and development skills.
Publications about, and awards for, this course sequence are
accessible through the first link below. Sponsors have included
the National Science Foundation, Fund for the Improvement of
Post-Secondary Education, and Microsoft Research.
Other Things
I can't resist the temptation to join the trend toward putting a
few personal interest items (I hope not offensive to anyone) on one's
professional web page. The first picture, I swear, is not my car; we
saw it in a parking garage near Niagara Falls, and wondered why my
e-mail address was on it. Turns out it belongs to someone in an
unrelated Weide family living in Cambridge, Ontario. The second
picture, I'm afraid, speaks for itself.
Selected Publications on Component-Based Software
Engineering Research
-
Weide, B.W., Ogden, W.F., and Zweben, S.H., "Reusable Software
Components," Advances in Computers, Vol. 33, M. Yovits, ed.,
Academic Press, 1991, pp. 1-65. [PDF]
-
Harms, D.E., and Weide, B.W., "Copying and Swapping: Influences on the Design
of Reusable Software Components," IEEE Transactions on Software Engineering,
Vol. 17, No. 5, May 1991, pp. 424- 435. [PDF]
-
Weide, B.W., Edwards, S.H., Harms, D.E., and Lamb, D.A., "Design and
Specification of Iterators Using the Swapping Paradigm," IEEE
Transactions on Software Engineering, Vol. 20, No. 8, August 1994,
pp. 631-643. [PDF]
-
Weide, B.W., Odgen, W.F., and Sitaraman, M., "Recasting Algorithms to
Encourage Reuse," IEEE Software, Vol. 11, No. 5, September
1994, pp. 80-88. [PDF] [corrected
versions of the figures])
-
Sitaraman, M., and Weide, B.W., eds., "Special Feature: Component-Based
Software Using RESOLVE," ACM SIGSOFT Software Engineering
Notes, Vol. 19, No. 4, October 1994, pp. 21-67. [PDF; 6
papers/files]
-
Zweben, S.H., Edwards, S.H., Hollingsworth, J.E., and Weide, B.W.,
"The Effects of Layering and Encapsulation on Software Development
Cost and Quality," IEEE Transactions on Software Engineering,
Vol. 21, No. 3, March 1995, pp. 200-208. [PDF]
-
Weide, B.W., Hollingsworth, J.E., and Heym, W.D., "Reverse Engineering
of Legacy Code Exposed," Proceedings 17th International Conference
on Software Engineering, ACM, April 1995, pp. 327-331. [PDF]
-
Weide, B.W., Edwards, S.H., Heym, W.D., Long, T.J., and Ogden, W.F.,
"Characterizing Observability and Controllability of Software
Components," Proceedings Fourth International Conference on
Software Reuse, IEEE, April 1996, pp. 62-71. [PDF]
-
Sitaraman, M., Weide, B.W., and Ogden, W.F., "On the Practical Need for
Abstraction Relations to Verify Abstract Data Type Representations,"
IEEE Transactions on Software Engineering, Vol. 23, No. 3,
March 1997, pp. 157-170. [PDF]
- Sitaraman, M., Weide, B.W., Long. T.J., and Ogden, W.F., "A Data Abstraction
Alternative to Data Structure/Algorithm Modularization," in Jazayeri, M.,
Loos, R.G.K., and Musser, D., eds., Generic Programming, Springer-Verlag
LNCS 1766, 2000, pp. 102-113. [PDF]
-
Sitaraman, M., Atkinson, S., Kulczycki, G., Weide, B.W., Long, T.J., Bucci,
P., Heym, W.D., Pike, S., and Hollingsworth, J.E., "Reasoning About Software-Component
Behavior," in Frakes, W.B., ed., Software Reuse: Advances in Software
Reusability (Proceedings Sixth International Conference on Software Reuse),
Springer-Verlag LNCS 1844, 2000, pp. 266-283. [PDF]
-
Hollingsworth, J.E., Blankenship, L., and Weide, B.W., "Experience
Report: Using RESOLVE/C++ for Commercial Software," Proceedings ACM
SIGSOFT Eighth International Symposium on the Foundations of Software Engineering,
ACM Press, 2000, pp. 11-19. [PDF]
-
Sitaraman, M., Long, T.J., Weide, B.W., Harner, E.J., and Wang, L., "A
Formal Approach to Component-Based Software Engineering: Education and
Evaluation", ICSE 2001: Proceedings 23rd International Conference
on Software Engineering, IEEE, 2001, pp. 601-609 [PDF]; a revised version
appeared as Sitaraman, M., Long, T.J., Weide, B.W., Harner, J., and
Wang, C., "Teaching Component-Based Software Engineering: A Formal
Approach and Its Evaluation", Computer Science Education Journal
12, 1-2 (2002), 11-36. [CSE
abstract]
-
Weide, B.W., "Component-Based Systems", in Marciniak, J.J., ed.,
Encyclopedia of Software Engineering, John Wiley and Sons,
2001, 9 pp. [ESE
abstract] [PDF]
- Sridhar, N., Weide, B.W., and Bucci, P., "Service Facilities:
Extending Abstract Factories to Decouple Advanced Dependencies", in
C. Gacek, ed., Software Reuse: Methods, Techniques, and Tools
(Proceedings Seventh International Conference on Software Reuse),
Springer-Verlag LNCS 2319, 2002, pp. 309-326. [PDF]
-
Edwards, S.H., Sitaraman, M., Weide, B.W., and Hollingsworth, J.E.,
"Contract-Checking Wrappers for C++ Classes", IEEE Transactions on
Software Engineering 30, 11 (November 2004), 794-810. [PDF]
- Weide, B.W., Sitaraman, M., Harton,
H.K., Adcock, B., Bucci, P., Bronish, D., Heym, W.D., Kirschenbaum,
J., and Frazier, D., "Incremental Benchmarks for Software Verification
Tools and Techniques", Proceedings of VSTTE 2008 (Verified Software:
Theories, Tools, and Experiments), Springer-Verlag LNCS 5295, October 2008, 84-98. [PDF]
- Kirschenbaum, J., Adcock B., Bronish, D., Smith, H., Harton, H.,
Sitaraman M., and Weide, B.W., "Verifying Component-Based Software: Deep
Mathematics or Simple Bookkeeping?", Proceedings 11th International
Conference on Software Reuse, Springer LNCS 5791, September
2009, 31-40. [PDF]
- Pike, S., Heym, W.D., Adcock, B., Bronish, D., Kirschenbaum, J., and
Weide, B.W., "Traditional Assignment Considered Harmful", Proceedings
of the 24th ACM SIGPLAN Conference Companion on Object Oriented
Programming Systems Languages and Applications, ACM, New York,
2009, 909-916. [PDF]
- Sitaraman, M., Adcock, B., Avigad, J., Bronish, D., Bucci, B.,
Frazier, D., Friedman, H.M., Harton, Heym, W., Kirschenbaum, J.,
Krone, J., Smith, H., and Weide, B.W., "Building a Push-Button
RESOLVE Verifier: Progress and Challenges", Formal
Aspects of Computing 23, 5 (2011), 607-626.
[PDF]
Contact Information
Department of Computer Science and Engineering
The Ohio State University
2015 Neil Avenue
Columbus, OH 43210-1277
office: Dreese Lab 687
phone: 614-292-1517
FAX: 614-292-2911
email: weide DOT 1 [that's the numeral one] AT osu DOT edu
URL: http://cse.osu.edu/~weide