Randy Stafford, Oracle, USARandy Stafford is a practicing software professional with 20 years’ experience as a developer, analyst, architect, manager, consultant, and author/presenter.
Currently for Oracle’s middleware development A-Team, he engages globally for proof-of-concept projects, architecture reviews, and production crises with diverse customer organizations, specializing in grid, SOA, performance, HA, and JEE/ORM work.
In past lives, Mr. Stafford has been Technical Advisor to agile vendor Rally Software, Chief Architect of SaaS company IQNavigator, Director of Development of SynXis Agent (acquired by Sabre), consultant for GemStone and Smalltalk, and a simulation specialist in the aerospace and CASE industries.
Long active in the professional community, he was a contributor to Martin Fowler’s Patterns of Enterprise Application Architecture and Floyd Marinescu’s EJB Design Patterns, and a reviewer of other enterprise patterns books. He has presented at conferences of the Society for Computer Simulation, the International Council on Systems Engineering, the Agile Development Conference, and Oracle Open World, and he has participated heavily in online communities devoted to architecture and agile development.
His professional interests include domain model persistence, enterprise application architecture, application performance management, requirements analysis and specification, software development process, organizational culture, and leadership of people.
Mr. Stafford is motivated to improve the practice of software development and solve problems facing society. He lives in his native Denver, Colorado with his wife and family.
Enterprise Application Architecture Styles and their CombinationIt has been noted by pioneers in the patterns community that the patterns and rules in a pattern language combine to form an architectural style. While the concepts of patterns and pattern languages have come to be widely understood and appreciated in the software development profession over the last 14 years, the notion of architectural style has gained comparatively little mind share.
But the software development profession, particularly the enterprise application architecture community, could benefit from greater attention to the study of architectural style. Communication would be improved, for example, if we had ubiquitous language for identifying different architectural styles, and agreeing on their distinctive characteristics. That would allow us to compare and contrast different systems, and possibly develop a classification system for enterprise applications.
This seminar talk will traverse the territory of architectural style within enterprise applications. Beginning with a brief survey of the prior art, it will propose candidate names and typical characteristics of architectural styles observed in the wild. Approaches to classifying architectural styles will be addressed, and potential benefits of classification reviewed. Finally the talk will treat the combination of different architectural styles, focusing on the use of SOA and DDD together as an example.