Enterprise Frameworks David Hamu Dr Mohamed Fayad OOPSLA

  • Slides: 35
Download presentation
Enterprise Frameworks David Hamu Dr. Mohamed Fayad OOPSLA ‘ 99

Enterprise Frameworks David Hamu Dr. Mohamed Fayad OOPSLA ‘ 99

Background u Software engineers have been developing frameworks for years. n u Motorola ISAC

Background u Software engineers have been developing frameworks for years. n u Motorola ISAC system framework implementation reduced code by 800 K lines (66%) The increased use of OO in enterprise settings has yielded a class of systems we call “Object-Oriented Enterprise Frameworks” 9/25/2020 2 OOPSLA ‘ 99

Drivers u The increase in complexity and risk of enterprise systems is related to

Drivers u The increase in complexity and risk of enterprise systems is related to two factors: n n 9/25/2020 Velocity of business. Increased heterogeneity of systems architectures 3 OOPSLA ‘ 99

Drivers u Velocity n n n 9/25/2020 of business. Demand highly personalized products and

Drivers u Velocity n n n 9/25/2020 of business. Demand highly personalized products and services Increasingly competitive marketplace Differentiation is the key to success Products and services tailored to the individual customer ensure competitive advantage. Highly specialized software solutions are required to support a highly customertailored business model (Baumer, Gryczan, Knoll, Lilienthal, Riehle & Zullighoven, 1997). OOPSLA ‘ 99 4

Drivers u Increased heterogeneity of systems architectures. n Hardware and software systems are increasingly

Drivers u Increased heterogeneity of systems architectures. n Hardware and software systems are increasingly complex. u Rapid changes in technology u Acquisitions 9/25/2020 5 and mergers. OOPSLA ‘ 99

Drivers The acceleration cycle u The speed at which businesses reinvent themselves u Unprecedented

Drivers The acceleration cycle u The speed at which businesses reinvent themselves u Unprecedented demand for integrated enterprise New products systems and services Information technology Increased demand Greater productivity 9/25/2020 6 OOPSLA ‘ 99

Drivers u Strong investment in information technology especially internet technologies u Need to model

Drivers u Strong investment in information technology especially internet technologies u Need to model rapid changes in business policies 9/25/2020 7 OOPSLA ‘ 99

OOEF Perspectives u Custom frameworks developed to support the operations of a significant functional

OOEF Perspectives u Custom frameworks developed to support the operations of a significant functional component of the enterprise. u Commercial frameworks developed to address a profitable market niche. u Web-based frameworks to service and support client needs, including: on-line purchasing, product support and other e-services. u Application Service Providers (ASPs) 9/25/2020 8 OOPSLA ‘ 99

OOEFs are: u More costly to build than traditional software products u Less costly

OOEFs are: u More costly to build than traditional software products u Less costly over the system lifecycle u Costs are amortized across a market u Generally bought, not built 9/25/2020 9 OOPSLA ‘ 99

OOEF Metaphors u Business Operating System u Enterprise Intelligence u Intuitive - User Friendly

OOEF Metaphors u Business Operating System u Enterprise Intelligence u Intuitive - User Friendly u Evolving u Modeling, not Programming 9/25/2020 10 OOPSLA ‘ 99

OOEF Characteristics u Mature Run-Time Functionality n n 9/25/2020 A good framework requires relatively

OOEF Characteristics u Mature Run-Time Functionality n n 9/25/2020 A good framework requires relatively little code to meet the user requirements for new enterprise applications. Framework builders or providers must have a clear understanding of the application domain in which the framework will be applied, and the design and implementation of the framework must reflect that understanding. 11 OOPSLA ‘ 99

OOEF Characteristics u Support for extensibility and tailorability n n Software is frequently extended

OOEF Characteristics u Support for extensibility and tailorability n n Software is frequently extended in ways its developers have not anticipated [RUMB 91]. Support for common objectoriented constructs: u 9/25/2020 polymorphism u Inheritance u Encapsulation u Reuse u Persistence 12 OOPSLA ‘ 99

OOEF Characeristics u. A Catalog of Business Objects n 9/25/2020 Templates for constructing new

OOEF Characeristics u. A Catalog of Business Objects n 9/25/2020 Templates for constructing new business objects based on specified operating scenarios. 13 OOPSLA ‘ 99

OOEF Characteristics u Enduring (EBTs) n n n 9/25/2020 Business Themes The structure for

