Last session of the convention for me ... one about the deployment of the 3-tiers of NAV 2009. Now, besides all jokes ... I always wondered, how on earth do you pronounce "tier". I always say it like you would say "teer" in English, but I'm sure as hell not sure it should be done this way ... But anyway ... Let's learn something.
2-tier vs 3-tier.
(Damn, there are lots of drawings on his slides, so this is going to be difficult to explain) Claus Busk Andersen explained the difference, which is quite clear, isn't it? The difference is the extra service (service layer) that is handling the business logic (or should I say: most business logic).
They wanted a more secure deployment model ... Business logic is executed on a secure application tier, and the database is only exposed to the application. On performance and scaleability level, the impact of the client is minimized... . And off course, this architecure is much more scaleable. Last but not least, this architecture gives us lots more exciting deployment benefits:
So, the future looks promising...
Let's talk about some deployment scenario's... .
1. Demo installation
Also called "the next next next" installation. It will install all you want to be able to give a demo .. also SQL Server (Express)...
2. Database and Dynmaics NAV Server on same hardware
This is the easiest "customer" installation. This is a common entry level scenario. Many implementations will run this way. But hold on, it is also the least scaleable option ... So keep that in mind.
3. Database and Dynamics NAV Server on seperate hardware
This is much better scaleable due to the seperated components, but it's more complex to configure from an infrastructure point of view
4. Database and multiple Dynamics NAV Servers on seperate hardware
It comes down on one database server and multiple service servers that hosts the middle tier.
So, what's the process now?
To smoothen the installation process, there is the "Best Practices Analyzer for NAV 2009 SP1". I talked about this before in one of my previous posts. What it does is it verifies:
The last two seem to be the most interesting .. and indeed they are .. . I can only recommend using it! Be aware, it does not take into account the server config file... .
After clicking through a lot of slides (hard to keep up), Claus showed the analyzer by showing two virtual pc's: one with AD and the NAV client, and one with the service tier. It was a real 3-tier set up, being the service tier on a completely seperate box. When running the analyzer, there were (off course) many mistakes.
First thing he fixed was adding a user in SQL Server (user that starts the service tier), and gave it "select" access to the table "Object Tracking" on the right database.
Second, he created the SPN's on the service tier box. It's the popular "setspn" command that you can look up in the documentation... (in other words, I had no time to write them down). Two have to be created: one for the service tier, and one for the database.
Next, in Active Directory, he set up delegation. There are two options: Trust everything and Trust something. Off course, the second was chosen: and he set up the delegation only for the SQL Server machine.
That was it, he started a new scan in the analyzer, and you could see that the errors for the NAV Server were gone (there were only errors for the business web services ... which should be fixed the same way). Now, NAV2009 started succesfully in the demo.
Now, if this wasn't advance enough ... Let's go more advanced. Mike took over.
How to get other machines on NAV 2009? Like a machine at home, which is not part of the domain of the company. Mike started talking about Application Virtualization. It allows you to not having to install a second operation system for only running one application (like NAV). So, you could set up a virtualizationbox, install NAV, and go from there. Good to know, the app is really running on your machine, so you have everything you want: disks, printers, ... . On the desktop, the app runs in a virtualized environment. So, it virtualized the dll's and all it needs to be able to run.
Mike showed this on his machine as well. He showed a windows 7 with NAV 2009 installed .. or at least it looked that way, because it was a virtualized NAV2009. He launched the application, you could see the virtualization mechanism to work, and it beautifully worked ... seemlessly.
Next: RTC over the internet .. still when client is not in the same domain. Not through virtualisation, but just a full blown client. Is this possible? Seems like it.. . The set up is like you know as Claus demonstrated. Just a 3 tier implementation, but then with a firewall, that 's going to be configurated.
What are the configuration changes? Well, in active directory, you should change the delegation again (that Claus did), to not only allow Kerberos, but you allow any authentication protocol. Next, in the control panel on the client, you go to the credential manager and add a windows credential and set up the network address, user and password, and off you go.. . He showed it, and it worked. The pc is not in the domain, but the pc IS running NAV.
Boy, I'm learning new stuff here. :-)
Is it supported stuff? I don't know ... but I still don't think that it's a good idea to use the NAV client over the internet all day. It's good (and fast enough) to do ad hoc stuff, but it's not good enough (again, in my opinion) to have this set up for your daily job... If you know what I mean.
OK, that was it ... good job, guys. You simplified the instal l process, and even added new stuff. Good session!
Jan Silleman started off with a joke ... I'm don't know what I'm doing up here ... is he right? Off course not ;°) In this session, people can ask question so big chiefs at Microsoft ... so there is no agenda .. It all depends on the attendees.
First question was about a guy that developed quite a complex Warehouse form with colors and stuff. How to do this roletailored. The answer was simple: whatever is not possible in the UI of the RTC .. Just do it with Client Extensibility. It's simple, easy and fast... . And they're right!
Next question was about if the Business logic is ever going to be on the database layer (he meant: stored procedure). Answer: Nope, not going to do that. And it's not on the roadmap. (ufff, I'm glad).
How many users per middle tier server: 100. Huh? I always heard 40.. . It actually depends on the load, doesn't it? But you know what the limitation is relatively low, right? You'll run into memory issues .. Why? Because the service tier is 32bit, so maximum uses 4Gb RAM. This is a huge issue, which is going to be solved in NAV '7', when the service tier is 64 bit.
Question about locking and blocking. A customer has got much problems with locking and blocking .. Is this going to be addressed? Yes, definitely. On two levels, even. Communication layer is going to be changed as well as some business logic that will be refactored as well .. to have less locking in the default system.
Are there any plans for bringing Visual Studio into the development experience? Interesting question, glad they asked... . Visual studio is a file-based system, while NAV is an "edit-and-run" kind of system .. where deployment is soooo simple .. means the two don't really get along. Plus, the small bridge between coding and metadata. So, probably: no. Definitely not in the next two versions. But is that a problem, when plans are for bringing .net closer to c/side? Like consuming a webservice in C/AL, or like you can do today, by building custom add-ins .. which will be extended ... building .NET and use it in C/SIDE is going to be easier, handier, better, simpler, ... .
External connection & DCO licence. Finally! Now, I hear Microsoft explaining this to customers ... something what Microsoft (Belgium) tends to put on the shoulders of Partners:
What is the focus of NAV CRM? Well, they are focusing on integrating with Dynamics CRM, which is off course much richer in functionality. There is going to be less focus on extra functionality in NAV CRM (as it is already quite rich on functionality), and more on the CRM integration. So, if you want to go beyond, use Microsoft CRM and integrate with NAV. If not, there's NAV CRM as well.
Next topic was about the report builder. In fact, is there something that users can use to build their own reports ... in fact a new type of JetReports... . Well, there is going to be a change in that, and building RDLC reports is going to get easier (simplicity....). People are looking into the report builder of the SQL team, and building data sets is going to be easier in NAV '7', so things are looking good..
Next there is a customer that is upgrading to NAV 2009 SP1 Classic Client. The reason that it's not going to be NAV 2009 Sp1 RTC, is because users don't want to be bothered with again a new client/software. Is a one-by-one (or better: phased) rollout a good idea? Dan answered that it can be a good idea, because it just takes time. Compare with office 2007. How long has it been since you got familiar with office 2007? Exactly. Now you notice much more functionality in Office 2007 then before, because now it's "superdiscoverable" (which is my new favorite word - thanks, Dan :-)). It takes time, but it's worth it!
Localisations. Is there a plan to make the localized versions much more consistent? Yes, there is. They're looking into what they can consolidate to make it much more consistent. NAV '7' is the first milestone for the consolidation process. It's going to take time. Kitting is a good example of something that was there in a localized version, and what they will bring to the world wide.
Where's code coverage and client monitor? Nothing final yet, first they want to understand how it is used now ... . But if it's in, it will be part of the new debugger... which IS on the roadmap.
OK, very interesting session, and good answers (except the DCO/External Connector stuff again) from Microsoft.
Sorry for not getting back to you with my Convergence Diary, but there was just not much to say about Day 2. At least not to you. I have been on Expo Duty (on Microsoft pavilion) for three hours, and the rest of the time, I was in meetings or "interactive discussion"-session, which are impossible to blog about.
Interactive Discussion: Web Services
One of the sessions was an interactive discussion about NAV 2009 Web Services. I was actually quite surprised that this session was far from full. Only about 15 attendees. No problem there, because one might expect that things might get more interactive, but also that wasn't the case. On the other hand, it was good enough, the 60 minutes still got filled up, so ... good job there for Michael and Freddy. There is though one thing I would like to mention from the session that came up: when to use a codeunit and when to use a page. This is something so obvious for some, but things might get ugly when you don't think this through enough. In fact, when you use a page, you're very flexible. You have a bunch of methods available to work with a dataset. You got a bunch of fields available ... And so on. BUT. If you base your application on a page that might get changed (customer, vendor, item ... page like that), you might want to reconsider this, as this might resolve in continuously recompiling your application, as the contract of the webservice (is it called like this?) gets changed all the time when you change the page. In that case, you might want to use a dedicated codeunit ... or use dynamic web references (which I tend to do - I hope I'm using the right words here). So, when building your solution, please keep that in mind.
Dynamics NAV Test Drive
Another thing: the new website "Dynamics NAV Test Drive" was launched this Convergence, which you might like. Here is the URL: www.dynamicsnavtestdrive.com . What you will find there are movies that click through the product (Dynamics NAV 2009, off course) in different scenario's. It's something you definitely have to check out. For sales, this is an easy way to get new customer familiar with the product. This is not education, this is just familiarisation (if ever that's gonna be a word).
On Expo, I just have to give info about NAV on customers and partners. Helping them with problems they have, guiding them in the right direction for whatever they want to build, listen to feedback, or ... . I have had nobody (but really nobody) that was purely negative on NAV. People had questions, and questionmarks, but nobody disliked the product. Some disliked the partners, ok, but nobody disliked the product... . Nice!
I will be doing some sessions today, so more to follow...
Next session for me was one of Freddy Kristiansen. I mentioned Freddy quite a lot in the past, being the Mekka of NAV 2009 Web Services and such... but you know Freddy of his blog. Freddy is a PM Architect who (in my understanding) can work on stuff they like. And if you read Freddy's blog, you'll notice that's exactly what he does.
You can use Web Service applications for any type of appcliations, for example Desktop applications. There are many examples: Edit in Excel, a Search gadget, Bing Maps, ... .
Freddy gave a demo of Edit In Excel, and explained how it worked in general: the fact the it's not NAV that pushed data to Excel, but the Excelapplication is getting the data through web services. Next, he showed the Bing Maps functionality that you can download from his blog as well. To conclude, he showed some gadgets: My customers, the search, ... .
Next topic was "Intranet Applications". For example the "resource journal" (read: time registration) and "mobile integrations via WIFI". He did a demo of a very simple web applicaiton where it was possible to fill in the resource journal to give in timesheets.
Following challings would be "Extranet Applications". You know, these are not really possible, because of the fact that you need active directory, which is not available outside your network. Sometimes you need a proxy. So, for your vendor to give in orders, or customers to do some ordering ... please use a proxy web service for this. How to build one? Read Freddy's blog. As a demo, he used a console application, being the customers, who monitors that statusses and delivering dates of that sales order. This service could be used by customers to integrate in their application to monitor the purchases.
What about Windows Azure? Freddy showed a Windows Azure application, being a "guestbook". He connected this with an NAV database through web services. How he did it, I don't know, but he did it. We might go into details later .. so read on ;°). But what you saw was an online guestbook application on azure where people could leave a message. Freddy created a contest with it, where people could win t-shirts by leaving a message in his guestbook.
Now, we'll go into code ... . First Freddy explained how to create a web service and zoomed into his bing maps application, wich is a web service, based on a codeunit. After that, he also showed the difference with a page-based web service. After that, he opens Visual Studio to create a simple application, updating a customers on-the-fly... . Not really challenging ... but it showed the simplicity what we love so much.
That was it .. question time.
It was cool to see all the people that reached to their pens and paper when Freddy showed the slide where the URL of his blog was mentioned. Apparently people will dive into it .. and they're all right :-).
Good job, Freddy.
Dan Brown started out to make a point: in every aspect in his life, there is NAV involved. So he did a competition with Jan Silleman, where they tried to name as much NAV Customers as possible, which are a daily influence in their live. Both Dan and Jan came up with Wind Surfing Materials, cheese, Carlsberg, Adidas, BMW, VW, NAV Winery (Napa Valley if I'm not mistaken). But also Stanley ... who happens to be a customer of iFacto, my company :-) (we handle the European services). Nice coincidence.
Jan Silleman continued with the three focuspoints of Dynamics NAV: Simplicity (which is my personal favorite),Value (which I obviously also care about), Innovation (ok, I'm in favour of all three of them).
To insure that your solution is good, tested, ... you (as customer) should choose for a solution that is Certified for Microsoft Dynamics. Now, I have a few problems with that. It's good that a solution is tested .. but a solution can only be certified when it was implemented at least at 10 customers. So, if customers would only choose for certified solutions, then we wouldn't have new solutions anymore. Ok, I know, this is quite extreme ... so just forget it ;°).
When going into the business productivity, Jesper Raebild came on stage to give us a demo. The spotlighted the familiarities, the usibility of the new rtc client, by doing everything on keyboard (without the mouse):
Next, he went to an existing sales order. He showed the changed action pane where he grooped actions in sequence the user needed it. So he changed action groups to make the business process more visual.
He continued with the Edit in Excel demo ... people always love this .. I use it always as well. He showed the conflict window and the validation in the Excel application.
Then, the addins. Again, the familiar things were shown: the Treemap addin, the wheather control, the map visualisation. If you read freddy's blog, it will all be familiar to you. To conclude, Jesper showed the reporting capabilities: matrix, conditional formating, datails, interactivity, ... . Also here, the familiar "Sales Dashboard" was shown .. and people loved it (I can imagine that lots of customers see this for the first time).
Next, Jan showed a video of the biggest Zoo (animal park) in England (of which I forgot the name). They implemented NAV 2009 SP1 and are happy with it. Off course. It's a commercial. What else did you expect? :-)
Yannick was the next person on stage. May be you remember Yannick,being presenter on the previous annual event of the Belgian Dynamics Community? May be you don't, but anyway ... I do ;°). Yannick continued with the value of upgrading. He explained the:
Next, a video of a German customer (of which I didn't get the name again ... damn, what's wrong with me???). They did an upgrade from 3.70 to NAV 2009 in three months. At the same time, they introduced the manufacturing functionality ... .
So, to conclude, General Manager Dan Brown took over to talk about the Vision:
He continued with NAV'7' Value Propositions:
Jesper came back on stage .. so are we going to get a demo? Yes, off course. Jesper showed a view on the Inventory, which was actually quite cool. It was a graphical view on what our inventory of a certain item is going to be in the future .. on posted lines, but also from MRP. Cool! I wonder if they are going to release this in '7'..
Next, we saw some screenshot of the upcoming SharePoint client. And it all looked very familiar ... if I may state it like this: the client was ported directly to sharepoint. Both views of a certain page was very similar, with modal forms and all!
This was a very good general session, which tend to be all marketing fluff, but now consisted of good and valuable information.