Software Architecture Architectural Viewpoints. Martin Pinzger Software Engineering Research Group

Size: px
Start display at page:

Download "Software Architecture Architectural Viewpoints. Martin Pinzger Software Engineering Research Group"

Transcription

1 Software Architecture Architectural Viewpoints Martin Pinzger Software Engineering Research Group

2 SERG Educa&on Programming, so1ware engineering MSc, BSc projects Research So1ware architecture So1ware tes&ng Repository mining Collabora&on Services Model- driven engineering End- user programming 2

3 3

4 Martin Pinzger Assistant Professor Delft University of Technology Research areas Software evolution and quality analysis, software visualization, software repository mining, collaborative software engineering Teaching Software engineering project (2nd year, BSc) Software architecture, software reengineering, software evolution (MSc) Supervising BSc, MSc and PhD students WWW: 4

5 Outline of the Lecture Defining a software architecture Architectural viewpoints Functional Information Concurrency Development Deployment Operation 5

6 Software Engineering Today 6

7 Architecture Definition Activities 1. Consolidate Input 2. Identify Scenarios 4. Produce Candidate Architecture 3. Identify Relevant Architecture Styles 5. Explore Architectural Options 7a. Rework Architecture 7b. Revisit Requirements 6. Evaluate Architecture with Stakeholders acceptable? not acceptable 7

8 MS Core Architecture Design Activities Figure 8

9 Questions for Designing an Architecture What are the main features of the system? What are the elements providing these features? Who will develop the system? On which hardware environment will the system run? Which technologies will be used? These questions can not be captured by only a single model 9

10 Key Design Strategy Use a set of interrelated architectural views to describe a software architecture Kruchten, Philippe. Architectural Blueprints The 4+1 View Model of Software Architecture. IEEE Software 12 (6), pp

11 Architectural Views A view is a representation of one or more structural aspects of a software architecture What stakeholders is the view addressing? Language How much do they need to know about this aspect? Level and amount of details Strategy Include only the details that help to explain and meet the stakeholder concerns 11

12 Architectural Viewpoints Collection of patterns, templates, and conventions for constructing one type of architectural view Reuse of architectural knowledge -> architectural patterns and style Nick Rozanski and Eoin Woods Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives ISBN:

13 Views and Viewpoints in Context Architectural Element n comprises Architecture relates to has an System is documented by addresses needs of n n Architecture documents for n Stakeholder Description n comprises n has n conforms addresses View Viewpoint Concern n n n 13

14 Catalogue of Viewpoints [Rozanski & Woods, 2005] 14

15 Functional Viewpoint Content The system s runtime functional elements and their responsibilities, interfaces, and primary interactions Concerns Functional capabilities, external interfaces, internal structure, and design philosophy Models UML component diagram sketches 15

16 Example: Statistics Calculator Display Client StatsAccess {type=xml RPC, protocol=http, number=10 concurrent} Statistics Accessor Element interface and its use by other elements Tagged values used to make interface characteristics clear ReadStats Statistics Calculator Statistics Store StatsBatchUpdate {type=xml file} UML component represents a system element 16

17 Modeling Activities (1) Identify the elements (components) From the functional requirements Assign clear responsibilities to the elements Information managed by the element Services it offers to other elements Design the interfaces of the elements Each element has a well defined interface Operations, type of interface, input, output Precondition, postcondition 17

18 Example: Interface Definition Interface Type CORBA RPC Interface Definition struct Customer {... } interface ManageCustomer { custid addcustomer(customer newcustomer) raises invalidcustomer; void delcustomer(customer customer) raises nosuchcustomer; } Operations addcustomer Description: Adds a new customer... Precondition: First name, last name, address,... must not be null Postcondition: New customer is added, unique ID is allocated and returned. 18

19 Modeling Activities (2) Check the functional traceability Do the functions implement the functional requirements Walk through common scenarios Illustrate the stakeholders how the system will behave Analyze the interactions Try to minimize interaction (low coupling, high cohesion) Analyze the flexibility Walk through What if scenarios 19

20 Modeling Hints (1) Poorly defined interfaces Define interfaces clearly and as early as possible Review interfaces frequently Poorly understood responsibilities E.g., functionality is missing Infrastructure modeled as functional elements Do not model infrastructure elements, except it is necessary to understand the functionality -> they are part of the Deployment Viewpoint 20

21 Modeling Hints (2) Overloaded view Create views from other viewpoints that address the aspects Difficulty in reconciling the needs of multiple stakeholders Use different modeling languages for different stakeholders Create simplified views for non-technical stakeholders (sketches) Inappropriate level of detail Avoid detailed design of internal structure of an element Aim for less than top-level elements God elements Avoid 50% of functionality in less than 25% of elements 21

22 Information Viewpoint Content How the system stores, manipulates, manages, and distributes information Concerns Models Information structure and content; information flow; data ownership; timeliness, latency, and age; references and mappings; transaction management and recovery; data quality; data volumes; archives and data retention; and regulation Static data structure models, Information flow models, Information lifecycle models, Data ownership models, Data quality analysis, Metadata models, Volumetric models 22

