Sunday, January 30, 2011

Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.)

Introduction

This is an abstract of the recently concluded Dynamics AX Technical Conference which was held in Redmond.

http://www.microsoft.com/dynamics/dynamicsaxtechnicalconference2011/SessionContent.aspx

I didn't get enough time to watch closely this event as my project was keeping me very busy. But, a special mention and huge thanks to my AX mates, Brandon (#dynamicserp) and Harish (#HarishM) for capturing the event live on their tweets!

I summarized the below content in logical buckets (groupings) based on their tweets. Watch out for the full pdf document which may hit PartnerSource or MSDN Developer Center very soon. Once it's available i will copy the link over here. Till then, the below bullet points can give you a rough idea as to what to expect from the next major release for AX.


**AVAILABILITY

All we know right now is that GA for public is Q3 of this year for AX 2012. RTM is typically before that

More than 1200 more features 140 percent test cases 185 customers and partner fedback 30 nationalities on the team

Public sector a big focus as it has already been said a few times during this introduction

**ARCHITECTURE

Today is a 1980s ERP arch. All over the place. Not very dynamic for todays dynamic business needs

Model driven seamless AX dev in VS. Enriched data abstractions, dramatic improvements with .net interop

A strong statement that the model driven dev starts in VS rather than AX

Metadata native access with AOT with the VS application explorer

Official that models live in the database and multiple models within a given layer

Full web services integration shown with zones and integration with external site. SOA.

Modeling the world is the theme here. From database, to development, BPM and org setup. All about models

GAB used throughout AX2012. Reduction of duplicate data, and secure access and use to this data

AX2012 arch design tenets. In simple words, powerful yet simple. Key word: models.

Clear statement from arch session. Investments are made and will continue for MorphX and Xpp

managed code dev is now possible, eventing etc. However Xpp has it place and will continue to do so

Hierarchy browser for tables (now you can extend tables)

Table inheritance will simplify complex data models


**MODELING

Modeling the world, with AX 2012. Workflows should be used for all Biz Process modeling.

When you think of modeling BP, you think of DSL or domain specific language. This is true for AX 2012.

The DSL for AX 2012 can be shaped by vertical to solve a given business domain issues.

Taking and creating elements for specific verticals, that BAs can use within the AX 2012 WF designer. Vertical specific DSL.

This can then allow for the configuration or setup of a process, to match more natively the process that exists for a biz.

The vision for the shift to model is a great one. It's enforced at some places and others it's an option

Getting the dynamics ecosystem as a whole to embrace the modeling the world concept is going to need a lot of help

Understand the bubbling up tasks that the modeling is meant to achieve, the skill level to achieve it is huge.

If your a partner, you should be looking at this now, and shape your current projects and future ones to max the uses of WF

The whole concept behind WF models is about trying to address business domain issues with domain specific language.

And achieving this, through the use of WF framework, .net and AX 2012

Ax model file is the new deployment artifact. This changes promotion process

During this move, the object Id issue has been resolved with these changes

Installation specific ids is a new way for handling properly and with correct context object ids

Fall out, an element can only exists still once in a layer. Two models can't contain same object in one layer.

Model elements in a given layer, make up a model in a given layer. There can be multiple models in one layer.

PowerShell support being highlighted for use in advanced or complex uses for managing models within layers

Tools > modeling management > create model. This is where you can create a new model in a layer

One could see how models could be used to segment even customer code within the CUS layer

Models within layers do manage elements of a layer, and also manage the deployment of objects.

The change for promotion process during s project would be copy prod db to test, then deploy model from dev to test.

No longer take and move the db, as it is not just trans data. Now contains model store. Keep in mind for moves.

/verbose mode is very useful for AXutil commands

A lot of options for the AXutil app and for the complex needs of code promotion and object management, a lot of flexibility exists.

.axmodel is the ext used for the AX 2012 model files


**VS INTEROP

Full intellisense for all AX objects within VS2010. This is huge vs. Todays work with AX and .net.

Point to Xpp developers: if you don't know C# it's time you invest in doing so

Showing off putting an event handler on AX code that allows you don't have to change Xpp but work off of the events

VS projects can now live in the AOT model store. Helps with deployments and management

Great possibilities with what can be done with the new option of .net and Xpp. Very powerful stuff! Will impact devs for sure

