Mathematical Modeling and Reasoning

Party line for object-based and component-based software development:
  • less new code needs to be written (productivity)
  • off-the-shelf components are well-seasoned and reliable (improved quality).
 
Valid reasons, but?for dramatic improvements in software evolution, reuse, and maintenance,
component behaviors need to be described using mathematical models. They
  • simplify human understanding
  • enable sound reasoning

Introductory Article on the Topic

Murali Sitaraman, Steven Atkinson, and Gregory Kulczycki (West Virginia University),
Bruce W. Weide, Timothy J. Long, Paolo Bucci, and Scott Pike (The Ohio State University)
Wayne Heym (Otterbein College), and Joseph E. Hollingsworth (Indiana University Southeast), Reasoning About Software-Component Behavior, Proceedings of the Sixth International Conference on Software Reuse, Springer Verlag, Vienna, Austria, June 2000, 266-283.

Abstract

Clients of off-the-shelf software components must understand newly-defined objects and operations abstractly, or they can?t possibly write correct non-trivial software systems using those components.  Mathematical modeling of objects and operations addresses this problem in a way that is scalable from classroom examples to industrial-strength soft-ware.
 

Keywords

abstraction, component-based software, formal methods, mathematical modeling, objects, reusable software, software components, specification, verification 

Other Publications

 
This site maintained by Steven Atkinson, with assistance from Murali Sitaraman