23 Example: Book Rental 23

24 Modeling Hints: ER Diagram Strive for max 20 entities (presentable on one page) Focus on the most important entities No need to have normalized data No need to present all details Column type, foreign keys, etc. 24

25 Example: Hydraulic Simulation 25

26 Example: Book Rental Published Acquired Available Disposed Checked out 26

27 Modeling Hints (1) Data incompatibilities Different systems use different data formats Develop a common, higher-level model of the data Poor data quality Identify and evaluate data sources Figure out which data is important (with stakeholders) Poor information latency Check distance to information sources/providers Measure latency and review with the stakeholders 27

28 Modeling Hints (2) Interface complexity Transfer of information between n systems: n*(n-1)/2 data converters Consider using an Integration Hub Systems are linked via an adapter (data converter) to one integration hub Inadequate volumetrics Capture data volumes Translate business data into physical data volumes E.g., How much bytes need to be transferred for an order? Take into account future expansions Data volume is typically growing 28

29 Concurrency Viewpoint Content Mapping functional elements to concurrency units to clearly identify the parts of the system that can execute concurrently, and how this is coordinated and controlled Concerns Task structure, mapping of functional elements to tasks, inter-process communication, state management, synchronization and integrity, startup and shutdown, task failure, and re-entrancy Models System-level concurrency models State models 29

30 Example: Statistics Calculator Functional elements mapped to runtime processes <<process>> Win32 Client Process <<process>> Statistics Service Proc. DisplayClient Statistics Accessor <<process group>> DBMS Processes. Statistics Calculator Stereotyped class used to represent a process <<mutex>> stats update mutex Stereotyped class used to represent an IPC mechanism <<process>> Statistics Calc. Proc. Stereotyped class representing a group of related processes to simplify the model Statistics Calculator Relationships representing communication between processes (in some cases involving IPC mechanisms) 30

31 Modeling Activities Map functional elements to tasks (processes, threads) Only introduce concurrency where required -> complexity Determine the sharing of resources Access to which resources needs to be protected Locking mechanisms Assign priorities to tasks More important tasks should be executed first Analyze deadlocks 31

32 Example: Course Enrollment 32

33 Modeling Hints Do not model the internal concurrency of elements Keep it simple Resource contention and deadlocks Use scenarios to identify high levels of concurrency Introduce more fine-grained locking Prevent shared resources where possible Race conditions Protect resources from multiple updates 33

34 Development Viewpoint Content How the architecture supports and constraints the software development process Concerns Module organization, common processing, standardization of design, standardization of testing, instrumentation, and codeline organization Models Module structure models Common design models Codeline models 34

35 Example: Movie Theater 35

36 Modeling Activities (1) Identify and classify the modules and their dependencies No cycles between packages (ACP) Depend in direction of stability (SDP) Stable packages should be abstract packages and at the bottom (SAP) Common-Reuse Principle (CRP) Functionality/classes that are reused together go in the same package Either all functionality/classes in a package are reused together or none of them are Common-Closure Principle (CCP) Functionality/classes in a package should be closed together against the same changes A change affects all the classes in a package and not other package 36

37 Common Design & Codeline Organization Common design models Message logging, internationalization Use of 3rd party libraries Database interaction Codeline Organization Configuration management (modules, releases, branches) Building and testing Scope of tests and when do they run Release process 37

38 Modeling Hints (1) Too much detail Prevent implementation details (e.g., detailed class design) Minimize the number of design constraints for developers Involve the developers and testers 38

39 Deployment Viewpoint Content The environment into which the system will be deployed, including the dependencies the system has on its runtime environment Concerns Types of hardware required, specification and quantity of hardware required, third-party software requirements, technology compatibility, network requirements, network capacity required, and physical constraints Models Runtime platform models Network models Technology dependency models 39

40 Example: Product Line IAF23 interface to production line monitoring hardware. Production Line Interface Disk Array {mftr = sun, model = StorEdge4500} UML nodes used to represent hardware elements within deployment environment Primary Server {memory = 1Gb, model = V880, CPU = 2 x 750MHz, mftr = Sun} Data Capture Service Database Server {model = E420R, memory = 2Gb, mftr = Sun, CPU = 2 x 450MHz} SCSI connection, not network Oracle DBMS Instance Data Access Service Inter-node relationships show required interconnection paths Calculation Server {model = V880, mftr = Sun, memory = 1Gb, CPU = 4 x 1.1GHz} Prod. Line Operator PC {CPU = 750MHz, memory = 128Mb} Production Planner PC {memory = 512Mb, CPU = 1.2GHz} Predictive Calculator Operator Client Planner Client Functional elements mapped to hardware 40

41 Modeling Activities Design the deployment environment Identify the (available) server and client computers Identify the network links between computers Add special purpose hardware Map elements to hardware Which functional element/process is running on which hardware? Evaluate the hardware requirements 41