OOEF Characteristics u Enduring (EBTs) n n n 9/25/2020 Business Themes The structure for the sentences which are found in the language of business, the business objects are instantiations of EBTs fill in the blanks, attributes or semantics in these sentence structures What is being done, not how it is being done, I. e. : “The Customer’s Point of View” 14 OOPSLA ‘ 99

OOEF Characteristics u Enduring Business Themes and Business Objects n n n The purpose

OOEF Characteristics u Enduring Business Themes and Business Objects n n n The purpose of the business Business objects are instantiations detailing how the business is run at a discrete point in time. A good enterprise framework reflects a concise understanding of the business through EBTs u plus discrete instantiations of business objects reflecting the best practices known today u 9/25/2020 15 OOPSLA ‘ 99

OOEF Characteristics u. A Workflow Management Metaphor and Enduring Business Processes n Workflow management

OOEF Characteristics u. A Workflow Management Metaphor and Enduring Business Processes n Workflow management u n 9/25/2020 streamlines the complex interactions between objects which are found in large-scale object-oriented applications. Proponents suggest workflow mechanisms can eliminate the need for most application programming in the workplace [PRINS 96]. 16 OOPSLA ‘ 99

OOEF Characteristics u. A Workflow Management Metaphor and Enduring Business Processes n n 9/25/2020

OOEF Characteristics u. A Workflow Management Metaphor and Enduring Business Processes n n 9/25/2020 Modern workflow management tools provide a graphical design palate for workflow definition. Nested state diagrams are well suited for the task of dynamic modeling of application workflows [RUMB 91]. 17 OOPSLA ‘ 99

OOEF Characteristics u A model for distributed objects n Object Request Brokering n Distributed

OOEF Characteristics u A model for distributed objects n Object Request Brokering n Distributed Message Passing n u Remote Procedure Calls / Remote Method Invocation Must support transparent communication between objects over a distributed computing environment. 9/25/2020 18 OOPSLA ‘ 99

OOEF Characteristics u A model for distributed objects n Enhances scalability u n Allows

OOEF Characteristics u A model for distributed objects n Enhances scalability u n Allows object definitions or structure to be preserved across the transport u 9/25/2020 as more users (clients) are added to the system, additional server instances can be added to improve throughput. eliminating the need for the numerous data translation layers found in legacy systems. 19 OOPSLA ‘ 99

OOEF Characteristics u Framework Adequacy n n 9/25/2020 Descriptive adequacy - Tools to visualize

OOEF Characteristics u Framework Adequacy n n 9/25/2020 Descriptive adequacy - Tools to visualize and monitor objects in the framework. Logical adequacy - Tools to model components’ behavior, roles and responsibilities. Synthesis adequacy Integrated tools to facilitate problem resolution, thereby enhancing maintainability. Analysis adequacy - Integrated validation and verification tools. 20 OOPSLA ‘ 99

OOEF Characteristics u Framework Adequacy n n 9/25/2020 Blueprint adequacy - Modeling tools for

OOEF Characteristics u Framework Adequacy n n 9/25/2020 Blueprint adequacy - Modeling tools for system specification, plus integrated configuration management and version control Epistemological adequacy - Tools for representing objects in the real world. Notational adequacy - Presentation constructs. Procedural adequacy - Recognition and search capabilities. 21 OOPSLA ‘ 99

OOEF Characteristics u Framework Adequacy n n n 9/25/2020 Contractual adequacy - Client or

OOEF Characteristics u Framework Adequacy n n n 9/25/2020 Contractual adequacy - Client or user-friendly tools for representing system behavior; validation and regression testing Scaleable adequacy - Tools supporting tailorability, partitioning, composition, security/access and control. Administrative adequacy - Tools for modeling and managing the administration of the delivered product including: install set builders, start and stop scripts, database management, etc. 22 OOPSLA ‘ 99

OOEF Characteristics u Platform Independence/Portability u Mature Framework Documentation 9/25/2020 23 OOPSLA ‘ 99

OOEF Characteristics u Platform Independence/Portability u Mature Framework Documentation 9/25/2020 23 OOPSLA ‘ 99

Integration Problems u Hollywood Principle n u Capitalization Principle n u When two or

