Top Banner
Solution Architecture Effective Solution Architecture planning taking into consideration system architecture (Functional & Technical) in order to maximize the success. Lachlan Cash | Arijit Basu Microsoft Dynamics AX R&D Solution Architect Team Microsoft Corporation CSAX47
27

“The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Dec 19, 2015

Download

Documents

Cecil Booker
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Solution ArchitectureEffective Solution Architecture planning taking into consideration system architecture (Functional & Technical) in order to maximize the success.

Lachlan Cash | Arijit BasuMicrosoft Dynamics AX R&D Solution Architect Team Microsoft Corporation

CSAX47

Page 2: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

“The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems by applying abstract knowledge and proven methods to a set of technologies with the goal of creating an extendible and maintainable solution.”

The Architecture Journal, Journal 15www.ArchitectureJournal.net

Domain Knowledge / Ability to conceptualize Technical Knowledge/ Ability to apply patterns

PROBLEM DEFINITION SOLUTION DEVELOPMENT

Page 3: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Role of an AX Solution ArchitectConceptual

izeDesign &

planDevelop, Integrate

Test, test & test Deploy, Monitor & Maintain

Dashboards and Business Reporting

Data

H/W & Topology

Integrations, Customizations, Performance, Scalability Customization Interfaces

Configuration

Review

Monitor, Diagnose, Resolve

Deployment

Scale up & out Deployment

Enhance Upgrade

Key Activities

Strategic alignment & direction

Solution scope Solution stack Core AX Modules Industry models ISV Solutions Stack product

choices Architecture

blueprint

E2E Scenarios Performance

Security Quality

Automate

Issues

User experience Workflows &

Business Process maps

Data model Identity/Access Messages &

Services Performance Modeling tools Interfaces Design patterns Test patterns Management

Reuse existing assets ALM & Deployment

management Code quality &

metrics to reduce risk regarding upgrade & performance

Usage of AX & Stack best practices

Automated tooling & testing

Extensibility, scalability & reusability

Test driven development, detailed test plan

E2E testing Security,

performance and load testing

Track, triage and resolve

Quality first

Seamless deployment and rollout plan

Continuous monitoring of AX and stack products

Usage monitoring for H/W scale up and out

Pro active and NOT reactive

E2E Solution

Page 4: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Architecture perspectives

Business perspective• The high-level objectives

and goals.• The business processes

carried out.• Major organizational

structures.

Application perspective• Services that support the

business processes.• Cross Organization

functionality• Interaction and

interdependencies

Information perspective• Standard data models.• Data management policies.• Descriptions of the patterns

of information production and consumption

Technology perspective• Desktop and server

hardware.• Operating systems.• Network connectivity

components.• Technology options

Four general Solution Architecture perspectives that are important and are commonly used are :

Page 5: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Let’s walk through an example…

User requirement “Kevin wants to implement a new loyalty management feature at Contoso. Eligible customers can apply for a loyalty card and associate that card during a purchase which would accumulate loyalty points on each transaction. Customers can view their points and later redeem them.”

Simon the solution architect is called in to design the feature.

Page 6: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Designing the technical solution A.User Experience – Forms, Reports.

UX design.

B.Workflows & Business process–

Processes, policies, approvals.

C.Data – Data volume, data model,

queries

D.Identity/Access – Authentication ,

security, compliance, audit.

E.Messages & services – Integrations

& messaging

F. Performance – Data volume, data

model, indexes, searches,

integrations, batching

G.Patterns – Existing code, data and

application patterns.

A A

B B

C

D

E

F

F

F

F

F

G

EG

G

Page 7: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Development design1. Deployment

choices

2. Version control3. Build

management4. Testing5. Code quality &

reviews6. Exit criteria7. Issue logging8. Performance

Model & layer choices

Data Layer

Data Modeling Components

Business Layer

Business Workflow (WF) Business EntitiesBusiness Components

Services Layer

Service Interfaces

Presentation Layer

Client UI Components Browser UI Components

Cross layers

Security

Operations

Communication

Reporting Components

• Table inheritance• Date effectivity• Queries

• Indexes & table types• Table properties metadata• Relationships and associations

• WF providers• WF Queues• Automated tasks• Line Level WF

