Book: Dominic Betts, Jérémi Bourgault et al, Building Elastic and Resilient Cloud Applications: Developer’s Guide to the Enterprise Library Integration Pack for Windows Azure™

elastic_resilient_applications_smThe Introduction to this 220p. book, Building Elastic and Resilient Cloud Applications: Developer’s Guide to the Enterprise Library Integration Pack for Windows Azure™ is given by Mark Aggar, Senior Director Environmental Sustainability, Microsoft Corporation. He makes the point that energy use in the IT sector currently  outstrips any other industry sector. Some of this energy consumption is a result of  “over-provisioning”: “But a significant amount of this wasted energy stems from how applications are designed and operated. Most applications are provisioned with far more IT resources than they need, as a buffer to ensure acceptable performance and to protect against hardware failure. Most often, the actual needs of the application are simply never measured, analyzed, or reviewed. Once the application is deployed with more resources than it typically needs, there is very little incentive for the application developers to instrument their application to make capacity planning easier.” This patterns and practices guide  provides a number of application blocks which help manage  resilience and  up and down scalability in the cloud hosted application. These application blocks are included in the Enterprise Library Integration Pack for Windows Azure and include  Autoscaling Application Block and Transient Fault Handling Block (“Topaz”). The Enterprise Library (v6.0) itself is available for download or from Codeplex . Enterprise library users should also consider the Developer’s Guide to Microsoft Enterprise Library, 2nd Edition

Posted in Cloud architecture, Enterprise Library, Microsoft Architecture, Patterns & Practices, Windows Azure™ | Comments Off on Book: Dominic Betts, Jérémi Bourgault et al, Building Elastic and Resilient Cloud Applications: Developer’s Guide to the Enterprise Library Integration Pack for Windows Azure™

Poster: WindowsRT Common Network API Posters

This set of three posters in PDF format visually maps out the Http, Background Transfer and TCPIP Socket API’s available to Windows RT devices. The  document is however designed for US paper sizing’s (Ledger/Tabloid,  11.0 x 17 inches, approx. A3). A complete set of these for the whole .Net system of libraries would be a useful thing.

winrt_networking_stack_http_sm

winrt_networking_stack_background_sm

winrt_networking_stack_sockets_sm

Posted in .Net Architecture, Architecture, Microsoft Architecture | Comments Off on Poster: WindowsRT Common Network API Posters

C++ Conformance Roadmap Visual C++ : The road to C++14 wave

Updated_Conformance_Map_sm

Microsoft has released further progress (Visual C++ Compiler November 2013 CTP) towards  adding advanced capabilities (esp. generic lambdas) to its C++ programming language the so called C++14 draft proposal from the  ANSI/ISO international standards. The announcement can be found here.

 

Posted in C++ Programming Language, Microsoft Architecture | Comments Off on C++ Conformance Roadmap Visual C++ : The road to C++14 wave

Sharepoint 2013, Sharepoint Server 2013, Sharepoint Online: Recent Sharepoint Guidance and Posters

Microsoft SharePoint Server 2013 Architecture (Poster)

sps-2013-architecture-overview

Information in this model helps you understand architectures that apply to server applications, Office Web Apps Server, app management, databases, workflows, wide-area networks, monitoring, newsfeeds, distributed cache, high availability, and disaster recovery.

Mobile Architecture in SharePoint 2013 (Poster)

Mobile-architecture-in-SharePoint-2013

A visual display that provides an end-to-end understanding of the SharePoint 2013 mobile ecosystem

Services in SharePoint 2013 (Poster)

svs-single-farm-sharepoint-services-2013a

In addition to listing available services in SharePoint Server 2013, this illustration also includes diagrams that illustrate the services infrastructure. Architectural examples help you visualise services in various example environments.

What is governance? SharePoint 2013 (Poster)

WhatisgovernanceinSharePoint2013

This poster shows the major governance areas (IT governance, information management, and application management) and summarizes the key information you need to understand about each area.

Global Solutions for SharePoint 2013 (Poster)

global-solutions-SharePoint-2013

This model provides architectural guidance for geographically distributed deployments of SharePoint 2013.

Streamlined Topologies for SharePoint Server 2013 (Poster)

sps-2013-streamlined-topology-model