42 Modeling Hints Specify details of the hardware and software needed to run the system Software, version number, patches Use technology that you know Get advice from experts on new technology Create prototypes to learn and test the new technology Design the deployment view as part of your architecture Often deployment is considered after the system has been developed Did not know that the system also needs to run on Sun? 42

43 Operational Viewpoint Content Describes how the system will be operated, administered, and supported when it is running in its production environment Concerns Installation and upgrade, functional migration, data migration, operational monitoring and control, configuration management, performance monitoring, support, and backup and restore Models Installation models Migration models Configuration management models Administration models Support models 43

44 Example: Installation Model Installation Groups Win32 Desktop Client: Installation via InstallShield Database Schema: SQL script executed using the Perl script Web Interface: WEBINTERFACE component will be manually copied to Apache directory x/y/z Dependencies Win32 Desktop Client, Web Interface depend on Database Schema Constrains A restart of the Win32 Desktop Client will be required Backout Strategy Uninstallation all groups: Win32 Desktop Client: Run installer and select uninstall Database Schema: Execute Perl script with option --uninstall Web Interface: Delete the WEBINTERFACE component from the apache directory x/y/z 44

45 Relationships Between Viewpoints Functional Development Information Deployment Concurrency Operational 45

46 Consistency Between Viewpoints Design quality properties early Do not wait with consistency until your views are nearly complete Assign unique identifiers to model elements 46

47 Limitations of Viewpoints Viewpoints don t explicitly consider quality properties Their focus is more on the structure(s) of a software system Quality properties usually need cross-viewpoint consideration Viewpoints may lead to late consideration of quality properties Adding them later often is expensive 47

48 Summary Architectural viewpoints Guidelines to model the different structural aspects Keep views consistent early on Review views with stakeholders 48

49 Recommended Reading Nick Rozanski and Eoin Woods Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives ISBN:

50 Additional Reading Microsoft Microsoft Application Architecture Guide, 2nd Edition Online: 50

51 Additional Literature Software Architecture in Practice Bass, Clements, Kazman ISBN: Documenting Software Architectures: Views and Beyond Clements, Bachmann, Bass, Garlan, Ivers, Little, Nord, Stafford ISBN: Software Architecture: Foundations, Theory, and Practice Taylor, Medvidovic, Dashofy ISBN:

52 Further Architecture Resources Web sites, portals SEI s Software Architecture for Software-Intensive Systems The Gaudí System Architecting page: The Bredemeyer Architecture page: Software Product Lines: SoftwareArchitectures.com: Grady Booch s Handbook of Software Architecture: 52

53 Further Architecture Resources (cont.) Conferences WICSA ECSA SPLC Associations and working groups IFIP WG 2.10 Software Architecture: Portal: WWISA World-wide Institute of Software Architects: IASA International Association of Software Architects 53

OT TU1 Software Architecture Using Viewpoints and Perspectives

OT TU1 Software Architecture Using Viewpoints and Perspectives Eoin Woods Artechra Limited OT2004 - TU1 Software Architecture Using Viewpoints and Perspectives Nick Rozanski French Thornton eoin.woods@ nick.rozanski@ artechra.com french-thornton.co.uk (C) 2004 Artechra

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

Viewpoints and Perspectives Reference Card

Viewpoints and Perspectives Reference Card Viewpoints and Perspectives Reference Card Nick Rozanski and Eoin Woods www.viewpoints-and-perspectives.info Content from Edition 2 of Software Systems Architecture: Working With Stakeholders Using Viewpoints

More information

The Past, Present and Future of Software Architecture

The Past, Present and Future of Software Architecture The Past, Present and Future of Software Architecture Eoin Woods UBS Investment Bank eoin@artechra.com www.eoinwoods.info About me I m a working software architect Always worked as a software engineer

More information

Introduction to software architecture Revision : 732

Introduction to software architecture Revision : 732 Introduction to software architecture Revision : 732 Denis Conan Septembre 2018 Foreword The content of these slides is extracted from the following references: L. Bass, P. Clements, and R. Kazman. Software

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

CS560 Lecture: Software Architecture Includes slides by I. Sommerville

CS560 Lecture: Software Architecture Includes slides by I. Sommerville CS560 Lecture: Software Architecture 2009 Includes slides by I. Sommerville Architectural Design Design process for identifying the sub-systems making up a system and the framework for sub-system control

More information

Architectural Blueprint

Architectural Blueprint IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint

More information

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 1 Faculty of Sciences, Lebanese University 2 LINA Laboratory, University of Nantes ABSTRACT:

More information

Software architecture: Introduction

Software architecture: Introduction 2IW80 Software specification and architecture Software architecture: Introduction Alexander Serebrenik This week sources Slides by Johan Lukkien and Rudolf Mak Software architecture Software architecture