• Calculation logic• Business Op Framework• Reusability• Business events

• Unit of Work• Loyalty entities• Axd entities

• Document Services• Custom Services• Attributes

• Transformations & value lookups• Deployment ports (AOS, IIS)• Logging & traceability

• Form templates• Form controls• Form BP checker• Interaction classes• Low code , Business Logic

• Interaction classes• Proxies• EP Web control templates• Performance considerations

• RDP classes & queries• MVC pattern• User interaction, batch• Analysis & cubes

• Roles• Duties • Privileges• Entry points• SOD, Compliance• Trusted

intermediaries & proxy users

• Transaction monitoring

• SLA’s• Locking, Blocking• Transaction

monitoring• Long running

transactions

• Message formats• Message payload• Interop• Protocols (Net.TCP,

ws HTTP etc.)• Guaranteed delivery• Sync vs. Async

New feature & framework uptake

Page 8: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Simon’s approach

DEMO

How Simon used design patterns & practices to conceptually abstract the problem into the architecture components and use the simple, powerful, agile platform & framework to solve the requirement.

Page 9: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

The Solution Architect toolkit

Page 10: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

• Finance, Accounts Receivables,

Sales & Marketing, Customer

Service, ISV Add on

• Cross company transactions

• Multi channel high volume

integration with external/internal

entities

• Security, policies & audit• SOA design approach

• Multi device application (future)

• Multiple methods, protocols for

connecting to the data

Incorporating the architecture perspective

Business Application

Information

Technology

• Membership & Loyalty

management for retail customers

• Ability to earn, redeem and view

balance points across Contoso

store locations

• Rewards & tier calculation process

• Multi country, company & currency

uptake• High volume data transactions

• Real time enquiry by multiple

entities

• Customers, Sales agents, Sales

Managers, Customer service,

Finance, Audit

• Customer PII data, inactive data

• Analysis & BI (spending patterns,

pricing etc.)

Architecture perspective

Page 11: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Did we question the requirements?“Kevin wants to implement a new loyalty management feature at Contoso. Eligible customers can apply for a loyalty card and associate that card during a purchase which would accumulate loyalty points on each transaction. Customers can view their points and later redeem them.”

Organization

Can the points be used anywhere in the world?

Are the points accepted by third parties?

Financials

Did we talk with the accounting team to understand the accounting treatment for points.

Purchasing

Do we purchase products from partners that customers can redeem their points on.

Sales

The points will only have value if someone can do something with them.

How are the points used ? Do they give a discount,

Marketing

Did we capture the right marketing authority when the customer sign up for the points

Page 12: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Without clear requirements

Implementation

• We select the wrong functionality

• No budget for an ISV that we need.

• Select and ISV that we might not need.

• Wrong choice on structure data

• Can’t decide which system master’s data

Customization

• Don’t meet users expectations

• Can’t set the right expectation

• We do work that is not necessary.

• We take on work that we can’t estimate completion

• We make the wrong build vs buy decision

Page 13: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Functional Design Considerations

Data Storage

Organizational Structure

Business Process Design

Financial Structure

Reporting and

Business Intelligence

Supply Chain

Structure

User Experience

Page 14: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Data storage

Legal EntityIE

Legal EntityFR

Legal EntityUK

Legal Entity US

Global Address

Book (People/Organizatio

n)

COA, Calendars

, Currency, Product

Other Master

Data ……

Administrative Data,

(Users, security…

…)

Page 15: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Organizational Structure

Organization Hierarchy

Legal Entity Operating Unit Team

Business Unit DepartmentCost Center Value

Stream

Organization Role(s)

Data security

Configuration vs. customization

Business policies

Multi-hierarchies for complex organizations

Page 16: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Supply Chain Structure

Contoso

GroupContoso US

Contoso Brazil

Contoso France

Contoso Spain

Contoso South Africa

Contoso Mexico

Contoso Russia

Contoso

Group

Contoso US

Contoso West

New YorkBranch

Los Angeles Branch

Seattle Plant

Las Vegas RegionalDistribution Center

Contoso East

Atlanta RegionalDistribution Center

Financial and geographic view

Contoso MexicoDistribution Center

