Implementing Architecture Stratification

Total Page:16

File Type:pdf, Size:1020Kb

Implementing Architecture Stratification Implementing Architecture Stratification Vom Fachbereich Informatik der Technischen Universit¨atDarmstadt zur Erlangung des akademischen Grades eines Doktor-Ingenieurs (Dr.-Ing.) genehmigte Dissertation von Diplom-Informatiker Martin Girschick geboren in Darmstadt Referent Prof. Dr. Thomas K¨uhne Korreferent Prof. Dr. Andy Sch¨urr Tag der Einreichung 26. August 2010 Tag der m¨undlichen Pr¨ufung 13. Oktober 2010 Darmstadt 2010 D17 2 3 Abstract Although currently software development often separates the design phase from the implementation, the trend towards model-driven approaches is undeniable. As models are the primary development artifact in model-driven development, one has to deal with the problems surrounding huge and therefore unmanageable models. To tackle these issues, systems are often divided into components that are modeled separately. As an alternative, views can be used, which hide certain aspects of the model or present them in a different form. In both cases, several models or at least several views co-exist, which leads to the problem of model synchronization. One of the main goals of model-driven development is the automatic generation of executable applications. Here, too, model synchronization is problematic, as several information sources may affect the same code fragment. When only parts of the system are generated, the remaining application has to be coded by hand, which complicates the reapplication of the generation process. In order to achieve a high level of automation in model-driven development, the complete application has to be modeled. In this scenario, the use of several models improves understandability and precision but again leads to model synchronization issues. In this dissertation I extend and concretize the ideas presented in [AK00] and [AK03]. In [AK00] Atkinson and K¨uhneintroduced the concept of stratified architectures. With it, software systems are described by a number of strata with decreasing levels of abstraction. Each stratum introduces a concern and thereby concretizes the system description. This strict ordering limits dependencies to adjacent strata. In [AK03] the authors complement the concept by using annotations to describe each concern. By introducing “refinement transformations", which implement abstractly described concerns, annotations enable stepwise refinement for model based system development and|in addition|alleviate the aforementioned model synchronization issue. In my thesis I discuss similar approaches and compare them to architecture stratifica- tion. Additionally, I present a complete implementation of the stratification concept and verify its effectiveness by applying it to a real-world project. The central element 4 is a combined graphical and textual model transformation language, which optimally fits the needs for stepwise refinement in a model-driven environment. This language enables fine grained and highly parameterizable model transformations. They are organized in concern-oriented transformation rules and described using a detailed metamodel. The rules are presented using a notation, which employs activity dia- grams for the control flow and collaboration diagrams for the model transformation. The language also integrates a template-based code generation language and can be extended further by using hand-written code. It is integrated into a CASE tool and provides the ability to trace concerns and their implementations within a stratified architecture. 5 Zusammenfassung Obwohl in der Softwareentwicklung derzeit oft noch eine klare Trennung zwischen der Entwurfs- und Implementierungsphase besteht, ist dennoch der Trend zu mod- ellgetriebenen Ans¨atzenunverkennbar. Modelle sind ein prim¨aresEntwicklungsarte- fakt modellgetriebener Entwicklung, sie sind jedoch oftmals sehr umfangreich und deshalb schwer zu handhaben. Daher werden Softwaresysteme oft in Komponenten unterteilt und separat modelliert. Alternativ k¨onnenmehrere Ansichten verwen- det werden, die bestimmte Aspekte des Systems verstecken oder in anderer Form darstellen. In beiden F¨allenexistieren mehrere Modelle oder zumindest mehrere Ansichten, was zu dem Problem der Modellsynchronisation f¨uhrt. Eines der Hauptziele modellgetriebener Entwicklung ist die automatische Gener- ierung von ausf¨uhrbarenAnwendungen. Auch hier existiert das Problem der Modell- synchronisation, da mehrere Informationsquellen mitunter das selbe Codefragment beeinflussen. Falls nur Teile einer Anwendung generiert werden, muss der Rest durch handgeschriebenen Code erg¨anztwerden. Dies erschwert die erneute Durchf¨uhrung des Generierungsprozesses. Um einen hohen Automatisierungsgrad in der modellgetriebenen Entwicklung zu erreichen, muss die gesamte Anwendung modelliert werden. Bei diesem Ansatz verbessert die Verwendung mehrerer Modelle sowohl die Verst¨andlichkeit als auch die Genauigkeit, f¨uhrtjedoch erneut zum Problem der Modellsynchronisation. In dieser Dissertation erweitere und konkretisiere ich die Ideen aus [AK00] und [AK03]. Atkinson und K¨uhnestellen in [AK00] die Architekturstratifikation vor. Damit werden Softwaresysteme durch mehrere Straten mit fallendem Abstraktions- niveau beschrieben. Jedes Stratum f¨ugteinen Aspekt hinzu und konkretisiert damit die Systembeschreibung. Eine solche strikte Ordnung beschr¨anktAbh¨angigkeiten auf benachbarte Straten. Um die Aspekte zu beschreiben, erg¨anzendie Autoren in [AK03] das Konzept um Annotationen. Diese erm¨oglichen durch die Verwendung von \Verfeinerungstransformationen" die Implementierung abstrakt beschriebener Aspekte und damit eine schrittweise Verfeinerung. Hierdurch mildern sie auch das zuvor erw¨ahnte Problem der Modellsynchronisation. In meiner Arbeit diskutiere ich ¨ahnliche Ans¨atzeund vergleiche sie mit der Architek- 6 turstratifikation. Ich beschreibe eine vollst¨andigeImplementierung des Stratifika- tionskonzepts und zeige ihre Effektivit¨atdurch die Anwendung auf ein reales Projekt. Im Zentrum steht eine grafische und textuelle Modelltransformationssprache, die op- timal auf die Bed¨urfnisseder schrittweisen Verfeinerung in einem modellgetriebenen Umfeld abgestimmt ist. Diese Sprache erm¨oglicht feingranulare und hochgradig parametrisierbare Modelltransformationen, die in Transformationsregeln organisiert sind und sich an Aspekten orientieren. Ihre Beschreibung erfolgt durch ein detail- liertes Metamodell. Die Notation der Regeln erfolgt durch Aktivit¨atsdiagramme, zur Beschreibung des Ablaufs, und Kollaborationsdiagramme, f¨urdie Modelltrans- formationen. Die Sprache integriert dar¨uber hinaus eine vorlagenbasierte Code- generierungssprache und kann durch handgeschriebenen Code erweitert werden. Sie ist in einer CASE-Werkzeug integriert und bietet die M¨oglichkeit, Aspekte und ihre Implementierung innerhalb einer stratifizierten Architektur nachzuverfolgen. 7 Preface After finishing my diploma thesis the desire to do further research was still present. My field of expertise was an ideal match for a newly founded department at the Technische Universit¨atDarmstadt: Metamodeling and its Applications. It presented me with the opportunity to do research and teach at the same time. After starting my work it became clear, that balancing those two wouldn't be an easy task. The head of the department and thesis supervisor, Prof. Dr. Thomas K¨uhne,gave me the opportunity to choose my own research subject. I'd like to thank him for that as this is in research institutions not always the case. He also provided continued guidance during my research. After evaluating different directions I settled on extending a previous research sub- ject of Prof. K¨uhne.His work on architecture stratification provided an ideal basis for a broad research area. I focussed on model transformation, which is a major re- search topic within the TU Darmstadt real-time systems group lead by Prof. Dr. An- dreas Sch¨urr,who became the second reviewer for my thesis. I wrote several joined papers with Prof. K¨uhneand his detailed understanding of the research subject and his experience in writing papers was very helpful. He also reviewed|along with Prof. Sch¨urr|several drafts of my thesis. In addition to writing papers, well-rehearsed presentations are also very impor- tant. The real-time systems department and the software technology group lead by Prof. Dr. Mira Mezini organized regular seminars, in which I was able to present my work and get valuable feedback from the department members. During my research I supervised several study and diploma theses. All of them helped to improve the contents of my dissertation and I'm very lucky to have found students, who really enjoyed the subject and brought a lot additional input. My thanks go to Felix Klar, Daniel Bausch, Axel Schulz and Anouar Haha. Finally I would like to thank my wife Joyce Wittur for her support, especially for reading and correcting my thesis. Also my gratitude goes to my parents Emilie and Werner Girschick and to my friends Sven Kloppenburg, Falk Fraikin and Christoph M¨uller,who always encouraged me to go on. 8 Declaration The content of this dissertation is a product of the author's original work except where explicitly stated as otherwise. CONTENTS 9 Contents 1 Introduction 15 1.1 Model-Driven Software Development . 15 1.2 Author's Contribution . 16 1.3 Structure of the Dissertation . 17 1.4 List of Published Papers . 18 2 Trends in Software Development 21 2.1 Concepts . 21 2.2 Methodologies and Research Subjects . 22 2.2.1 Techniques to Address Separation of Concerns . 22 2.2.2 Patterns and Frameworks . 24 2.2.3 Domain-Specific Languages
Recommended publications
  • Devpartner Java Edition Getting Started Guide
    DevPartner Java Edition Getting Started Guide Release 4.5 Copyright © 2001–2009 Micro Focus (IP) Ltd. All rights reserved. Micro Focus (IP) Ltd. has made every effort to ensure that this book is correct and accurate, but reserves the right to make changes without notice at its sole discretion at any time. The software described in this document is supplied under a license and may be used or copied only in accordance with the terms of such license, and in particular any warranty of fitness of Micro Focus software products for any particular purpose is expressly excluded and in no event will Micro Focus be liable for any consequential loss. Animator®, COBOLWorkbench®, EnterpriseLink®, Mainframe Express®, Micro Focus®, Net Express®, REQL® and Revolve® are registered trademarks, and AAI™, Analyzer™, Application Quality Workbench™, Application Server™, Application to Application Interface™, AddPack™, AppTrack™, AssetMiner™, BoundsChecker™, CARS™, CCI™, DataConnect™, DevPartner™, DevPartnerDB™, DevPartner Fault Simulator™, DevPartner SecurityChecker™,Dialog System™, Driver:Studio™, Enterprise Server™, Enterprise View™, EuroSmart™, FixPack™, LEVEL II COBOL™, License Server™, Mainframe Access™, Mainframe Manager™, Micro Focus COBOL™, Micro Focus Studio™, Micro Focus Server™, Object COBOL™, OpenESQL™, Optimal Trace™,Personal COBOL™, Professional COBOL™, QACenter™, QADirector™, QALoad™, QARun™, Quality Maturity Model™, Server Express™, SmartFind™, SmartFind Plus™, SmartFix™, SoftICE™, SourceConnect™, SupportLine™, TestPartner™, Toolbox™, TrackRecord™, WebCheck™, WebSync™, and Xilerator™ are trademarks of Micro Focus (IP) Ltd. All other trademarks are the property of their respective owners. No part of this publication, with the exception of the software product user documentation contained on a CD-ROM, may be copied, photocopied, reproduced, transmitted, transcribed, or reduced to any electronic medium or machine-readable form without prior written consent of Micro Focus (IP) Ltd.
    [Show full text]
  • All About Platforms: Lessons Learned from Eclipse
    All About Platforms Lessons Learned from Eclipse Mike Milinkovich Executive Director Eclipse Foundation April 22, 2006 Confidential | Date | Other Information, if necessary © 2002 IBM Corporation Four Key Elements of a Platform 1.Great technology 2.Broad Adoption 3.“Architecture of Participation” 4.Hijacked by a fanatical community Copyright © 2006 Eclipse Foundation, Inc., all right reserved. Made available under the Eclipse Public License v1.0 Four Key Elements to Platform 1.Great technology 2.Broad Adoption 3.“Architecture of Participation” 4.Hijacked by a fanatical community Copyright © 2006 Eclipse Foundation, Inc., all right reserved. Made available under the Eclipse Public License v1.0 Eclipse is a Java IDE ° Widely regarded as the Java development environment ° With all the bells and whistles… ° Language-aware editors, views, … ° Refactoring support ° Integrated unit testing and debugging ° Incremental compilation and build ° Team development support ° Out of the box support for CVS ° … Copyright © 2006 Eclipse Foundation, Inc., all right reserved. Made available under the Eclipse Public License v1.0 Eclipse is an IDE Framework ° Eclipse + JDT = Java IDE ° First class framework for Java ° Language aware editor ° Incremental build ° Integrated debugging ° Eclipse + CDT = C/C++ IDE ° First class framework for C/C++ ° Language aware editor ° Refactoring, search ° Eclipse + PHP = PHP IDE ° Eclipse + JDT + CDT + PHP = Java, C/C++, PHP IDE ° … Copyright © 2006 Eclipse Foundation, Inc., all right reserved. Made available under the Eclipse
    [Show full text]
  • Flexibility at the Roots of Eclipse
    6°ÊÈ >ʽäÇ Dynamic Wizard Modeling with GMF Introduction to the Using GMF to Build a Dynamic Wizard Generic Eclipse Framework and a Graphical Editor Modeling System Developing a Deploying the BIRT Graphical Modeling Viewer to JBoss Tool for Eclipse Disseminate Report Content to an Application Server Subversive The Eclipse Enabling Plug-In for Integration and Subversion Interoperability for Eclipse based Development An Introduction to the Corona Project Flexibility at the Roots of Eclipse Solving the GUI Dilemma: SWTSwing and Eclipse on Swing 6°ÊÈ >ʽäÇ Vol.6 January 2007 Dynamic Wizard Modeling with GMF Introduction to the Using GMF to Build a Dynamic Wizard Generic Eclipse Table of Contents Framework and a Graphical Editor Modeling System Developing a Deploying the BIRT Graphical Modeling Viewer to JBoss Tool for Eclipse Disseminate Report Content to an Application Server Subversive The Eclipse Enabling Plug-In for Integration and Subversion FEATURES Interoperability for Eclipse based Development An Introduction to the Corona Project Flexibility at the Roots of Eclipse 29 Flexibility at the Roots of Eclipse Solving the GUI Dilemma: SWTSwing and Eclipse on Solving the GUI Dilemma: Swing SWTSwing and Eclipse on Swing No trench in the world of Java is deeper then that between SWT and Swing or Eclipse and Sun. Unity is only found in the knowledge that everybody suff ers from this argument. But how to end this almost religious battle over the righteous GUI-toolkit? How to bang their heads together if they only know DEPARTMENT one point of view—for them or against them! Th e sister projects SWTSwing and Eclipse on Swing News & Trends (EOS) achieve this trick.
    [Show full text]
  • Generation of Struts Software Artefacts from UML Stereotypes Project Work
    Generation of Struts software artefacts from UML stereotypes Project Work as a requirement of master’s programme in Information and Media Technologies Submitted by: Andriy Dekhtyar [email protected] Matriculation number: 23818 Supervised by: Prof. Dr. J. W. Schmidt STS - TUHH M.Sc. Miguel Garcia STS – TUHH Hamburg, Germany February 2004. - 2 - Abstract Subject domain: Modeling, Web Applications, MDA. Problem description: This work is devoted to modeling of web applications based on Struts framework as a part of whole process of software application development. After conducting an analysis of existing approaches in web application development and tools available in the market, a given proposal of meta-model for web application modeling targets to fill the gap in modeling of web applications. An existing framework was extended and enhanced to reflect new visual syntax for modeling interactions and architecture of web application. Applied method has proven its capabilities in modeling web applications. Its usage can considerably increase the speed of development process of web application. - 3 - Table of Contents: 1 Description of web application modeling............................................................................... 6 1.1 Goal of web application modeling.................................................................................. 6 1.2 MDA brief description.................................................................................................... 7 1.2.1 MDA vs. traditional development?........................................................................
    [Show full text]
  • Model Driven Software Engineering for Web Applications
    Model Driven Software Engineering for Web Applications Andreas Kraus Dissertation zur Erlangung des akademischen Grades des Doktors der Naturwissenschaften an der Fakultät für Mathematik, Informatik und Statistik der Ludwig-Maximilians-Universität München vorgelegt am 23.04.2007 Model Driven Software Engineering for Web Applications Tag der Einreichung: 23.04.2007 Tag des Rigorosums: 04.07.2007 Berichterstatter Prof. Dr. Rolf Hennicker (Ludwig-Maximilians-Universität, München) Prof. Dr. Antonio Vallecillo (Universidad de Malaga, Spanien) 2 Model Driven Software Engineering for Web Applications Summary Model driven software engineering (MDSE) is becoming a widely accepted approach for developing complex applications and it is on its way to be one of the most promising para- digms in software engineering. MDSE advocates the use of models as the key artifacts in all phases of the development process, from analysis to design, implementation and testing. The most promising approach to model driven engineering is the Model Driven Architec- ture (MDA) defined by the Object Management Group (OMG). Applications are modeled at a platform independent level and are transformed to (possibly several) platform specific implementations. Model driven Web engineering (MDWE) is the application of model driven engineering to the domain of Web application development where it might be par- ticularly helpful because of the continuous evolution of Web technologies and platforms. However, most current approaches for MDWE provide only a partial application of the MDA pattern. Further, metamodels and transformations are not always made explicit and metamodels are often too general or do not contain sufficient information for the automatic code generation. Thus, the main goal of this work is the complete application of the MDA pattern to the Web application domain from analysis to the generated implementation, with transformations playing an important role at every stage of the development process.
    [Show full text]
  • “Model Based System Development”
    Model-based System Development www.ifi.uio.no/inf5120 Part I MDE - Model Driven Engineering Lecture Notes for Course “Model Based System Development” INF5120 – Spring 2008 Classification Notes for course participants Project Responsible : Arne-Jørgen Berre, SINTEF and University of Oslo Authors : Arne-Jørgen Berre, Brian Elvesæter Contributors: Projects INTEROP, ATHENA, SWING, SHAPE, COIN, Gøran Olsen Task INF5120 Course notes Status : Version 1.00 Date : May 2, 2008 1 Table of Contents Part I 1 Lecture Notes for Course ............................................................................................................. 1 “Model Based System Development” .......................................................................................... 1 INF5120 – Spring 2008 ................................................................................................................. 1 Executive Summary ...................................................................................................................... 4 I Model Driven Development .................................................................................................. 5 I.1 Introduction ...................................................................................................................... 5 I.2 Principles of Modelling.................................................................................................... 6 I.3 Model Driven Architecture .............................................................................................
    [Show full text]
  • Data State of Play
    Data State of Play Compliance Testing and Interoperability Checking S. Viganó TXT e-solutions M. Millot European Commission DG JRC, Institute for Environment and Sustainability EUR 23045 EN - 2007 The mission of the Institute for Environment and Sustainability is to provide scientific-technical support to the European Union’s Policies for the protection and sustainable development of the European and global environment. European Commission Joint Research Centre Institute for Environment and Sustainability Contact information Michel Millot Address: European Commission, Joint Research Centre, Institute for Environment and Sustainability Spatial Data Infrastructure Unit T.P. 262 Via E. Fermi, 2749 I-21027 Ispra (VA) ITALY E-mail: [email protected] Tel.: +39-0332786146 Fax: +39-0332786325 http://ies.jrc.ec.europa.eu http://www.jrc.ec.europa.eu Stefano Viganó Address: TXT e-solutions Via Frigia, 27 I-20126 Milano (MI) ITALY E-Mail: [email protected] Tel. +39-02257711 Fax.+39-022578994 http://www.txtgroup.com/it/index.shtml Legal Notice Neither the European Commission nor any person acting on behalf of the Commission is responsible for the use which might be made of this publication. Europe Direct is a service to help you find answers to your questions about the European Union Freephone number (*): 00 800 6 7 8 9 10 11 (*) Certain mobile telephone operators do not allow access to 00 800 numbers or these calls may be billed. A great deal of additional information on the European Union is available on the Internet. It can be accessed through the Europa server http://europa.eu/ 2 JRC 41822 EUR 23045 EN ISBN 978-92-79-07817-0 ISSN 1018-5593 DOI 10.2788/55339 Luxembourg: Office for Official Publications of the European Communities © European Communities, 2007 Reproduction is authorised provided the source is acknowledged Printed in Italy 3 Table of Contents 1.
    [Show full text]
  • Tutorials Optimalj 3.1
    Using OptimalJ: Tutorials OptimalJ 3.1 OptimalJ 3.1 Using OptimalJ: Tutorials Restricted Rights Notice This document and the product referenced in it are subject to the following legends: Access is limited to authorized users. Use of this product is subject to the terms and conditions of the user's License Agreement with Compuware Corporation. © 2001–2003 Compuware Corporation. All rights reserved. Unpublished – rights reserved under the Copyright Laws of the United States. U.S. GOVERNMENT RIGHTS-Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in Compuware Corporation license agreement and as provided in DFARS 227.7202-1(a) and 227.7202-3(a) (1995), DFARS 252.227-7013(c)(1)(ii)(OCT 1988), FAR 12.212(a) (1995), FAR 52.227-19, or FAR 52.227-14 (ALT III), as applicable. Compuware Corporation. This product contains confidential information and trade secrets of Compuware Corporation. Use, disclosure, or reproduction is prohibited without the prior express written permission of Compuware Corporation. Trademarks Compuware and OptimalJ are registered trademarks of Compuware Corporation. Windows and all Windows-based trademarks and logos are trademarks or registered trademarks of Microsoft Corporation in the United States and other countries. Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. The OptimalJ product includes code licensed from RSA Security, Inc. and software developed by Netbeans, the Apache Software Foundation and ObjectWeb Group. Apache Tomcat and ANT- Copyright (c) 2000 The Apache Software Foundation. Credits go to these organizations and their contributors.
    [Show full text]
  • Java Application Development
    Maximizing Your Java Application Development an Developer eBook contents []Maximizing Your Java Application Development While Java helps in fulfilling the promise of "write once, use anywhere", there are practical concerns developers need to address in developing their code, whether its porting from another language, working in the best IDE or optimizing for today's multi-core computing environments. This eBook will help you in understanding these issues and how you can get the most out of your Java code. 2 Onward and Upward: Porting Apps to Higher JDK Versions by Rahul Kumar Gupta 2 10 Automate Your J2ME Application Porting with Preprocessing by Bruno Delb 23 Eclipse, NetBeans, and IntelliJ: Assessing the 10 23 Survivors of the Java IDE Wars by Jacek Furmankiewicz 34 The Work Manager API: Parallel Processing Within a J2EE Container 34 by Rahul Tyagi Maximizing Your Java Application Development, an Internet.com Developer eBook. Copyright 2008, Jupitermedia Corp. 1 []Maximizing Your Java Application Development Onward and Upward: Porting Apps to Higher JDK Versions Porting an existing Java-based application to a new JDK version is not as easy as many assume. Learn a comprehensive, systematic approach that can ensure a smooth process by Rahul Kumar Gupta he IT indusTry is synonymous wiTh change. Every operaTing environmenT ThaT offers new value-added fea - day sees some new sofTware version or specifica - Tures and improved performance. PorTing requires T Tion released, which necessiTaTes consTanT changing The programming deTails, which can be done upgrades. Programming professionals ofTen musT aT The binary (applicaTion) level or The source code level. upgrade business applica - The TargeT configuraTion may Tions To The new versions of include a new operaTing sys - The sofTware upon which Tem, compiler, daTabase, They are builT.
    [Show full text]
  • MDA Tool Support for Model Driven Software Evolution: a Survey
    Madhavi Karanam / International Journal of Computer Science Engineering (IJCSE) MDA Tool Support for Model Driven Software Evolution: A Survey Madhavi Karanam Computer Science and Engineering Department, Sri Venkateswara Engineering College, Suryapet, Telangana, India Email: [email protected] Abstract: The explosive growth of model driven approaches and the emergence of Model Driven Engineering (MDE) have led to the Model-Driven Software Evolution (MoDSE) which is a new paradigm for software evolution. Growing interest in the model driven approaches has largely increased the number of tools into the development environment. Using the modeldescribed by analysts, software tools will do the rest of the task,generating software that will comply with customer's defined requirements.Previous research has shown that the user often do not use or know all of the tools available in the model evolution environment that they regularly use. The common solution to this problem is to provide a means to search through passive help documents. So, choosing the right tool has become very much essential because of the diverse tools usage for MoDSE tasks.The main aim of this paper is to explore the MDA tools to know the automation support provided by these tools in model driven evolution process. It is also aim to know the general list of tools, ease of use, which meets the requirements, support for platform independent models, free and commercial tools etc. It is observed from the survey of various tools that no single tool serves the purpose and there is an enough automation support for activities of Model Driven Software Evolution. Key Words: Model Driven Software Evolution, Model Driven Architecture, MDA Tools.
    [Show full text]
  • Choosing the Right Architecture: What It Means for You and Your Business Contents
    Choosing the Right Architecture: What It Means for You and Your Business Contents Flexible Architecture Management: Good for Business, Easier than Ever . 2 Rikki Kirzner Model-driven and Pattern-based Development Using Rational Software Architect, Part 1: Overview of the Model-driven Development Paradigm with Patterns . 5 Colin Yu Start Focusing on Architecture--Your Career and Future Depend On It . 12 Rikki Kirzner Quality Governance for Software Organizations . 16 Marlene Ellin Open-source Architected Model-driven Development in the Real World . 22 Steve Andrews Stosh Misiaszek Enterprise Application Transformation: Leveraging Your Investment in Proven, Mission-critical Business Applications . 36 Georgiann Zaglakas 1 © 2007 Jupitermedia Corp. Choosing the Right Architecture: What It Means for You and Your Business Flexible, Architecture Management: IBM Resources • Rational Software Architect v7 Good for Business, Easier than Ever • Rational Modeling Extension Finally the process of creating, modifying, governing, finding and reusing for MS. Net development assets is within the grasp of any Eclipse developer. Learn • Model SOAs with Rational Software how you and your organization can easily reuse software to lower soft- Architect: Case study, tools, and the business view ware development costs and improve quality. By Rikki Kirzner Reusability has been the holy grail of software development for decades. The growing popularity of Service Oriented Architecture has not only created a renewed interest in software reuse, but in many companies a mandate to reuse code, models, tests, and a host of other software assets and artifacts across the organization and throughout the development lifecycle. Thanks to today's tools, it is possible to efficiently create, locate, assess, and draw on reusable assets thanks in part to the creation of variable asset repositories that can address the needs of different developer roles and communi- ties and a federation of information among these repositories that makes content available in the right form to the appropriate community.
    [Show full text]
  • New Rational Products and Enhancements Offer a Fully Integrated Software Development Platform
    Software Announcement November 2, 2004 New Rational products and enhancements offer a fully integrated software development platform Overview Key prerequisites At a glance New and enhanced offerings from Refer to the Hardware requirements Rational software continue to drive and Software requirements sections. Offerings include new and updated the importance of software Rational products for design and development as a way for Planned availability dates construction and software quality. organizations to differentiate Key demonstrable capabilities business performance and compete Electronic software delivery: include: in the marketplace. The goals of this • release are to broaden appeal, raise • December 3, 2004: Deeper, richer integrations in new offerings for architects, productivity, extend integrations, and − Rational Application maintain standards consistency. developers, and testers based Developer for WebSphere on Eclipse 3.0, Hyades, and New products: Software V6.0 UML 2.0 − Rational Web Developer for • IBM Rational Web Developer for WebSphere Software V6.0 • Simplified design and WebSphere Software V6.0 − Rational Functional Tester construction featuring V6.1 drag-and-drop UI construction, • IBM Rational Application − Rational Manual Tester V6.1 rapid deployment to WebSphere Developer for WebSphere Application Server, and visual Software V6.0 • December 10, 2004: WebSphere Portal development • IBM Rational Software Modeler − Rational Software Architect V6.0 V6.0 − Rational Software Modeler • IBM Rational Software Architect V6.0 V6.0 − Rational Professional Bundle • IBM Rational Manual Tester V6.1 V6.0 • IBM Rational Professional Bundle Physical software delivery: V6.0 • January 7, 2005: Enhanced product: − Rational Application • IBM Rational Functional Tester Developer for WebSphere V6.11 Software V6.0 − Rational Web Developer for Additional product and competitive WebSphere Software V6.0 product trade-ups are also available.
    [Show full text]