Joe Sango's Blog

Thursday, March 31, 2005

Plugin project update

Our little VSTS plugin project for eclipse has 3 new additions. Welcome to Keith Rowe, Mitch Denny and Martin Woodward. I'm really excited to have these guys on board as they bring some great experience and knowledge.
Looking forward to getting this idea off the ground. :)

Stay tuned.

Tuesday, March 22, 2005

VSTS pricing and licensing

Well, Rob's posted up some big news about VSTS pricing and licensing. Check it out. It's Suite! ;)

Monday, March 21, 2005

Back to the (integration) front!

I have started at a new client this week that is getting me back to the integration front using webMethods. The cool thing is, along with developing the integrations, I will be working on the systems written in .NET to interface with WM as well as the Java messaging tier running on JBOSS utilising JMS! You gotta understand that this sort of work is heaven for me :P. I will be sure to post the cool and interesting stuff I come across.

Plugin to VSTS

Dave Lemphers and I have started a workspace that focuses on creating a VSTS toolset for Eclipse via plugins. We have been talking about it for a while so we thought we should finally do something about it! If you have any comments, queries, suggestions or want to be involved, follow the workspace link and join up.

Thursday, March 17, 2005

Process Templates

Amy Hagstrom has posted some information on customising process templates for VSTS projects. Its a good brief intro into the process for anyone interested.

Wednesday, March 16, 2005

Application Designer Demo Part 2

The link to part 2 of the App designer demo run by Robin and Liangxiao of the Whitehorse team is now available on Rob Caron's Blog.
The future for dev's is looking cool. It's all cool.

Tuesday, March 15, 2005

VSTS Extended

I got an email from John Lawrence today regarding Team Foundation extensibility. The WIT team are releasing an article fairly soon that covers creating custom Work Item Types. Watch this space.
In the mean time, I have been looking at the extensibility kit to create custom work item types with the four command-line tools (WIT import/export) but I have not had any luck getting that working to any great degree. I was then pointed (thanks John!) to Dave McKinstry's post on the customisation process in VSTS projects and started looking at Process Template Customisation. This covers six main parts via plugins:
  1. Classification Structure Service (Css)
    Defines a team project's initial iterations, organization units, components, or feature areas.
  2. Group Security Service (gss)
    Defines a team project's initial security groups and their permissions.
  3. Windows SharePoint Services (wss)
    Defines the project portal for the team based on a SharePoint site template. Also defines template files and process guidance.
  4. Currituck
    Defines a team project's initial work item types, queries, and work item instances.
  5. Rosetta
    Defines a team project's initial reports.
  6. Source Code Control (scc)
    Defines a team project's initial source code control security permissions, and check in notes.
The documentation in the kit goes into further detail so check it out if your interested. I am still going through the MSF Agile template xml that I extracted via VS and it is giving me a good insight into key concepts and architecture of process templates in VSTS. I recommend anyone interested in VSTS customisation to have a browse of this.
That said, I can't wait for the upcoming article guys!! :)

Application Designer Demo

Rob Carron has posted a link to a video of two members (Robin and Liangxiao) of the Whitehorse team demonstrating the app designer in action in a team environment (part 1). Its a good little watch to see the designer do its thing. Take a look.
I notice that they use SourceSafe as part of their SCM option not TF source control. I assume it was a choice for the sake of a smooth running demo as there is still a bit of ironing to do on the team foundation source control tool.
I have encountered a weird bug here and there when trying to add solutions to source control and had to find quick work arounds to check my solution in. Not pretty yet but looking good. BUT it is good to see SourceSafe integrating nicely in VS2005 for those smaller teams.

Thursday, March 10, 2005

What's WIT TFS?

I am making my way through Team Foundation Server and I must agree with Chris Menegay, Work Item Tracking (WIT) is fantastic.
Just a quick refresher. A Work Item can be and usually is, every piece of work in a project. Whether it is a bug, task, requirement, etc, doesn’t matter. Every piece can be tracked including change issues such as Who made the change?, who authorized the change? and what bug did this change fix?.

Default WI types currently available.

I used VS to add my work items and it’s a nice clean interface to use.

Information added against the work item is used to link it to other parts or artifacts of a project like tests, file attachments, builds (what build can this WI be found in?) and even other work items and changesets. The tabbed pane allows easy entry of all this info.
Tightly integrated with Team Foundation Source Control and Team Project (More detail here in John Lawrence’s posts), WIT is, in my opinion, a great feature of TFS that will be pivotal in the overall delivery of successful projects using VSTS.

I’m still playing with the VSTS extensibility kit so more on WIT extensibility in an upcoming post.

Wednesday, March 09, 2005

VSTS on a single VPC?

I heard around the traps that there maybe a VSTS release coming that implements all three tiers onto a single VPC. How cool would that be? I believe that currently Yukon and VSTS run on differing versions of the .NET CLR hence the data tier residing on a separate machine. Whether or not it's good practice is another story but for demo's, presentations, POC's, etc, I think it would be fantastic. Plus it would be welcomed by us who are RAM challenged!

Monday, March 07, 2005

Deployment Designer

I briefly mentioned the Deployment Designer in one of my earlier posts.This is a great tool for not only validating current systems against proposed solutions but also for trialling different deployment strategies.
What you are actually doing is mapping the system onto a logical datacentre, otherwise known as Binding.
As well as full validation check, the Deployment diagram will check and validate the topology, hosting relationships and the existence of valid end-points, as you drag and drop system components on the diagram.
The full validation consists of checking communication pathways between applications and the Settings and Constraints defined in the Logical DataCentre diagram created.

