160 likes | 256 Views
APPLYING COMPONENT BASED WEB ENGINEERING IN AN INTERNATIONAL ENTERPRISE. Guntram Gräf Telecooperation Office (TecO) University Of Karlsruhe Germany. Philipp Obreiter DCTC Shanghai Jiaotong University P.R. China. Component based Web-Engineering: Motivation. HTML. *. HTML. ?.
E N D
APPLYING COMPONENT BASED WEB ENGINEERING IN AN INTERNATIONAL ENTERPRISE Guntram Gräf Telecooperation Office (TecO) University Of Karlsruhe Germany Philipp Obreiter DCTC Shanghai Jiaotong University P.R. China
Component based Web-Engineering:Motivation HTML * HTML ? Design Model HTML Implementation Model Problems of Web Application’s development: • Granularity disparity • Irreversible mapping of models • Short development cycles • Ad-hoc approaches still widely adopted
Component based Web-Engineering:Introduction • What is Web-Engineering? • Based on Software Engineering concepts • Applied for the development and evolution of Web Applications • Goal: Cost reduction and quality increase • What are the benefits of components? • information hiding • base of reuse
Component based Web-Engineering:Definition Production of Web Applications: • by composing existing components • using a defined process • including systematic reuse of • components • domain knowledge
WebComposition Process Model: Basic concepts • Components as base of reuse & development • Artifact management • synchronization of component development • systematic identifaction of reuse opportunities • Process • Open: Arbitrary subprocesses & development • Base: Spiral model • Risk analysis: Maximization of reuse
Application Domain Application Domain Web Application Evolution bus Application Domain Application Domain WebComposition Process Model: Evolution Component level as a whole
WebComposition Process Model:Reuse • Artifact management • tackles reuse management • by a component repository • Component producer • Provides metadata • Within several models • Component consumer • Queries on metadata • Within the appropriate model
WebComposition Process Model:An example Analysis Reuse Management Design Selection of an existent component Realization Test Analysis Reuse process Development process Overall process
Project’s environment • Web Application had to be built for the internet & intranet of Siemens Ltd. China • State of the art at project start: • No reuse strategies & concepts • Ad-hoc develoopment process • Difficult & error-prone maintenance Dedicated development process and architecture required
Development process:An application of the WCPM • Traits: • Component store used in place of a repository • Components built • as ActiveX • in parallel if orthogonal • Web Application built • bottom-up • by rapid prototyping • Modeling with UML • statecharts for the navigational structure
Architecture and patterns:The framework Requirements towards the architecture: • stable & robust to prevent architectural drifts • flexible & extendable to ease evolution • component based to ease reuse Decomposition • 3 layers • 6 component stereotypes
Architecture and patterns:The framework scripts • Presentation • Application • Database P PAI Control PAI Control PAI Control PBO Factory PBO Factory PBO Factory Markup Language Markup Language Markup Language Structures Structures Structures Data Data A Data Structures Business Structures Business Structures Business Logic Logic Logic D Database Database Database Proxies/Decorators Proxies/Decorators Proxies/Decorators
Architecture and patterns:The presentation layer • Control components • manage user-machine-interaction • encapsulate navigational structure • Factory components • dynamically compose pages • Structure components • hide destination language (f.e. HTML) Orthogonality
Conclusion:Project results • Completion after half the time scheduled • Quick realization of user requests • Working staff’s skills increased • Other projects speeded up through reuse
Conclusion:Further work to do • Establish a component repository • Create Pages dynamically only if needed • Use a platform independent component technology
Questions? • More information: http://www.webengineering.org