Clean Architecture Patterns, Practices, and #sddconf
|
|
- Alexandrina Hutchinson
- 6 years ago
- Views:
Transcription
1 Clean Architecture Patterns, Practices, and #sddconf
2
3
4
5
6
7
8 About Me Independent consultant Education B.S. in Computer Science (ISU) B.A. in Philosophy (ISU) Community Public Speaker Pluralsight Author Microsoft MVP ASPInsider Open-Source Software
9 Overview 1. Clean Architecture 2. Domain-Centric Architecture 3. Application Layer 4. Commands and Queries 5. Functional Organization 6. Microservices
10 Focus Enterprise Architecture Line-of-Business Applications Modern equivalent of 3-Layer
11 Focus Generally applicable 6 Key Points Q & A
12 What is Software Architecture? High-level Structure Layers Components Relationships Source: en-us/library/ff aspx
13 Levels of Architectural Abstraction System Sub-systems Layers Components Classes Data and Methods
14 Levels of Architectural Abstraction System Sub-systems Layers Components Classes Data and Methods
15 Messy vs Clean Architecture
16 Messy vs Clean Architecture
17 Messy vs Clean Architecture
18 What Is Bad Architecture? Complex Inconsistent Incoherent Rigid Brittle Untestable Unmaintainable
19 What Is Clean Architecture? Simple Understandable Flexible Emergent Testable Maintainable
20 What Is Clean Architecture? Architecture that is designed for the inhabitants of the architecture not for the architect or the machine
21 What Is Clean Architecture? Architecture that is designed for the inhabitants of the architecture not for the architect or the machine
22 What Is Clean Architecture? Architecture that is designed for the inhabitants of the architecture not for the architect or the machine
23 What Is Clean Architecture? Architecture that is designed for the inhabitants of the architecture not for the architect or the machine
24 What Is Clean Architecture? Architecture that is designed for the inhabitants of the architecture not for the architect or the machine
25 Why Is Clean Architecture Important? Cost/benefit Minimize cost to maintain Maximize business value
26 Decisions, Decisions, Decisions Context is king All decisions are a tradeoff Use your best judgement
27 Domain-Centric Architecture
28 Venus Mars Earth Mercury Sun Moon Jupiter Saturn
29 Earth Mars Venus Sun Mercury Jupiter Saturn
30 Venus Earth Mars Earth Mercury Sun Mars Venus Sun Mercury Moon Jupiter Saturn Jupiter Saturn Geocentric Model Heliocentric Model
31 Classic 3-layer Database-centric Architecture UI Business Logic Data Access Database Database
32 Database- vs. Domain-centric Architecture UI Presentation Business Logic Application Data Access Database Database Database Domain Database
33 The first concern of the architect is to make sure that the house is usable, it is not to ensure that the house is made of brick. Uncle Bob
34 Essential vs. Detail Space is essential Usability is essential
35 Essential vs. Detail Space is essential Usability is essential Building material is a detail Ornamentation is a detail
36 Essential vs. Detail Domain is essential Use cases are essential
37 Essential vs. Detail Domain is essential Use cases are essential Presentation is a detail Persistence is a detail
38 Database- vs. Domain-centric Architecture UI Presentation Business Logic Application Data Access Database Database Database Domain Database
39 Hexagonal Architecture answering machine adapter http feed GUI http adapter Application adapter mock telephone database adapter DB app app-to-app adapter test adapter mock database Original source:
40 Onion Architecture User Interface Application Services Domain Services Domain Database Model Application Core web service file DB Original source:
41 Clean Architecture Controllers Use Cases Database Entities Presenter Use case output port I Flow of Control Use case interactor External Interfaces Controller Use case input port I Original source:
42 It s All the Same Thing Hexagonal Onion Clean Original Source:
43 Why Use Domain-Centric Architecture? Pros Focus on essential Less coupling to details Necessary for DDD
44 Why Use Domain-Centric Architecture? Pros Focus on essential Less coupling to details Necessary for DDD Cons Change is difficult Requires extra thought Initial higher cost
45 Application Layer
46 What Are Layers? Levels of abstraction Single-Responsibility Principle Developer roles / skills Multiple implementations Varying rates of change
47 Classic 3-Layer Architecture Users UI Business Logic Data Access Database Dependency
48 Modern 4-Layer Architecture Users Presentation Application Domain Persistence Infrastructure Cross-Cutting Concerns Database OS Dependency
49 Application Layer Implements use cases High-level application logic Knows about domain No knowledge of other layers Contains interfaces for details Users Presentation Application Domain Persistence Infrastructure Cross-Cutting Concerns Database OS Dependency
50 Layer Dependencies Users Dependency inversion Inversion of control Independent deployability Flexibility and maintainability Presentation Application Domain Persistence Infrastructure Cross-Cutting Concerns Database OS Flow of Control Dependency
51 Users Presentation SalesController Application ICreateSaleCommand CreateSaleCommand IDatabaseContext IInventoryClient Domain IDateService DateService Cross-Cutting Concerns Sale Persistence DatabaseContext Database InventoryClient OS Infrastructure Composition Implements
52 Why Use an Application Layer? Pros Focus is on use cases Easy to understand Follows DIP
53 Why Use an Application Layer? Pros Focus is on use cases Easy to understand Follows DIP Cons Additional cost Requires extra thought IoC is counter-intuitive
54 Commands and Queries
55 Command-Query Separation Command Does something Should modify state Should not return a value
56 Command-Query Separation Command Does something Should modify state Should not return a value Query Answers a question Should not modify state Always returns a value
57 Command-Query Separation Command Does something Should modify state Should not return a value (ideally) Query Answers a question Should not modify state Always returns a value Avoid mixing the two!
58 CQRS Architectures Users Presentation Queries Commands Domain Data Access Persistence Database Data Flow
59 CQRS Type 1 Single Database Users Presentation Queries Commands Domain Data Access Persistence Database Data Flow
60 CQRS Type 2 Read/Write Databases Users Presentation Queries Commands Domain Data Access Read Database Persistence Write Database Data Flow
61 CQRS Type 3 Event Sourcing Users Presentation Queries Commands Domain Data Access Read Database Persistence Event Store Data Flow
62 CQRS Type 3 Event Sourcing Users Complete audit trail Point-in-time reconstruction Replay events Rebuild production database Presentation Queries Commands Domain Data Access Persistence Read Database Event Store
63 Why Use CQRS? Pros More efficient design Simpler within each stack Optimized performance
64 Why Use CQRS? Pros More efficient design Simpler within each stack Optimized performance Cons Inconsistent across stacks Type 2 is more complex Type 3 might be overkill
65 Functional Organization
66 The architecture should scream the intent of the system! Uncle Bob
67 Bedroom Bath Kitchen Entry Bedroom Dining Room Living Room Utility
68 Material Quantity Cost Appliances 5 $5,000 Cabinets 10 $2,500 Doors 15 $750 Fixtures 12 $2,400 Floors 9 $4,000 Walls 20 $10,000 Windows 8 $2,500
69 Models Views Controllers
70 Models Customers vs Views Controllers Products Vendors
71 Content Controllers Models Scripts Views
72 Content Controllers Models Scripts Views vs Customers Employees Products Sales Vendors
73 So what?
74
75 vs
76 Why Use Functional Organization Pros Spatial locality Easy to navigate Avoid vendor lock-in
77 Why Use Functional Organization Pros Spatial locality Easy to navigate Avoid vendor lock-in Cons Lose framework conventions Lose automatic scaffolding Categorical is easier at first
78 Microservices
79 Components Users UI Sales Support Inventory Business Sales Support Inventory Data Access Sales Support Inventory Database
80 Problem Domain Sales Sales Opportunity Contact Sales Person Product Sales Territory Support Support Ticket Customer Support Person Product Resolution
81 Single Domain Model Customer Sales Territory Sales Opportunity Product Support Ticket Resolution Employee
82 Overlapping Contexts Sales Customer Support Sales Territory Sales Opportunity Product Support Ticket Resolution Employee
83 Bounded Contexts Sales Support Contact Customer Sales Territory Sales Opportunity Product Product Support Ticket Resolution Sales Person Support Person
84 Microservice Architectures Support Subdivide system Bounded contexts Small teams Sales Inventory Marketing HR
85 Microservice Architectures Support Independent Similar to SOA Sales Inventory Marketing HR
86 Why Use Microservices? Pros Less cost for large domains Smaller teams Independence
87 Why Use Microservices? Pros Less cost for large domains Smaller teams Independence Cons Only for large domains Higher up-front cost Distributed system costs
88 Code Demo
89 Where to Go Next? Martin Fowler
90 Where to Go Next? Robert C. Martin
91 Where to Go Next? Eric Evans
92 Where to Go Next? Greg Young Udi Dahan
93 Where to Go Next? Articles Courses Presentations Source Code Videos
94
95 Conclusion
96 Summary Focus on the inhabitants
97 Summary Focus on the inhabitants Domain-centric Architecture Presentation Application Database Domain
98 Summary Focus on the inhabitants Domain-centric Architecture Application Layer Users Presentation Application Domain Persistence Infrastructure Cross-Cutting Concerns Database OS
99 Summary Focus on the inhabitants Domain-centric Architecture Application Layer Commands and Queries Queries Users Presentation Commands Domain Data Access Persistence Database
100 Summary Focus on the inhabitants Domain-centric Architecture Application Layer Commands and Queries Functional Cohesion Products Customers Vendors
101 Summary Focus on the inhabitants Domain-centric Architecture Application Layer Commands and Queries Functional Cohesion Bounded Contexts Sales Marketing Support Inventory HR
102 Feedback Feedback is very important to me! One thing you liked? One thing I could improve?
103 Contact Info Matthew Renze Data Science Consultant Renze Consulting Website: Thank You! : )
Clean Architecture Patterns, Practices, and #DevSum17
Clean Architecture Patterns, Practices, and Principles @matthewrenze #DevSum17 About Me Independent consultant Education B.S. in Computer Science (ISU) B.A. in Philosophy (ISU) Community Public Speaker
More informationA Separation of Concerns Clean Architecture on Android
A Separation of Concerns Clean Architecture on Android Kamal Kamal Mohamed Android Developer, //TODO Find Better Title @ Outware Mobile Ryan Hodgman Official Despiser of Utils Classes @ Outware Mobile
More informationMicroservices Beyond the Hype. SATURN San Diego May 3, 2016 Paulo Merson
Microservices Beyond the Hype SATURN San Diego May 3, 2016 Paulo Merson Our goal Try to define microservice Discuss what you gain and what you lose with microservices 2 Defining Microservice Unfortunately
More informationBUILDING MICROSERVICES ON AZURE. ~ Vaibhav
BUILDING MICROSERVICES ON AZURE ~ Vaibhav Gujral @vabgujral About Me Over 11 years of experience Working with Assurant Inc. Microsoft Certified Azure Architect MCSD, MCP, Microsoft Specialist Aspiring
More informationEnterprise Java Development using JPA, Hibernate and Spring. Srini Penchikala Detroit JUG Developer Day Conference November 14, 2009
Enterprise Java Development using JPA, Hibernate and Spring Srini Penchikala Detroit JUG Developer Day Conference November 14, 2009 About the Speaker Enterprise Architect Writer, Speaker, Editor (InfoQ)
More informationSOA Distilled. Udi Dahan The Software Simplist..NET Development Expert & SOA Specialist Microsoft Solutions Architect MVP
SOA Distilled Udi Dahan The Software Simplist.NET Development Expert & SOA Specialist Microsoft Solutions Architect MVP Udi Dahan - The Software Simplist Consulting, Mentoring & Training Helping you Keep
More informationManaging Data at Scale: Microservices and Events. Randy linkedin.com/in/randyshoup
Managing Data at Scale: Microservices and Events Randy Shoup @randyshoup linkedin.com/in/randyshoup Background VP Engineering at Stitch Fix o Combining Art and Science to revolutionize apparel retail Consulting
More informationThere is no such thing as a microservice!
There is no such thing as a microservice! Chris Richardson Founder of Eventuate.io Founder of the original CloudFoundry.com Author of POJOs in Action chris@chrisrichardson.net http://microservices.io http://eventuate.io
More informationAvancier 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 informationBuild Testable Client and Service Applications
Build Testable Client and Service Applications Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director MVP
More informationHi! NET Developer Group Braunschweig!
Hi! NET Developer Group Braunschweig! Über Tobias Dipl. Informatiker (FH) Passionated Software Developer Clean Code Developer.NET Junkie.NET User Group Lead Microsoft PFE Software Development Twitter @Blubern
More informationVendor: Oracle. Exam Code: 1z Exam Name: Siebel Customer Relationship Management (CRM) 8 Business Analyst. Version: Demo
Vendor: Oracle Exam Code: 1z0-219 Exam Name: Siebel Customer Relationship Management (CRM) 8 Business Analyst Version: Demo QUESTION NO: 1 When does data get written to the Siebel database during Task
More informationArchitecting and Implementing Domain-driven Design Patterns in.net
Architecting and Implementing Domain-driven Design Patterns in.net Dino Esposito JetBrains dino.esposito@jetbrains.com @despos facebook.com/naa4e WARNING This is NOT simply a shameless plug but a truly
More informationCisco Tetration Analytics
Cisco Tetration Analytics Enhanced security and operations with real time analytics John Joo Tetration Business Unit Cisco Systems Security Challenges in Modern Data Centers Securing applications has become
More informationApplication management in Nokia: Getting the most from Company Apps
Application management in Nokia: Getting the most from Case Study 2 Contents 1 Challenge...3 2...5 2.1 Deployment options...5 2.2 App security and authentication...7 2.3 Nokia...7 3 Company Hub...9 3.1
More informationComponent-Level Design. Slides copyright 1996, 2001, 2005, 2009 by Roger S. Pressman. For non-profit educational use only
Chapter 10 Component-Level Design Slide Set to accompany Software Engineering: A Practitioner s Approach, 7/e by Roger S. Pressman Slides copyright 1996, 2001, 2005, 2009 by Roger S. Pressman For non-profit
More informationLuckily, our enterprise had most of the back-end (services, middleware, business logic) already.
2 3 4 The point here is that for real business applications, there is a connected back-end for services. The mobile part of the app is just a presentation layer that is unique for the mobile environment.
More informationCQRS and Event Sourcing for Java Developers Markus Eisele
CQRS and Event Sourcing for Java Developers Markus Eisele @myfear Agenda Classical architectures and modernization CRUD vs. CQRS A little example Wrapping it up Classical Architectures Application Server
More informationIBM Application Runtime Expert for i
IBM Application Runtime Expert for i Tim Rowe timmr@us.ibm.com Problem Application not working/starting How do you check everything that can affect your application? Backup File Owner & file size User
More informationHEARTLAND DEVELOPER CONFERENCE 2017 APPLICATION DATA INTEGRATION WITH SQL SERVER INTEGRATION SERVICES
HEARTLAND DEVELOPER CONFERENCE 2017 APPLICATION DATA INTEGRATION WITH SQL SERVER INTEGRATION SERVICES SESSION ABSTRACT: APPLICATION DATA INTEGRATION WITH SQL SERVER INTEGRATION SERVICES What do you do
More informationMicroservices with Kafka Ecosystem. Guido Schmutz
Microservices with Kafka Ecosystem Guido Schmutz @gschmutz doag2017 Guido Schmutz Working at Trivadis for more than 20 years Oracle ACE Director for Fusion Middleware and SOA Consultant, Trainer Software
More informationApplication Deployment on IBM i
Application Deployment on IBM i Mike Pavlak Solution Consultant Agenda Discuss architecture of and IBM i environment Explore what we use at Zend Change Management options Q&A 2 Disclaimer! Eric Ritchie
More informationTesting NodeJS, REST APIs and MongoDB with UFT January 19, 2016
Testing NodeJS, REST APIs and MongoDB with UFT January 19, 2016 Brought to you by Hosted By Bernard P. Szymczak Ohio Chapter Leader HP Software Education SIG Leader TQA SIG Leader Today s Speakers Ori
More informationCSSE 374: Logical Architecture. Shawn Bohner Office: Moench Room F212 Phone: (812)
CSSE 374: Logical Architecture Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu An Engineering Decision Learning Outcomes: O-O Design Demonstrate object-oriented
More informationSharePoint For All. Jennie Delisi Accessibility Analyst Kris Schulze User Experience
SharePoint For All Jennie Delisi Accessibility Analyst Kris Schulze User Experience Question 1 Do you work for the State of MN, county, city, other? (Text field beside other) State of MN executive branch
More informationMicroservice Splitting the Monolith. Software Engineering II Sharif University of Technology MohammadAmin Fazli
Microservice Software Engineering II Sharif University of Technology MohammadAmin Fazli Topics Seams Why to split the monolith Tangled Dependencies Splitting and Refactoring Databases Transactional Boundaries
More informationCopyright Wyyzzk, Inc Version 5.0. Introduction to Software Architecture
Introduction to Software Architecture Lesson Goal & Objectives Understand the purpose of software architecture. Upon completion of the lesson, the participant will be able to: Describe the purpose of software
More informationServices Oriented Architecture and the Enterprise Services Bus
IBM Software Group Services Oriented Architecture and the Enterprise Services Bus The next step to an on demand business Geoff Hambrick Distinguished Engineer, ISSW Enablement Team ghambric@us.ibm.com
More informationLogging, Monitoring, and Alerting
Logging, Monitoring, and Alerting Logs are a part of daily life in the DevOps world In security, we focus on particular logs to detect security anomalies and for forensic capabilities A basic logging pipeline
More informationDocker and Oracle Everything You Wanted To Know
Docker and Oracle Everything You Wanted To Know June, 2017 Umesh Tanna Principal Technology Sales Consultant Oracle Sales Consulting Centers(SCC) Bangalore Safe Harbor Statement The following is intended
More informationArchitectural Styles I
Architectural Styles I Software Architecture VO/KU (707023/707024) Roman Kern KTI, TU Graz 2015-01-07 Roman Kern (KTI, TU Graz) Architectural Styles I 2015-01-07 1 / 86 Outline 1 Non-Functional Concepts
More informationChoice, Choices, Choices: Fat versus Thin Clients
Choice, Choices, Choices: Fat versus Thin Clients David Moskowitz Productivity Solutions, Inc. David Moskowitz Choices, Choices, Choices: Fat vs. Thin Clients Page 1 Agenda Definitions Myths Choices Approaches
More informationLogical Architecture & Design Preliminaries
Logical Architecture & Design Preliminaries CSSE 574: Week 2, Part 4 Steve Chenoweth Phone: Office (812) 877-8974 Cell (937) 657-3885 Email: chenowet@rose-hulman.edu From Requirements to Architecture Customer
More informationGoal: Offer practical information to help the architecture evaluation of an SOA system. Evaluating a Service-Oriented Architecture
Evaluating a Service-Oriented Architecture Paulo Merson, SEI with Phil Bianco, SEI Rick Kotermanski, Summa Technologies May 2007 Goal: Offer practical information to help the architecture evaluation of
More informationBuilding loosely coupled and scalable systems using Event-Driven Architecture. Jonas Bonér Patrik Nordwall Andreas Källberg
Building loosely coupled and scalable systems using Event-Driven Architecture Jonas Bonér Patrik Nordwall Andreas Källberg Why is EDA Important for Scalability? What building blocks does EDA consists of?
More informationService-Based Architecture
Service-Based Architecture Mark Richards Independent Consultant Hands-on So*ware Architect Published Author / Conference Speaker h
More informationAutomated Bundling and Other New Features in IBM License Metric Tool 7.5 Questions & Answers
ILMT Central Team Automated Bundling and Other New Features in IBM License Metric Tool 7.5 Questions & Answers Information These slides were just the deck of the ILMT Central Team Questions&Answers session.
More informationBy Philip Japikse MVP, MCSD.Net, MCDBA, CSM Principal Consultant Pinnacle Solutions Group
By Philip Japikse Phil.Japikse@pinnsg.com MVP, MCSD.Net, MCDBA, CSM Principal Consultant Pinnacle Solutions Group Phone:513-619-6323 Fax:513-791-5202 1 Principal Consultant, Pinnacle Solutions Group, Inc.
More informationGlass V4, More Info For Your Solution
Glass V4, More Info For Your Solution Mike Edwards Glass @mikeedwards83 @glasslu 1 Glass V4, More Info For Your Solution Modeling Mike Edwards Glass @mikeedwards83 @glasslu 2 Hello! Mike Edwards Sitecore
More informationOracle Applications in a Changing Business World. Legacy Oracle Applications Won't Be Around Forever. Will You?
Oracle Applications in a Changing Business World Legacy Oracle Applications Won't Be Around Forever. Will You? Ross Smith Chief Architect July 7, 2017 2 Oracle Applications in a Changing Business World
More informationImproving Application Performance by Submitting Scripts to Batch using Zend Server for IBM i
Improving Application Performance by Submitting Scripts to Batch using Zend Server for IBM i Mike Pavlak Solution Consultant mike.p@zend.com Insert->Header 1 & Footer Agenda Overview of Zend Server Advantages
More informationDomain Driven Design IS. An architectural methodology for evolving a software system that closely aligns to business requirements
Domain Driven Design IS An architectural methodology for evolving a software system that closely aligns to business requirements Domain Driven Design IS Domain First Focus on the Object Model Focus on
More informationMigrating traditional Java EE applications to mobile
Migrating traditional Java EE applications to mobile Serge Pagop Sr. Channel MW Solution Architect, Red Hat spagop@redhat.com Burr Sutter Product Management Director, Red Hat bsutter@redhat.com 2014-04-16
More informationImprove SSIS Delivery with a Patterns-Based Approach. Meagan Longoria July 19, 2017
Improve SSIS Delivery with a Patterns-Based Approach Meagan Longoria July 19, 2017 What If I Told You 90% of your data integration development in SQL Server could be automated? In 5 years, you will be
More informationAgile Architecture. The Why, the What and the How
Agile Architecture The Why, the What and the How Copyright Net Objectives, Inc. All Rights Reserved 2 Product Portfolio Management Product Management Lean for Executives SAFe for Executives Scaled Agile
More informationArcSight Activate Framework
ArcSight Activate Framework Petropoulos #HPProtect 44% Have trouble managing their SIEM eiqnetworks 2013 SIEM Survey #1 challenge Identification of key events SANS 2012 Log Management and Event Management
More informationDell Digital Signage. One Solution. Infinite Possibilities.
Dell Digital Signage TM One Solution. Infinite Possibilities. Dell Digital Signage Dell simplifies digital signage by providing the complete digital signage solution hardware, software, and services customized
More informationScaling Trust with Millions of Containers: Microsegmentation Strategies for Authorization
Scaling Trust with Millions of Containers: Microsegmentation Strategies for Authorization 1 About Me Drupal Security Team Database Maintainer Service Mgmt for RHEL/Ubuntu Committer Scalable CGroups Management
More informationReactive Systems. Dave Farley.
Reactive Systems Dave Farley http://www.davefarley.net @davefarley77 Reactive Systems 21st Century Architecture for 21st Century Problems Dave Farley http://www.davefarley.net @davefarley77 http://www.continuous-delivery.co.uk
More informationArchitecting ASP.NET Applications
Architecting ASP.NET Applications About me Name: Gunnar Peipman Origin: Tallinn, Estonia Work: Architect, developer Microsoft: ASP.NET/IIS MVP Community: Blogger, speaker Blog: http://gunnarpeipman.com
More informationSite Design. SWE 432, Fall 2017 Design and Implementation of Software for the Web
Site Design SWE 432, Fall 2017 Design and Implementation of Software for the Web Today How do you help users understand if it is possible to do what they d like to do? How do you help users find what they
More informationFREQUENTLY 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 informationWEB & MOBILE AUTOMATION
WEB & MOBILE AUTOMATION 11 th Feb 2017 Presenter: (CoE) 9 Mansi, 5 th Floor, Cross Lane No. 1, Ram Maruti Road, Thane West Email: info@educognitio.com Phone: +91 (0)22 65555131 Web:http://www.educognitio.com
More information5. Application Layer. Introduction
Book Preview This is a sample chapter of Professional PHP - Building maintainable and secure applications. The book starts with a few theory chapters and after that it is structured as a tutorial. The
More informationImplementing Your BYOD Mobility Strategy An IT Checklist and Guide
Implementing Your BYOD Mobility Strategy An IT Checklist and Guide 2012 Enterproid IBYOD: 120221 Content 1. Overview... 1 2. The BYOD Checklist... 1 2.1 Application Choice... 1 2.2 Installation and Configuration...
More informationCS 2530 INTERMEDIATE COMPUTING
CS 2530 INTERMEDIATE COMPUTING Spring 2016 1-8-2018 Michael J. Holmes University of Northern Iowa Object Oriented Concepts In some cases we ll learn the concepts prior to learning the terminology. Other
More informationXBS Application Development Platform
Introduction to XBS Application Development Platform By: Liu, Xiao Kang (Ken) Xiaokang Liu Page 1/10 Oct 2011 Overview The XBS is an application development platform. It provides both application development
More informationSecurity Challenges: Integrating Apple Computers into Windows Environments
Integrating Apple Computers into Windows Environments White Paper Parallels Mac Management for Microsoft SCCM 2018 Presented By: Table of Contents Environments... 3 Requirements for Managing Mac Natively
More informationTable of Contents: Toll Free: 1 (855) Mobile: 1 (250)
Table of Contents: Topology:... 2 Hardware Stack:... 3 Rack Images:... 4 Software Stack:... 5 Development Environment:... 5 Roles Summary:... 6 Visual Studio Solution Metrics:... 7 121 SQL Tables / Diagrams
More informationTrade Show Internet White Paper: How to Discuss Your Event s WiFi Needs - A Primer for Event Planners
Trade Show Internet White Paper: How to Discuss Your Event s WiFi Needs - A Primer for Event Planners Table of Contents Executive Summary... 3 5 Steps to Assess Your Event s WiFi Appetite... 4 Bandwidth
More informationDeveloping Java TM 2 Platform, Enterprise Edition (J2EE TM ) Compatible Applications Roles-based Training for Rapid Implementation
Developing Java TM 2 Platform, Enterprise Edition (J2EE TM ) Compatible Applications Roles-based Training for Rapid Implementation By the Sun Educational Services Java Technology Team January, 2001 Copyright
More informationAugust, HPE Propel Microservices & Jumpstart
August, 2016 HPE Propel s & Jumpstart Jumpstart Value Quickly build modern web applications Single page application Modular microservices architecture app generator Modularity provides better upgradeability
More informationMicrosoft 365 powered device webinar series Microsoft 365 powered device Assessment Kit. Alan Maddison, Architect Amit Bhatia, Architect
Microsoft 365 powered device webinar series Microsoft 365 powered device Assessment Kit Alan Maddison, Architect Amit Bhatia, Architect Why did we create the Assessment kit? Assessment objectives Assess
More informationDesigning Enterprise IT Systems with REST: A (Cloudy) Case Study. Stuart Charlton Chief Software Architect, Elastra
Designing Enterprise IT Systems with REST: A (Cloudy) Case Study Stuart Charlton Chief Software Architect, Elastra Objectives What enterprise problem domains does RESTful architecture handle well? Understanding
More informationFull Stack Reactive Angular 2, RxJava/JS, Vert.x, Docker
Full Stack Reactive Angular 2, RxJava/JS, Vert.x, Docker 02.03.2017 About Myself DR. ALEXANDER FRIED Chief Technology Officer 2 OUR SOLUTIONS DIGITAL ASSET MANAGEMENT Organize & Share Any File, Any Format,
More informationTOPICS. HARDWARE REQUIREMENTS Components Required Suggested Computers. WORKFLOW 1: REVIT - 3DS MAX - UNITY Process Capabilities Limitations
REVIT TO VR WORKFLOW TOPICS HARDWARE REQUIREMENTS Components Required Suggested Computers WORKFLOW 1: REVIT - 3DS MAX - UNITY Process Capabilities Limitations WORKFLOW 2: 3DS MAX - UNITY Process Capabilities
More informationTech Talk Nutanix Calm. Greg Smith, VP Product Marketing Gil Haberman, Director of Product Marketing
Tech Talk Nutanix Calm Greg Smith, VP Product Marketing Gil Haberman, Director of Product Marketing Building an Enterprise Cloud One-Click Operations Virtualization Server Data Protection Storage Networking
More informationTest Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day
Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day Level: Intermediate Benjamin Day Brookline, MA Consultant, Coach, & Trainer Microsoft MVP for Visual Studio ALM Team Foundation
More informationAnnouncements. Problem Set 3 due Friday, October 21. Alternate Midterm Times. Drop by office hours! Ask questions at
Functions Announcements Problem Set 3 due Friday, October 21 Drop by office hours! Ask questions at cs103@cs.stanford.edu. Alternate Midterm Times Wednesday, October 26, 7:00PM 10:00PM Thursday, October
More informationUser Story Workshop. BA-Squared, LLC
User Story Workshop BA-Squared, LLC User Story Level of Detail User Stories elaborate over time, just like other requirements. Start high level and break them into smaller pieces. Product View Release
More informationMastering SOA Challenges more cost-effectively. Bodo Bergmann Senior Software Engineer Ingres Corp.
Mastering SOA Challenges more cost-effectively Bodo Bergmann Senior Software Engineer Ingres Corp. 1 Contents Tell me why? SOA INGRES and SOA SOA Challenges Mastering selected challenges 2 Service-Oriented
More informationOracle Forms and Oracle APEX The Odd Couple
Oracle Forms and Oracle APEX The Odd Couple About me 2 Francis Mignault CTO and Co-founder, Insum Solutions 30+ years with Oracle DB, 14+ years with APEX. (Forms 2.3 / Oracle 5) Books: Expert Oracle Application
More informationREPORT MICROSOFT PATTERNS AND PRACTICES
REPORT MICROSOFT PATTERNS AND PRACTICES Corporate Headquarters Nucleus Research Inc. 100 State Street Boston, MA 02109 Phone: +1 617.720.2000 Nucleus Research Inc. TOPICS Application Development & Integration
More informationSimplified and Consolidated Parallel Media File System Solution
Simplified and Consolidated Parallel Media File System Solution Presenters : Dr. M. K. Jibbe, Technical Director NetApp ESG Joey Parnell, Software Architect NetApp, ESG 2018 Storage Developer Conference.
More informationCHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application
BACKBONE.JS Sencha Touch CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application A RapidValue Solutions Whitepaper Author: Pooja Prasad, Technical Lead, RapidValue Solutions Contents Executive
More informationMicroservices. treatment. and Modularity. or the difference between. and cure. Milen MARCH 17, 2015
Microservices and Modularity or the difference between treatment and cure Milen Dyankov @milendyankov MARCH 17, 2015 ~$ pidof java ~$ pidof java 9927 2151 ~$ ~$ pidof java 9927 2151 ~$ ps aux grep java
More informationCreating a New Plan File
1 Tutorial NAME Creating a New Plan File 2 The first step in creating your own design is to open and name a new plan file. 1. From the MENU BAR, select File, New Plan. 2. From the MENU BAR, select File,
More informationObject Oriented Analysis and Design - Part2(Design)
Object Oriented Analysis and Design - Part2(Design) Exam A QUESTION 1 Which statement is true about elements within the subsystem and public visibility? A. Only the subset of elements that define the subsystems
More informationMVC / MVP Mei Nagappan
Material and some slide content from: - Krzysztof Czarnecki - Ian Sommerville - Reid Holmes - Head First Design Patterns MVC / MVP Mei Nagappan [Image from: http://merroun.wordpress.com/2012/03/28/mvvm-mvp-and-mvc-software-patterns-againts-3-layered-architecture/
More informationJUNOS SPACE. Product Description. Product Overview
DATASHEET JUNOS SPACE Product Overview Juniper Networks Junos Space is an open software platform designed for deploying and creating Juniperdeveloped, partner, and third-party applications. It consists
More informationApplying Microservices in Webservices, with An Implementation Idea
International Conference on Computer Applications 64 International Conference on Computer Applications 2016 [ICCA 2016] ISBN 978-81-929866-5-4 VOL 05 Website icca.co.in email icca@asdf.res.in Received
More informationUser Interfaces for Web Sites and Mobile Devices. System and Networks
User Interfaces for Web Sites and Mobile Devices System and Networks Computer Systems and Networks: Device-Aware Interfaces Interfaces must take into account physical constraints of computers and networks:
More informationGary Winter Eric Wauters Vjeko Babic Mark Brummel
Gary Winter Eric Wauters Vjeko Babic Mark Brummel DDC is Three Years young! About Me Mark Brummel 15 Years of NAV Experience MVP Since 2006 Co-Founder of Dutch Dynamics Community Co-Founder and CEO of
More informationWhat s New in the IBM Lotus Notes Client. Kevin O Connell, Consulting Manager, IBM Asia Pacific
Technical Track What s New in the IBM Lotus Notes Client Kevin O Connell, Consulting Manager, IBM Asia Pacific ID101 What's New in the IBM Lotus Notes Client Kevin O'Connell Asia Pacific Consulting Manager
More informationin Microservices using DDD, Event Sourcing & CQRS Augusto Branquinho Mike Shigueru Matsumoto
in Microservices using DDD, Event Sourcing & CQRS Augusto Branquinho Mike Shigueru Matsumoto 1. Real Wave Modules Marketing Sales Care Technical stack Frontend Integration Backend Payments Insights Integration
More informationPart 3: Surprising Insider Threat Findings in Enterprise Environments
Part 3: Surprising Insider Threat Findings in Enterprise Environments Carrie McDaniel Emerging Products Lead Imperva 2016 Imperva, Inc. All rights reserved. Imperva UBA Kill Chain Study Tool effectiveness
More informationWebSphere Puts Business In Motion. Put People In Motion With Mobile Apps
WebSphere Puts Business In Motion Put People In Motion With Mobile Apps Use Mobile Apps To Create New Revenue Opportunities A clothing store increases sales through personalized offers Customers can scan
More informationLiving with HIPAA: Compendium of Next steps from Rural Hospitals to Large Health Systems to Physician Practices
Living with HIPAA: Compendium of Next steps from Rural Hospitals to Large Health Systems to Physician Practices Presented by HIPAA Pros 5th Annual HIPAA Summit Baltimore, Maryland October 31. 2002 Living
More informationAndroid PC Splash Brothers Design Specifications
Android PC Splash Brothers Design Specifications Contributors: Zach Bair Taronish Daruwalla Joshua Duong Anthony Nguyen 1. Technology background The Android x86 project has been in existence since 2011.
More informationTECHNICAL SESSIONS OFFICE DEVELOPMENT
v Hit the ground running with the Microsoft Graph Presented by: Gavin Barron Do you need to get data from a range of Microso3 services? Do you want to enrich your applica&on with data from other parts
More information(Movement - Synthesis) Improve existing programming skills by developing much larger and more complex programs than in previous classes.
Location MWF 1205-1255 Klaus 1443 Class Objective Purpose: CS2340 takes students who know an object-oriented language, and focuses on getting them to use that language in a true object-oriented style.
More informationBECOME A LOAD TESTING ROCK STAR
3 EASY STEPS TO BECOME A LOAD TESTING ROCK STAR Replicate real life conditions to improve application quality Telerik An Introduction Software load testing is generally understood to consist of exercising
More informationSecuring ArcGIS for Server. David Cordes, Raj Padmanabhan
Securing ArcGIS for Server David Cordes, Raj Padmanabhan Agenda Security in the context of ArcGIS for Server User and Role Considerations Identity Stores Authentication Securing web services Protecting
More informationCreating a Hybrid Gateway for API Traffic. Ed Julson API Platform Product Marketing TIBCO Software
Creating a Hybrid Gateway for API Traffic Ed Julson API Platform Product Marketing TIBCO Software Housekeeping Webinar Recording Today s webinar is being recorded and a link to the recording will be emailed
More informationBruno Bossola SOLID Design Principles
Bruno Bossola SOLID Design Principles About me C Developer since 1988 Java developer since 1996 XP Coach during 2000 2001 Lead coordinator and co founder of JUG Torino in 2001 Sun Java Champion since 2005
More informationMVC The Good, The Bad and the Evil. Hadi Hariri Developer & Technical Evangelist JetBrains
MVC The Good, The Bad and the Evil Hadi Hariri Developer & Technical Evangelist JetBrains http://hadihariri.com http://twitter.com/hhariri
More informationSoftware Development Process Models
Software Development Process Models From classical notions to more agile approaches th@cs.toronto.edu, BA8134 Code & Fix or Cowboy Coding 1) Write program 2) Test and fix program Problems: program users
More informationFOR IMMEDIATE RELEASE
Contact: Lee Paul (CEO) c. 239.405.8427 e. lpaul@surroundtech.com FOR IMMEDIATE RELEASE Surround Technologies Announces New Accelerator for.net Version 4.3 Bloomfield, NJ December 3, 2013 Surround Technologies
More informationREALIZE YOUR. DIGITAL VISION with Digital Private Cloud from Atos and VMware
REALIZE YOUR DIGITAL VISION with Digital Private Cloud from Atos and VMware Today s critical business challenges and their IT impact Business challenges Maximizing agility to accelerate time to market
More informationTopic : 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