Using an Architecture Description Language to Model a Large-Scale Information System An Industrial Experience Report

Size: px
Start display at page:

Download "Using an Architecture Description Language to Model a Large-Scale Information System An Industrial Experience Report"

Transcription

1 Using an Architecture Description Language to Model a Large-Scale Information System An Industrial Experience Report Eoin Woods Artechra Hemel Hempstead, Hertfordshire, UK eoin.woods@artechra.com Abstract An organisation that had developed a large Information System wanted to embark on a programme of significant evolution for the system. As a precursor to this, it was decided to create a comprehensive architectural description. This undertaking faced a number of challenges, including a low general awareness of software modelling and software architecture practices. The approach taken for this project included the definition of a simple, specific, architecture description language. This paper describes the experiences of the project and the ADL created as part of it. Keywords-Architecture Description Language; ADL; Software Architecture Discovery; Software Architecture for Legacy Systems; Industrial Experience Report. I. INTRODUCTION There has been a great deal of academic and some industrial research into the definition of Architecture Description Languages (ADLs) to assist with the task of defining the architecture of software intensive systems and a significant amount of research is still underway today [1, 2]. However, for reasons that have been noted elsewhere [3, 4], there has been little significant industrial use of ADLs, particularly in the Information Systems domain. Recently, one of the authors of this paper had the opportunity to lead the creation of a large architectural description (AD) for a complicated Information System. This paper describes the experience of that project, which was used as an opportunity to explore the use of a simple, domain specific, ADL in an industrial context. This paper provides an overview of related work on ADLs in both industry and academia in Section 2. Section 3 provides background information about the work and the context of the project. The approach used is described in section 4. The ADL design, along with the system architectural style is presented in section 5. The experience and lessons learned from the project are discussed in sections 6 and 7 respectively. Finally, section 8 completes the paper with the summary and conclusions. II. RELATED WORK Over the past two decades, an increasing number of ADLs have been developed, largely within academia [5, 6]. Although some ADLs have been put to industrial use in specific domains [7], the majority of ADLs remain confined to laboratory-based case studies. While ADLs originated in academia such as ACME[8], Wright[9], Rapide[10], SADL[11], xadl[12], pi-adl[2], Rabih Bashroush University of East London London, UK rabih@uel.ac.uk ArchiMate[13] and ByADL[1], to name a few, all exhibit novel approaches to architecture description, but most are vertically optimized, restricting their application in industrial settings. In general, academic ADLs focus more on analytical evaluation and rigour while in this project the focus was more on practicality and obtaining a system-wide view of the application. (ArchiMate is the exception, being an enterprise-architecture ADL, whereas the focus of this project was system architecture description.) Most industrial applications of ADLs have been in the area of embedded systems, from consumer electronics (e.g. Koala[7]) to automotive systems (e.g. AADL[14]), supporting automated system analysis and automated code generation, which were not primary concerns in this project. III. OVERVIEW OF THE PROJECT This project was undertaken in a financial services firm that had developed a large custom application suite to run its business. The software has been developed over a period of about 15 years and has grown from modest beginnings to a large system comprising about 20 major subsystems and over 10 million lines of Java, C++, C# and Perl, sharing a large multi-terabyte relational database. Today it has grown to a size that means no individual understands it all, even at a reasonably high level of abstraction. At the start of the project, there was no overall unified system description, but the organization wanted to perform some wide ranging evolution and modernization of the system, so it was decided to undertake the creation of a unified description of the system s architecture. Two experienced architects were assigned this task. One immediate complication was that it wasn t clear what the AD would be used for once created, so in order to make progress, some assumptions were made and these were: The point of the exercise was to (a) understand what was there today (catalogue); (b) allow change to be planned (allow impact analysis); and (c) provide a reference for people to build knowledge (communicate); and The audience for the documentation was architects & designers, so precision and completeness were important attributes. Using these assumptions, the architects tasked with the project defined an approach that allowed them to capture a suitable AD for the system.

2 IV. THE APPROACH USED When the project was discussed with the software development teams it quickly became clear that while there was general enthusiasm for the idea, there was very little appetite for actually performing the work. This led to the use of a simple, low-ceremony, tailored and prescriptive approach to minimise the effort required from the teams and to avoid creating inconsistent artefacts. Using a tailored (profiled) version of UML was seriously considered, however the organisation did not have sufficient UML tooling available and even a tailored UML tool tends to need some background knowledge of UML that was lacking in most of the teams. Existing ADLs (see section 2 above) were also briefly considered, but none of these appeared to offer any great benefit over UML and, like UML, all would have needed significant tailoring, training and tool support. Therefore, we decided to develop a simple graphical and textual language to model the system. The discussions with the teams revealed a varied understanding of modelling and abstraction, which led to the realisation that the best approach was going to be creating models that captured the physical structure of the software (processes and inter-process communication channels) rather than more abstract concepts such as software components and responsibilities. Otherwise, the project was going to collapse under the weight of debatable abstractions that could not be validated against the existing implementation. Given the environment, it was decided to use a wiki to capture the data underpinning a graphical representation (the system element descriptions, connection definitions and so on). The wiki captured this information in an accessible way, but allowed very restricted formats to be prescribed that would be amenable to basic machine parsing later if needed. The wiki approach of creating hyperlinked pages also allowed the AD to be decomposed into a set of manageable pieces, linked together to provide cross referencing and navigation through the documentation. V. THE STYLE AND ITS DESCRIPTION LANGUAGE A. The Architectural Style An analysis of the system implementation revealed that it followed a discernable architectural style (although there was no explicit awareness of the concept an architectural style within the organisation). A few basic definitions were used to provide people with a common starting point for understanding key abstractions: Subsystem - a subset of the system that has a welldefined, cohesive, set of responsibilities, a welldefined boundary and set of interfaces to its services. Component - a tangible software artefact which is delivered to the production environment and which is "executed" in some way at runtime. (In line with other software architecture literature, components are referred to as elements elsewhere in the paper). Connector - the mechanism by which two or more components collaborate. Examples are a message destination, a file system file, or a database table. The specific types of system element used within the system are summarised in Table I. TABLE I. TYPES OF ARCHITECTURAL ELEMENTS User Interfaces - GUI A traditional GUI client written in Java Swing, C# WebForms or C++ Motif. - WebUI A user interface implemented as a set of web pages (e.g. CGI scripts or a Java webapp) - Command Line A user interface implemented as a command line program, such as a Python script. Servers - Message Driven Server A server whose operation is driven by the recipt of messages from the message bus - Server A server whose operation is driven by a mechanism other than messages (such as RPCs or temporal schedules) - Batch Program A program that is run from a scheduler and runs in a single execution, without input from system element or humans. - Data Loader A program that extracst data from a source and moves it to a destination, typically transforming it during the transmission. Data Stores - System database The system database or a set of tables from it - File A file on the file system External Entities - Subsystem Another subsystem that communicates with this one in some way - External System A system outside our system that a subsystem communicates with in some way - External Data Source A Data Source outside our system that a subsystem receives data from (such as a source of security prices) The fairly restricted set of inter-element connectors in general use throughout the system is described in Table II. RPC TABLE II. Direct Invocation Database Data Flow File Data Flow System Messaging TYPES OF ARCHITECTURAL CONNECTORS A synchronous inter-process procedure call (usually XML over HTTP) An in-proess direct procedure invocation Writing data to a database table or tables to allow it to be used by another element Writing data to a filesystem file to allow it to be used by another element Dispatch and receipt of messages over the system bus via a messaging destination In order to allow for the inevitable special cases that are found in a system of this scale, an other type was allowed for elements and connectors, which could be annotated using a UML style stereotype to make its type clear. Most architectural styles limit the element and connector combinations that they allow. In this style, there weren t really any such constraints defined formally, although there were combinations that were encouraged and discouraged (e.g. UI Clients should connect to Message Driven Servers, but not access the database). However, most combinations of element and connector types could be found somewhere in the system! A number of the desirable patterns were captured as examples in the notation documentation.

