How to pass BizTalk certification (70-595)

As you may know, there is an MCTS-exam called 70-595, for us that work with BizTalk. The formal name is: “Developing Business Process and Integration Solutions by Using Microsoft BizTalk Server 2010”. Many seem to think that passing this test is hard and also a challenge, but if you do pass, it gives you a sense of pride and accomplishment. You have also received a sign of approval from Microsoft about your knowledge and abilities. If you are lucky, and work for the right employer, you might even receive a bonus for passing.

How do I book a test date?

Firstly you need to find a Prometric-licensed test center. Microsoft works in collaboration with Prometric worldwide and they are responsible for making sure that everyone gets to take the test under the same conditions. They, in turn, certify locations (or test centers) all over the world. You need to find one of those. If I were you I would check the local education center that your company usually uses.

If you live in Sweden I can recommend AddSkills. You can book a date right from their site, and even send the invoice directly to your employer. The cost for taking the test varies, but at AddSkills the current rate is 1 950 SEK for the Gothenburg and Stockholm test centers. Others might be more expensive.

Is the test hard?

Yes, it is hard. The point of the test to show that you are better than a beginner and that you also have some working experience with the product. I have heard different rumors about different Microsoft exams. Some seem to be easy-peasy, and others are hard as nails. This might be the case but I can tell you that the BizTalk is in the latter category rather than the former.

What is the process of the exam itself?

There used to be practice tests available, that closely mimicked the actual test’s process. I have not been able to find any tests for BizTalk 2010 but I will assume that, since they were available it is OK for me to write a bit about the process.

Most importantly: No cheating! If you are caught cheating, you will be banned from taking further tests and the community will shun you. You will be forced to live out in the forest with only the birds and the voices in your head to keep you company. So please don’t cheat.

You will be placed in front of a computer configured to conform to some sort of minimum standard. You are only allowed to use the tools that the computer supplies and also a scratch-pad, provided by the test center. You are not allowed to bring anything but yourself into the test room. To further reduce the risk of cheating the testing room will be monitored via CCTV.

The test is entirely based on multiple choice. Some of the questions have answers in the form of RadioButtons (one correct answer), and others CheckBoxes (more than one might be correct).

There is a “mark for review” system. This means that you can mark a question for review, if you feel you might want to rethink that later. After you have answered all the questions you have an opportunity to view all the questions again. The ones you have marked for review is very clearly marked.

The total time for the test is two and a half hours, which is ample time in my view. If you are worried that you might not be able to finish on time, you can use the review-system to mark questions you are not so sure about or you feel might take a long time to answer. Then run thru the test once and answer all the “easy” ones. This way you know that you will at least get those.

My method has been to take one question at a time and really focus on just that question. Read it, analyze it and try to get to the bare bone of the question. Give it the answer you feel is the best one and if you are unsure; mark it for review. Then drop that question and focus hard on the next one. I run thru the test in this manor until there are no more questions. By then, I am ready for a short break. After the break I review all the questions marked for review. This time, focusing even harder on the text and the different answers, as there might be pitfalls. Personally I don’t believe in reviewing all the questions, it’s just a waste of time.

When you are done, you submit the test and after 10 agonizing seconds you will receive your score: pass or fail. If you pass, don’t forget to pick up your test result sheet from the test center. This paper will tell you your score and how well you performed in the different categories (see below).

In case of success, don’t forget to celebrate and treat yourself to something as a reward for all that hard work.

What do I need to study?

That actually has an official answer from Microsoft located here. I heartily recommend reading that article thoroughly and several times. Note that they have used the wording “including but not limited to”, so even if the list of things to know might be long, it might not be complete.

Here it is, together with the relative percentage of that subject compared to the whole exam.

  • Configuring and Architecture: 20 %
  • Developing BizTalk Artifacts: 20 %
  • Debugging and exception handling: 17 %
  • Integrating Web Services and WCF: 14 %
  • Implementing extended capabilities: 13 %
  • Deploying, tracking and supporting: 16 %

Something worth mentioning is that there is a lot of focus on Web Services and Wcf. It is about as important as developing BizTalk artifacts, which is pretty darn “core BizTalk”.

Something else worth noting is the point called “Implementing extended capabilities”. That is worth 13 % but includes RFID, EDI, BRE and BAM. It is safe to say that you might not have to know all the ins and outs of BAM or RFID to pass, but to dismiss them altogether is na%u00efve.

My advice