Question asked if use of new proxies with Xpp and .net has overhead and perf issues? Answer was just no. Details would be nice.


**SECURITY

Security roles form, is central place for management of role, record and external security

Managing security in AX 2012 is totally different than in previous AX versions. Some concepts remain, but a lot new.

The points being addressed for AX 2012 is the make security administration rescues is a big way in complexity

Role based approach is a pyramid: roles, duties, privileges, permissions. Stated from top to bottom.

Duties also map out in a functional way to the "process cycles" that a person or job function perform

Process cycle and duties is where segregation if duties are enabled and managed within AX 2012

Three types of users in AX 2012. Claims user, active directory user and group. AD not required for user access anymore

Claims based authentication, based on share point 14 and it's ability to support this security context model

The idea is not having to have vendors or customers as AD users, but instead a claims based context user

Share point uses secure open service, to take the claims based user Id, and share point keeps the context for the user for user UX

This is key for federated access and trust. Ie, cloud enablement for secure access to AX and cloud objects

Federated support for security is huge, because this means not just azure with live Id, but also google accounts or others.

This also helps with mobile access to secure access to data and business logic within AX, managed the same way

MSDYNAX 2012 wil leverage SharePoint Claims based security for non-AD users. Welcome ADFS, Live-ID, SAML tokens

Ax2012 security rocks! Improvements are impressive: role based security, external users and automatic role assignment!

**SETUPS AND SCOM MONITORING

Install of ax 2012 is easier than ever

Fewer steps and also scom pack highkighted for ax 2012

Scom pack will be huge for those that invest in systems center

Install, configure and operate areas of focus for this session and release

Install checklist not needed to run multiple times. Done once and then done! Decouples install and initialize

Scom pack has bp configuration check. Scom pack getting a lot of praise.

In ax 2012 biztalk adapter is gone. Now common adapter for ax to biztalk is wcf adapter

Ep and reporting separation in ax 09 development in VS is now one vs tools. Good move

Service packs and updates can be dropped in install share and thse update installed with single pass

Some very nice changes to actually help make setup and install easier. However there are new roles as well

Models folder is key to enable custom installs and that it's installed as part of new install

Models, labels and updates folder make installs dynamic and simple.

Always publish and sign models as part of axmodel file creation

Management pack contains key concepts of discovery, monitor and task.

Current scom pack for 09 is limited to aos. AX 2012 has really expanded in scope, monitors and ability

Scom is key for enabling ax admin for a company. Big investment that companies should consider


**PERFORMANCE

Arch for performance: always start with the database. It's the lowest level. Then aos, batch, connection between them

Rpc not only protocol anymore for web based or share point communication with aos. Now with services, WCF

This means you don't have to go through the BC.Net and that removes a layer and therefore helps perf

Showing off VS TFS for performing this benchmark with AX 2012. Great to see this ability.

A lot of benchmark ability in AX 2012.

AX 2012 benchmarking is with the VS team system

AOS for the first time has large box awareness and can scale up! No longer just a scale out

True parallel and asynchronous processing with AX 2012

Table inheritance means taking one table and making it 8. This is part of the perf of AX 2012.

Hexcore and beyond support for cores In AX 2012.

Sys operations framework is the key that enabled more parallel processing. As dev you can make use of this as well

Data caching has been 100% reengineered.

Included columns as part of indexes as well as full text index. Along with true temp table usage!

Join caching, date effective caching, sysglobslconfiguration class... All great improvements in AX 2012.

Sysglobalobjectcache... And Xpp object we all need to learn about!

Unique index caching for joins. This means for unique records, cached and therefore cuts down on io round trips

Caching support for super type and subtype for across the board, and with even a legacy table.

Batch framework highlighted as how threaded processing works and will continue to work with improvements!

DMVs highlighted and shown with the IDMF for AX 2012! This continues as powerful tools for AX 2012 perf

WCF services highlighted once again as a great improvement in AX 2012 as a great perf improvement

AppFabric (velocity) mentioned during the session as session state store for services and EP.

Event trace parser for Microsoft Dynamics AX 2012 lives right out of the client, easy to get going and work with!

Making trace for AX 2012 easy to run and report on, is a key factor is having more people use it as a tool for perf.

OS can scale and tested on 32 cores! Again first time the scale up really for AOS

Performance gain for using CIL execution is around garbage collection. Test took 90k lines from 24h to 2h.