Page 17: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Financials and Supply Chain Structure

Legal Entity US

Global Address

Book (People/Organizatio

n)

COA, Calendars

, Currency, Product

Other Master

Data ……

Administrative Data,

(Users, security…

…)

Customer

Vendor

Sales Order

Invoice

Purchase Order

Released Products

Sites

Warehouse

Shipments

Receipts

Page 18: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Financial Structure – Chart of Accounts

Ledger

Calendars Currencies

Rate Types

Exchange Rates Main AccountsDimensions

Chart of Accounts

Account Structures

Page 19: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Business Process Design

Page 20: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Reporting and Business Intelligence

Access and delivery

Microsoft Office SharePoint Server

Reports Role centers MS Excel PowerPivo

tScorecard

s Plans

BI platform

Microsoft SQL Server

Microsoft Dynamics AX Other database sources

Other general data sources

Application layer and user tools

Microsoft OfficeMicrosoft Dynamics AX

Page 21: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

User experience

Page 22: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Top tips from the Session Use the available resources to understand & implement the technical architecture

of Dynamics AX 2012

Reuse existing application design & coding patterns

Build/Develop for tomorrow. Consider growth, scale, maintainability and upgrade.

Use ALM tools/features to plan, track and manage the implementation

Include testing and performance as parallel tracks to the main implementation phase.

InformationSource

MSDN TechNet

Partnersource

AAT

InformationSource

AX Design Patterns

MS P&P

Code Analysis Tool

TFS VS 2010

SCOM & IDMF

Diag FX

Upgrade Assistant

VS 2010 Test Manager

AX Benchmarks

MSDN AAT AX Trace Parser

Conceptualize

Design & plan

Develop, Integrate

Test, test & test Deploy, Monitor & Maintain

RapidStart RapidStartRapidStart SA Resources

Page 23: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

What is Available & Where Can I Find it?Microsoft Dynamics InformationSource : http://informationsource.dynamics.com

Microsoft Dynamics ERP RapidStart Services : https://www.rapidstart.dynamics.com

Microsoft Dynamics AX 2012 for Developers : http://msdn.microsoft.com/en-us/library/aa496079.aspx

Microsoft Dynamics AX architecture [AX 2012] : http://technet.microsoft.com/en-us/library/dd309612.aspx

Sure Step Online : https://mbs2.microsoft.com/Surestep/default.aspx

The Microsoft Dynamics AX product team blog : http://blogs.msdn.com/b/dax/

The Performance team blog : http://blogs.msdn.com/baxperf

The Dynamics AX Sustained Engineering team blog : http://blogs.technet.com/b/dynamicsaxse/

Microsoft patterns & practices : http://msdn.microsoft.com/en-us/practices/bb190332

Application Lifecycle Management (ALM) : http://www.microsoft.com/visualstudio/en-us/strategies/alm

Visual Studio Test Professional Overview : http://www.microsoft.com/visualstudio/

AX 2012 Certifications : https://mbs.microsoft.com/customersource/training/certifications/professional/MBS_Axapta_prep.htmAX 2012 Learning Plan :https://mbs.microsoft.com/partnersource/training/learningplans/MSDAX2012ProductBasedLeaPlan.htm

Page 24: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Dynamics AX Feedback ProgramsProgram Goals

Continuous Feedback throughout development/early deployment lifecycle

Reference Customers

GO Live TAP • Validate Product

Features/Readiness through actual customer deployments before Release

Private Beta TAP• Validate Product

Features/Readiness through customer testing/feedback BEFORE Release

Get Involved!Email:

[email protected] by the Dynamics AX

Booth and learn more

Customer/Partner Council

Dynamics AX Product Development Cycle Post Release Cycle

Go Live TAP

Private Beta TAP

Rapid Deployment

Program

Rapid Deployment Program• Early measure of Shipped Product Quality

leveraging rapid customer deployments!• Validate Training/Documentation/Support

Customer/Partner Council• Individuals willing to provide feedback on

Dynamics AX Product Direction and feature designs

Page 25: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

Q & A

Thank you

Page 26: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to

be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 27: “The role of a solution architect is to solve a problem by defining a system that can be implemented using technology. Good architects define systems.