This model illustrates a farm design that optimizes system resources and maximizes performance.

Traditional Topologies for SharePoint 2013  (Poster)

sps_2013_traditional_topology_model

This model provides an overview of topology concepts for SharePoint Server 2013. Example topologies are based on traditional approaches to building SharePoint architectures with web servers, application servers, and database servers

Enterprise-scale Farms for SharePoint Server 2013 (Poster)

sps-2013-enterprise farm-modela

This architecture can be used as a reference point for planning an enterprise-scale farm. Actual numbers of servers and components depends on many variables such as usage, services, size of documents, rates of change and freshness requirements for search results, and many others

Internet Sites Search Architectures for SharePoint Server 2013 (Poster)

sp-2013-internet-sites-search-model

This design sample model provides guidance on the hardware requirements and performance considerations for Internet Sites search topologies. In addition, the model shows an example medium-sized Internet sites farm.

Multi-farm architectures with SharePoint 2013 (Poster)

multi-farm-sharepoint-2013

Learn the design principles to use for multi-farm deployments. Diagrams in this model illustrate how to deploy services and content across farms.

Search Architectures for SharePoint 2013 (Poster)

oit2013-model-sharepoint-search-architecture

This design sample shows the logical architecture and interaction of search components, and an example of a fault-tolerant server farm that provides enterprise search for a content corpus that contains approximately 40 million items.

Enterprise Search Architectures for SharePoint Server 2013 (Poster)

sp-2013-enterprise-search-model

This design sample illustrates small, medium, and large-size farm architectures for enterprise search. It contains search and farm topology examples, scaling guidance and hardware requirements.

Authentication in SharePoint 2013 (Poster)

SP2013_authentication

SharePoint 2013 supports user authentication, app authentication, and server-to-server authentication. In addition to descriptions of the types of authentication, this model includes illustrations that demonstrate the flow of data during each type of authentication.

Microsoft SharePoint 2013  Platform Options (Poster)

SharePoint 2013 Platform Options

For BDMs and architects, this model describes the platform options for SharePoint 2013—SharePoint in Office 365, on-premises hybrid with Office 365, Windows Azure, and on-premises only deployments. It includes an overview of each architecture, recommendations, license requirements, and lists of architect and IT Pro tasks for each platform. Several SharePoint solutions on Windows Azure are highlighted.

Social Feature support in SharePoint Server 2013 (Poster)

SharePoint2013OnPremisesSocial

This poster discusses the different deployment architectures for SharePoint Server 2013 and the effect those deployment architectures have on the social features.

Business Connectivity Services Hybrid Flow in SharePoint 2013 (Poster)

spc-2013-bcs-hybrid-model

Network Integration of Microsoft Office Server Products (Poster)

SPEL_NetworkIntegration

High-level illustration of a network environment that includes Lync Server 2013, SharePoint Server 2013, and Exchange Server 2013. This diagram illustrates networking elements that are common across these products—remote and internal access, authentication, client traffic, and routing traffic through shared devices.

SharePoint Server, Lync, Office Web Apps – The Mobile Landscape (Poster)

SPELMobileLandscape

This poster shows a detailed layout of the app and mobile browser-based landscape for SharePoint Server, Lync, Exchange, and Office Web Apps. It covers on-premises and cloud-based network topologies for phones and tablets.  For Device Management and Security, System Center Configuration Manager and Windows Intune provide more comprehensive and granular management capabilities across multiple device types.

Posted in Cloud architecture, Microsoft Architecture, Sharepoint | Comments Off on Sharepoint 2013, Sharepoint Server 2013, Sharepoint Online: Recent Sharepoint Guidance and Posters

Book: Developer’s Guide for Microsoft Enterprise Library 2nd edition

enterprise_library_developers_guideThe second edition of the documentation for  the open source Enterprise Library (matching the v6.0 code release) has been made available in multiple digital formats and can be purchased in print from Amazon as a paperback (Dominic Betts, Julian Dominguez et al, Developer’s Guide to Microsoft Enterprise Library, Microsoft, 2013, 2nd edition) . The library guide is supplemented by a Hands on Lab as well as a reference implementation (also available at Codeplex). The most notable application block  change is that for semantic logging. In addition the Guide should be read in conjunction with Microsoft Unity 3 which is the Dependency Injection container/framework  which comes in its own documentation set  (Dominic Betts, Grigori Melnik et al, Dependency Injection with Unity, Microsoft, 2013) and hands on code base ). Still relevant is the book Building Elastic and Resilient Cloud Applications – Developer’s Guide to the Enterprise Library 5.0 Integration Pack for Windows Azure. The blog post announcing the new guide is here