3 A couple of examples of the patterns identified are shown in Figure 1. The notation used to express the examples is hopefully fairly obvious but is explained in the next section. B. The Architecture Description Language Once the required element and connector types were understood, a notation was required to represent them. Given people s preference for diagrams over text, a graphical notation was created rather than a textual one. When defining the graphical detail of the notation, the advice in [15] was particularly useful, in particular the exhortation to avoid construct overload, deficit, redundancy or excess, the suggestion to systematically consider the various visual variables of each shape (shape, size, colour, orientation, brightness and texture) and the need for deliberate selection of shapes so that their appearance suggested their meaning, in order to achieve semantic transparency. The graphical notation was designed by selecting a base shape for each major type of element (server, user interface, data store, external entity) and a variation on the shape using the dimensions of shape, line and texture was identified for each subtype. Examples of the notation for some of the element types are shown in Figure 2. As can be seen from the diagram, a triangle was used as the base shape for user interfaces and a rectangle for server resident components. The triangle was chosen as it hinted at the head and shoulders shape of a user and the triangles were then modified slightly for each type of user interface (the thick client having sharp corners, the web user interface having rounded corners as it blurs the distinction between client and server and the command line utility having a graphical representation of a command line interface added to it). Similarly, a rectangle is the base shape for server elements (based on long accepted conventions) with a stereotype being used to indicate the type of server and a lozenge variant being used to indicate a data loader (hinting at pieces of data being transmitted through it). An arrow of some form was used to represent all connector types, with the arrowhead usually indicating the direction of data flow. All connectors were defined to be one way connections, with the exception of connectors to files, which could indicate read and write activity with arrow heads at both ends of the connector if appropriate. The convention for RPC connectors was defined to be a one-way arrow from the caller to the target, textually annotated to indicate what it transmitted (message data type, table or record names or service invocation name). Examples of the notation for the main connector types are shown in Figure 3. The RPC or direct procedure call is shown using a solid arrow and messaging is shown using a line with embedded dots, suggesting messages flowing over it, while data access is shown using a regular chain line, suggesting records being read or written over the connector. A general mechanism used on elements and connectors was the stereotype, copied from UML, where the type of an architectural element is made clear by annotating it with a type name using the convention «typename» on the symbol concerned. In order to ensure that the process produced more than just pictures, a set of required attributes for each type of element and connector was defined and wiki table templates created to allow them to be captured in a standard form. In order to simplify and standardise the subsystem descriptions, a set of wiki page templates and a comprehensive Microsoft Visio stencil were created, along with clear instructions, quick reference material and most crucially a fully worked example of the documentation for one subsystem. <<GUI>> Order Manager ORDERUIREQ(OrderUiCmd) <<Message Based Server>> Order Management Server (a) Thick client UI and message driven server <<BatchPgm>> BBG Price Loader price,rate,pricehist,ratehist, fileload <<database>> pricedb <<filesystem>> BBG Daily Price Files (b) File Loader, reads files, writes to database Figure 1. Examples of the ADL Notation in Use