Its as easy as:
  • Right clicking on the Application Designer and selecting Define Deployment from the menu.
  • Choose a logical datacentre diagram to validate against.
  • Drag and drop your system components onto the diagram

The deployment designer initially looks identical to the logical datacentre designer but now there is a system view window that contains the created system components from the Application Designer.The settings and contraints are all viewable from the deployment designer but not actually editable. The logical datacentre diagram can be edited directly and the changes are synched with the deployment diagram.

I wanted to show a quick example of the pre-validation checking. In my LD diagram, I put a constraint on my WebSites web server in the DMZ (inbound end point) to not allow web service calls. Now in my deployment diagram, if I select my web service I created for orders, it physically will not let me place it in on the WebSites server. I put it on the App Server instead because it is defined to allow web service calls.

Once I have mapped the system onto the logical datacenter, I can now validate the deployment by right clicking on the diagram and selecting Validate Diagram. If there are no errors it will validate correctly with no errors or warnings, otherewise the errors or warnings will appear in the error list (like compile errors). Just as you would expect, double clicking on the errors takes you to the relevant settings and contraints section that needs to be addressed. Very nice.

Friday, March 04, 2005

Perfect System == Perfect Solution?

I had an interesting chat with me ol' mate Dave Lemphers today, who started as Microsoft's new Dev evangelist this week (Congrat's again matey).
We were talking about the .NET development community and Java's "open source" dev community specifically hitting on developer's coding mindsets and we struck on an interesting question.
Does creating the perfect system in a coding, software design sense, always equal the perfect solution for the client?
We as developers, are always looking to cut smart and efficient code (right?), but does it come to a point where it ends up being more about the system and less about the actual solution? Sometimes.

More designers? Sounds logical.

I have been using the Logical Datacentre Designer in my exploration of Team Architect and it is looking fantastic. The LD designer is used to create diagrams that represent interconnected logical servers that represent a given system. These are going to be a great source of information for developers when they need to know about the target deployment environment.

Anyway, I setup 2 zones, one DMZ and one Secure. I then added some logical servers simply by dragging and dropping them on the diagram and finally connecting them up. I have to say the ui is great to work with. It is very similar to my EAI development using WebMethods and playing with Biztalk. Personally, I love a nice, clean visual dev environment no matter what I am developing in. Stimulates my senses more……but that’s another story :)...

Using the Settings and Constraints editor, you can specify the configuration of applications that will sit on the logical servers within the datacenter. For example, ASP.NET security setting constraints for applications hosted on a web server.The level of configuration through out the server types is quite impressive.

You can then trial deploy your system against the settings and constraints that have been defined in the LD designer, to make sure that it will validate in the logical datacenter environment. I think that this particular functionality is gold from a dev point of view as the system limitations/constraints are known up front so there is little room for last minute code/config changes in rolling out systems. I will talk more on deployment in my upcoming Deployment Designer run through.

Thursday, March 03, 2005

VSTS Architect Designers

The Application Designer (formerly known as Application Connection Designer) is used to provide a graphical representation of applications that comprise an existing system including connections between them and services offered. Connections are made between applications via their endpoints. More here.

These applications may already exist in the system or alternatively, they may represent systems that are going to be built.

A few things to note:

  • When you add an ExternalDatabase object to the diagram, you don't actually configure the connection properties of the database until you create the connection between the database and a particular application.
  • An external web service end point CANNOT be edited due to it being an external resource.
  • The ASP.NETWebService object will appear in the app diagram as an ASP.NETWebApplication. Its the endpoint which distinguishes it as a web service as
    opposed to web content for an actual web application.

Adding methods to the proposed web services is a breeze. In the web service details window, select the web service and click on to add the name of the method. Scroll across to the right to fill in the return type and optionally the modifier and summary.
To add parameters, expand the method to reveal and type in the desired parameter name and specify the type. You can also type in a left bracer ( after you define the method return type to automatically go into adding a parameter name. The intellisense here in the type definition is a nifty feature.

Now the cool thing is you can implement the web service you just created in the diagram by right clicking on the web service and selecting Implement Application. This will create the relevant files and skeleton code for the web service ready to be physically implemented! Great stuff. Using the Visual Web Developer Web Server, I tested my web service on the fly without having to worry about configuring and publishing to IIS.

Wednesday, March 02, 2005

So many questions.

I just read a VSTS Architect chat transcript posted a few weeks ago. The WhiteHorse team were answering questions that the community were throwing at them and I found that it answered a few of my own that I had floating around in my brain. View the transcript here.

Great source of general info for the VSTS Architect designer suite.

Tuesday, March 01, 2005

Back into VSTS

Ok...So last year I was sucked into the Visual Studio Team System universe and despite the painful install process I went through to get the thing running on 3 VPC's, I was really impressed. If only I had this back then......dohwell....
Anyway, I got right into Team Architect, Developer and briefly work item tracking and MSBuild. I had to drop tools for a while (since late December) due to my J2EE work load and had to be satisfied with catching up on everyone's blog to keep up with what was happening.
Well I am pretty much back now and into a fresh release of VSTS over 2 VPC's, going back through all the goodies. A few niggly things have changed and I will blog them up when I can along with any funny errors that pop up along the way, starting with Architect.
Main thing is I'm back and loving it.

Finally, on with the show.