This case for performance, means that perf gains that are major gains will happen at the CIL. Deterministic GC


**MORPHX

Now switching to MorphX IDE. Showing off still the importance of Xpp as the core language for AX

Showing off multiple ISV solutions within the same layer. Based on model files that live in the db

Showed off fact that can add table in AOT and it showed up in VS2010


** EP

Single click process for taking a rich client form to make it a web protal page! Very powerful

Portal, rich client and office are truly a blurred UX and it looks the same across these products



**WORKFLOW

In AX2012, workflow is integrated in the AOS. No more messy installs

Great workflow development wizard in makes it much easier to develop new workflows

Tracking details show workflow events and show in the branched out way they took place

Common workflow UI controls. This is the top area of form within AX 2012 when workflows are enabled

Vision: every process should be modeled with a workflow

If your a customer, VAR or ISV this changes how you design an instance of AX and any vertical add on or what is custom

Should be as much as possible designed with workflows

Trying to limit the need of a developer for changing workflows. Developers still needed though

Workflow runtime integrated into AOS, which helps with lowered TCO and manageability of workflows.

New workflow development wizards to help kick off and create new workflows

Modeling the business process, documents actual workflow of process that at the same time "configures" the solution

Enjoying the wizards now provided with AX2012 to create and link AOT elements for workflow. Separate wizards for components.

Partners need to understand WF and it's impacts on AX so the correct story can be presented to customers for correct use.

So for WF, companies when they upgrade will want to consider removing code approaches to replace with WF. Again big change

So WF in AX 2012, among other things means we have a lot to cover in the Dynamics Community!

Key focus is model "real life" business process in AX with new workflow

Finally they are showing off the workflow editor. This is the same as in VS2010

Showing multiple branching workflow that works out of the box

Showing off purchasing policy. Shows great flexibility but if not designed properly could become nightmare for customer


**POWERSHELL MANAGEMENT

Again, shows that PowerShell is a key part now for management of AX. Very powerful tool and one we all need to understand.

Using PowerShell, once could take and dynamically deploy the latest touched reports, based on modified date

Huge focus on PowerShell for report deployment, configuration and management among multiple instances

I've been talking to people about PowerShell for a while now. Well it's a major part of AX 2012

Three ways to deploy, client, VS2010 or ax management shell, which is PowerShell with other things loaded

Standard tooling is based on PowerShell and PS cmdlets

Standard box, 10 mins to deploy 800 reports in AX 2012

**AIF

When upgrading from AX 2009 to 2012 for AIF service contracts have changed. There is some manual and reconfigure

Big schema change, and will be some rework based on this.

All excel import and exports for office addin happen through AIF.

Perf increase of 37 percent benchmarked for new AIF improvements

The AIF is fully built on services which will run on the AOS. All integration through WCF services. Standardizes integrations!

the improved AIF framework will hopefully open up AX for mobile platforms more than the previous clunky version.

Transformations truly enable any file format support based on the stream in and out for AIF.

I'm impressed with the level of efforts that have went into making AIF an easier story for setup and management

SQL server is actually being used to enable change tracking at the table level

Going through several demos, a lot of work to make AIF configuration a lot easier. Very good to see.

Claims based auth. Support again highlighted. AIF

No more 10 mb file limit! AIF

Integration ports are tied to service groups. Sharing of common WSDL helps with complex int needs

New system services: query service, metadata service and user session service. AIF

These new system services expose AX in a new one. Openning up a brand new world!

Another highlighted aspect is support for non-XML formats.

80 percent reduction in top level AIF concepts! Less complexity!

90+ out of the box document services that come with AX 2012.

Bulk import support! Opens door for using this in massive data loads!


**DATAUPGRADE

Preprocessing data upgrade before the ACTUAL upgrade to minimize down time

AX2012 will be shipped with a new and enhanced upgrade model


**SSRS REPORTS

SSRS reports node is the new location of report elements. No longer held in the reportlibs node of the AOT

**EXCEL INTEGRATION

AX data changes while using Excel to edit, optimistic concurrency is used. Data cannot be published. No merging logic in place.

Allowing the users to create data in Excel and publish it when complete will be a big talking point in getting data into AX.

Two types of AX exports to Excel: static (like in a 2009) and refreshable export (active connection to AX). Excel junkies rejoice

