April 20, 2023
Software Architecture
John CheesmanManager, Product Architecture
Application Development Divisionwww.cool.sterling.com
[email protected] Sterling Software
Topics
• Sterling Software ADG & CBD• Industry / Partners• Application development approach• Feedback / Discussion
[email protected] Sterling Software
Sterling Software ADG & CBD
• Application Development Group– Model-Based Toolsets, 100% code generation
– Rigour, Traceability, Consistency
– Enterprise Application Market
– “CASE”
• WorldWide CBD Customer Advisory Board– 80+ members, 6-monthly meetings, monthly telecons
– Component Specification Standard
– Incorporate best practice into the tools and method
– Customers doing CBD since 1995
[email protected] Sterling Software
Industry / Partners
• UML – partners in UML 1.0 and 1.1
• Microsoft Repository – joint Engine and Information model design with Microsoft
• NIST– $1.6 million US grant for CBD research and application– Patterns, Frameworks, Component Specification &
Architectures
• Catalysis– worked with D’Souza and Wills to apply concepts– Yes, we have bought the book!
[email protected] Sterling Software
Application Development Approach
• Assembly from heterogeneous components• Application (legacy) Integration• Business Models -> Binaries• Frameworks: generation toolsets manifest
application architectures; applications “customise” Generated Framework
Application Runtime
Application Development ToolSet
generate
Application Model
Development time
[email protected] Sterling Software
Application Development Approach
• Technology-neutral component modeling & specification architecture (COOL:Spex)
• CBD Outside, IE/OO/(CBD) Inside
• Layered Architectures
[email protected] Sterling Software
Feedback / Discussion• Standards (CBD96). • As-Is often dominates
– new roads in London
• Organisational, Cultural Issues– project funding/management, internal champions
• Keep it Simple– Messages take a long time to arrive– Distortion en-route
• Specification vs Implementation– Components Outside, Anything inside– Don’t need an OOP– Care with model semantics (e.g. subtyping vs subclassing)
• Business Rules - where are they ?• Separate Business Process from Business Objects
– variable vs stable
• Replace vs Reuse - dependency management
Top Related