Integration Problems u Hollywood Principle n u Capitalization Principle n u When two or more frameworks call the application code and each framework assumes ownership of the main event loop of the application. Problems such as typing conflicts which result when integrating multiple frameworks and legacy systems. Overlapping Principle n 9/25/2020 When two or more frameworks have the same real-world components with different representations and services. OOPSLA ‘ 99 24

Integration Problems u Composition Principle n u Gap Principle n u When a real-world

Integration Problems u Composition Principle n u Gap Principle n u When a real-world component has to be modeled by integrating parts of functionality from different frameworks. When integrating two or more frameworks and the resulting architecture does not cover the desired application’s requirements. Impedance Principle n 9/25/2020 When two or more integrated frameworks with different architectures fail to interoperate. 25 OOPSLA ‘ 99

Bottom Line u What n n n 9/25/2020 are the Benefits? Budgetary Advantages Market

Bottom Line u What n n n 9/25/2020 are the Benefits? Budgetary Advantages Market Advantages Technical Advantages Managerial Advantages Economic Impact 26 OOPSLA ‘ 99

Bottom Line u Budgetary Advantages n Enforced standards = reduced cost. n Accelerated delivery

Bottom Line u Budgetary Advantages n Enforced standards = reduced cost. n Accelerated delivery of new application content. n Improved delineation between infrastructure costs and departmental projects which should be funded outside of the information systems budget. 9/25/2020 27 OOPSLA ‘ 99

Bottom Line u Market Advantages n The flexible information infrastructure of frameworks provide an

Bottom Line u Market Advantages n The flexible information infrastructure of frameworks provide an improved linkage to a firm’s competitive strategy. n Support for more rapid application deployment can reduce time to market for new products, and result in faster response to a customer's needs. 9/25/2020 28 OOPSLA ‘ 99

Bottom Line u Technical Advantages n System release cycles are negotiated with the framework

Bottom Line u Technical Advantages n System release cycles are negotiated with the framework vendor. n Experience suggests fewer resources required for maintenance and upgrades. n Enforced reuse - with experience, solutions which compromise the object-oriented nature of the framework are discarded for approaches which increasingly leverage the reuse. 9/25/2020 29 OOPSLA ‘ 99

Bottom Line u Technical Advantages n Built-in tools for system administration (startup, shutdown, fail-over,

Bottom Line u Technical Advantages n Built-in tools for system administration (startup, shutdown, fail-over, recovery, and archival), business process modeling, information modeling and application extensibility. n Built-in knowledge of the application domain. The business analysis has been completed in part or in total when the framework is delivered. n Comprehensive training. n Framework documentation - high quality and delivered with the framework. 9/25/2020 30 OOPSLA ‘ 99

Bottom Line u Managerial Advantages n Improved management discipline Framework projects must be planned

Bottom Line u Managerial Advantages n Improved management discipline Framework projects must be planned exhaustively. n Project plans and budgets are more readily derived from the framework vendor and from other framework users. 9/25/2020 31 OOPSLA ‘ 99

Bottom Line u Economic Impact n n n 9/25/2020 An increasingly large number of

Bottom Line u Economic Impact n n n 9/25/2020 An increasingly large number of services and products related to OOEFs, such as consulting, research, books, training, search services, legal services, tools, etc. Specialization implies significantly higher revenues for those technology and service firms employing OOEFs are paying off today and the commercial price of an OOEF is comparable to legacy products. 32 OOPSLA ‘ 99

Bottom Line u Economic Impact n n 9/25/2020 Hourly and capital costs may be

Bottom Line u Economic Impact n n 9/25/2020 Hourly and capital costs may be higher, but lengthy implementation schedules are compressed from years to months and months to weeks. The E-Commerce enabler: enterprises must work through online transactions over either identical or disparate frameworks. 33 OOPSLA ‘ 99

OOEFs are. . . u Domain specific u Distributed systems u Commercially available today

OOEFs are. . . u Domain specific u Distributed systems u Commercially available today n n 9/25/2020 IBM San Francisco Project FASTech’s FACTORYworks Camstar’s In. Site Subscription Computing Micron. PC. com 34 OOPSLA ‘ 99

Summary u Frameworks are a Proven Idea u OOEFs are Commercially Available u The

Summary u Frameworks are a Proven Idea u OOEFs are Commercially Available u The Business Operating System u OOEFs Have Specific Characteristics u OOEFs Contribute Bottom Line Advantages u An important area for research 9/25/2020 35 OOPSLA ‘ 99