More information

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten Architectural Blueprint The 4+1 View Model of Software Architecture Philippe Kruchten Model What is a model? simplified abstract representation information exchange standardization principals (involved)

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

Foundations of Software Engineering

Foundations of Software Engineering Foundations of Software Engineering Lecture 9: Architecture Documentation, Patterns, and Tactics Christian Kaestner 1 Learning Goals Use notation and views to describe the architecture suitable to the

More information

Software architecture: Introduction

Software architecture: Introduction 2IW80 Software specification and architecture Software architecture: Introduction Alexander Serebrenik This week sources Slides by Johan Lukkien and Rudolf Mak Software architecture Software architecture

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

Viewpoints: Development, Deployment, and Operational. CSCE Lecture /30 and 11/01/2018

Viewpoints: Development, Deployment, and Operational. CSCE Lecture /30 and 11/01/2018 Viewpoints: Development, Deployment, and Operational CSCE 742 - Lecture 15-16 10/30 and 11/01/2018 The Viewpoints The Context, Functional, Information, and Concurrency Views define what you are building.

More information

Software Architecture Viewpoint Models: A Short Survey

Software Architecture Viewpoint Models: A Short Survey Software Architecture Viewpoint Models: A Short Survey Valiallah Omrani 1, Seyyed Ali Razavi Ebrahimi 2 1 Computer Science & Information Technology, Payam Noor University (PNU), Tehran, Iran omrani@inio.ac.ir

More information

Software Architecture and Design I

Software Architecture and Design I Software Architecture and Design I Instructor: Yongjie Zheng February 23, 2017 CS 490MT/5555 Software Methods and Tools Outline What is software architecture? Why do we need software architecture? How

More information

Software Architectures. Lecture 6 (part 1)

Software Architectures. Lecture 6 (part 1) Software Architectures Lecture 6 (part 1) 2 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements

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

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

LOG8430: Architecture logicielle et conception avancée

LOG8430: Architecture logicielle et conception avancée LOG8430: Architecture logicielle et conception avancée Modeling, OO Concepts, and Design Patterns Winter 2018 Fabio Petrillo Chargé de Cours This work is licensed under a Creative 1 Commons Attribution-NonCommercialShareAlike

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

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

Rational Software White paper

Rational Software White paper Unifying Enterprise Development Teams with the UML Grady Booch Rational Software White paper 1 There is a fundamental paradox at play in contemporary software development. On the one hand, organizations

More information

FREQUENTLY ASKED QUESTIONS

FREQUENTLY ASKED QUESTIONS Borland Together FREQUENTLY ASKED QUESTIONS GENERAL QUESTIONS What is Borland Together? Borland Together is a visual modeling platform that enables software teams to consistently deliver on-time, high

More information

Using the UML for Architectural Description Rich Hilliard

Using the UML for Architectural Description Rich Hilliard Using the UML for Architectural Description Rich Hilliard rh@isis2000.com Outline What is IEEE P1471? The IEEE P1471 Conceptual Framework Requirements on Architectural Descriptions Using the UML in the

More information

MOC 6232A: Implementing a Microsoft SQL Server 2008 Database

MOC 6232A: Implementing a Microsoft SQL Server 2008 Database MOC 6232A: Implementing a Microsoft SQL Server 2008 Database Course Number: 6232A Course Length: 5 Days Course Overview This course provides students with the knowledge and skills to implement a Microsoft

More information

An introduction to the IBM Views and Viewpoints Framework for IT systems

An introduction to the IBM Views and Viewpoints Framework for IT systems An introduction to the IBM Views and Viewpoints Framework for IT systems By Denise Cook, Software Engineer Peter Cripps, Senior IT Architect Philippe Spaas, Executive IT Architect IBM Corporation December

More information

Department of Mathematics and Computing Science University of Groningen The Netherlands

Department of Mathematics and Computing Science University of Groningen The Netherlands Technical Report: Documenting a Catalog of Viewpoints to Describe the Execution Architecture of a Large Software- Intensive System for the ISO/IEC 42010 Standard Trosky B. Callo Arias, Paris Avgeriou Department

More information

Microsoft SQL Server Training Course Catalogue. Learning Solutions

Microsoft SQL Server Training Course Catalogue. Learning Solutions Training Course Catalogue Learning Solutions Querying SQL Server 2000 with Transact-SQL Course No: MS2071 Two days Instructor-led-Classroom 2000 The goal of this course is to provide students with the

More information

What is Software Architecture

What is Software Architecture What is Software Architecture Is this diagram an architecture? (ATM Software) Control Card Interface Cash Dispenser Keyboard Interface What are ambiguities in the previous diagram? Nature of the elements

More information

CMPT 354 Database Systems I. Spring 2012 Instructor: Hassan Khosravi

CMPT 354 Database Systems I. Spring 2012 Instructor: Hassan Khosravi CMPT 354 Database Systems I Spring 2012 Instructor: Hassan Khosravi Textbook First Course in Database Systems, 3 rd Edition. Jeffry Ullman and Jennifer Widom Other text books Ramakrishnan SILBERSCHATZ