The best advice I can give you about what to focus on when studying for the exam is this:

  1. Read the article from Microsoft once more and note all the concepts listed under each category (like what core adapters are mentioned or that you must know how to configure basic tracking).
  2. Divide all the concepts into three categories:
    1. I have heard/not heard of this and have only a vague/no idea of how to use it (like RFID perhaps).
    2. I have a fairly good idea of how to use this but feel I might need to know more (like Role Links).
    3. I know this and feel I really don’t need to study for it (like configuring a FILE send port).

How do I study for the exam?

There is really no simple solution for this as there is no self-paced learning kit or anything like that. There might be a book on this subject in the making, according to rumors. I have no idea about release date or anything though.

Until that book is released I recommend this summary, found at Microsoft. It is made by the ever productive Steef-Jan and lists all the free available resources that Microsoft has put out.

I would also recommend the book Microsoft BizTalk Server 2010 Unleached, partly written by a colleague of mine, Jan Eliasen. You should, of course, read the book from cover to cover but if you are more target oriented you can obviously skip the more extensive aspects about BRE, everything about Windows Azure and the short part about the ESB toolkit.

Also read the blog post about the exam written by fellow blogical-blogger and MCT Johan Hedberg.

In closing

I passed my test. Will you prove yourself? Just kidding! Have fun studying; you will learn a lot of useful things about our favorite product.

Also, please provide feedback if you disagree or feel I have said too much about anything. I am only trying to help, not violate the NDA.

Blog Post by: Mikael Sand

Dynamic SMTP Failure: Unknown Error Description

I was sending an email dynamically, from an orchestration.

I set up a nice payload message with all of these nicely distinguished fields, that contained the to/ from, subject and body of the email, so that other parts of my system could send an email, just by generating this message.

My message assignment shape had:

EmailSendMessage = EmailReceiveMessage;
EmailSendMessage(SMTP.EmailBodyText) = EmailReceiveMessage.Body;
EmailSendMessage(SMTP.CC) = EmailReceiveMessage.CopyTo;
EmailSendMessage(SMTP.From) = EmailReceiveMessage.From;
EmailSendMessage(SMTP.Subject) = EmailReceiveMessage.Subject;
EmailSendMessage(SMTP.MessagePartsAttachments) = 0;

EmailSendPort(Microsoft.XLANGs.BaseTypes.Address) = “mailto:” + EmailReceiveMessage.SendTo;

The message itself was not sent, just the properties of this message, so the message I was constructing as receive message didn’t matter, so I made it the same type of the EmailReceiveMessage. It compiled, and I deployed it.

First Try:

Event Type: Error
Event Source: BizTalk Server 2009
Event Category: (1)
Event ID: 5754
Date: 13/12/2011
Time: 1:16:31 PM
User: N/A
Computer: [computer]
Description:
A message sent to adapter “SMTP” on send port “XXX.Email.Orchestrations_1.0.0.0_XXX.Email.Orchestrations.SendEmail_EmailSendPort_43e93d0db20c465a” with URI “mailto:[email protected]” is suspended.
Error details: Unknown Error Description
MessageId: {B66F52BA-DFF0-4274-B4B2-3B1F51E862E0}
InstanceID: {C7A4CA9E-E606-4D04-9001-D34974B4D971}

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

I then checked and you needed to have the body text charset:

EmailSendMessage(SMTP.EmailBodyTextCharset) = “UTF-8”;

Second try, same error

Several modifications later I get the message: Unknown Error Description

Which I must say is not a great deal of use when you are trying to figure out what’s wrong.

I then decided I’d make a different message type for sending, and used a transform. I used my send message and copied and pasted the schema, I changed the target name space of course.

SAME ERROR..

I was annoyed, and tried a bunch of things, then EUREAKA!

The send schema which I copied and pasted has the same properties promoted as distinguished fields.

This was BAD it seems, the instant I removed these properties from being promoted, and changing nothing else everything worked.

BAD BAD BAD… schema properties, who would have thought

DO NOT HAVE PROMOTED PROPERTIES ON YOUR SCHEMA WHEN SENDING TO THE SMTP ADAPTER.

Windows Azure 12/12/11 Announcement | Annonces Windows Azure du 12 décembre 2011