4 <<GUI>> Order Manager Thick Client GUI <<Message Driven Server>> Trade Processing Server Message Driven Server <<WebUI>> Settlements Viewer Web UI <<Server>> Confirmation Event Generator Non Message Driven Server <<CmdUI>> Parameter Utils Command Line UI <<Loader>> Daily Price Loader Data Loader Figure 2. ADL Element Types RPC / Direct Call Application Standard Messaging <<flow transport>> Data Access or Update Other Messaging Figure 3. ADL Connector Types VI. THE EXPERIENCE GAINED A. Creating the Architecture Description The development teams were tasked with the creation of architecture description documents for their subsystems. The success of this approach varied, with some teams producing their documentation largely unaided, while others needed significant assistance from the architects running the project. There were varied reasons for the difficulties that some development teams faced. In some cases it was simply a lack of interest, while in other cases there seemed to be a genuine difficulty in understanding how to represent their subsystem. In general, this seemed to stem from an inability to abstract from the implementation, resulting in a confusing mix of concrete and abstract concepts in their models. Another interesting problem was tooling. Everyone in the organisation could use the wiki, but many did not have Microsoft Visio and of those that did, some couldn t use it. This was a useful lesson and confirmed that avoiding specialised modelling tools had been a good decision. Over the period of a couple of months, a useful body of subsystem descriptions emerged, which allowed the architects to create a summary level description that showed how the subsystems related to each other. This was a manual process, aided by some drawing tool macros and some use of scripting to process wiki text. The process of capturing the AD took about six months, with the architects working on it approximately 60% of their time and the development teams working on it as their project schedules allowed. B. The Results of the Project The outputs of the project were: A consistent AD that provided an accurate view of subsystems, components and their dependencies. An informal definition of the architectural style used across most of the system. A degree of oversight and understanding of the structure, scale and connectedness of the system. As mentioned earlier, there weren t clear goals for the AD but it was found to be insightful and there seemed to be a general consensus that it was a useful description. However organisational priorities meant that the architects then moved on to other work, so the project effectively ended. C. Evaluating the Usefulness of the ADL By the time that the descriptions for key subsystems were complete, the notation and approach were judged to be fairly successful (an outcome which was not widely predicted at the start of the project). Early experience led to some rapid refinement of the notation to remove ambiguities and to introduce some missing concepts, but after three or four teams had used the approach the ADL remained stable. During the project it became clear that teams who could identify clear abstractions found the ADL helpful and they had little difficulty in representing their models using it. In contrast, teams who struggled to identify good abstractions never really grasped how to use the ADL and needed constant assistance from the architects running the project.

5 We viewed this experience as a basic validation of the approach. People who could create models and knew what they wanted to represent were able to use the ADL effectively, with minimal training, which is an important validation point for an ADL. However, the approach did not help people who found modelling difficult. We had hoped that the straightforward and prescriptive approach would help people to create models even if they did not find modelling easy, so it was disappointing that it failed to achieve this. VII. LESSONS LEARNED FROM THE PROJECT The lessons learned during the course of the project were: A specialised ADL can have benefits over a general modelling language like UML and even a simple ADL can be used to create useful results. The more directly that an ADL matches the concepts of the system being modelled, the easier people seem to find it to use. While this may seem obvious, it contradicts the conventional approach of using a general modelling language like UML or SysML. Designing the detail of the graphical notation carefully pays off. Using shapes that hint at their meaning and a range of graphical dimensions to differentiate shapes helps people to remember them. Consistency in the notation is very important and having a base shape for a general concept with refinements to it for different sub-concepts appears to help people when interpreting the diagrams. It is important to provide high quality support materials such as templates, an example-based description of the approach, and a number of realistic examples. People are better at filling in the gaps rather than creating something new. Utilising familiar tools helps with acceptance. In this case a Wiki was immediately accepted whereas a ubiquitous commercial drawing tool caused problems, even with a carefully tailored template. These lessons may not be surprising, but the importance of quite simple factors was surprising to us and is useful to bear in mind for the future. It is also worth noting that these lessons may well have general applicability, but only in the broad sense. People like to be guided and prefer familiar tools and techniques, but the tools or techniques that work will be specific to an environment and people in different environments will have different levels of enthusiasm for learning new approaches. However, in general, familiarity and accessibility help greatly with acceptance. VIII. SUMMARY AND CONCLUSIONS An organisation in the financial services industry wanted to create an AD for a large system. A simple, custom ADL was defined in order to make the process of capturing the AD as simple and prescriptive as possible, which proved to be a helpful tool for capturing this specific architecture. However the ADL did not help those who found modelling difficult. People who found abstraction difficult found it just as difficult to use a specific notation as a general-purpose notation, which was surprising. The key factors that appear to have made the approach successful where its specific tailoring to the situation, its simplicity (which traded sophistication for accessibility), a carefully designed, consistent graphical notation, the availability of a large amount of tutorial and reference material, and the use of already familiar tools. REFERENCES [1] D. Di Ruscio, I. Malavolta, H. Muccini, P. Pelliccione, and A. Pierantonio, "ByADL: an MDE framework for building extensible architecture description languages," in Proceedings of the 4th European Conference on Software Architecture, Copenhagen, Denmark, 2010, pp [2] F. Oquendo, "Pi-ADL: an Architecture Description Language based on the higher-order typed pi-calculus for specifying dynamic and mobile software architectures," ed. SIGSOFT Softw. Eng. Notes, 2004, pp [3] E. Woods and R. Hilliard, "Architecture Description Languages in Practice Session Report," in Software Architecture, WICSA th Working IEEE/IFIP Conference on, Pittsburgh, Pennsylvania, USA, 2005, pp [4] R. Bashroush, I. Spence, P. Kilpatrick, and T. Brown, "Towards More Flexible Architecture Description Languages for Industrial Applications," presented at the EWSA 2006, Nantes, France, [5] N. Medvidovic and R. N. Taylor, "A classification and comparison framework for software architecture description languages," IEEE Transactions on Software Engineering, vol. 26, pp , [6] P. C. Clements, "A Survey of Architecture Description Languages," in Proceedings of the 8th International Workshop on Software Specification and Design, 1996, p. 16. [7] R. van Ommering, F. van der Linden, J. Kramer, and J. Magee, "The Koala component model for consumer electronics software," IEEE Computer, vol. 33, pp , [8] D. Garlan, R. T. Monroe, and D. Wile, "Acme: architectural description of component-based systems," in Foundations of component-based systems, T. L. Gary and S. Murali, Eds., ed: Cambridge University Press, 2000, pp [9] R. Allen and D. Garlan, "The Wright Architectural Specification Language," Carnegie Mellon University, Software Engineering Institute, Pittsburgh, PA1996. [10] D. C. Luckham, J. J. Kenney, L. M. Augustin, J. Vera, D. Bryan, and W. Mann, "Specification and analysis of system architecture using Rapide," IEEE Transactions on Software Engineering, vol. 21, pp , [11] M. Moriconi and R. A. Riemenschneider, "Introduction to SADL 1.0: A Language for Specifying Software Architecture Hierarchies," SRI International,1997. [12] R. Khare, M. Guntersdorfer, P. Oreizy, N. Medvidovic, and R. N. Taylor, "xadl: enabling architecture-centric tool integration with XML," in Proceedings of the 34th Annual Hawaii International Conference on System Sciences, 2001, p. 9 pp. [13] M. M. Lankhorst, H. A. Proper, and H. Jonkers, "The Architecture of the ArchiMate Language," in Proceedings of the 10th International Workshop on Enterprise, Business-Process and Information Systems Modeling (BPMDS 2009) held at CAiSE, Amsterdam, Netherlands, 2009, pp [14] "Standard AS5506/1: SAE Architecture Analysis and Design Language (AADL)," ed: SAE International, [15] D. Moody, "The "Physics" of Notations: Toward a Scientific Basis for Constructing Visual Notations in Software Engineering," IEEE Transactions on Software Engineering, vol. 35, pp , 2009.

