|click on icon below, and then download
1980 Ph.D. in Computer Science, University of Toronto
|Vienna Military Museum||Planet Vulcan||Keynote at Modularity 2015, Fort Collins||Miami Beach, December 2015|
|Halloween 2014 2015||Wrigley Field||Cats that adopted me in Chicago|
In early 1991, I videotaped a presentation on work I and my students were doing w.r.t. software product lines and extensible databases. The ideas of software product lines had not even been formed yet (let alone the term), and the idea of software legos that you could assemble different programs by "snapping" together plug-compatible modules was still in its infancy. All of this gave rise to much of the research I have since pursued in my career. Now, for the first time since 1991, you can see a vision of what now looks rather common-place. One more thing: Jim Barnett created the DaTE tool and did a brilliant job -- it is worth watching the video to see what all he did.
1991 Genesis Presentation (37 minutes in length)
Over time, I will add to this list a set of links that have impressed me, not because of their technicality, but of their overall insight into the process of scientific discovery or what scientists must face. The order listed is the order in which I discovered them:
Richard Feynman quote "To those who do not know mathematics it is difficult to get across a real feeling as to the beauty, the deepest beauty, of nature ... If you want to learn about nature, to appreciate nature, it is necessary to understand the language that she speaks in"
And from time to time, I will post news of the ridiculous (also inspirational in a different sort of way):And finally, I have known for decades that I am a reductionist. Finding good and short explanations of "reductionism" in science is not easy. Here are my recommendations:
Many people have inspired me, but none more than my professors. Below I list professors that have truly shaped my career and to whom I am forever grateful:
Edward L. "Ted" Glaser -- who taught me that vision went far beyond the ability to see
Product-line architectures and automated software development are keys to improved programmer productivity, product quality, reduced maintenance cost, and enhanced application performance. My students and I are investigating ways to realize practical, domain-specific component-based design methodologies and technologies for large scale application synthesis. This spans the topics of: model-driven engineering, feature-based software designs, extensible software (i.e., software that is easy to both extend and contract to match the customized needs of application requirements), adaptive software (i.e., software that reconfigures itself periodically to maximize performance), software architectures (building customized applications from components), object-oriented design patterns, extensible languages, domain modeling, and parameterized programming.
Click here for current publications, software, and research overview.
My research style is that of reduction; key ideas in software design have simple origins, and by giving elementary mathematical interpretations to them, a modern view of software design will emerge. This viewpoint has been strongly influenced by my background in relational database systems and relational query processing, and a long-term interest in physics and the history of physics. I have always said w.r.t. software design "We are geniuses at complicating the simplest things -- the challenge is exposing the underlying simplicity". Einstein (as many others) had similar admonishments, but of course, said better: “Out of clutter, find simplicity. From discord, find harmony. In the middle of difficulty lies opportunity.”
Don Batory holds the David Bruton
Centennial Professorship in the Department of Computer Science at The University of Texas at Austin.
He received a B.S. (1975) and M.Sc. (1977) degrees from Case
Institute of Technology, and a Ph.D. (1980) from the University
of Toronto. He was a faculty member at the University of
Florida in 1981 before he joined the University of Texas in 1983. He was Associate Editor of
Transactions on Software Engineering (1999-2002), Associate Editor of ACM Transactions on Database Systems
(1986-1992), member of the ACM Software Systems Award Committee
(1989-1993; Committee Chairman in 1992), Program Co-Chair for the 2002
Generative Programming and Component Engineering Conference. He is a proponent of Feature Oriented Software Development (FOSD) and with colleagues (and former students) has recently authored a textbook on the topic. Since
1993, he and his students have written 11
for their work in automated program development. He and Lance Tokuda were awarded the Automated Software Engineering 2013 Most Influential Paper Award on their work on program refactorings.