Month: March 2012

Things to learn for driving Projects to success


Yesterday I watched this interesting documentary on the National Geographic Channel which is all about building the Dubai’s first palm island, “Palm Jumeriah”. This a one massive project where we can learn a lot about project management and engineering. True that is not a software project, but I found so many similarities with software projects and some qualities that software development teams doesn’t have to deliver a successful project. (more…)


Visual Studio 2010 Powershell Extension and PowerGUI

I was using Powershell scripting to create automated deployment scripts for SSIS packages and believe me even though Powershell is a great scripting language it was quite difficult get a script syntactically correct and error free for first time. To overcome this difficulty I used the Powershell ISE (Integrated Scripting Environment). It gives some form of aid to my scripting needs, but I have to say not much. As my self and the team were battling with tight sprint dead lines, these automated scripts writing took considerable amount of time. This was affecting the completion of sprints and one reason for increasing the remaining work at the end of sprints. It was a nightmare to manage the scripts scattered with the team.

When I was reading through my emails I got this email from Tech Republic, of course I’m tech republic fan, regarding this Powershell extension for Visual Studio 2010. So I read it and got the components installed. First you need to install the PowerGUI, otherwise the Visual Studio extension will not work.


Theory behind MVC (Model – View – Controller)

My greediness to exploring technology drove me to look into ASP.NET MVC technology few months back and started to do great deal of R&D work during that time. So I thought of blogging the things I have learnt so far and the best way to start is to look into the theory behind this.

So what is this MVC stands for Model View Controller. According to the definitions that I followed, there are three components in this as its name defines: a Model, a view and a controller. This is an alternate for ASP.NET web forms. Some high level features of this technology include ease of use, highly testable and light weight. One interesting thing about this is that majority of developers are familiar with this technology and some types of web applications, not all, will benefit from this. On the other hand there could be applications that could use both technologies, but what ever the technology that we use should have a balance between Cost, Quality and the Budget. I’m sure that all will agree that our ultimate goal is to stick to these three pillars.

Let’s have a closer look at the separation of the model. In each explanation that I referred on the web was having the same fundamental illustration as bellow, but I’ll try my best to illustrate it more further on a separate diagram.


What is this “Odata”

I have been using Odata services with Dynamics CRM for some time, but would liked to learn the theory and benefit of the technology. This is a high level overview of Odata and I’m looking forward to blog detail explanation of the technology and how it is used.

First will have a brief look into the technologies out there and later we’ll see what exactly Odata. When it comes to building services there are few designs principles that can be used to best represent the services.
1. SOAP: Simple Object Access Protocol
SOAP is all about exchange data as XML and that is part of the goal of interoperability. This is the most popular mechanism to make distributed method calls and it opens an interoperable mechanism for communicating or exchanging data. It also provides a suit of protocols embedded in the data messages. These protocols cover things such as security, transactions, etc. This provides a rich set of metadata or information about the services which indicate what the service provides, so the end users can easily invoke the service. Also these are operation or verb focused such as Insert, Update, Create, Get, etc. In terms of the web all the SOAP messages use HTTP Post only. So you always packaging up the body of the information and posting over the web.


CRM 2011: Creating security roles from scratch is painful

I am sure that most of you have gone through this, to create a security role from scratch. It is one of the painful tasks. When you have around 20 50 entities. It gets worse when this number goes higher. Rather than spending hours on this, my way of doing this is to plan what security roles you need first. Then you can check whether the exiting out of the box Security Roles can be used or not.

After doing this initial investigation, you can use an existing Security Role as a template to create a new one. But be careful when you picking up the security role. You may end up in the same situation as if you were creating the role from the scratch if it doesn’t match your security requirements. Try to pick up the one with minimal changes. And above all you need to have a good understanding of what privileges it gives to the end user.

First select the security role you want to use and add it to your solution.