Footer to have copyright, data and page numbers Only on the title slides Arial, 10 points, Color - black Tata Logo on left hand top – cannot be changed.

Slides:



Advertisements
Similar presentations
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Advertisements

Aspect Oriented Programming. AOP Contents 1 Overview 2 Terminology 3 The Problem 4 The Solution 4 Join point models 5 Implementation 6 Terminology Review.
Introduction to UML: Structural &Use Case Modeling
Data Model driven applications using CASE Data Models as the nucleus of software development in a Computer Aided Software Engineering environment.
9.5 Software Architecture
Copyright © 2008 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture. Andrew Stone Common Security.
Model Driven Architecture Efficiently react to Changing Architectural and Functional Requirements Stainless Steel Models for Red Rusting Technologies Wim.
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
Footer to have copyright, data and page numbers Only on the title slides Arial, 10 points, Color - black Tata Logo on right hand top – cannot be changed.
Architectural Design Principles. Outline  Architectural level of design The design of the system in terms of components and connectors and their arrangements.
Generating Enterprise Applications from Models Vinay Kulkarni, R Venkatesh, Sreedhar Reddy Tata Research Development and Design Centre, Pune, INDIA.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
12-1 © Prentice Hall, 2004 Chapter 12: Design Elements Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Course Instructor: Aisha Azeem
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Compuware Corporation Business Driven SOA Edwin Schumacher Director of Product Management
Traditional Web Based Application Structure Frameworks define how the application is designed, organised and deployed across various tiers.
Rational Unified Process Fundamentals Module 4: Disciplines II.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
An Introduction to Software Architecture
Integrating Security Design Into The Software Development Process For E-Commerce Systems By: M.T. Chan, L.F. Kwok (City University of Hong Kong)
Architectural Design portions ©Ian Sommerville 1995 Establishing the overall structure of a software system.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 07. Review Architectural Representation – Using UML – Using ADL.
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Enterprise Java Beans Java for the Enterprise Server-based platform for Enterprise Applications Designed for “medium-to-large scale business, enterprise-wide.
 Chapter 6 Architecture 1. What is Architecture?  Overall Structure of system  First Stage in Design process 2.
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
Reviewing Recent ICSE Proceedings For:.  Defining and Continuous Checking of Structural Program Dependencies  Automatic Inference of Structural Changes.
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
Architectural Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Distributed Information Systems. Motivation ● To understand the problems that Web services try to solve it is helpful to understand how distributed information.
ECE450S – Software Engineering II
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
December 4, ICSSEA’03 The SmartTools Software Factory The MDA approach and Generative programming for Software Development:
Devon M. Simmonds SERP’08, July-14-17, Las Vegas 1 Aspect-oriented Approaches to Model Driven Engineering Devon M. Simmonds Computer Science Department.
Java EE Patterns Dan Bugariu.  What is Java EE ?  What is a Pattern ?
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
1 Copyright © 2004, Oracle. All rights reserved. Oracle Application Development Framework.
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Introduction to EJB. What is an EJB ?  An enterprise java bean is a server-side component that encapsulates the business logic of an application. By.
CS 210 Proxy Pattern Nov 16 th, RMI – A quick review A simple, easy to understand tutorial is located here:
Overview of SOA and the role of ESB/OSB
IBM Software Group © 2006 IBM Corporation Confidentiality/date line: 13pt Arial Regular, white Maximum length: 1 line Information separated by vertical.
Databases and DBMSs Todd S. Bacastow January 2005.
Software Design and Architecture
Inventory of Distributed Computing Concepts and Web services
Data, Databases, and DBMSs
Inventory of Distributed Computing Concepts
Tools for Composing and Deploying Grid Middleware Web Services
An Introduction to Software Architecture
Design Yaodong Bi.
Demo for Partners and Customers
Presentation transcript:

Footer to have copyright, data and page numbers Only on the title slides Arial, 10 points, Color - black Tata Logo on left hand top – cannot be changed Tata Consultancy Services Logo on left hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, Bold not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Bold not to go beyond 3 lines of copy. Color - black © Tata Consultancy Services ltd.9 May Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Adopting MDA in a large IT consultancy organization – opportunities, challenges and lessons learnt Vinay Kulkarni* and Sreedhar Reddy, Tata Research Development and Design Centre, Pune, INDIA

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 2 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates It all began in 1994  Ground situation  Crack design team  Functional  Architectural  Shortage of experienced OO programmers  Lack of proven industrial-scale OO development methods  Lack of robust development tools  A core banking product  To be delivered on state-of-the-art technologies i.e. OO, 3-tier client- server architecture with OLTP monitor, rich GUI etc.  Customizable offering catering to purpose-specific choice of  Business functionality  Business process  Technology platforms like RDBMSs, OLTP monitors and GUI platforms  Long life  Off the shelf product or bespoke solution

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 3 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Architectural prototype A small team of experienced architects manually implemented a sample functionality covering all the layers of implementation architecture  Objectives  Firm up broad architectural decisions as regards scalability, throughout, response time etc  Familiarization with finer nuances of technology platforms  Lead to coding guidelines and best practices  Revelations  Typical business logic has low algorithmic complexity  Several reusable design and architectural patterns  Architecture can be neatly separated from business logic

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 4 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Intuition Complete implementation Business logicSolution architecture Snippet 1 Snippet 2 Snippet k Specification Specification 1 Specification 2 Specification 3 Generate solution architecture specific code from its declarative specifications

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 5 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Our MDA approach - overview  A meta model captures a recurring code pattern  All meta models defined in terms of a meta meta model  A model based code generator is an interpreter of meta meta model  Application structure captured in extended UML models  Business logic specified using a DSL  Application specifications (i.e. PIM) are translated into a PSI using PSM-specific code-generators that encode choice of design strategies, architecture decisions and technology platforms  Integrate independently generated code snippets in a consistent manner through an architecture  Component-based development process to manage size and facilitate independent development

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 6 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Example – a client/server application Instance of GUI layer codeApp layer code Db layer code Composed from Application implementation Decomposes into Application specification GUI layer modelApp layer model Db layer model GUI layer meta modelApp layer meta model Db layer meta model View of Unified meta model Model to code transformation

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 7 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Our MDA approach - architecture as the integrating glue  MVC paradigm  Well-defined interfaces  Universal interface in the form of services  Object façade over relational database  Transactional integrity, distribution transparency and scale-up courtesy middleware Database GUI UI manager Universal Interface Application Services DM Application Server

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 8 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Our MDA approach - component based development Model workspace Code workspace Component workspace Workspace for sharing Application release

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 9 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Model based code generation  Class definition  Attribute handling logic  Getter/Setter  Default constructor and copy constructor  Persistence  Primary- and Alternate-key based CRUDE methods  Primary- and foreign-key based association handling  Design strategies  Soft locking, Soft delete, Auditing, Error handling, Trace logs  Object-wrapper for non primary-key based data accesses  Component deployment  Bean class, Remote interface and Deployment descriptor  Screen definition  Layout  Server-side interface  Placeholder for Event logic  Testing support  Look-n-feel  Interaction with server-side  Testing support  Unit test harness for a service, Test data generation  Build support  Makefiles

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 10 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Representative usage data

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 11 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates In our experience Product-lines and large projects adopted the approach Technology-proofing Increased productivity Uniformly high code quality Consistent implementation of design strategies, best practices, guidelines etc. Prevention and early detection of errors More complete testing of application Enhanced reusability Small and medium sized projects didn’t find the approach attractive enough to adopt  High learning curve  Perceived loss of control  Customizing code generators takes time  Less agile development process  Tight coupling with repository  Unidirectional synchronization from model to code  No debugging support at model level  Complex versioning and configuration management

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 12 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Addressing customizability of code generators Model-based code generator Model Code Generic code generator generator Composition datd’a’t’ Selection Repository of building blocks DAT Modification Generates Intuition - meta tools delivering tools

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 13 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Customizable code generators  A code generator is a hierarchical composition of building blocks  Building block is an unifying abstraction to specify  [Aspect] Model  Model transformation  Model translation  Code generation is a three-step walk over the composition tree  Model creation  Model transformation  Code weaving  Uses OMG QVT and OMG MTT standards Base modelAspect model Model to model transformation Model to text transformation Text artefacts

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 14 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Code generation steps  Instantiation step  Models are stamped out (leaf level)  Models are merged (non-leaf level)  Transformation step  Code fragments are generated (leaf level)  Weaving specifications are generated (non-leaf level)  Composition step  Code fragments are weaved as per the weaving specifications Model2Java FunctionalityPersistence Object model Attribute handling OR mapAudit

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 15 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates In our experience Building-block based restructuring of code generators led to  Product-line of code generators  Refined organization of development team as platform-experts, architecture-experts etc.  Smaller development team  Reuse across product-lines Thus  Enabling definition of a software factory  Removing the tools team as a bottleneck as the factory can be instantiated elsewhere too

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 16 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Addressing high learning curve Complete implementation Business logicSolution architecture Snippet 1 Snippet 2 Snippet k Java Tag 1 Tag 2 Tag 3 Generate solution architecture specific code from its declarative specification encapsulated in tags using a code-centric development approach

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 17 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Metadata-driven aspect-oriented development Business logic with metadata Code fragments Class model Tag processor Tag definitions Weaver Architect Developer The toolset is realized as a set of Eclipse plug-ins

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 18 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates In our experience Easy adoption by small to medium sized projects No / low learning curve Agile loosely coupled development process Quick turn-around time for a change Quick development of purpose- specific tools Adherence to industry-standard technologies Leads to a repository of reusable software artefacts Generated application can be effectively maintained simply with JDK However,  A small project grows into a large project  A small offering acquires product-line nature over time  Large-sized projects are better managed with higher-level abstractions Therefore, A hybrid approach capable of supporting code-centric, model-centric and easy switching between the two seems called for.

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 19 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Merged approach Business logic with metadata Code fragments Annotated class models Building block 1 (for Tag 1 ) Weaver MDD models Model to model transformation Building block 2 (for Tag 2 ) Skeleton building block Code fragments Class definition Metadata-driven aspect-oriented approachModel-driven development approach

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 20 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Summary  MDA delivers increased productivity, better code quality, platform independence and easier change management  Excellent for large projects and product-lines  Metadata-driven aspect-oriented approach seems to suit small and medium-sized projects better  Need to evolve suitable development methods that allow MDA to be adopted in a more flexible and incremental manner than all-or-nothing top-down manner  Proposed an approach to address this pertinent need

TCS Base line. Right hand bottom – cannot be changed Watermark of binaries Arial Narrow, points, not to go beyond 2 lines of copy. Color - blue Arial Narrow, points, Color - black AVs should have a maximum height of 5 inches and should be aligned to the centre of the slide (vertically) Page number in yellow (position not to be changed) Sub-titling for the AV/picture captions, if required, to come here. 18 points, Arial, Bold. Diagrams or images can be used in the text area only 21 Text in blue and black can be changed Positions in Blue text cannot be altered Text in black can be altered in position and sizes if need be Text in yellow ochre is meant for legal matters and updates Questions?