SoberIT Software Business and Engineering Institute. SoberIT Software Business and Engineering Institute. Contents

SoberIT Software Business and Engineering Institute. SoberIT Software Business and Engineering Institute. Contents Architecture Description Languages (ADLs): Introduction, Koala, UML as an ADL T-76.150 Software Architecture Timo Asikainen Contents Brief motivation for ADLs General features of ADLs Koala UML as an ADL

More information

Describing Information Systems Moving Beyond UML

Describing Information Systems Moving Beyond UML Describing Information Systems Moving Beyond UML Eoin Woods Artechra eoin@artechra.com Nick Rozanski Artechra nick@artechra.com Timetable 10:00-10:10 Introductions 10:10-10:25 - Presentation: Architectural

More information

Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms?

Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? CIS 8690 Enterprise Architectures Duane Truex, 2013 Cognitive Map of 8090

More information

A SIMULATION ARCHITECTURE DESCRIPTION LANGUAGE FOR HARDWARE-IN-LOOP SIMULATION OF SAFETY CRITICAL SYSTEMS

A SIMULATION ARCHITECTURE DESCRIPTION LANGUAGE FOR HARDWARE-IN-LOOP SIMULATION OF SAFETY CRITICAL SYSTEMS A SIMULATION ARCHITECTURE DESCRIPTION LANGUAGE FOR HARDWARE-IN-LOOP SIMULATION OF SAFETY CRITICAL SYSTEMS YUJUN ZHU, ZHONGWEI XU, MENG MEI School of Electronics & Information Engineering, Tongji University,

More information

A Lightweight Language for Software Product Lines Architecture Description

A Lightweight Language for Software Product Lines Architecture Description A Lightweight Language for Software Product Lines Architecture Description Eduardo Silva, Ana Luisa Medeiros, Everton Cavalcante, Thais Batista DIMAp Department of Informatics and Applied Mathematics UFRN

More information

Software Architecture in Action. Flavio Oquendo, Jair C Leite, Thais Batista

Software Architecture in Action. Flavio Oquendo, Jair C Leite, Thais Batista Software Architecture in Action Flavio Oquendo, Jair C Leite, Thais Batista Motivation 2 n In this book you can learn the main software architecture concepts and practices. n We use an architecture description

More information

Introduction to Modeling

Introduction to Modeling Introduction to Modeling Software Architecture Lecture 9 Copyright Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Objectives Concepts What is modeling? How do we choose

More information

ALI: An Extensible Architecture Description Language for Industrial Applications

ALI: An Extensible Architecture Description Language for Industrial Applications ALI: An Extensible Architecture Description Language for Industrial Applications R. Bashroush 1, I. Spence 1, P. Kilpatrick 1, TJ. Brown 1, W. Gilani 2, M. Fritzsche 2 1 School of Electronics, Electrical

More information

Nick Rozanski Andy Longshaw Eoin Woods. Sold! How to Describe, Explain and Justify your Architecture

Nick Rozanski Andy Longshaw Eoin Woods. Sold! How to Describe, Explain and Justify your Architecture Nick Rozanski Andy Longshaw Eoin Woods Sold! How to Describe, Explain and Justify your Architecture Objectives of Today If you are an architect who has to produce an Architectural Description, then this

More information

CSSE 490 Model-Based Software Engineering: Architecture Description Languages (ADL)

CSSE 490 Model-Based Software Engineering: Architecture Description Languages (ADL) CSSE 490 Model-Based Software Engineering: Architecture Description Languages (ADL) Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: MBE Discipline

More information

Ch 1: The Architecture Business Cycle

Ch 1: The Architecture Business Cycle Ch 1: The Architecture Business Cycle For decades, software designers have been taught to build systems based exclusively on the technical requirements. Software architecture encompasses the structures

More information

Introduction. ADL Roles

Introduction. ADL Roles Architecture Description Languages (ADLs) 1 Introduction Architecture is key to reducing development costs development focus shifts to coarse-grained elements Formal architectural models are needed ADLs

More information

Why Consider Implementation-Level Decisions in Software Architectures?

Why Consider Implementation-Level Decisions in Software Architectures? 1. Abstract Why Consider Implementation-Level Decisions in Software Architectures? Nikunj Mehta Nenad Medvidović Marija Rakić {mehta, neno, marija}@sunset.usc.edu Department of Computer Science University

More information

Conflicting Perspectives on Architecting Software In Search of a Practical Solution

Conflicting Perspectives on Architecting Software In Search of a Practical Solution Conflicting Perspectives on Architecting Software In Search of a Practical Solution SASA BASKARADA & FRANK FURSENKO School of Computer and Information Science University of South Australia Mawson Lakes

More information

CS 307: Software Engineering. Lecture 10: Software Design and Architecture

CS 307: Software Engineering. Lecture 10: Software Design and Architecture CS 307: Software Engineering Lecture 10: Software Design and Architecture Prof. Jeff Turkstra 2017 Dr. Jeffrey A. Turkstra 1 Announcements Discuss your product backlog in person or via email by Today Office

More information

System Name Software Architecture Description

System Name Software Architecture Description System Name Software Architecture Description Author Name Contact Details Version Date template 2011 Eoin Woods & Nick Rozanski 1 / 25 1. Version History Version Date Author Comments 1 July 08 Eoin Woods

More information

Meta Architecting: Towered a New Generation of Architecture Description Languages