Posted in Architecture, Dependency injection pattern, Enterprise Library, Patterns & Practices | Comments Off on Book: Developer’s Guide for Microsoft Enterprise Library 2nd edition

Windows Server 2012 R2 Hyper V- Component Architecture Posters

Microsoft have made available as a series of PDF files a number of useful posters relating to their most recent virtualisation solution, Windows Server 2012 R2 Hyper-V. The description summarises then well: “These posters provide a visual reference for understanding key Hyper-V technologies in Windows Server 2012 R2. They focus on Generation 2 virtual machines, Hyper-V with virtual hard disk sharing, online virtual hard disk resizing, storage quality-of-service, enhanced session mode, live migration, Hyper-V failover clustering, and upgrading your private cloud. This visual reference is available as a complete wall poster or as individual components that are suitable for printing on most standard printers.”

Upgrading Your Private Cloud

hyper-v_live_migration

Session Modes

hyperv_session_modes

Storge – Disk Sharing

hyperv_disk_sharing

Storage – Online Resizing, Quality of Service

hyperv_storage_qos

Hyper-V – Failover Clustering

hyperv_failover_clustering

Hyper-V Generation 2 Virtual Machines

hyperv_gen2

All-In One Poster Windows Server 2012 R2 Hyper-V Component Architecture (47.1cm x 24cm)

hyperv_overall

Posted in Architecture, Virtualization | Comments Off on Windows Server 2012 R2 Hyper V- Component Architecture Posters

Poster: .Net Universe 2013 Poster

dotnet_universe_poster

This is the download description:

“This poster shows how the trends are changing in .NET as we´re moving from a single large .NET Framework to a more loosely coupled and autonomous libraries and sub-frameworks, many of them even published as NuGet packages and evolving continuosly. The number of those libs and packages is evolving and growing, so having a visual photo of it can be helpful. The main idea of the poster is to show that you can create any kind of application with .NET, from the largest applications to the smaller apps: in the cloud, on the web, on desktops, tablets, phones, and in embedded environments (even watches!). Any of those application types is shown as category/bucket in the poster and within each bucket we´re tossing the main libraries/SDKs/packages out. Then we´re also showing cross-cutting concerns buckets like Security, Data Access, and .NET Extension libs. The main categories are the following: – Emerging application patterns (Mobile, Web & Cloud) – Established application patterns (Desktop and Embedded) – Cross-Cutting concerns Finally, the poster is putting a check/mark on every lib/SDK bullet depending if they are or not complaint with the following: – NuGet package – Open Source – Microsoft Official Supported”

The poster may be printed (36 x 25 in, somewhere between A0 and A1 DIN), the .pdf file however has embedded URL’s which links you to the components and libraries.

 

Posted in .Net Architecture, Architecture, Microsoft Architecture | Comments Off on Poster: .Net Universe 2013 Poster

Infrastructure as a Service IaaS: Product Line Architecture ~ Fabric Architecture Guide, Fabric Management Architecture Guide & Deployment Guide