DAX ribbon in Excel, publish data. Go back in AX and it's all there and secured.

Security roles mean can take the budget template in excel and the person gets their data vs. The data used to create temp.

Excel budte demo enabled through services to AX. SOA once again.

So word, excel and SSRS to create mashups for information workers is very powerful

**EP

EP for AX is making use of share point 14 claims based security context. Look that up. It's the core enablement for this!

I really like the design mode in Word for reporting data from AX. The simple dragging and dropping of the fields is very intuitive


**SUPPORTABILITY/BACKWARD COMPATIBILITY

AX 2012 client will not work on XP. XP is not supported with this release

AX 2012 security will be MUCH easier to test since rec security policies are set in AOT and now no need to refresh client code base


**AOS

There is an attach process that you start from the VS side. Attach to client or server, set break point. Remote debugging for AOS.

Does not recommend cross debugging at all

Two options, either AOS, client and VS on dev box for attaching with VS. Or remote debugging

AOS in process hosting of WCF services. Good move for manageability and lower TCO across many areas with this.

Net.TCP is default adapter used when services hosted within AOS.

**BATCH AND DEBUGGING

Assembly hot swapping must be enabled in the configuration, for full debugging.

Assembly hot swapping helps fix issue of session locking on assemblies

App domains are enabled with the hot swapping. Once session is destroyed, new dll applied for new sessions

Hot swapping will be a big need for companies that don't have an AOS per developer. A lot of companies don't

Hot swapping assemblies does come at a foot print and context price

Hot swapping helps with addressing assembly change, and not making a call to restart the AOS

Xpp still becomes Pcode, then is translated into XML with Pcode in tact. That is sent to the IL to generated the managed code.

Reflector from .net highlighted to take a look at the IL code. Cool insight from Xpp down to IL

Batch debugging is made possible in AX 2012 because of it's execution vis CIL. Attached process

Breakpoint is placed on the proxy object inside VS2010 for the Xpp code.

Since remote debugging is needed, must have admin rights on the server to make this happen

Debugging in batch, with the new approach is a big improvement for sure! Makes using batch an easier choice

No sharing of breakpoints between VS2010 and the legacy Xpp debugger

When thinking compiles, you have CIL incremental and then CIL full compile

Xpp code can have errors and compile others. Were as the CIL compile, incremental, is not so forgiving

Good session. Abilities exist to debug the new proxies, batch and server based code

Now showcasing the fact that because CIL is used, all kinds of new benefits, like profiling in VS2010,

**WCF

WCF is the standardize story for new AIF arch within AX 2012.

WCF message routing for external needs. Still needs IIS for external service support

AOS in process hosting of WCF services. Good move for manageability and lower TCO across many areas with this.

Single WSDL among services groups. Means can share data contracts among common services

WCF was used in AX 2009 however some pains. These issues are being addressed

Can't wait to get the slide decks from these sessions. Will be ready for us in two weks

Msft is addressing the AIF manageability pains including promotion from one instance to another.

Keys: standardized, powerful and simplified. For AIF in AX 2012

Ax power shell cmdlets introduced to manage deployments

VS2010 also always no break on exception option which has not existed before for Xpp based code. Done via CIL

**MISC

Big improvements on how easy it is to service enable logic for integration work in AX 2012.

Visio and VS2010 integration for SDK tool, which not sure if that name will stay the same or not

Threadabortexcpetion is actually gone in AX2012! great!

Scripting control, multiple server management, remote deployment, threadwbortexception, and more all addressed now

Tech is great, but tech is not what AX is trying to address. AX is meant to address business domain issues

The focus is being declaritive vs. Code or rules. A theme found throughout this release of AX

SSMS and db level setup must take place as a one time DB level for change tracking to enable document tracking


To conclude, I can say the next version of AX is ready to take on the other big ERP stalwarts in the market. Good work Microsoft and a huge effort by Devs and PMs in Microsoft shaping up the next big release of Dynamics AX!

2 comments:

  1. Thanks man......seems AX 2012 is bundled with lots of exciting and challenging features..

    ReplyDelete
  2. wanted to advise that I leveraged a lot of this content for a presentation that I did today at the Ohio AXUG meeting.
    The presentation can be viewed at:
    http://prezi.com/cbfqxydd2f_c/axug-ax2012/
    Thanks...

    ReplyDelete