Meta Architecting: Towered a New Generation of Architecture Description Languages Journal of Computer Science 1 (4): 454-460, 2005 ISSN 1549-3636 Science Publications, 2005 Meta Architecting: Towered a New Generation of Architecture Description Languages Adel Smeda, Tahar Khammaci and

More information

Software Architectures

Software Architectures Software Architectures Richard N. Taylor Information and Computer Science University of California, Irvine Irvine, California 92697-3425 taylor@ics.uci.edu http://www.ics.uci.edu/~taylor +1-949-824-6429

More information

Semantics-Based Integration of Embedded Systems Models

Semantics-Based Integration of Embedded Systems Models Semantics-Based Integration of Embedded Systems Models Project András Balogh, OptixWare Research & Development Ltd. n 100021 Outline Embedded systems overview Overview of the GENESYS-INDEXYS approach Current

More information

The UML Extension Mechanisms

The UML Extension Mechanisms Jasmine Farhad Dept of Computer Science University College London 13-Dec-02 The UML Extension Mechanisms Introduction There is an important need for organisations to evolve in today s market. This has

More information

Using Architectural Models at Runtime: Research Challenges

Using Architectural Models at Runtime: Research Challenges Proceedings of the European Workshop on Software Architectures, St. Andrews, Scotland, May 2004. Using Architectural Models at Runtime: Research Challenges David Garlan and Bradley Schmerl Department of

More information

Available online at ScienceDirect. Procedia Computer Science 96 (2016 )

Available online at  ScienceDirect. Procedia Computer Science 96 (2016 ) Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 96 (2016 ) 946 950 20th International Conference on Knowledge Based and Intelligent Information and Engineering Systems

More information

Software Engineering

Software Engineering Software Engineering chap 4. Software Reuse 1 SuJin Choi, PhD. Sogang University Email: sujinchoi@sogang.ac.kr Slides modified, based on original slides by Ian Sommerville (Software Engineering 10 th Edition)

More information

UNIT II Requirements Analysis and Specification & Software Design

UNIT II Requirements Analysis and Specification & Software Design UNIT II Requirements Analysis and Specification & Software Design Requirements Analysis and Specification Many projects fail: because they start implementing the system: without determining whether they

More information

AUTOMATED GUI TESTING OF SOFTWARE APPLICATIONS USING UML MODELS

AUTOMATED GUI TESTING OF SOFTWARE APPLICATIONS USING UML MODELS AUTOMATED GUI TESTING OF SOFTWARE APPLICATIONS USING UML MODELS Robertas Jasaitis, Dominykas Barisas, Eduardas Bareisa Kaunas University of Technology, Department of Software Engineering Studentu st. 50,

More information

Architecture Viewpoint Template for ISO/IEC/IEEE 42010

Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Rich Hilliard r.hilliard@computer.org VERSION 2.1b Abstract This is a template for specifying architecture viewpoints in accordance with ISO/IEC/IEEE

More information

Capturing Product Line Architectures

Capturing Product Line Architectures Capturing Product Line Architectures André van der Hoek Institute for Software Research Department of Information and Computer Science University of California, Irvine Irvine, CA 92697-3425 USA andre@ics.uci.edu

More information

5 The Control Structure Diagram (CSD)

5 The Control Structure Diagram (CSD) 5 The Control Structure Diagram (CSD) The Control Structure Diagram (CSD) is an algorithmic level diagram intended to improve the comprehensibility of source code by clearly depicting control constructs,

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES

THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES 5 THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES THIS E-BOOK IS DIVIDED INTO 5 PARTS: 1. WHY YOU NEED TO KNOW YOUR READER 2. A USER MANUAL OR A USER GUIDE WHAT S THE DIFFERENCE?

More information

Introduction to Software Architecture. The top level... (and design revisited)

Introduction to Software Architecture. The top level... (and design revisited) Introduction to Software Architecture The top level... (and design revisited) 1 What are we doing? System Software Architecture Top-level design software system architecture We use system architecture

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

AADL Graphical Editor Design

AADL Graphical Editor Design AADL Graphical Editor Design Peter Feiler Software Engineering Institute phf@sei.cmu.edu Introduction An AADL specification is a set of component type and implementation declarations. They are organized

More information

Software Architectures. Lecture 8

Software Architectures. Lecture 8 Software Architectures Lecture 8 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements : tactics

More information

Overview of Sentence Order Reference Document Development Process

Overview of Sentence Order Reference Document Development Process Overview of Sentence Order Reference Document Development Process Scott Came Justice Integration Solutions, Inc. September 14, 2004 Purpose The purpose of this document is to outline the process/methodology

More information

Representing Product Family Architectures in an Extensible Architecture Description Language

Representing Product Family Architectures in an Extensible Architecture Description Language Representing Product Family Architectures in an Extensible Architecture Description Language Eric M. Dashofy and André van der Hoek Institute for Software Research University of California, Irvine Irvine,

More information

Flight Systems are Cyber-Physical Systems

Flight Systems are Cyber-Physical Systems Flight Systems are Cyber-Physical Systems Dr. Christopher Landauer Software Systems Analysis Department The Aerospace Corporation Computer Science Division / Software Engineering Subdivision 08 November

More information

BCS THE CHARTERED INSTITUTE FOR IT. BCS Higher Education Qualifications BCS Level 6 Professional Graduate Diploma in IT EXAMINERS' REPORT

BCS THE CHARTERED INSTITUTE FOR IT. BCS Higher Education Qualifications BCS Level 6 Professional Graduate Diploma in IT EXAMINERS' REPORT BCS THE CHARTERED INSTITUTE FOR IT BCS Higher Education Qualifications BCS Level 6 Professional Graduate Diploma in IT March 2015 EXAMINERS' REPORT Programming Paradigms General comments on candidates'

More information

The Open Group SOA Ontology Technical Standard. Clive Hatton

The Open Group SOA Ontology Technical Standard. Clive Hatton The Open Group SOA Ontology Technical Standard Clive Hatton The Open Group Releases SOA Ontology Standard To Increase SOA Adoption and Success Rates Ontology Fosters Common Understanding of SOA Concepts

More information

Adding Formal Requirements Modeling to SysML