This afternoon, Microsoft announced a number of updates and improvements to Windows Azure that will help developers to more easily access Windows Azure and unlock the value of cloud computing as a development platform. Cet apr%u00e8s-midi, Microsoft a annonc%u00e9 un certain nombre de mises %u00e0 jours et am%u00e9liorations pour Windows Azure qui aideront les d%u00e9veloppeurs %u00e0 acc%u00e9der tirer un meilleur parti de cette plateforme de d%u00e9veloppement cloud.
Additionally, tomorrow night (tuesday 13th 18:00-2:00 Paris Time), senior Microsoft leaders will participate in a broadcast event: Learn Windows Azure to demonstrate how easy it is for developers to get started with Windows Azure and show how to build scalable cloud applications using Visual Studio.  The event will include a number of great hands-on demos as well. De plus, demain soir mardi 13 de 18:00 %u00e0 2:00, quelques VIP de Microsoft vont participer %u00e0 un %u00e9v%u00e9nement en ligne: Learn Windows Azure qui d%u00e9montrera la facilit%u00e9 avec laquelle les d%u00e9veloppeurs peuvent d%u00e9marrer sur Windows Azure et comment construire des applications qui passent %u00e0 l’%u00e9chelle avec Visual Studio. L’%u00e9v%u00e9nement incluera un certain nombre de d%u00e9mos %u00e9galement.
In this release, we really focused on ease of use and creating more value for .NET developers as well as opening up new opportunities for open source developer to take advantage of Windows Azure.  Among the highlights: Dans cette version, on se concentre sur la facilit%u00e9 d’utilisation et la cr%u00e9ation de valeur pour les d%u00e9veloppeurs .NET et l’ouverture de nouvelles opportunit%u00e9s pour les d%u00e9veloppeurs open source avec Windows Azure. Parmi ces nouveaut%u00e9s:

– New and Enhanced Open Source Software Experience-Windows Azure SDK for Node.JS makes Windows Azure a first-class environment for Node.JS developers that support hosting, storage (blobs, tables, queues).

– Nouvelle exp%u00e9rience Open Source. Le SDK Windows Azure pour Node.JS donne une place de premier rang aux d%u00e9veloppeurs Node.JS. Ce SDK fonctionne avec le Web Role, le Worker role, le stockage (blobs, tables, queues).

– A new Hadoop Service Preview for Windows Azure brings Hadoop Big Data capabilities to Windows Azure and enables Hadoop apps to be deployed in hours instead of days.  To gain greater insights on data (structured, semi-structured and unstructured data), Hadoop on Windows Azure will enable customers to analyze data through familiar tools such as Excel and Microsoft BI tools such as Power View and PowerPivot.

– Une version CTP du service Hadoop pour Windows Azure qui apporte des fonctionnalit%u00e9s de Big Data et permet surtout %u00e0 des applications Hadoop d’%u00eatre d%u00e9ploy%u00e9es en quelques heures et non en plusieurs jours. Pour tirer partie des donn%u00e9es (structur%u00e9es, partiellement structur%u00e9es ou non structur%u00e9es), Hadoop sur Windows Azure permettra d’analyser des donn%u00e9es %u00e0 travers des outils familiers comme Excel ou la plateforme BI (dont Power View ou PowerPivot).
– Increased SQL Azure maximum database sizes in SQL Azure (at no additional cost) and a new sharding pattern to simplifies elastic scale-out – une taille maximum de base de donn%u00e9es SQL Azure augment%u00e9e (sans co%u00fbt additionnel) et le sharding pour permettre une mont%u00e9e en charge horizontale

You can find more details on the announcement here.

On trouvera tous les d%u00e9tails dans ce billet.
   
This shows that Windows Azure is not only for .NET code. Windows Azure support for Node.JS is truly done as a Platform as a Service (PaaS). Just try this out by using the demo script in the Windows Azure training kit  and use it yourself (SDK is here). Cela montre que Windows Azure n’est pas que pour du code .NET. Le support de Node.JS dans Windows Azure est vraiment fait sous la forme de PaaS (plateforme en tant que service). Essayez-le en regardant d’abord le document de d%u00e9monstration de ce sc%u00e9nario dans le kit d’apprentissage puis essayez-le vous-m%u00eame (Le SDK est ici).
Node.JS is one the scenarios. Have a look at the new developer center: Node.JS est un des sc%u00e9narios. Allez voir le nouveau centre de d%u00e9veloppement:
You can also find code on the GitHub repository at https://github.com/WindowsAzure, and ask questions on the stackoverflow forums http://stackoverflow.com/search?q=azure. Vous pouvez aussi trouver du code sur GitHub %u00e0 https://github.com/WindowsAzure, et poser des questions sur les forums stackoverflow http://stackoverflow.com/search?q=azure.

Benjamin

Blog Post by: Benjamin GUINEBERTIERE

Ordina behaalt zilver in Microsoft Applicatie integratie

Ordina behaalt zilver in Microsoft Applicatie integratie

Afgelopen week heeft Ordina AIM binnen het Microsoft Partner Model de mooie zilveren status behaald binnen de competentie “Applicatie Integration”. Onder deze competentie vallen onder andere de bekende producten zoals BizTalk en WCF. Mede dankzij effort van Steef-Jan Wiggers en Sjoerd van Lochem is deze eerste mooie stap gemaakt. Steef-Jan ligt de prestatie verder toe:

Het Partner Model bij Microsoft is volledig op de schop gegaan, omdat in feite in heel de wereld en dus ook in Nederland teveel partners de status van “Gold” Partner hadden. Het onderscheid tussen de partners was in zijn geheel niet meer duidelijk. En “Gold” Partner waarin? Je bent Microsoft “Gold” Partner, maar wat betekent dit nu in feite voor mij als klant en waar onderscheid jij als leverancier van Microsoft diensten nu van de rest.

Als je voldoende opbrengsten levert als partner op Microsoft producten en diensten en voldoende gecertificeerde mensen in dienst hebt, dan was je “Gold” partner. Het nieuwe Partner Model van Microsoft is georganiseerd op basis van competentie, waarbij criteria gelden voor:

Referenties
Certificering
Omzet

Op basis van je status op competentie kun je je onderscheiden van andere partners. Er zijn diverse competenties voor virtualisatie, communicatie, desktop, web development, applicatie integratie enzovoort. Op de competentie kun je een “Silver” of “Gold” status behalen.

Als Ordina AIM zijn we trots dat we de “Silver” status hebben kunnen behalen voor “Applicatie Integration”. De “Silver” status betekent dat we als Ordina AIM aan onze klanten kunnen laten zien, dat we voldoende referenties hebben opgebouwd op het gebied van applicatie integratie, voldoende gecertificeerde mensen aan boord hebben en omzet maken door het leveren van diverse diensten. We behoren met deze status op “Applicatie Integratie” tot 5% van alle bedrijven wereldwijd, die dergelijke status hebben op deze competentie.

De “Silver” status is een mooie mijlpaal, die we hebben bereikt. We willen uiteindelijk natuurlijk de status “Gold”. Deze status geeft ons nog meer onderscheidend vermogen ten opzichte van onze concurrenten. Met deze status kunnen we namelijk aantonen dat we wereldwijd tot de beste behoren op het gebied van “Applicatie Integration”. De status toont onze commitment tot Microsoft technologie, die bij deze competentie hoort. Technologie als BizTalk Server, Windows Communication Foundation (WCF) en SQL integratie technologie als Integration Services en SQL Broker. Als Ordina AIM zijn we in staat specifieke, hoogwaardige oplossingen te leveren en de “Gold” status zal uiteindelijk het bewijs richting onze klanten zijn.

Contest at Sandro’s blog: Win an e-copy of Microsoft BizTalk Server 2010 Patterns book

Sandro Pereira has a contest in which you can win an e-copy of Microsoft BizTalk Server 2010 Patterns from Packt Publishing.

Since I love the book as well (got the printed version), I thought I’d try to give the contest some extra attention.

If you would like to win an e-copy, be fast: the contest closes Friday December 16th.

The value of a Diagnostics service

For an integration solution with lots of dependencies, it’s difficult to definitively state that everything is wired up correctly and that all components in the stack are working. A while ago, Michael Stephenson proposed having a diagnostic service in a solution as a quick way of verifying that a given environment was working, end-to-end. Initially I was sceptical, on the grounds that there shouldn’t be any code in a solution which isn’t directly solving a business problem, but having tried it out I’ve been won over.

We now have a dedicated suite of diagnostics services which check a whole range of stuff, including availability of all the downstream services, the in-process and out-of-process caches, and the accessibility of BizTalk file drops. We also include environmental stuff like the version number of the solution, machine name, server date and time, IP addresses etc. And we have a rolled-up service which gives us a green or red status for the solution.

For devs and technical owners of the solution, this gives us a very detailed view of the health of the stack, but we have REST endpoints for the general healthcheck services, and we now use these all over the place:

  • in our automated deployment process, we send an email after an environment had been deployed. That email contains the output of the healthcheck service, so we can tell if a deployment was successful;
  • the REST URLs are published to the team, so testers and service consumers can quickly check if the environment is operational before starting work on a release;
  • we have something like 10 environments which are all catalogued, and the REST URL for the version number service means we’re not manually updating version numbers in the catalogue after a release;
  • we have nightly releases of the integration solution and the downstream services, so we have simple PowerShell script run from a Windows schedule every morning, which checks the output of the REST services and emails the team with the test environment status;
  • calling the diagnostic service warms up the server app pool, and all the app pools of the downstream services, so the scheduled job warms everything up after a recycle.

With this simple stuff in place we’re saving a bunch of time investigating problems which turn out not to be problems in the integration solution, and the offshore test team can quickly see if there are problems with the stack before investing time on tests. Highly recommended.