More information

Creating and Analyzing Software Architecture

Creating and Analyzing Software Architecture Creating and Analyzing Software Architecture Dr. Igor Ivkovic iivkovic@uwaterloo.ca [with material from Software Architecture: Foundations, Theory, and Practice, by Taylor, Medvidovic, and Dashofy, published

More information

Engr. M. Fahad Khan Lecturer Software Engineering Department University Of Engineering & Technology Taxila

Engr. M. Fahad Khan Lecturer Software Engineering Department University Of Engineering & Technology Taxila Engr. M. Fahad Khan Lecturer Software Engineering Department University Of Engineering & Technology Taxila Software Design and Architecture Software Design Software design is a process of problem-solving

More information

This tutorial will help computer science graduates to understand the basic-to-advanced concepts related to data warehousing.

This tutorial will help computer science graduates to understand the basic-to-advanced concepts related to data warehousing. About the Tutorial A data warehouse is constructed by integrating data from multiple heterogeneous sources. It supports analytical reporting, structured and/or ad hoc queries and decision making. This

More information

SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA

SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA PURPOSE OF THIS CLASS An introduction to software architecture What is an architecture Why it is important How it is represented

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

Microsoft SharePoint Server 2013 Plan, Configure & Manage

Microsoft SharePoint Server 2013 Plan, Configure & Manage Microsoft SharePoint Server 2013 Plan, Configure & Manage Course 20331-20332B 5 Days Instructor-led, Hands on Course Information This five day instructor-led course omits the overlap and redundancy that

More information

Microsoft Core Solutions of Microsoft SharePoint Server 2013

Microsoft Core Solutions of Microsoft SharePoint Server 2013 1800 ULEARN (853 276) www.ddls.com.au Microsoft 20331 - Core Solutions of Microsoft SharePoint Server 2013 Length 5 days Price $4290.00 (inc GST) Version B Overview This course will provide you with the

More information

Foundations of Software Engineering

Foundations of Software Engineering Foundations of Software Engineering Lecture 8: Software Architecture II Christian Kästner (with slides by Ivan Ruchkin) 2 Learning Goals Understand key parts of architectural process Use architectural

More information

Software Architecture. Lecture 5

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

More information

Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services (Course 6425A)

Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services (Course 6425A) Duration Five days Introduction This five-day instructor-led course provides to teach Active Directory Technology Specialists with the knowledge and skills to configure in a distributed environment, implement

More information

Oracle DBA workshop I

Oracle DBA workshop I Complete DBA(Oracle 11G DBA +MySQL DBA+Amazon AWS) Oracle DBA workshop I Exploring the Oracle Database Architecture Oracle Database Architecture Overview Oracle ASM Architecture Overview Process Architecture

More information

1 of 8 14/12/2013 11:51 Tuning long-running processes Contents 1. Reduce the database size 2. Balancing the hardware resources 3. Specifying initial DB2 database settings 4. Specifying initial Oracle database

More information

Diseño y Evaluación de Arquitecturas de Software. Architecture Based Design Method

Diseño y Evaluación de Arquitecturas de Software. Architecture Based Design Method Diseño y Evaluación de Arquitecturas de Software Architecture Based Design Method César Julio Bustacara Medina Facultad de Ingeniería Pontificia Universidad Javeriana 08/10/2015 1 Architecture Based Design

More information

Software Architecture

Software Architecture Software Architecture Does software architecture global design?, architect designer? Overview What is it, why bother? Architecture Design Viewpoints and view models Architectural styles Architecture asssessment

More information

Implementing Architectures

Implementing Architectures Implementing Architectures Software Architecture Lecture 15 Copyright Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Learning Objectives Formulate implementation as a mapping

More information

The Concurrency Viewpoint

The Concurrency Viewpoint The Concurrency Viewpoint View Relationships The Concurrency Viewpoint 2 The Concurrency Viewpoint Definition: The Concurrency Viewpoint: describes the concurrency structure of the system and maps functional

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

ArcGIS Server Architecture Considerations. Andrew Sakowicz

ArcGIS Server Architecture Considerations. Andrew Sakowicz ArcGIS Server Architecture Considerations Andrew Sakowicz Introduction Andrew Sakowicz - Esri Professional Services - asakowicz@esri.com 2 Audience Audience - System Architects - Project Managers - Developers

More information

Database Management Systems MIT Introduction By S. Sabraz Nawaz

Database Management Systems MIT Introduction By S. Sabraz Nawaz Database Management Systems MIT 22033 Introduction By S. Sabraz Nawaz Recommended Reading Database Management Systems 3 rd Edition, Ramakrishnan, Gehrke Murach s SQL Server 2008 for Developers Any book

More information

6/20/2018 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES. Outline for Today. Architecture views C&C Views

6/20/2018 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES. Outline for Today. Architecture views C&C Views 1 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES Outline for Today 2 Architecture views C&C Views 1 Components and Connectors (C&C) Styles 3 Elements Relations Properties

More information

Introduction to the Course

Introduction to the Course Outline Introduction to the Course Introduction Distributed DBMS Architecture Distributed Database Design Query Processing Transaction Management Issues in Distributed Databases and an Example Objectives

More information

Migration. 22 AUG 2017 VMware Validated Design 4.1 VMware Validated Design for Software-Defined Data Center 4.1

Migration. 22 AUG 2017 VMware Validated Design 4.1 VMware Validated Design for Software-Defined Data Center 4.1 22 AUG 2017 VMware Validated Design 4.1 VMware Validated Design for Software-Defined Data Center 4.1 You can find the most up-to-date technical documentation on the VMware Web site at: https://docs.vmware.com/

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

S1 Informatic Engineering

S1 Informatic Engineering S1 Informatic Engineering Advanced Software Engineering Web App. Process and Architecture By: Egia Rosi Subhiyakto, M.Kom, M.CS Informatic Engineering Department egia@dsn.dinus.ac.id +6285640392988 SYLLABUS

More information

Certified Reference Design for VMware Cloud Providers

Certified Reference Design for VMware Cloud Providers VMware vcloud Architecture Toolkit for Service Providers Certified Reference Design for VMware Cloud Providers Version 2.5 August 2018 2018 VMware, Inc. All rights reserved. This product is protected by

More information

VVD for Cloud Providers: Scale and Performance Guidelines. October 2018

VVD for Cloud Providers: Scale and Performance Guidelines. October 2018 VVD for Cloud Providers: Scale and Performance Guidelines October 2018 2018 VMware, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws.

More information

Oracle Database 11g: Administration Workshop I Release 2

Oracle Database 11g: Administration Workshop I Release 2 Oracle Database 11g: Administration Workshop I Release 2 Duration: 5 Days What you will learn This Oracle Database 11g: Administration Workshop I Release 2 course explores the fundamentals of basic database

More information

Andy Mendelsohn, Oracle Corporation

Andy Mendelsohn, Oracle Corporation ORACLE DATABASE 10G: A REVOLUTION IN DATABASE TECHNOLOGY Andy Mendelsohn, Oracle Corporation EXECUTIVE OVERVIEW Oracle Database 10g is the first database designed for Enterprise Grid Computing. Oracle

More information

New Features Summary PowerDesigner 15.2

New Features Summary PowerDesigner 15.2 New Features Summary PowerDesigner 15.2 Windows DOCUMENT ID: DC10077-01-1520-01 LAST REVISED: February 2010 Copyright 2010 by Sybase, Inc. All rights reserved. This publication pertains to Sybase software

More information

Oracle Database 11g: Administration Workshop I

Oracle Database 11g: Administration Workshop I Oracle Database 11g: Administration Workshop I Duration: 5 Days What you will learn This course is designed to give students a firm foundation in basic administration of Oracle Database 11g. In this class,

More information

"Charting the Course... MOC /2: Planning, Administering & Advanced Technologies of SharePoint Course Summary

Charting the Course... MOC /2: Planning, Administering & Advanced Technologies of SharePoint Course Summary Description Course Summary This five-day course will provide you with the knowledge and skills to plan and administer a Microsoft environment. The course teaches you how to deploy, administer, and troubleshoot

More information

Sommerville Chapter 6 The High-Level Structure of a Software Intensive System. Architectural Design. Slides courtesy Prof.

Sommerville Chapter 6 The High-Level Structure of a Software Intensive System. Architectural Design. Slides courtesy Prof. Sommerville Chapter 6 The High-Level Structure of a Software Intensive System Architectural Design Slides courtesy Prof.Mats Heimdahl 1 Fall 2 2013 Architectural Parallels Architects are the technical

More information

Planning and Deploying System Center 2012 Configuration Manager

Planning and Deploying System Center 2012 Configuration Manager Planning and Deploying System Center 2012 Configuration Manager 10748C; 3 days, Instructor Led Course Description Get detailed instruction and hands-on practice planning and deploying Microsoft System

More information

20331B: Core Solutions of Microsoft SharePoint Server 2013

20331B: Core Solutions of Microsoft SharePoint Server 2013 20331B: Core Solutions of Microsoft SharePoint Server 2013 Course Details Course Code: Duration: Notes: 20331B 5 days This course syllabus should be used to determine whether the course is appropriate

More information

Big Data Processing Technologies. Chentao Wu Associate Professor Dept. of Computer Science and Engineering

Big Data Processing Technologies. Chentao Wu Associate Professor Dept. of Computer Science and Engineering Big Data Processing Technologies Chentao Wu Associate Professor Dept. of Computer Science and Engineering wuct@cs.sjtu.edu.cn Schedule (1) Storage system part (first eight weeks) lec1: Introduction on

More information

Software Architecture Modeling

Software Architecture Modeling 1 / 28 Canonical s 2 / 28 George Fairbanks Software Architecture ing Domain Design Code rof. Cesare autasso http://www.pautasso.info cesare.pautasso@usi.ch @pautasso Boundary Internal Domain 3 / 28 roblem

More information

Architectures in Context

Architectures in Context Architectures in Context Software Architecture Lecture 2 Copyright Richard N. Taylor, Nenad Medvidovic, and Eric M. Dashofy. All rights reserved. Learning Objectives Understand architecture in its relation

More information

InQuira Analytics Installation Guide

InQuira Analytics Installation Guide InQuira Analytics Installation Guide Installing and Configuring InQuira Analytics Applications InQuira Version 8.1.2 Document Number IA80-IG-00 August 27, 2008 InQuira 851 Traeger Ave. Suite 125 San Bruno,

More information

Principles of Object-Oriented Design

Principles of Object-Oriented Design Principles of Object-Oriented Design Part II 1 The Law of Demeter Any object receiving a message in a given method must be one of a restricted set of objects. 1. Strict Form: Every supplier class or object

More information

File Processing Approaches

File Processing Approaches Relational Database Basics Review Overview Database approach Database system Relational model File Processing Approaches Based on file systems Data are recorded in various types of files organized in folders

More information

Style-specific techniques to design product-line architectures

Style-specific techniques to design product-line architectures Style-specific techniques to design product-line architectures Philippe Lalanda Thomson-CSF Corporate Research Laboratory Phone: 33 1 69 33 92 90 Email: lalanda@thomson-lcr.fr Domaine de Corbeville 91404

More information

Microsoft Office SharePoint Server 2007

Microsoft Office SharePoint Server 2007 Microsoft Office SharePoint Server 2007 Enabled by EMC Celerra Unified Storage and Microsoft Hyper-V Reference Architecture Copyright 2010 EMC Corporation. All rights reserved. Published May, 2010 EMC

More information

UNIT-I Introduction of Object Oriented Modeling

UNIT-I Introduction of Object Oriented Modeling UNIT-I Introduction of Object Oriented Modeling - Prasad Mahale Object Oriented Modeling and Reference Books: Design 1. Grady Booch, James Rumbaugh, Ivar Jacobson Unified Modeling Language User Guide,

More information

Course 20533B: Implementing Microsoft Azure Infrastructure Solutions

Course 20533B: Implementing Microsoft Azure Infrastructure Solutions Course 20533B: Implementing Microsoft Azure Infrastructure Solutions Course details Course Outline Module 1: Introduction to Azure This module explains cloud computing, and compares cloud computing and

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

Advanced Technologies of SharePoint 2016

Advanced Technologies of SharePoint 2016 Advanced Technologies of SharePoint 2016 Course 20339-2A 5 Days Instructor-led, Hands on Course Information This five-day course will teach you how to plan, configure, and manage the advanced features

More information

Planning and Administering SharePoint 2016

Planning and Administering SharePoint 2016 Planning and Administering SharePoint 2016 Course 20339A 5 Days Instructor-led, Hands on Course Information This five-day course will combine the Planning and Administering SharePoint 2016 class with the

More information

70-647: Windows Server Enterprise Administration. Course Overview. Course Outline

70-647: Windows Server Enterprise Administration. Course Overview. Course Outline 70-647: Windows Server Enterprise Administration Course Overview Windows Server Enterprise Administration teaches the student how to maintain the Windows Server 2008 R2 environment. Students will learn

More information

SOFTWARE CONFIGURATION MANAGEMENT

SOFTWARE CONFIGURATION MANAGEMENT SOFTWARE CONFIGURATION MANAGEMENT Cape Town SPIN - Albert Visagie - 19 March 2008 Goals Where were we? And get back there reliably. Where are we? How did we get here? Which bugs were fixed in this version?

More information

Preview from Notesale.co.uk Page 12 of 49

Preview from Notesale.co.uk Page 12 of 49 SECTION I: FUNDAMENTALS OF COMPUTING [cont d] 8. describe ways of caring for computers and peripherals in the working environment; 9. discuss health and safety factors associated with computer use. General

More information

ORANET- Course Contents

ORANET- Course Contents ORANET- Course Contents 1. Oracle 11g SQL Fundamental-l 2. Oracle 11g Administration-l 3. Oracle 11g Administration-ll Oracle 11g Structure Query Language Fundamental-l (SQL) This Intro to SQL training

More information

Information Technology Engineers Examination. Database Specialist Examination. (Level 4) Syllabus. Details of Knowledge and Skills Required for

Information Technology Engineers Examination. Database Specialist Examination. (Level 4) Syllabus. Details of Knowledge and Skills Required for Information Technology Engineers Examination Database Specialist Examination (Level 4) Syllabus Details of Knowledge and Skills Required for the Information Technology Engineers Examination Version 3.1

More information

The Method for Verifying Software Architecture with FSP Model

The Method for Verifying Software Architecture with FSP Model The Method for Verifying Software Architecture with FSP Model Kim, Jungho SKC&C Inc., SK u-tower 25-1, Jeongja-dong, Bundang-gu, Seongnam-si, Gyeonggi-do 463-844, Korea kimjh@skcc.com Abstract C&C view

More information

Trends in Data Protection CDP and VTL

Trends in Data Protection CDP and VTL Trends in Data Protection CDP and VTL Agnes Lamont, TimeSpring Jason Iehl, Network Appliance SNIA Legal Notice The material contained in this tutorial is copyrighted by the SNIA. Member companies and individuals

More information

Oracle Database 11g: Administration Workshop I Release 2

Oracle Database 11g: Administration Workshop I Release 2 Oracle University Contact Us: 55-800-891-6502 Oracle Database 11g: Administration Workshop I Release 2 Duration: 5 Days What you will learn This course is designed to give you a firm foundation in basic

More information

Microsoft Planning and Deploying System Center 2012 Configuration Manager

Microsoft Planning and Deploying System Center 2012 Configuration Manager 1800 ULEARN (853 276) www.ddls.com.au Microsoft 10748 - Planning and Deploying System Center 2012 Configuration Manager Length 3 days Price $2750.00 (inc GST) Version C Overview Get detailed instruction

More information

Filesystem Performance on FreeBSD

Filesystem Performance on FreeBSD Filesystem Performance on FreeBSD Kris Kennaway kris@freebsd.org BSDCan 2006, Ottawa, May 12 Introduction Filesystem performance has many aspects No single metric for quantifying it I will focus on aspects

More information

Application Architectures, Design Patterns

Application Architectures, Design Patterns Application Architectures, Design Patterns Martin Ledvinka martin.ledvinka@fel.cvut.cz Winter Term 2017 Martin Ledvinka (martin.ledvinka@fel.cvut.cz) Application Architectures, Design Patterns Winter Term

More information

Chapter 2 CommVault Data Management Concepts

Chapter 2 CommVault Data Management Concepts Chapter 2 CommVault Data Management Concepts 10 - CommVault Data Management Concepts The Simpana product suite offers a wide range of features and options to provide great flexibility in configuring and

More information

GSAW 2007 SW Architecture Workshop - Managing the Complexity of Your Large-Scale Software Architecture and Design. Richard Anthony

GSAW 2007 SW Architecture Workshop - Managing the Complexity of Your Large-Scale Software Architecture and Design. Richard Anthony GSAW 2007 SW Architecture Workshop - Managing the Complexity of Your Large-Scale Software Architecture and Design Richard Anthony richard.anthony@gdc4s.com March 27, 2007 Introduction Target Audience for

More information

Advanced Solutions of Microsoft SharePoint Server 2013 Course Contact Hours

Advanced Solutions of Microsoft SharePoint Server 2013 Course Contact Hours Advanced Solutions of Microsoft SharePoint Server 2013 Course 20332 36 Contact Hours Course Overview This course examines how to plan, configure, and manage a Microsoft SharePoint Server 2013 environment.

More information

Oracle Database Cloud for Oracle DBAs Ed 3

Oracle Database Cloud for Oracle DBAs Ed 3 Oracle University Contact Us: 800-260-690 Oracle Database Cloud for Oracle DBAs Ed 3 Duration: 3 Days What you will learn Note: No hands-on lab environment for the Training On Demand course format This

More information

From an open storage solution to a clustered NAS appliance

From an open storage solution to a clustered NAS appliance From an open storage solution to a clustered NAS appliance Dr.-Ing. Jens-Peter Akelbein Manager Storage Systems Architecture IBM Deutschland R&D GmbH 1 IBM SONAS Overview Enterprise class network attached

More information

COURSE OUTLINE. COURSE OBJECTIVES After completing this course, students will be able to: 1 - INSTALLING & CONFIGURING DCS

COURSE OUTLINE. COURSE OBJECTIVES After completing this course, students will be able to: 1 - INSTALLING & CONFIGURING DCS 20742 Identity with Windows Server 2016 This course teaches IT Pros how to deploy and configure Active Directory Domain Services in a distributed environment, how to implement Group Policy, how to perform

More information

Configuration changes such as conversion from a single instance to RAC, ASM, etc.

Configuration changes such as conversion from a single instance to RAC, ASM, etc. Today, enterprises have to make sizeable investments in hardware and software to roll out infrastructure changes. For example, a data center may have an initiative to move databases to a low cost computing

More information

Topic : Object Oriented Design Principles

Topic : Object Oriented Design Principles Topic : Object Oriented Design Principles Software Engineering Faculty of Computing Universiti Teknologi Malaysia Objectives Describe the differences between requirements activities and design activities

More information

Lesson 19 Software engineering aspects

Lesson 19 Software engineering aspects Lesson 19 Software engineering aspects Service Oriented Architectures Security Module 4 - Architectures Unit 1 Architectural features Ernesto Damiani Università di Milano SOA is HAD HAD is an old concept

More information