Book Image

Mastering Microsoft Dynamics AX 2012 R3 Programming

By : Simon Buxton, Mat Fergusson
Book Image

Mastering Microsoft Dynamics AX 2012 R3 Programming

By: Simon Buxton, Mat Fergusson

Overview of this book

<p>Due to its interesting capabilities such as finance and supply chain management, business intelligence and reporting, project management, and so on, Microsoft Dynamics is one of the most widely used solutions adopted by many organizations across the globe. This book is a step-by-step tutorial that covers elements from the initial design through to development. Each concept is fully explained and demonstrated by the creation of a real-world project. You will learn some really useful, advanced development techniques such as extending your code with metadata and exception handling.</p> <p>This book is an invaluable tutorial if you are moving from another ERP system or language, or if you are a technical consultant with a desire to create efficient functional designs and business solutions.</p>
Table of Contents (21 chapters)
Mastering Microsoft Dynamics AX 2012 R3 Programming
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

The options for source control


Source control has become more prevalent with AX development in the last 5 years. Initially, there was no specific source control with the development environment, but we survived. This was done through heavy use of comments and adding a dummy method for the development history to each modified object.

We have had version control for a few versions now, and in AX 2012, it has been improved further. The source control options we have are as follows:

  • Source depot

  • Visual SourceSafe

  • MorphX VCS

  • TFS

What Microsoft recommends here is either MorphX VCS or TFS. We prefer to avoid shared development and use TFS internally, which is integrated with our project management methodology.

Microsoft provides a good reference for this in MSDN at http://msdn.microsoft.com/en-us/library/aa639568.aspx. The following table, taken from the preceding article, shows the key differences:

 

MorphX VCS

TFS

Concurrent development

No

Yes

Isolated development

No

Yes

Change description

Yes

Yes

Change history

Yes

Yes

Quality bar enforcement

Yes

Yes

Branching

No

Yes

Work item integration

No

Yes

Labelling support

No

No

The isolated development feature means that each developer has an isolated AX environment. The developer's machine (usually a virtual server) would need to be reasonably powerful in order to run the environment at a suitable speed.

It also has a more involved process; that is, the developer has to check in their work (which is file-based), and then a build has to be created.

The main advantage of TFS over MorphX VCS is the integration with work items, which can be used alongside your sure-step agile methodology. We also have an advantage in that the source is also held in a separate repository.

The MorphX VCS provides features similar to TFS (except branching), but it allows the development server to be shared by multiple developers. Objects are still checked out (and therefore locked) and checked in with comments. It also allows the use of the built-in code compare tool to review the changes between different versions.

This is a simple, yet clever, version control solution, but it also has one drawback. The version control information is stored in a set of tables in the business database. This means you lose the version control data if you rebuild the business database from the live business database.