fabric_architecture_guideMicrosoft Corporation have made available three substantial documents for consideration when constructing private clouds.  The Fabric Architecture Guide ( Adam Fazio, David Ziembicki, Joel Yorker Infrastructure-as-a- Service Product Line Architecture, Fabric Architecture Guide, Microsoft Corporation, May 2013, 112pp). The document scope: “The scope of this document is to provide customers with the necessary guidance to develop solutions for a Microsoft private cloud infrastructure in accordance with the reference architecture patterns that are identified for use with the Windows Server 2012 operating system. This document provides specific guidance for developing fabric architectures (compute, network, storage, and virtualization layers) of an overall private cloud solution.” covers a number of infrastructure patterns: continuous availability over SMB (server message block) storage (several variations SAS/SAN/SMB storage with transparent failover), converged infrastructure pattern (shared network topology), non-converged infrastructure pattern (traditional SAN). These designs are oriented toward enterprise and hosting provider implementations (6-64 hosts, up to 8,000 server VM). The second volume: Fabric Management Architecture Guide (Jeff Baker, Adam Fazio, Joel Yoker, David Ziembicki, Infrastructure-as-a-Service Product Line Architecture, Fabric Management Architecture Guide, May 2013, 69pp.

fabric_management_architecture_guideThe scope of this document is centred around Windows Server 2012 and System Center 2012 Service Pack 1 (SP1),  “This document provides specific guidance for developing a management architecture for an overall private cloud solution.”. The document deals with fabric management (hardware integration, storage and network integration and management), fabric provisioning, virtual machine management, resource optimization, service maintenance, service monitoring, backup and recovery, security, service chargeback. It provides a useful overview of fabric management considerations to be projected in a solution archictecture. The fabric management rests upon the Private cloud reference model.

private_cloud_reference_model

The concluding volume in this set (Jeff Baker, Adam Fazio, and Joel Yoker, Infrastructure-as-a-service Product Line Architecture, Deployment Guide, Microsoft Corporation, May 2013, 343pp.) spells out in detail how to install, configure and deploy the private cloud infrastructure. It covers host and guest installation, SQL Server failover cluster, and various System Center components and tools.

Infrastructure_as_a_service_product_line_architecture_deployment_guideThese documents should be read in conjunction with the guidance “Cloud Services Foundation Reference Architecture Overview” published in June 2013, especially the section Cloud Services Foundation Reference Architecture – Principles, Concepts, and Patterns which is especially useful to solution architects. There is also extensive solutions and design guidance available on Microsoft’s Cloud and Datacenter Solutions Hub

Posted in Cloud architecture, IaaS, Infrastructure as a Service | Comments Off on Infrastructure as a Service IaaS: Product Line Architecture ~ Fabric Architecture Guide, Fabric Management Architecture Guide & Deployment Guide

Book: Exploring CQRS and Event Sourcing: A journey into high scalability, availability and maintainability with Windows Azure

cqrs_journey_coverThe Patterns and Practices team have released a new book  (Dominic Betts, Julián Domínguez, Grigori Melnik, Fernando Simonazzi & Mani Subramanian, Exploring CQRS and Event Sourcing: A Journey into high scalability, availability and maintainability with Windows Azure, Microsoft Corporation, July 2012 376 pp.) “This guide is focused on building highly scalable, highly available, and maintainable applications with the Command & Query Responsibility Segregation and the Event Sourcing architectural patterns. It presents a learning journey, not definitive guidance. It describes the experiences of a development team with no prior CQRS proficiency in building, deploying (to Windows Azure), and maintaining a sample real-world, complex, enterprise system to showcase various CQRS and ES concepts, challenges, and techniques. The development team did not work in isolation; we actively sought input from industry experts and from a wide group of advisors to ensure that the guidance is both detailed and practical.

The CQRS pattern and event sourcing are not mere simplistic solutions to the problems associated with large-scale, distributed systems. By providing you with both a working application and written guidance, we expect you’ll be well prepared to embark on your own CQRS journey.

The guide is split into three distinct sections that you can read independently: a description of the journey we took as we learned about CQRS, a collection of CQRS reference materials, and a collection of case studies that describe the experiences other teams have had with the CQRS pattern.”

In addition to the book there is a reference code showcase demonstrating a conference management system. The CQRS Journey project, now completed has been hosed on GitHub.  There is also a comprehensive reference point on the MSDN site MSDN: CQRS Journey. Also useful are blog sites of Greg Young and Udi Dahan both consultants on the project.

Posted in Architecture, Cloud architecture, Command Query Responsibility Separation, Domain Driven Design, Event Sourcing, Patterns & Practices | Comments Off on Book: Exploring CQRS and Event Sourcing: A journey into high scalability, availability and maintainability with Windows Azure

Poster: Microsoft Business Intelligence at a Glance Poster

Microsoft have assembled a useful poster  (34 x 44 in) as a PDF outlining Microsoft’s Business Intelligence propositions. Targeted at enterprise architects and IT implementer’s.

“The poster summarizes the benefits of Microsoft’s BI technologies and depicts them by layer: client (such as BI in Excel), the presentation subsystem (such as SharePoint 2013), information sources (such as Reporting Services), and data sources (such as relational databases). It focuses on the enterprise architect and IT implementer audience. It includes Office 2013 client and server, SQL Server 2012 with SP1, and BI services in Windows Azure”

microsoft_business_intelligence_glance

Posted in Business Intelligence, Microsoft Architecture | Comments Off on Poster: Microsoft Business Intelligence at a Glance Poster

Book: N-Layered Domain-Oriented Architecture Guide with .NET 4.0

N_Layered_Domain_Architecture_sm This guide to Domain Driven Design (DDD) and Microsoft.NET was developed by software architects from Microsoft Spain. The initial release of the 475 page publication garnered some criticism from architects but most of those concerns are addressed in version 2.0 of the sample application and draft chapters for the second edition of the book, whichremains a work in progress. The book originally arose aout of discussions regarding DDD and Microsoft’s Entity Framework. The book covers architecture design process, n-layered architecture pattern, data persistence layer using various data access paterns, domain layer, application layer, distributed services layer and presentation layer. The text also deals with cross-cutting concerns in an infrastructure layer. Depending on design requirements some layers are optional or not indicated.
Technology however has continued to evolve and this should be read in conjunction with other subsequently published guidance.  The main links to this architecture guide and related materials are here:

Miguel Ramos,
Domain Drive Design N-Layered .NET 4.0 Architecture Guide,Blog posting 23 May 2011
MSDN Architecture Center, Microsoft Spain, DDD NLayered .NET 4.0 Architecture Guide, 1st edition 2011. Includes multiple digital formats of guide, lengthy Powerpoint presentation and link to codeplex sample application
Microsoft Spain,
Microsoft
Spain – Domain Oriented N-Layered .NET 4.0 Sample App
, Codeplex. Includes updated application sample v2.0, new draft chapters for second edition of guide, and additional samples and documentation in relation to migrating the sample to Windows Azure
Posted in DDD, Domain Driven Design, Layer pattern, Microsoft Architecture | Comments Off on Book: N-Layered Domain-Oriented Architecture Guide with .NET 4.0

Book: Microsoft Application Architecture Guide 2nd edition

microsoft_application_architecture_guide_2nd_edition

The guide helps you to:

  • Understand the underlying architecture and design principles and patterns for developing successful solutions on the Microsoft platform and the .NET Framework.
  • Identify appropriate strategies and design patterns that will help you design your solution’s layers, components, and services.
  • Identify and address the key engineering decision points for your solution.
  • Identify and address the key quality attributes and crosscutting concerns for your solution.
  • Create a candidate baseline architecture for your solution.
  • Choose the right technologies for your solution.
  • Identify patterns & practices solution assets and further guidance that will help you to implement your solution.

It is based on several useful architectural principles (p.7-8) :

  • Build to change instead of building to last. Consider how the application may need to change over time to address new requirements and challenges, and build in the flexibility to support this.
  • Model to analyze and reduce risk. Use design tools, modeling systems such as Unified Modeling Language (UML), and visualizations where appropriate to help you capture requirements and architectural and design decisions, and to analyze their impact. However, do not formalize the model to the extent that it suppresses the capability to iterate and adapt the design easily.
  • Use models and visualizations as a communication and collaboration tool. Efficient communication of the design, the decisions you make, and ongoingchanges to the design, is critical to good architecture. Use models, views, and other visualizations of the architecture to communicate and share your design efficiently with all the stakeholders, and to enable rapid communication of changes to the design
  • Identify key engineering decisions. Use the information in this guide to understand the key engineering decisions and the areas where mistakes are most often
    made. Invest in getting these key decisions right the first time so that the design is
    more flexible and less likely to be broken by changes

It covers guidelines for layered applications, presentation layer, business layer, data layer, service layer, and component design guidelines (presentation, business, business entities, workflow, data) as well as specific guidance for specific application archetypes (web applications, rich client applications, rich internet applications, mobile applications, service applications, hosted and cloud services, officce business applications, sharepoint LOB applications). This guidance should be read in the context of later guidance issued by Microsoft Corporation.

 

Posted in Architecture, Microsoft Architecture, Patterns & Practices | Comments Off on Book: Microsoft Application Architecture Guide 2nd edition