Adding Formal Requirements Modeling to SysML Adding Formal Requirements Modeling to SysML Mark R. Blackburn www.markblackburn.com Abstract. This paper seeks to raise awareness on the SCR extensions derived from industry use, and discusses how an

More information

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered ² Architectural design decisions ² Architectural views ² Architectural patterns ² Application architectures 2 Software architecture ² The design

More information

Chapter 1 Introduction

Chapter 1 Introduction Chapter 1 Introduction We hardly need to point out the importance of business process modelling and of respective automation in this place (see, e.g. [39, 45, 58, 110, 141]). Also the advantages and shortcomings

More information

How useful is the UML profile SPT without Semantics? 1

How useful is the UML profile SPT without Semantics? 1 How useful is the UML profile SPT without Semantics? 1 Susanne Graf, Ileana Ober VERIMAG 2, avenue de Vignate - F-38610 Gières - France e-mail:{susanne.graf, Ileana.Ober}@imag.fr http://www-verimag.imag.fr/~{graf,iober}

More information

CSCU9T4: Managing Information

CSCU9T4: Managing Information CSCU9T4: Managing Information CSCU9T4 Spring 2016 1 The Module Module co-ordinator: Dr Gabriela Ochoa Lectures by: Prof Leslie Smith (l.s.smith@cs.stir.ac.uk) and Dr Nadarajen Veerapen (nve@cs.stir.ac.uk)

More information

UNIT 5 - UML STATE DIAGRAMS AND MODELING

UNIT 5 - UML STATE DIAGRAMS AND MODELING UNIT 5 - UML STATE DIAGRAMS AND MODELING UML state diagrams and modeling - Operation contracts- Mapping design to code UML deployment and component diagrams UML state diagrams: State diagrams are used

More information

Automating IT Asset Visualisation

Automating IT Asset Visualisation P a g e 1 It s common sense to know what IT assets you have and to manage them through their lifecycle as part of the IT environment. In practice, asset management is often separate to the planning, operations

More information

WHAT IS SOFTWARE ARCHITECTURE?

WHAT IS SOFTWARE ARCHITECTURE? WHAT IS SOFTWARE ARCHITECTURE? Chapter Outline What Software Architecture Is and What It Isn t Architectural Structures and Views Architectural Patterns What Makes a Good Architecture? Summary 1 What is

More information

COLUMN. Designing intranet homepages that help employees do their jobs. Too many homepages are stuffed with generic information MARCH 2013

COLUMN. Designing intranet homepages that help employees do their jobs. Too many homepages are stuffed with generic information MARCH 2013 KM COLUMN MARCH 2013 Designing intranet homepages that help employees do their jobs How useful is your organisation s intranet? More specifically, how useful is the intranet s homepage that hotly contested

More information

BSIF. A Freeware Framework for. Integrated Business Solutions Modeling. Using. Sparx Systems. Enterprise Architect

BSIF. A Freeware Framework for. Integrated Business Solutions Modeling. Using. Sparx Systems. Enterprise Architect 33 Chester Rd Tawa 5028 Wellington New Zealand P: (+64) 4 232-2092 m: (+64) 21 322 091 e: info@parkconsulting.co.nz BSIF A Freeware Framework for Integrated Business Solutions Modeling Using Sparx Systems

More information

Lecture 34 SDLC Phases and UML Diagrams

Lecture 34 SDLC Phases and UML Diagrams That Object-Oriented Analysis and Design Prof. Partha Pratim Das Department of Computer Science and Engineering Indian Institute of Technology-Kharagpur Lecture 34 SDLC Phases and UML Diagrams Welcome

More information

MATLAB-Based Policy Simulator

MATLAB-Based Policy Simulator DRAFT MATLAB-Based Policy Simulator Regulatory & Risk Analytics (RRA) Prepared by Seth Aslin Date: October 2013 Presentation Outline Background and context to Project Navigator General project objectives

More information

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal

INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD. Slides by: Shree Jaswal INTRODUCTION TO UNIFIED MODELING MODEL (UML) & DFD Slides by: Shree Jaswal What is UML? 2 It is a standard graphical language for modeling object oriented software. It was developed in mid 90 s by collaborative

More information

Update on AADL Requirements Annex

Update on AADL Requirements Annex Open-PEOPLE Open Power and Energy Optimization PLatform and Estimator Update on AADL Requirements Annex Dominique BLOUIN* *Lab-STICC, Université de Bretagne Sud, Lorient, FRANCE AADL Standards Meeting,

More information

Issues surrounding model consistency and QVT

Issues surrounding model consistency and QVT Issues surrounding model consistency and QVT Laurence Tratt, Tony Clark laurie@tratt.net, anclark@dcs.kcl.ac.uk December 6, 200. Introduction This document is intended to outline some of the issues surrounding

More information

Quality-Driven Conformance Checking in Product Line Architectures

Quality-Driven Conformance Checking in Product Line Architectures Quality-Driven Conformance Checking in Product Line Architectures Femi G. Olumofin and Vojislav B. Mišić University of Manitoba, Winnipeg, Manitoba, Canada Abstract Software product line are often developed

More information

ARCHITECTING IN THE GAPS

ARCHITECTING IN THE GAPS ARCHITECTING IN THE GAPS Eoin Woods www.eoinwoods.info! 2 About Me Software architect & development manager at UBS Investment Bank working on equity swaps systems in Equity Derivatives Software architect

More information

Spotfire and Tableau Positioning. Summary

Spotfire and Tableau Positioning. Summary Licensed for distribution Summary So how do the products compare? In a nutshell Spotfire is the more sophisticated and better performing visual analytics platform, and this would be true of comparisons

More information

Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards

Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards Fundamentals to Creating Architectures using ISO/IEC/IEEE Standards What to Architect? How to Architect? IEEE Goals and Objectives Chartered by IEEE Software Engineering Standards Committee to: Define

More information

Avancier Methods. Very basic design patterns. It is illegal to copy, share or show this document

