An Evolution-oriented Architecture for Web Applications
|
|
- Valentine Greer
- 8 years ago
- Views:
Transcription
1 G. Graef, M. Gaedke: An Evolution-oriented Architecture for Web Applications. In Proceedings of the Second Nordic Workshop on Software Architecture (NOSA 99), Jan Bosch (Ed.), August 12-13, An Evolution-oriented Architecture for Web Applications Guntram Graef and Martin Gaedke Telecooperation Office (TecO), University of Karlsruhe, Vincenz-Prießnitz Str. 1, Karlsruhe, Germany, {graef, Abstract: The Web has become an efficient environment for application delivery. The originally intended idea, as a distributed system for knowledge-interchange, has given way to organizations offering their products and services using the Web as a global point of sale. Although the arising possibilities look promising, the development process remains ad-hoc in real-life Web development. The understanding of Web application development mostly neglects architectural approaches, resulting in Web sites that fail in achieving typical goals like evolvable and maintainable structures of the information space. Beyond that, as the architecture of a Web application matures, more and more knowledge about the domain becomes embodied into code and therefore burdens maintenance and reuse of parts of the application. In this paper, we will propose an architecture and a framework using the notion of services as model entities for Web application development. The object-oriented WebComposition Markup Language, which is an application of the XML, will be presented as basis for a generic evolvable framework for services. Finally, the results of its usage will be described in detail by giving an example of a large-scale transnational Intranet, where the framework is in use. Keywords: Web Engineering, XML, WebComposition, Framework,. 1 Introduction The original purpose of the World Wide Web [B-L90] was merely presenting information. Many of today's Web applications have moved a long way from the basic hypermedia systems of the first days. They have grown into complex distributed applications. Nevertheless, the development process in real life remains rather ad-hoc. This has largely been recognized to be due to the gap between the underlying design models and the implementation model of the Web. Web developers suffered from this when they tried to apply disciplined hypertext development methodologies such as OOHDM [SRB96] and RMM [ISB95] or general models like UML [Lar98] because many design concepts where lost during the implementation. This problem has been addressed with systems like JESSICA [BaS98], W3Objects [ICL96] and WebComposition [GWG97]. The WebComposition approach allows a developer to work within a semantically richer component model and automatically map the results to the Web implementation model. The mapping can be to any target language and is independent of the Web-server platform used. The WebComposition model enables and encourages reuse of code on the component level. In contrast to reusing Web resources, compositional reuse is not limited to a certain level of granularity imposed by the Web implementation model. Furthermore, it is possible to reuse abstractions that have been defined based on concepts such as generalization and specialization.
2 A major problem that remains is how to efficiently reuse larger structures when building Web applications from components. Pressure to do so is especially strong in the Web environment due to much shorter development and maintenance cycles than in most common software application domains. Questions like the following must be considered: What abstractions exist above the component level that are suitable for reuse? In what kind of development artifacts can these abstractions be captured? What does a mechanism look like that enables their reuse? In which way can the reuse process be optimized for productivity? How can it be implemented? What are the real benefits that can be achieved? In the next section, we will describe how services can be used as higher-level abstractions and coherent building blocks for Web applications. We will also discuss frameworks for building Web applications. In the third section, we will introduce our own approach. We suggest a -oriented Framework that is based on the WebComposition approach. Further, we introduce the concept of a Factory to enable a disciplined evolution of the application. We will describe our concrete implementation in section four and give an evaluation based on theoretical aspects, followed by an example of a commercial application in section five. In the last section, we will conclude with a short summary and outlook for further research. 2 Architectural abstractions for the Web At first, we introduce an abstraction for functionality provided by a set of components for one or more applications. Then we will discuss frameworks as an abstraction on the domain level of applications. 2.1 s One aspect that distinguishes Webapplications from most common desktop applications is that there is no "application in the box" distribution model. What the user receives and pays for is a set of services that might more or less loosely be integrated or federated into an application such as described in [GaT99] or [Zhao97]. Well-known examples are portal sites such as Netscape s Netcenter [NNC99]. On the Web, this grouping can change quickly and the same services might appear in numerous applications. In this sense, the application might even be built by users according to their own preferences or it might be dynamically generated to address a specific target group [FrK97]. In this context, a service presents a sub-system that enables a user to perform a single task such as placing an order or retrieving a news summary. In a business environment, a service may represent a business procedure. s can be classified according to their functionality. There might be services for retrieving information, services for ordering products or services for expressing opinion such as online surveys just to name a few examples. The evolution of service classes tends to be subject to other forces of change than both the application and lower level building blocks. The shape of the application is directly driven by the current needs of its users that are closely related to sociological forces such as fashion. Lower level elements, such as components, that serve as building blocks for services are more directly affected by technological change. A class of services on the other hand might be mainly affected by the evolution of general business behavior. This orthogonality as well as the inner coherence of services and classes of services makes them powerful abstractions for building Webapplications. They appear to be suitable entities for reuse. 2.2 Frameworks Very flexible abstractions for reuse on the level of an application domain are frameworks. As stated in [BMA97] a framework is an integrated set of software components that can be reused to create applications. The construction of applications is possible either by extension of framework components [Jon92] or by customization through parameterization of func- 2
3 tional specifications that are used to automatically build applications from framework components [Pre94]. These two approaches to framework reuse are called "white-box" and "black-box" reuse [RoJ96]. There exist frameworks for the Web such as for shopping- or e-commerce. Common Web frameworks typically use a black-box core consisting of platform dependent components residing on the Web-server and a white-box part made up of Web-resources. This reflects the notion of [JoF88] that both modes of framework reuse are simultaneously present in most frameworks. The problem is that the white-box part here suffers from the limitations of the Web-implementation model as described in [GGS99]. Furthermore, a very common limitation in today s frameworks for the Web is that code from the white-box part can t be migrated into the black-box part of the framework because of disparities in the implementation models. Well known examples for this kind of frameworks are [Int99] or [LDM99]. A more advanced application development framework for the Web should offer an integrated implementation model for the black-box core as well as for new components developed with the framework. This is needed to facilitate the migration of new components into the black-box during the evolution of the framework. An integrated implementation model is also an important prerequisite for enabling improved reuse and maintenance of domain components. 3 Development Framework In this section, we will introduce a Framework for developing Web services that we built based on the WebComposition approach. 3.1 Basic Architecture The WebComposition approach presents a generic intermediate model to bridge the gap between fine-grained design and the coarsegrained implementation of Web applications by automatically mapping components to Web resources. WebComposition allows the definition of aggregation and inheritance relationships between components based on a prototype-instance object model such as in SELF [UnS87]. Components are defined using the WebComposition Markup Language (WCML). They are stored in a Component Store from where they can automatically be mapped to Web resources using our WCML compiler. It is possible to generate code in any target language. Due to the generic approach, the mechanism is completely independent of the Web server platform. Development Framework Definition Factory Component Store WCML Compiler Web Resources Framework Components Figure 1 - Architecture of Framework All components are described in the same way, including those in the black-box part of the framework and components developed by the framework user. This means there is an integrated implementation model enabling easy migration of components from the white-box part of the framework into the black-box core, facilitating framework evolution. s can be built by instantiating framework components. A service consists of components for content, layout, navigation, user interaction and processing. During run-time, the code produced by these components is called from the surrounding framework as needed. This general framework behavior is 3
4 usually described as the Hollywood Principle "Don t call us, we ll call you." [Lar98]. Content Order Content Layout * * * * Order User Interaction * * 1 Navigation Processing * Order Processing Figure 2 - Generic architecture of order services 3.2 Factory-oriented Evolution A central part of our framework is the concept of a Factory, which is based on creational design patterns as described in [GHJ94]. It is intended to facilitate the development of common types of services. The Factory enables the reuse of generic architectures of classes of services. As an example, figure 2 shows a simplified description of the generic architecture of order services. An order service component is based on the service component, which it extends. Order services contain their own variant of content and processing components. To create a specific service a service definition must be supplied consisting of various information items. It must define how many components of each required type such as processing components the service should contain. It also describes attribute values for all the components belonging to the service. Thus, it defines all aspects of the service that distinguishes it from other services of the same service class. The Factory parses the service definition and uses its knowledge about the generic architecture of the corresponding service class to automatically create the service. The Factory itself consists of a Factory Control Function that dispatches the service definitions to the appropriate Factory Methods (Figure 3). The Factory Methods implement the Factory Method creational design pattern. There is at least one Factory Method for each service class capturing its generic architecture. Several sets of Factory Methods can be supplied alternatively as described by the Abstract Factory design pattern. Factory Control Function Order Factory Method Information Factory Method Figure 3 - Factory Architecture 4 Implementation The implementation of the service development framework as well as that of the underlying WebComposition system rely on the extensible Markup Language (XML) [W3C99] and related tools. XML is a subset of SGML [ISO86] and presents a standard mechanism for defining markup languages. It provides basic syntax conventions that are familiar to a large number of users, especially in the Web environment. It enables formal syntax definitions that are used for automatic document checking. There are numerous tools available such as parsers and editors that reduce the development effort usually associated with the introduction of a new language. The WCML is an XML application and enables the definition of components. This facilitated the development of the WCML compiler and other tools since they can use standard XML parser components for document parsing. When implementing the WCML compiler and tools, such as a Component Repository we introduced in [GRG99] and a visual editor for service definitions, we explored two alterna- 4
5 tives. We successfully used the XJParse XML parser [Dat99] for developing tools in Java as well as a COM [MSC99] based environment. Both implementation strategies worked well to produce tools that interoperate seamlessly. 5 Evaluation In this section, we will first discuss general aspects of the Development Framework before we will briefly describe its use in a large-scale e-commerce application at Hewlett-Packard. 5.1 General reflection Our approach offers several levels of reuse. In addition to individual components, larger structures, namely service class architectures and knowledge captured in the framework s component architecture, can be reused. We separate code needed for describing individual services, code common to classes of services and framework code, which is common to all services. This helps to reduce the complexity of the code that has to be maintained by avoiding some unnecessary redundancy. Furthermore, specialized programming and teamwork are encouraged due to the taskoriented closure of services. On the one hand, this can make the development of specialized tools, such as a visual editor for a special but very common type of service, feasible. Specialized tools in contrast to general tools only need to cover a limited problem domain and thus are less complex. On the other hand, specialized programming can lead to a flatter learning curve and lower cognitive load for programmers. This can reduce technical skill requirements enabling a stronger focus on domain expertise. It also can lead to higher productivity, better quality and faster deployment. Another feature of the framework is automatic code generation by the Factory and the WCML compiler. In practice, this greatly increases productivity. For example, a service definition describing a service for ordering office chairs can be made up of about 50 tags. The code produced by the framework can easily reach more than 3000 lines of Web code mostly consisting of complex scripting statements. We want to stress that in contrast to many code generator tools for the Web this code never needs to be modified directly and can always be regenerated automatically Reuse, automation and reduced complexity contribute to enhanced maintainability and extensibility of services, applications and the framework itself. Maintenance also benefits from the central location of code common to classes of services or all services defined within the framework. Changes of corporate identity, process logic or technical infrastructure only need to be implemented once and needn t be repeated in several locations or resources. Migration of existing Web applications and services to the framework is supported by the fact that existing code can be wrapped in WCML components and needn t be reprogrammed. It is also not necessary to migrate applications all at once. It can be done in an incremental approach because framework generated Web resources seamlessly integrate on the Web server with resources of other origin. In our approach, we also gain a high degree of flexibility for migrating to new implementation technologies or for concurrent support of different implementation models. This can be achieved by encapsulating implementation specific code in special WCML components that can be dynamically replaced when generating code for different implementation platforms. The service development framework itself and WCML are entirely independent of the deployment platform. 5.2 Eurovictor II The Development Framework has already been used to fully implement a complete service-oriented e-commerce application. Eurovictor II has been developed at the Telecooperation Office at the University of Karlsruhe in a joint project with Hewlett- Packard (HP). The system has recently become productive at HP in Europe with more than regular users. The main goal of Eurovictor II was to enhance usability, evolution, maintenance, creation and 5
6 management of Web-based services and federation of different intranet services within the company. The system already offers several hundred services mainly in the areas hardware orders, software orders, telecommunication, virtual office and news services. s have been developed in a decentralized manner by people with moderate technical skills and have automatically been integrated into the system by use of an installation-service. Figure 4 Screenshot of a temporarily available service of the Eurovictor II system The quick and easy way in which new services can be developed has not only improved productivity but has also given way to completely new applications not possible before. An interesting example of this has been a service that has been set up in less than one hour for the only purpose of enabling the ordering of pizzas by employees in one HP location during a single day to celebrate a special event at the company. We consider this to be an example of how an organization and their members can quickly react upon a new situation in a flexible way. 6 Conclusions and future work In this paper, we introduced a generic component based framework supporting the development of web services. We have shown how services can be used as building blocks for applications. By means of a Factory, we have been able to demonstrate how the generic architecture of a class of services can be reused. In an evaluation we pointed out the various advantages of our approach that lead to improved productivity, better quality and cost reduction during development, maintenance and evolution of web applications. We could verify our concept building a largescale e-commerce application at Hewlett Packard in Europe. In the near future, we plan to further improve tool support. Our research will include automatic mining and classification of code structures on the web that can be used as low-level building blocks for services. We are also interested in exploring the dynamic assembly of web applications based on user profiles. Acknowledgements The authors would like to thank U. Stegemüller of the Hewlett-Packard Corporation, Germany for his cooperation and thoughtful feedback for some of the ideas developed in the approach presented here. References [BaS98] R.A. Barta, M.W. Schranz (1998). JESSICA: an object-oriented hypermedia publishing processor. In Computer Networks and ISDN Systems 30 (1998), Special Issue on the 7th Intl. World-Wide Web Conference, Brisbane, Australia, April 1998, pp [B-L90] Tim Berners-Lee (1990). World Wide Web: Proposal for a HyperText Project, [BMA97] D. Brugali, G. Menga, A. Aarsten (1997): The Framework Life Span. In: Communications of the ACM, Vol. 40, No. 10, Oct. 1997, pp
7 [Cle96] P. Clements (1996). A Survey of Architecture Description Languages. In Proceedings of 8th International Workshop on Software Specification and Design (IWSSD), Paderborn, Germany [Dat99] Datachannel Inc. (1999). XJParser. ads/xjparser/ [FrK97] L. Frelechoux, T. Kamba (1997). An architecture to support personalized Web applications. In: Computer Networks and ISDN Systems 29, Special Issue on the 6 th Intl. World- Wide Web Conference, Santa Clara, CA, USA. [GaT99] M. Gaedke, K. Turowski (1999). Generic Web-Based Federation of Business Application Systems for E- Commerce Applications, 2nd Intl. Workshop on Engineering Federated Information Systems (EFIS 99), Kuehlungsborn, Germany [GGS99] M. Gaedke, H.-W. Gellersen, A. Schmidt, U. Stegemüller, W. Kurr (1999). Object-oriented Web Engineering for Large-scale Web Management. In: R. H. Sprague (Ed.) Proceedings of the 32nd Annual Hawaii International Conference On System Sciences, Maui, Hawaii, (CD-ROM). [GHJ94] E. Gamma; R. Helm; R. Johnson; J. Vlissides (1994). Design Patterns: Elements of Reusable Object- Oriented Software. Reading. [GRG99] M. Gaedke, J. Rehse, G. Graef (1999). A Repository to facilitate Reuse in Component-Based Web Engineering. International Workshop on Web Engineering at the 8th International World-Wide Web Conference (WWW8), Toronto, Canada. web-engineering99/accepted_papers/ gaedke.html, June 1999 [GWG97]H.-W. Gellersen, R. Wicke, M. Gaedke (1997). WebCompostion: an object-oriented support system for the Web engineering lifecycle. In: Computer Networks and ISDN Systems 29, Special Issue on the 6th Intl. World-Wide Web Conference, Santa Clara, CA, USA, pp [ICL96] D.B. Ingham, M.C. Little, S.J. Caughey, S.K. Shrivastava (1996). W3Objects: Bringing Object- Oriented Technology To The Web, The Web Journal, 1(1), Proceedings of the 4th International World Wide Web Conference, Boston, USA, pp [Int99] Intershop Communications Inc. (1999). Intershop [ISB95] T. Isakowitz, E.A. Stohr, P. Balasubramaninan (1995). RMM: A Methodology for Structured Hypermedia Design, Communications of the ACM, Vol. 38, No. 8, August 1995, pp [ISO86] International Organization for Standardization (1986). Information Processing - Text and Office Systems - Standard Generalized Markup Language (SGML). Ref. No. ISO 8879:1986. [JoF88] R. Johnson, B. Foote (1988). Designing reusable classes. Journal on Object Oriented Programming 1, 5, June 1988, pp [Jon92] R. Johnson (1992). Documenting frameworks using patterns. In: Proceedings of OOPSLA 92, Vancouver, Canada, pp [Lar98] C. Larman (1998). Applying UML and Patterns. Prentice Hall, pp [LDM99] IBM Inc. (1999). Lotus Domino.Merchant. 7
8 [MSC99] Microsoft Corporation (1999). Component Object Model (COM). [NNC99] Netscape Communications Inc. (1999). Netcenter. [Pre94] W. Pree (1994). Design Patterns for Object-Oriented Software Development. Addison-Wesley [RoJ96] D. Roberts, R. Johnson (1996). Evolving Frameworks - A Pattern Language For Developing Object- Oriented Frameworks. Third Conference on Pattern Languages of Programs (PLoP 96), Monticello, Illinois, USA [SRB96] D. Schwabe, G. Rossi, S. Barbosa (1996). Systematic Hypermedia Design with OOHDM. In Proceedings of the ACM International Conference on Hypertext, Hypertext 96, Washington. [UnS87] D. Ungar, R. B. Smith (1987). Self: The power of Simplicity, In: OOPSLA 87 Proceedings, pp [W3C99] World-Wide Web Consortium (1999). XML: extensible Markup Language. [Zhao97] Y. Zhao (1997). A Single Login Web Integrator - WebEntrance. In: Computer Networks and ISDN Systems 29, Special Issue on the 6 th Intl. World-Wide Web Conference, Santa Clara, CA, USA. 8 About the Authors Guntram Graef obtained a Master degree in computer science from the University of Karlsruhe in In 1999 he joined TecO as a research assistant and works in collaborative Web engineering projects. Former to that he was an independent consultant designing distributed applications for major companies in Europe and Asia. His current research interest is in methodologies and tools for large-scale Web development, e-commerce system architectures, user profiling and applications of XML. Martin Gaedke is research assistant at the Telecooperation Office (TecO) of the University of Karlsruhe and technical lead in collaborative Web engineering projects. His research interests is in application of software engineering practice to applications in the WWW, and specifically in component-based software engineering, reuse, frameworks, reflection, software architectures, patterns and software evolution for Web applications. He obtained a Master degree in computer science from the University of Karlsruhe in 1997.
The Web has evolved into a global environment for delivering all
WEB OBJECT MODELS OBJECT- ORIENTED WEB APPLICATION DEVELOPMENT Most Web applications HANS-W. GELLERSEN AND MARTIN GAEDKE University of Karlsruhe are still developed ad hoc. One reason is the gap between
More informationDevelopment and Evolution of Web-Applications using the WebComposition Process Model
Development and Evolution of Web-Applications using the WebComposition Process Model Martin Gaedke, Guntram Gräf Telecooperation Office (TecO), University of Karlsruhe, Vincenz-Priessnitz Str. 1, D-76131
More informationGeneric Web-Based Federation of Business Application Systems for E-Commerce Applications
25 Generic Web-Based Federation of Business Application Systems for E-Commerce Applications + Martin Gaedke * and Klaus Turowski + * Telecooperation Office (TecO), University of Karlsruhe, Vincenz-Prießnitz
More informationIntegrating Web-based E-Commerce Applications with Business Application Systems
Integrating Web-based E-Commerce Applications with Business Application Systems Martin Gaedke * and Klaus Turowski + * Telecooperation Office (TecO), University of Karlsruhe Vincenz-Prießnitz Str. 1, 76131
More informationXFlash A Web Application Design Framework with Model-Driven Methodology
International Journal of u- and e- Service, Science and Technology 47 XFlash A Web Application Design Framework with Model-Driven Methodology Ronnie Cheung Hong Kong Polytechnic University, Hong Kong SAR,
More informationTowards Web Design Frameworks (Wdfs)
14 Towards Web Design Frameworks (Wdfs) Rehema Baguma, Faculty of Computing and IT, Makerere University. rbaguma@cit.mak.ac.ug; Ogao Patrick, Department of Information Systems, Faculty of Computing and
More informationTowards a New Methodology for Developing Web-Based Systems
Towards a New Methodology for Developing Web-Based Systems Omer Ishag Eldai, Ahmed Hassan M. H. Ali, and S. Raviraja Abstract Web-based systems have become increasingly important due to the fact that the
More informationLightweight Data Integration using the WebComposition Data Grid Service
Lightweight Data Integration using the WebComposition Data Grid Service Ralph Sommermeier 1, Andreas Heil 2, Martin Gaedke 1 1 Chemnitz University of Technology, Faculty of Computer Science, Distributed
More informationComponent visualization methods for large legacy software in C/C++
Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University mcserep@caesar.elte.hu
More informationExcerpts from Chapter 4, Architectural Modeling -- UML for Mere Mortals by Eric J. Naiburg and Robert A. Maksimchuk
Excerpts from Chapter 4, Architectural Modeling -- UML for Mere Mortals by Eric J. Naiburg and Robert A. Maksimchuk Physical Architecture As stated earlier, architecture can be defined at both a logical
More informationGenerating Aspect Code from UML Models
Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany Iris.Groher@fh-hagenberg.at Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,
More informationInformation systems modelling UML and service description languages
Internet Engineering Tomasz Babczyński, Zofia Kruczkiewicz Tomasz Kubik Information systems modelling UML and service description languages Student Contact Hours: 25.02.2015- Location: 325 C3 room 25.03.2015:
More informationWEB APPLICATION DEVELOPMENT EMPLOYING DOMAIN-SPECIFIC LANGUAGES
WEB APPLICATION DEVELOPMENT EMPLOYING DOMAIN-SPECIFIC LANGUAGES Martin Nussbaumer, Patrick Freudenstein, Martin Gaedke University of Karlsruhe, Institute of Telematics, IT-Management and Web Engineering
More informationGenericServ, a Generic Server for Web Application Development
EurAsia-ICT 2002, Shiraz-Iran, 29-31 Oct. GenericServ, a Generic Server for Web Application Development Samar TAWBI PHD student tawbi@irit.fr Bilal CHEBARO Assistant professor bchebaro@ul.edu.lb Abstract
More informationtechnische universiteit eindhoven WIS & Engineering Geert-Jan Houben
WIS & Engineering Geert-Jan Houben Contents Web Information System (WIS) Evolution in Web data WIS Engineering Languages for Web data XML (context only!) RDF XML Querying: XQuery (context only!) RDFS SPARQL
More informationEvaluating OO-CASE tools: OO research meets practice
Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht
More informationSOFTWARE ENGINEERING PROGRAM
SOFTWARE ENGINEERING PROGRAM PROGRAM TITLE DEGREE TITLE Master of Science Program in Software Engineering Master of Science (Software Engineering) M.Sc. (Software Engineering) PROGRAM STRUCTURE Total program
More informationSERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework
More informationPatterns for Dynamic Websites
Patterns for Dynamic Websites Fernando Lyardet, Gustavo Rossi(*), LIFIA, Fac. De Ciencias Exactas, UNLP, Argentina fer@sol.info.unlp.edu.ar, gustavo@sol.info.unlp.edu.ar (*) is also at CONICET and UNLM
More informationQuality Ensuring Development of Software Processes
Quality Ensuring Development of Software Processes ALEXANDER FÖRSTER,GREGOR ENGELS Department of Computer Science University of Paderborn D-33095 Paderborn, Germany {alfo engels}@upb.de ABSTRACT: Software
More information1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software...
1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering Software is intangible Hard to understand
More informationChapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note
Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note Text book of CPET 545 Service-Oriented Architecture and Enterprise Application: SOA Principles of Service Design, by Thomas Erl, ISBN
More informationService Oriented Architectures
8 Service Oriented Architectures Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ The context for SOA A bit of history
More informationRun-time Variability Issues in Software Product Lines
Run-time Variability Issues in Software Product Lines Alexandre Bragança 1 and Ricardo J. Machado 2 1 Dep. I&D, I2S Informática Sistemas e Serviços SA, Porto, Portugal, alexandre.braganca@i2s.pt 2 Dep.
More informationSoftware Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2).
0305203 0305280 0305301 0305302 Software Engineering/Courses Description Introduction to Software Engineering Prerequisite: 0306211(Computer Programming 2). This course introduces students to the problems
More informationDesign of an XML-based Document Flow Management System for Construction Projects Using Web Services
Design of an XML-based Document Flow Management System for Construction Projects Using Web Services Choung-Houng Wu and Shang-Hsien Hsieh National Taiwan University, Department of Civil Engineering, No.1,
More informationA Reusability Concept for Process Automation Software
A Reusability Concept for Process Automation Software Wolfgang Narzt, Josef Pichler, Klaus Pirklbauer, Martin Zwinz Business Information Systems C. Doppler Laboratory for Software Engineering University
More informationOntological Representations of Software Patterns
Ontological Representations of Software Patterns Jean-Marc Rosengard and Marian F. Ursu University of London http://w2.syronex.com/jmr/ Abstract. This paper 1 is based on and advocates the trend in software
More informationAutomated Test Approach for Web Based Software
Automated Test Approach for Web Based Software Indrajit Pan 1, Subhamita Mukherjee 2 1 Dept. of Information Technology, RCCIIT, Kolkata 700 015, W.B., India 2 Dept. of Information Technology, Techno India,
More informationJava Technology in the Design and Implementation of Web Applications
Java Technology in the Design and Implementation of Web Applications Kavindra Kumar Singh School of Computer and Systems Sciences Jaipur National University Jaipur Abstract: This paper reviews the development
More informationOct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 3. Internet : the vast collection of interconnected networks that all use the TCP/IP protocols
E-Commerce Infrastructure II: the World Wide Web The Internet and the World Wide Web are two separate but related things Oct 15, 2004 www.dcs.bbk.ac.uk/~gmagoulas/teaching.html 1 Outline The Internet and
More informationDevelopment Activities and Methodology Usage by Australian Web Site Consultants
Development Activities and Methodology Usage by Australian Web Site Consultants John R. Venable and Fion C. B. Lim School of Information Systems Curtin University of Technology, Australia E-mail: venablej@cbs.curtin.edu.au
More informationProGUM-Web: Tool Support for Model-Based Development of Web Applications
ProGUM-Web: Tool Support for Model-Based Development of Web Applications Marc Lohmann 1, Stefan Sauer 1, and Tim Schattkowsky 2 1 University of Paderborn, Computer Science, D 33095 Paderborn, Germany {mlohmann,sauer}@upb.de
More informationAN ONTOLOGICAL APPROACH TO WEB APPLICATION DESIGN USING W2000 METHODOLOGY
STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume L, Number 2, 2005 AN ONTOLOGICAL APPROACH TO WEB APPLICATION DESIGN USING W2000 METHODOLOGY ANNA LISA GUIDO, ROBERTO PAIANO, AND ANDREA PANDURINO Abstract.
More informationSoftware Engineering. Software Reuse. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Reuse Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain the benefits of software reuse and some reuse problems To discuss several different
More informationSOA: The missing link between Enterprise Architecture and Solution Architecture
SOA: The missing link between Enterprise Architecture and Solution Architecture Jaidip Banerjee and Sohel Aziz Enterprise Architecture (EA) is increasingly being acknowledged as the way to maximize existing
More informationPortable Cloud Services Using TOSCA
Institute of Architecture of Application Systems Portable Cloud Services Using TOSCA Tobias Binz, Gerd Breiter, Frank Leymann, and Thomas Spatzier Institute of Architecture of Application Systems, University
More informationA Model for Component Based E-governance Software Systems
A Model for Component Based E-governance Software Systems A.SHRABAN KUMAR 1, G.JAYARAO 2,B.SHANKAR NAYAK 3, KBKS. DURGA 4 A.ESWARA RAO 5 1,2,3,4 Associate Professor CSE, St.MARTIN S ENGINEERING COLLEGE,
More informationTowards an Automated Pattern Selection Procedure in Software Models
Towards an Automated Pattern Selection Procedure in Software Models Alexander van den Berghe, Jan Van Haaren, Stefan Van Baelen, Yolande Berbers, and Wouter Joosen {firstname.lastname}@cs.kuleuven.be IBBT-DistriNet,
More informationCorresponding Author email: javeri_mit@yahoo.com
International Research Journal of Applied and Basic Sciences 2013 Available online at www.irjabs.com ISSN 2251838X / Vol, 5 (11): 14381445 Science Explorer Publications Presenting a model for the deployment
More informationA Quick Introduction to SOA
Software Engineering Competence Center TUTORIAL A Quick Introduction to SOA Mahmoud Mohamed AbdAllah Senior R&D Engineer-SECC mmabdallah@itida.gov.eg Waseim Hashem Mahjoub Senior R&D Engineer-SECC Copyright
More informationIntroduction to Service Oriented Architectures (SOA)
Introduction to Service Oriented Architectures (SOA) Responsible Institutions: ETHZ (Concept) ETHZ (Overall) ETHZ (Revision) http://www.eu-orchestra.org - Version from: 26.10.2007 1 Content 1. Introduction
More informationA Process View on Architecture-Based Software Development
A Process View on Architecture-Based Software Development Lothar Baum, Martin Becker, Lars Geyer, Georg Molter System Software Research Group University of Kaiserslautern D-67653 Kaiserslautern, Germany
More informationWSDM: A User Centered Design Method for Web Sites
donderdag, 28 juni 2001 WSDM: A User-Centered Design Method for Web Site Page: 1 WSDM: A User Centered Design Method for Web Sites O.M.F. De Troyer, C.J. Leune Tilburg University, Infolab P.O.Box 90153
More informationModel Driven Interoperability through Semantic Annotations using SoaML and ODM
Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:
More informationA Java Framework for Multi-Tier Web-Centric Applications Development
1 A Java Framework for Multi-Tier Web-Centric Applications Development Davide Brugali, Giuseppe Menga, and Franco Guidi-Polanco Abstract Web-centric applications can be understood as middle-size applications
More informationThe WebShop E-Commerce Framework
The WebShop E-Commerce Framework Marcus Fontoura IBM Almaden Research Center 650 Harry Road, San Jose, CA 95120, U.S.A. e-mail: fontouraalmaden.ibm.com Wolfgang Pree Professor of Computer Science Software
More informationA Configuration Management Model for Software Product Line
A Configuration Management Model for Software Product Line Liguo Yu 1 and Srini Ramaswamy 2 1 Computer Science and Informatics Indiana University South Bend South Bend, IN 46634, USA ligyu@iusb.edu 2 Computer
More informationA Brief Analysis of Web Design Patterns
A Brief Analysis of Web Design Patterns Ginny Sharma M.Tech Student, Dept. of CSE, MRIU Faridabad, Haryana, India Abstract Design patterns document good design solutions to a recurring problem in a particular
More informationSERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED BUSINESS INTEGRATION MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED BUSINESS INTEGRATION MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework
More informationWeb Application Development and Frameworks
Web Application Development and Frameworks Student: Abdullah Mamun (Mamun) Spring 2008 April 18, 2008 Mamun: COMS E6125 1 Introduction Web application and frameworks Exponential growth of human s dependency
More informationA Framework of Model-Driven Web Application Testing
A Framework of Model-Driven Web Application Testing Nuo Li, Qin-qin Ma, Ji Wu, Mao-zhong Jin, Chao Liu Software Engineering Institute, School of Computer Science and Engineering, Beihang University, China
More informationService Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies
Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies 3-day seminar Give Your Business the Competitive Edge SOA has rapidly seized the momentum and center stage because
More informationStructuring Product-lines: A Layered Architectural Style
Structuring Product-lines: A Layered Architectural Style Tommi Myllymäki, Kai Koskimies, and Tommi Mikkonen Institute of Software Systems, Tampere University of Technology Box 553, FIN-33101 Tampere, Finland
More informationDifferent Approaches used in Software Product Families
Different Approaches used in Software Product Families Rafia Inam Mälardalens University. Rafia.inam@mdh.se Abstract The use of software in consumer products is growing tremendously in current era. Further
More informationSeamless UML Support for Service-based Software Architectures
Seamless UML Support for Service-based Software Architectures Matthias Tichy and Holger Giese Software Engineering Group, Department of Computer Science University of Paderborn, Germany [mtt hg]@uni-paderborn.de
More informationThe WebShop e-commerce framework
The WebShop e-commerce framework Marcus Fontoura 1, Wolfgang Pree 2, and Bernhard Rumpe 3 1 Cyberspace and Web Technology Department, IBM Almaden Research Center 650 Harry Rd., San Jose, CA, 91520, U.S.A
More informationA Visual Language Based System for the Efficient Management of the Software Development Process.
A Visual Language Based System for the Efficient Management of the Software Development Process. G. COSTAGLIOLA, G. POLESE, G. TORTORA and P. D AMBROSIO * Dipartimento di Informatica ed Applicazioni, Università
More informationEnabling Technologies for Web-Based Legacy System Integration
Enabling Technologies for Web-Based Legacy System Integration Ying Zou Kostas Kontogiannis University of Waterloo Dept. of Electrical & Computer Engineering Waterloo, ON, N2L 3G1 Canada Abstract With the
More informationPrerequisites for Successful SOA Adoption
George Feuerlicht University of Technology, Sydney jiri@it.uts.edu.au 1. INTRODUCTION The adoption of SOA (Service Oriented Architecture) has gained momentum in the past two years, and the predictions
More informationApplying 4+1 View Architecture with UML 2. White Paper
Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was
More informationBasic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
More informationA Form-based Approach for Application Development By Web Service Integration
A Form-based Approach for Application Development By Web Service Integration Takeshi Chusho, Ryousuke Yuasa and Shinpei Nishida Department of Computer Science, Meiji University Kawasaki, 214-8571, Japan
More informationJAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS QUARTER 2 NETWORKING AND OPERATING SYSTEMS ESSENTIALS. Module 1 - Office Applications
SOFTWARE ENGINEERING TRACK JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS Module 1 - Office Applications This subject enables users to acquire the necessary knowledge and skills to use Office
More informationCHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE
CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE Zahra Askarinejad Amiri 1 1 Department of Computer Engineering, Staffordshire University ABSTRACT zahra.askarinejad@gmail.com As Information
More informationIssues in Implementing Service Oriented Architectures
Issues in Implementing Service Oriented Architectures J. Taylor 1, A. D. Phippen 1, R. Allen 2 1 Network Research Group, University of Plymouth, United Kingdom 2 Orange PCS, Bristol, United Kingdom email:
More informationComponent Based Development in Software Engineering
Component Based Development in Software Engineering Amandeep Bakshi, Rupinder Singh Abstract--In today s world, Component Based development is an active research area for more than a decade in software
More informationDesign Patterns. Design patterns are known solutions for common problems. Design patterns give us a system of names and ideas for common problems.
Design Patterns Design patterns are known solutions for common problems. Design patterns give us a system of names and ideas for common problems. What are the major description parts? Design Patterns Descriptions
More informationTool Support for Software Variability Management and Product Derivation in Software Product Lines
Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,
More informationLesson Overview. Getting Started. The Internet WWW
Lesson Overview Getting Started Learning Web Design: Chapter 1 and Chapter 2 What is the Internet? History of the Internet Anatomy of a Web Page What is the Web Made Of? Careers in Web Development Web-Related
More informationService Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies
Service Oriented Architecture (SOA) Architecture, Governance, Standards and Technologies 3-day seminar Give Your Business the Competitive Edge SOA has rapidly seized the momentum and center stage because
More informationContents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53
Preface xvi Part I Introduction and System Engineering 1 Chapter 1 Introduction 2 1.1 What Is Software Engineering? 2 1.2 Why Software Engineering? 3 1.3 Software Life-Cycle Activities 4 1.3.1 Software
More informationMyths About Service-Oriented Architecture Demystifying SOA. producers can coexist, and still have no dependence on each other.
WSJ: SOA Myths About Service-Oriented Architecture Demystifying SOA Service-oriented architecture (SOA) refers to an architectural solution that creates an environment in which services, service consumers,
More informationResearch on the Model of Enterprise Application Integration with Web Services
Research on the Model of Enterprise Integration with Web Services XIN JIN School of Information, Central University of Finance& Economics, Beijing, 100081 China Abstract: - In order to improve business
More informationWeb services to allow access for all in dotlrn
Web services to allow access for all in dotlrn German Moreno 1, Olga C. Santos 2, Jesus G. Boticario 2, Ramon Fabregat 1 1 Institute of Informatics and Aplications (IIiA), Universidad de Girona, Spain,
More informationBCS HIGHER EDUCATION QUALIFICATIONS. BCS Level 5 Diploma in IT. Software Engineering 1. June 2015 EXAMINERS REPORT
BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT Software Engineering 1 June 2015 EXAMINERS REPORT General Comments This is a technical paper about Software Engineering. Questions seek to
More informationIntroduction to OGC Web Services
Introduction to OGC Web Services An OGC White Paper May 30, 2001 Editors: Allan Doyle Carl Reed Contributors: Jeff Harrison Mark Reichardt What are Web Services? 1 During the last year, a new technology
More informationMulti-objective Design Space Exploration based on UML
Multi-objective Design Space Exploration based on UML Marcio F. da S. Oliveira, Eduardo W. Brião, Francisco A. Nascimento, Instituto de Informática, Universidade Federal do Rio Grande do Sul (UFRGS), Brazil
More informationConfiguration Management
83 Chapter 6 Configuration Management Published as: Configuration Management in Component Based Product Populations, Rob van Ommering, 10th International Workshop on Software Configuration Management,
More informationXML for Manufacturing Systems Integration
Information Technology for Engineering & Manufacturing XML for Manufacturing Systems Integration Tom Rhodes Information Technology Laboratory Overview of presentation Introductory material on XML NIST
More informationSoftware Engineering. Software Engineering. Component-Based. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Component-Based Software Engineering Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain that CBSE is concerned with developing standardised components
More informationSOA for Healthcare: Promises and Pitfalls
SOA for Healthcare: Promises and Pitfalls Dennis B. Smith dbs@sei.cmu.edu SOA in Health Care Conference: Value in a Time of Change Chicago, IL USA June 3, 2009 Agenda Healthcare IT Challenges SOA: The
More informationService Oriented Architecture
Service Oriented Architecture Charlie Abela Department of Artificial Intelligence charlie.abela@um.edu.mt Last Lecture Web Ontology Language Problems? CSA 3210 Service Oriented Architecture 2 Lecture Outline
More informationRealizing business flexibility through integrated SOA policy management.
SOA policy management White paper April 2009 Realizing business flexibility through integrated How integrated management supports business flexibility, consistency and accountability John Falkl, distinguished
More informationFederal Enterprise Architecture and Service-Oriented Architecture
Federal Enterprise Architecture and Service-Oriented Architecture Concepts and Synergies Melvin Greer Chief Strategist, SOA / Cloud Computing Certified Enterprise Architect Copyright August 19, 2010 2010
More informationAn Overview of Challenges of Component Based Software Engineering
An Overview of Challenges of Component Based Software Engineering Shabeeh Ahmad Siddiqui Sr Lecturer, Al-Ahgaff University, Yemen Abstract Nowadays there is trend of using components in development of
More informationDone. Imagine it. c Consulting. c Systems Integration. c Outsourcing. c Infrastructure. c Server Technology.
WHITE PAPER. Model-Driven Application Development with Agile Business Suite Alan Hood Unisys Systems and Technology Agility your survival depends on it. Agile organizations react swiftly to changing market
More informationModel-based Configuration Management for a Web Engineering Lifecycle
Model-based Configuration Management for a Web Engineering Lifecycle Tien N. Nguyen Elect. and Computer Engineering Department Iowa State University USA 1 Web Engineering Web development has changed Initially
More informationTask-Model Driven Design of Adaptable Educational Hypermedia
Task-Model Driven Design of Adaptable Educational Hypermedia Huberta Kritzenberger, Michael Herczeg Institute for Multimedia and Interactive Systems University of Luebeck Seelandstr. 1a, D-23569 Luebeck,
More informationWebSphere Business Modeler
Discovering the Value of SOA WebSphere Process Integration WebSphere Business Modeler Workshop SOA on your terms and our expertise Soudabeh Javadi Consulting Technical Sales Support WebSphere Process Integration
More informationISSUES ON FORMING METADATA OF EDITORIAL SYSTEM S DOCUMENT MANAGEMENT
ISSN 1392 124X INFORMATION TECHNOLOGY AND CONTROL, 2005, Vol.34, No.4 ISSUES ON FORMING METADATA OF EDITORIAL SYSTEM S DOCUMENT MANAGEMENT Marijus Bernotas, Remigijus Laurutis, Asta Slotkienė Information
More informationDevelopment/Maintenance/Reuse: Software Evolution in Product Lines
Development/Maintenance/Reuse: Software Evolution in Product Lines Stephen R. Schach Vanderbilt University, Nashville, TN, USA Amir Tomer RAFAEL, Haifa, Israel Abstract The evolution tree model is a two-dimensional
More informationBusiness Process Management with @enterprise
Business Process Management with @enterprise March 2014 Groiss Informatics GmbH 1 Introduction Process orientation enables modern organizations to focus on the valueadding core processes and increase
More informationIMPLEMENTATION OF SERVICE ORIENTED ARCHITECTURE USING ITIL BEST PRACTICES
Journal of Engineering Science and Technology Vol. 10, No. 6 (2015) 765-770 School of Engineering, Taylor s University IMPLEMENTATION OF SERVICE ORIENTED ARCHITECTURE USING ITIL BEST PRACTICES A. WAHAB
More informationData Mining Governance for Service Oriented Architecture
Data Mining Governance for Service Oriented Architecture Ali Beklen Software Group IBM Turkey Istanbul, TURKEY alibek@tr.ibm.com Turgay Tugay Bilgin Dept. of Computer Engineering Maltepe University Istanbul,
More informationDesign with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1
Design with Reuse Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Objectives To explain the benefits of software reuse and some reuse
More informationApplication. Frameworks. Object-Oriented. Mohamed E. Fayad and Douglas C. Schmidt, Guest Editors
Object-Oriented Application Frameworks Computing power and network bandwidth have increased dramatically over the past decade, yet the design and implementation of complex software remain expensive and
More informationUML-based Conceptual Design Approach for Modeling Complex Processes in Web Application
UML-based Conceptual Design Approach for Modeling Complex Processes in Web Application Siti Azreena Mubin Faculty of Computer Science and Information Technology, Universiti Putra Malaysia, 43400 Serdang,
More informationINTELLIGENT VIDEO SYNTHESIS USING VIRTUAL VIDEO PRESCRIPTIONS
INTELLIGENT VIDEO SYNTHESIS USING VIRTUAL VIDEO PRESCRIPTIONS C. A. LINDLEY CSIRO Mathematical and Information Sciences E6B, Macquarie University Campus, North Ryde, NSW, Australia 2113 E-mail: craig.lindley@cmis.csiro.au
More informationSOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q. Exam Code: S90-03A. Exam Name: SOA Design & Architecture
SOACertifiedProfessional.Braindumps.S90-03A.v2014-06-03.by.JANET.100q Number: S90-03A Passing Score: 800 Time Limit: 120 min File Version: 14.5 http://www.gratisexam.com/ Exam Code: S90-03A Exam Name:
More information