Avancier Methods. Very basic design patterns. It is illegal to copy, share or show this document Methods Very basic design patterns It is illegal to copy, share or show this document (or other document published at http://avancier.co.uk) without the written permission of the copyright holder Copyright

More information

Calgary: 10th Floor Bankers Hall, West Tower 888-3rd Street SW, Calgary, AB T2P 5C5 p: f:

Calgary: 10th Floor Bankers Hall, West Tower 888-3rd Street SW, Calgary, AB T2P 5C5 p: f: Modelling Using Archimate and Sparx EA Course Number: MOD-300 Format: Instructor Led, Classroom or Virtual Standard Duration: 36 hours, can be shortened to 24 hours for experienced audiences This 36 hour

More information

Requirements Engineering. Establishing what the customer requires from a software system. Requirements Engineering. What is a Requirement?

Requirements Engineering. Establishing what the customer requires from a software system. Requirements Engineering. What is a Requirement? Engineering Establishing what the customer requires from a software system Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapters 5 and 6 Slide 1 Engineering

More information

Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models

Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models Peter Feiler Software Engineering Institute phf@sei.cmu.edu 412-268-7790 2004 by Carnegie Mellon University

More information

A developer s guide to load testing

A developer s guide to load testing Software architecture for developers What is software architecture? What is the role of a software architect? How do you define software architecture? How do you share software architecture? How do you

More information

UML Component Diagrams A.Y 2018/2019

UML Component Diagrams A.Y 2018/2019 UML Component Diagrams A.Y 2018/2019 Component diagrams Component diagrams are integral to building your software system. Drawn out with UML diagramming software, they help your team understand the structure

More information

BPMN Working Draft. 1. Introduction

BPMN Working Draft. 1. Introduction 1. Introduction The Business Process Management Initiative (BPMI) has developed a standard Business Process Modeling Notation (BPMN). The primary goal of BPMN is to provide a notation that is readily understandable

More information

EY s data privacy service offering

EY s data privacy service offering EY s data privacy service offering How to transform your data privacy capabilities for an EU General Data Protection Regulation (GDPR) world Introduction Data privacy encompasses the rights and obligations

More information

Retrofitting Controlled Dynamic Reconfiguration into the Architecture Description Language MontiArcAutomaton

Retrofitting Controlled Dynamic Reconfiguration into the Architecture Description Language MontiArcAutomaton Retrofitting Controlled Dynamic Reconfiguration into the Architecture Description Language MontiArcAutomaton Robert Heim 1, Oliver Kautz 1, Jan Oliver Ringert 2, Bernhard Rumpe 1,3, Andreas Wortmann 1

More information

A Tutorial on Agent Based Software Engineering

A Tutorial on Agent Based Software Engineering A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far A Tutorial on Agent Based Software Engineering Qun Zhou December, 2002 Abstract Agent oriented software

More information

Achieving Architectural Design Concepts with Remote Method Invocations

Achieving Architectural Design Concepts with Remote Method Invocations Achieving Architectural Design Concepts with Remote Method Invocations L.ilteri ÖNEY E1305937 Computer Engineering Department - METU Dr.Semih ÇETN ABSTRACT Motivation to write this article is based on

More information

ENTITIES IN THE OBJECT-ORIENTED DESIGN PROCESS MODEL

ENTITIES IN THE OBJECT-ORIENTED DESIGN PROCESS MODEL INTERNATIONAL DESIGN CONFERENCE - DESIGN 2000 Dubrovnik, May 23-26, 2000. ENTITIES IN THE OBJECT-ORIENTED DESIGN PROCESS MODEL N. Pavković, D. Marjanović Keywords: object oriented methodology, design process

More information

Ch 1: The Architecture Business Cycle

Ch 1: The Architecture Business Cycle Ch 1: The Architecture Business Cycle For decades, software designers have been taught to build systems based exclusively on the technical requirements. Software architecture encompasses the structures

More information

A component-centric UML based approach for modeling the architecture of web applications.

A component-centric UML based approach for modeling the architecture of web applications. International Journal of Recent Research and Review, Vol. V, March 2013 ISSN 2277 8322 A component-centric UML based approach for modeling the architecture of web applications. Mukesh Kataria 1 1 Affiliated

More information

An Information Model for High-Integrity Real Time Systems

An Information Model for High-Integrity Real Time Systems An Information Model for High-Integrity Real Time Systems Alek Radjenovic, Richard Paige, Philippa Conmy, Malcolm Wallace, and John McDermid High-Integrity Systems Group, Department of Computer Science,

More information

SEO Toolkit Keyword and Competitor Research and On Page Optimisation

SEO Toolkit Keyword and Competitor Research and On Page Optimisation SEO Toolkit Keyword and Competitor Research and On Page Optimisation Marketing & Public Relations Department University of Newcastle February 2013 Version 1.0 SEO Toolkit Contents What is SEO? and the

More information

On the Role of Connectors in Modeling and Implementing Software Architectures

On the Role of Connectors in Modeling and Implementing Software Architectures On the Role of Connectors in Modeling and Implementing Software Architectures Peyman Oreizy, David S. Rosenblum, and Richard N. Taylor Department of Information and Computer Science University of California,

More information

Specifying Usability Features with Patterns and Templates

Specifying Usability Features with Patterns and Templates Specifying Usability Features with Patterns and Templates Holger Röder University of Stuttgart Institute of Software Technology Universitätsstraße 38, 70569 Stuttgart, Germany roeder@informatik.uni-stuttgart.de

More information

BCS Examination Guidance for the Practitioner Software Asset Management Examination

BCS Examination Guidance for the Practitioner Software Asset Management Examination BCS Examination Guidance for the Practitioner Software Asset Management Examination Version 1.2 August 2011 Contents Introduction...3 Entry Requirements For The Examination...3 Structure of the Examination...3

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

Integration With the Business Modeler

Integration With the Business Modeler Decision Framework, J. Duggan Research Note 11 September 2003 Evaluating OOA&D Functionality Criteria Looking at nine criteria will help you evaluate the functionality of object-oriented analysis and design

More information

UC Irvine UC Irvine Previously Published Works

UC Irvine UC Irvine Previously Published Works UC Irvine UC Irvine Previously Published Works Title Differencing and merging within an evolving product line architecture Permalink https://escholarship.org/uc/item/0k73r951 Authors Chen, Ping H Critchlow,

More information

Towards Reusable Heterogeneous Data-Centric Disentangled Parts

Towards Reusable Heterogeneous Data-Centric Disentangled Parts Towards Reusable Heterogeneous Data-Centric Disentangled Parts Michael Reinsch and Takuo Watanabe Department of Computer Science, Graduate School of Information Science and Technology, Tokyo Institute

More information

Full file at https://fratstock.eu

Full file at https://fratstock.eu TEACHING TIPS Chapter 2 SYSTEMS TECHNIQUES AND DOCUMENTATION I normally introduce flowcharting symbols with simple examples on the board. I first introduce a very simple manual flowchart involving only

More information

Maintaining & Increasing Stakeholder Confidence in IT Architecture

Maintaining & Increasing Stakeholder Confidence in IT Architecture Maintaining & Increasing Stakeholder Confidence in IT Architecture Eoin Woods eoin@artechra.com www.eoinwoods.info 1 Content Defining IT Architecture IT Architecture & Requirements Identifying Stakeholders

More information

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered Topics covered Chapter 6 Architectural Design Architectural design decisions Architectural views Architectural patterns Application architectures Lecture 1 1 2 Software architecture The design process

More information

Topic 10. WebE - Information Design

Topic 10. WebE - Information Design Topic 10 WebE - Information Design Information Design Model: Summary Three key issues: 1. Content. What content is available? Content Objects? Data Structures? 2. Composition. What views on that content

More information

SOME TYPES AND USES OF DATA MODELS

SOME TYPES AND USES OF DATA MODELS 3 SOME TYPES AND USES OF DATA MODELS CHAPTER OUTLINE 3.1 Different Types of Data Models 23 3.1.1 Physical Data Model 24 3.1.2 Logical Data Model 24 3.1.3 Conceptual Data Model 25 3.1.4 Canonical Data Model

More information

Definition of Information Systems

Definition of Information Systems Information Systems Modeling To provide a foundation for the discussions throughout this book, this chapter begins by defining what is actually meant by the term information system. The focus is on model-driven

More information

Requirements. Requirements. Types of Requirement. What Is a Requirement?

Requirements. Requirements. Types of Requirement. What Is a Requirement? Beatrice Åkerblom beatrice@dsv.su.se Everything else in software development depends on the requirements. If you cannot get stable requirements you cannot get a predictable plan... What Is a Requirement?!

More information

Practical Model-Driven Development with the IBM Software Development Platform

Practical Model-Driven Development with the IBM Software Development Platform IBM Software Group Practical Model-Driven Development with the IBM Software Development Platform Osmond Ng (ong@hk1.ibm.com) Technical Consultant, IBM HK SWG 2005 IBM Corporation Overview The Challenges

More information

Automated Model Transformation for Cyber- Physical Power System Models

Automated Model Transformation for Cyber- Physical Power System Models Automated Model Transformation for Cyber- Physical Power System Models Gustav Holm Abstract Standardized information and mathematical models, which model the characteristics of the power generation and

More information

Enterprise Architect Training Courses

Enterprise Architect Training Courses On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object

More information

OBJECT-ORIENTED DESIGN

OBJECT-ORIENTED DESIGN SOFTWARE ENGINEERING OBJECT-ORIENTED DESIGN YEAR 2013 Saulius Ragaišis saulius.ragaisis@mif.vu.lt Information source Slides are prepared on the basis of Doug Rosenberg and Matt Stephens, Use Case Driven

More information

Architectural Design

Architectural Design Architectural Design Topics i. Architectural design decisions ii. Architectural views iii. Architectural patterns iv. Application architectures Chapter 6 Architectural design 2 PART 1 ARCHITECTURAL DESIGN

More information

Business Activity. predecessor Activity Description. from * successor * to. Performer is performer has attribute.

Business Activity. predecessor Activity Description. from * successor * to. Performer is performer has attribute. Editor Definition Language and Its Implementation Audris Kalnins, Karlis Podnieks, Andris Zarins, Edgars Celms, and Janis Barzdins Institute of Mathematics and Computer Science, University of Latvia Raina

More information

The Conference Review System with WSDM

The Conference Review System with WSDM The Conference Review System with WSDM Olga De Troyer, Sven Casteleyn Vrije Universiteit Brussel WISE Research group Pleinlaan 2, B-1050 Brussel, Belgium Olga.DeTroyer@vub.ac.be, svcastel@vub.ac.be 1 Introduction

More information

FAQ - Podium v1.4 by Jim Allen

FAQ - Podium v1.4 by Jim Allen FAQ - Podium v1.4 by Jim Allen Podium is the only plug-in to run natively within SketchUp, and the only one to have a true 'one click' photorealistic output. Although it is about as simple as you can expect

More information

CHAPTER 1 COPYRIGHTED MATERIAL. Finding Your Way in the Inventor Interface

CHAPTER 1 COPYRIGHTED MATERIAL. Finding Your Way in the Inventor Interface CHAPTER 1 Finding Your Way in the Inventor Interface COPYRIGHTED MATERIAL Understanding Inventor s interface behavior Opening existing files Creating new files Modifying the look and feel of Inventor Managing

More information

(9A05803) WEB SERVICES (ELECTIVE - III)

(9A05803) WEB SERVICES (ELECTIVE - III) 1 UNIT III (9A05803) WEB SERVICES (ELECTIVE - III) Web services Architecture: web services architecture and its characteristics, core building blocks of web services, standards and technologies available

More information

HEARTLANDS ACADEMY LESSON STUDY SERIES RESEARCH LESSON 2 GEOMETRICAL REASONING

HEARTLANDS ACADEMY LESSON STUDY SERIES RESEARCH LESSON 2 GEOMETRICAL REASONING HEARTLANDS ACADEMY LESSON STUDY SERIES 2015-2016 RESEARCH LESSON 2 GEOMETRICAL REASONING Spatial intuition or spatial perception is an enormously powerful tool and that is why geometry is actually such

More information

Architectural Design

Architectural Design Architectural Design Topics i. Architectural design decisions ii. Architectural views iii. Architectural patterns iv. Application architectures PART 1 ARCHITECTURAL DESIGN DECISIONS Recap on SDLC Phases

More information