November 2008 - Posts - Willy-Peter Schaub's Cave of Chamomile Simplicity

November 2008 - Posts

My last official day as the leader of the BB&D ATC team ... a sad, but fun day

20081130 ... this is my last official day as the leader of the competent, passionate and family oriented unit known as ATC within BB&D. The day is a sad one, because I will miss being part of this team, although the tie between MVP-VS Product Team-ATC will definitely strengthen over the next few months and years. I am also convinced, that the ATC team will go from strength to strength, because every ACT'tonian is focused, dedicated and passionate about technology and the unit objectives.
Gold Business People Connected By Atoms, Symbolizing Teamwork, Brainstorming, Creativity And Ideas Clipart Illustration Image ... a team, working as one ... sounds like the Borg ...

Here is the last ATC team photo, with a few zoom-ins to highlight some areas ... these areas are part of the fun part of Friday, because we introduced the Cyprus green line, the hippo alley and the business analysts (BA) grazing area in studio 2 ... the home of ATC:

ATC 

The ATC team champions are:

  • Rear row, left to right: Robert, Thabang, Zayd ("the server dude"), Herman ("the delegator"), Henk ("Mumbles")
  • Front row, left to right: Willy-Peter, Siyambonga and Johannes from facilities.

Thank you guys for being such an amazing team, for Thursday's amazing team lunch (we enjoyed German food and beer) and the incredible gift (a Ferrari fountain pen), which I will treasure forever. It was fun, interesting and a real honour to work with you guys!

... may we have lots more fun during the next 4-5 weeks over December. Thereafter we will meet again at the PDC, MVP Summit and/or Vancouver, ... just remember warm clothes, as Canada and Alaska are probably a bit cooler than South-Africa q;-)

Posted by willy
Filed under: ,

Community (South-Africa) - FAQ

Over the past few months there have been a number of community questions we have received and I have decided to pick the top seven and define an answer a la "my view". Input and comments are welcome!

Question My View(s)

1

What is SA Architect actually all about?
 

saa_LogoThe SA Architect community has an objective to investigate and discuss information technology architectures and associated technologies in the context of the African ecosystem, with challenges such as distance, lack of connectivity and limited bandwidth. The community has attempted to bring architects and analysts around the table to share experiences, issues and collaborate on simple and cost effective solutions.

2

Is SA Architect not a Microsoft community?

interopWhile SA Architect started as a Microsoft sponsored and managed community, it has deliberately broken away from all vendors a few years ago and has since pursued a vendor agnostic community, architectures and technology approach. The successful interoperability and integration events, such as the TFS/VSTS/Eclipse/Java/Teamprise academia program, are proof of the solution focus.
 

3

Who sponsors the SA Architect community server and events?

The community server is currently sponsored by Internet Solutions and Barone, Budge & Dominick. Other sponsors such as Investec and Teamprise support the MVPs and Community Leads with community events, such as technology readiness sessions, TechEd, Academic, and many, many more.
IS BBD.Logo.01 teamprise-logo investec

4

What are the objectives of the community leads?

MVP_Horizontal_FullColorThe MVPs and community leads are driving the community to promote information and experience sharing, normally in their personal time and based on their sheer passion for technology and collaboration. You should spot a community lead from a mile away ... their passion for the community and their area of expertise is simply phenomenal. A few examples include Nicolas, Zlatan (Bulldog) and Hilton in Cape Town ... Gail (GilaMonster), Henk (Mumbles), Robert and Zayd (Server Dude) in Johannesburg ... Willie Roberts in Kwa-Zulu-Natal. These leads are investing immense time, passion and knowledge in the various communities, including SA Architect. There are many other leads and individuals ... space here is limited, so to everyone, THANK YOU and please continue your great work!

5

Why are the communities not hosting the events on day X, time Y?

We have tried to schedule events on days and times that suit everyone, with an event style that pleases all and a content that is appealing for everyone ... but, we have also realised that it is impossible to please everyone. Event content and schedules are defined as best as we can and modified based on input ... no input, no change. It is therefore vital that you give your feedback and suggestions to the various community leads, so that we can at least try an add value to the majority of the community members.

6

What is the cost associated with community membership?

Communities vary. SA Architect charges no membership and most events, including the technology boot camps are normally for free for registered members.

7

What are the community surveys all about?

Blue 3d People Working Together To Hold Colorful Pieces Of A JigWe are attempting to gather sufficient feedback from the communities in South-Africa to be in a position to analyse and come up with concrete proposals to improve the overall technology awareness and readiness. Exposure to various environments, commonly preferred to as production trenches, make us believe that users of technology are often confronted with new technology and unable to take full advantage thereof ... often resulting in the abandoning of expensive technology, due to lack of productivity value. With early awareness, readiness and guidance, we believe that not only can supporting technologies, such as TFS, be used more effectively, but deliver value-add that is beneficial to the complete environment, including solutions created. Unfortunately feedback from the community has always been limited and we are therefore battling to gather sufficient evidence ... the surveys are just another way of trying to get hold of the invaluable information and feedback.

There are many more questions in our in-queue, such as "What is TDD and why bother", with many being technology or process specific and which will be covered in separate and focused blog posts.

Please give your feedback to the FAQ's above ...

Posted by willy
Filed under:

VSTS|TFS value-add for the future ... what are your thoughts?

We have for some time been trying to figure out why some teams using TSF|VSTS are cruising getting maximum value-add and benefit from the technology, while others are struggling to get to grips with the technology in their development environment. Is it a lack of understanding, a lack of planning or some other factors? At this stage we are focusing on the awareness and readiness of TFS|VSTS and would like to know what "YOU" believe would assist you and your colleagues the most in a TFS|VSTS based development environment:image
Clipart Illustration of Two Orange People On Blue Puzzle Pieces, ... thank's for your vote!

Posted by willy with 2 comment(s)
Filed under: ,

A day in ATC ... just a few pictures before "H-Day" ...

H-Day ... we will report on that on Monday. In the interim here are a few snapshots of a day in and around the ATC environment...

PB280003  PB280010 PB280017 PB280014 PB280024 PB280022 PB280013

... don't ask, just wait for Monday's "H-Day" post q;-)

Posted by willy
Filed under:

Zlatan guarding our PDC video drive in the Cape

If you are interested in the Microsoft PDC 2008 videos or have not yet subscribed to the blog of our infamous Zlatan ("the" MVP, alias "Bulldog") then it is time that you subscribe HERE and read his related blog post http://dotnet.org.za/zlatan/archive/2008/11/26/drive-with-pdc-2008-videos-arrived-in-cape-town.aspx.
Blue Man Filming a Movie Scene With a Video Camera in a Studio Clipart Illustration

Enjoy the movies...

Posted by willy

Rangers shipped Visual Studio Team System 2008 Team Foundation Server Management Pack for System Center Operations Management 2007 - English

Just picked up this notification from the rangers, and I quote:
Orange Person Standing On A Silver And Red Bar Graph Chart, Reaching Back To Assist Others Up To The Top Clipart Illustration Graphic

This site claims to have found the longest Microsoft product name “MWVUULNSE Microsoft Windows Vista Ultimate UPGRADE Limited Numbered Signature Edition”. We beat that with our “VSTS08TFSMP4SCOM07E Visual Studio Team System 2008 Team Foundation Server Management Pack for System Center Operations Management 2007 – English” J

It has been an amazing journey to develop and deliver this Ranger solution. We learned a lot while going through the QA and publishing process which involved almost a dozen roles from different groups. Each iteration took an average two weeks and we had to repeat four times to get all approvals.

Anyway, those who have been observing us know how relieved I am. Yes, we made it! This is a true extension to our flagship product Team Foundation Server. It is published on the official MP download public site. It can also be found as #3 new download on home page of Microsoft Download Center.

Customers who are familiar with MOM, can find this MP in the System Center Operations Manager 2007 Catalog on the official TechNet site. If you decided to test search, choose “System Center Operations Manager 2007” from the dropdown list and enter “TFS” as keyword.

This product is a significant improvement for monitoring and management of TFS 2008. Here is a brief summary:

Overview

The Team Foundation Server (TFS) 2008 Management Pack monitors exposed services of TFS. This management pack includes event rules and monitors. It is designed to proactively monitor quality and availability of TFS services and even automate recovery in some scenarios.

Feature Summary

  • Auto discovery of TFS components
  • Leverages ASP.NET MP and SQL MP
  • Implements containment hierarchy reflecting logical architecture of the Product
  • Implements a proper health model using Monitors
  • Contains tasks, diagnostic and recovery for certain failures
  • Events indicating service outages
  • Alerts indicating configuration issues and connected data source changes
  • Verification that all dependant services are running
  • Targeted running of BPA against TFS Servers from Operator Console
  • New monitoring capabilities can be easily added.

Well done Rangers, not only for the longest name q;-), but for a great product!

Posted by willy

Visual Studio 2010 CTP 2 - A close encounter with the Test Impact Analysis Feature

Continued from http://dotnet.org.za/willy/archive/2008/11/21/visual-studio-2010-ctp-2-6-7-the-exciting-world-of-construction-part-2-2.aspx ... where we had problems with this feature and postponed this topic ... finally the turmoil and dust has settled q;-)

Test Impact Analysis

The Test Impact View window is new in Visual Studio 2010 and allows you to keep track of which tests are impacted as you change code. I used my own project as I wanted to step through all the steps myself and as I had a few issues with the existing application ... instead of focusing on new features I was trying to understand and fix code ... EJECT, EJECT, EJECT ... re-focus.
image_thumb3

Initially, assuming we have made no code changes, the list of impacted tests is empty:
image_thumb6 

As soon as we start changing code, we notice which tests are impacted and should therefore be re-run:

image

CAUTION:
HippSign

Before this feature works, you must have a successful build with the following options enabled in the active test configuration for the solution:

  1. code coverage ... we are debating if this is crucial and I will update this blog once we have consensus.
  2. published impacted tests analysis 

In addition, you have to make the following two changes in your team build, other wise you will, like I, wonder why nothing happens. If you understand Spanish, my colleague Luis posted a great article http://www.lfraile.net/post/Como-funcionan-los-e2809cImpacted-Testse2809d-de-VS-2010.aspx which covers these changes. Either follow his screens or get someone who understands Spanish to give you some help.

  1. "Get Impacted Tests" ... ensure that you change the "enabled" from false to true.
    image_thumb2[1]
  2. "Publish the Test Impact Data" ... thanks to Luis I finally set the "enabled" property from false to true as well.
    image
  3. "Run MSTest for Project" ... ensure that the PublishTestImpact property is changed from false to true as well.
    image

... brrr, quite a few properties that need to be changed from default values to make this feature work.

Conclusion

Great feature for developers to keep track of the impact they have on the overall system and a great analysis too for the technical leads who want to establish the impact of potential changes on the overall solution stability. Hopefully future wizards will take care of all the various bits and pieces we need to set, before the magic starts working.

Blue Salesman Shaking Hands With a Client While Making a Deal Clipart Illustration

A feature that will deliver great productivity to developers and testers and assist us in creating a more stable, maintenance friendly and responsive solution development and maintenance.

Posted by willy
Filed under: ,

TFS 2010 CTP2 - remember to extend the Windows Server 2008 evaluation period in time

I have had to re-copy the 20G+ VM more than I would like to admit, always being caught by a crash or needed restart, after which the OS insisted on me activating the operating system or logging me off gracefully again.

Aftermat ... that's me wondering why I have gone into the world of bits and bytes, every time the activation feature scratched out my enthusiasm and forced me to re-think and hopefully remember the extsension of the evaluation period timeously the next time.

Gnnnnffffff ... to avoid frustration, please refer to http://support.microsoft.com/kb/948472 at your earliest convenience and the next time you are doing R&D on 2010 CTP2 extend your OS trial period.

PS: I have not forgotten about the Test Impact post ... still busy investigating an issue, which has also been complicated by the above events q;-)

Posted by willy
Filed under:

SA Architect looking for AV sponsors

imagesCA50ZV16The SA Architect community is looking for a sponsor for continued anti-virus software  for the SA Architect community server.

saa_Logo

If you are interested to get involved with SA Architect and assist the community with a sponsorship, then please get hold of any of the SA Architect leads to discuss.

Posted by willy
Filed under:

New quick reference poster - What should I use to create my Graphical User Interface?

My colleague, Herman Nolte (alias "the delegator"), has released a new quick reference poster covering a variety of user interface technologies and how to chose which one ... have a look at "5000 User Interface Technologies(pdf,jpg)" on www.saarchitect.net, under S.A. Architect > Publications > Value Add Information > Quick Reference Posters > BBD Technology Readiness. The poster is also available on www.drp.co.za outside of the MEA region.

5000 User Interface Technologies

Posted by willy
Filed under: ,

Technology Awareness and Readiness Survey for the South-African IT community - Please Assist Reminder

wantyou GARFIELD We, SA Architect, are busy discussing the challenges of technology awareness and readiness initiatives and have launched a short survey to get your feedback.

If you are in South-Africa, please grant us 3-5 minutes of your time and tell us how you prefer to be made aware of new technology, and how you prefer to prepare yourself for new and forthcoming technologies, by completing the survey here.

You can complete the survey anonymously ... but please give us your views, so that we can better serve the local community in the future!

The feedback will be used by SA Architect to formulate a proposal to technology vendors, such as Microsoft and will also be used by me when discussing awareness and technology challenges with the VSTS Rangers.

We NEED your views!

Blue And White Robot Sitting And Looking At His Own Hands In Amazement Glossy Robot Inspecting Himself

Posted by willy
Filed under:

Visual Studio 2010 CTP 2 (7/7) - Testing & Conclusion

Continued from http://dotnet.org.za/willy/archive/2008/11/21/visual-studio-2010-ctp-2-6-7-the-exciting-world-of-construction-part-2-2.aspx

After getting stuck with an issue around test impact analysis, I decided to place that in a holding pattern and conclude this series of the CTP2 evaluation regardless. The test impact analysis will be discussed in a separate post ... hopefully sometimes next week, if the weekend is going to be a successful one q;-)

Testing with Camano

We again fire up Camano to take a look at the world of testing, running a manual test and creating a bug as outlined in the CTP walk-through documentation. The key point to mention is that we closed Visual Studio, threw away the developer hat and are now assuming a tester role in the self-standing Camano environment.

image image

Setup the battle armour for the test, including:

  1. Action Log ... recording each user interface action that the tester performs
  2. Diagnostic Trace Collector ... collecting diagnostic events for the tested application
  3. System information ... recording system information for the computer running the test
  4. Test Impact Local Collector ... recording data used to determine which tests are recommended when code changes are made
  5. Video Recorder ... collection video recordings of the desktop for "visualisation of what really happened"
    image image

Run the manual test and save the test.
image ... launches the test runner ... image

The test runner allows us to (1) Test and Automate, for future replay and (2) gives us the manual test steps to complete using the (3) application to be tested.
image ... before we launch, we confirm settings ... image

We proceed to use the test runner. The (1) marker tells us where we are, the (2) Pass|Fail allows us to indicate success and the (3) toolbar has magical features, such as selecting and saving a portion of the screen, invaluable when analysing a bug.
image ... reporting a bug when we are not happy ... image ... note that test steps are automatically included in the bug report.

The developer now has no reason to say "cannot reproduce", "cannot rely that report matches the actual test" ... in short, the developer has all the ammunition needed to analyse and resolve the bug. This is a great feature and will not only reduce the tension between testers and developers, but through comprehensive and accurate issue recording and reporting, allow the developer to resolve the issues much quicker.
image
Team Of Four Golden People Holding Up Connected Pieces To A Gold Puzzle, Symbolizing Excellent Teamwork, Success And Link Exchanging Clipart Illustration Graphic ... working in harmony to complete the puzzle (solution).

Using Debugger History to debug after the meltdown

Now that we have a bug, we can switch our schizophrenic self from tester to developer and review the bug. Goodbye Camano, welcome Visual Studio.

First we find the bug in the list of active bugs:
image

The historical debugging log file gives us a great insight into what happened, what the state of the nation was at the time and in future, the product team is planning to add a lot more information to support the developer.

All in all, without going into much more detail, this is again an exciting feature, which we have covered to some extend in CTP here.

Conclusion

We have reviewed most of the features in CTP1 already, but can happily report that most issues we have had before in the previous CTP have been resolved. The architecture/modelling features are probably the most exciting to me, with the gated check-in and branch visualisation competing for second spot. Overall the latest community technology preview (CTP) has demonstrated great strides made in VSTS and we can really look forward to the next CTP, or BETA?!? As there is no go-live-license as yet, I will not make the same mistake by stating that I want and will implement this CTP2 in our research and development production environment ... "not allowed" q;-(
Blue Gangster Man Carrying Guns Clipart Illustration

Some question are unanswered at this stage, i.e. migration from 2005/2008 to 2010, coexistence and performance, but there is still lots of time for that.

Summary

My 'personal' rating, based on a 5 smiley (maximum) system ... accumulated and summed up across the posts:

Preview Walk-through document First time I am rating it four, not five, because the last walk-through was dependent on the previous. As my VM blew, then insisted on activation, I had to re-copy the 20+ gigs and restart. Then I spotted the dependency ...
Visual Studio Team System 2010 The CTP gremlins were with me again, 'cause Camano decided to abort and eject a few times. BUT it is a CTP and the experience, overall was very pleasant. Therefore I gave it four smileys.
Team Foundation Server 2010 TFS still purring patiently in the background, no issues to report.

Average evaluation rating so far is 65 smiley's out of 68, i.e. 4.78/5 score ... not too shabby!

Accumulative Wish List

  1. Ability to insert|paste images into the description and history fields of work items.
  2. Ability to select a list of source files or projects in a new view (list of graphical), which allows analysts to determine the impact on the test impact if specific projects or files re touched, without having to make code changes.

Concern / Observation List

  1. Performance and stability of the IDE is a concern, but as we are working with a CTP and functionality is currently dominating the priority list, I am convinced that reliability, stability and performance concerns will evaporate in the next CTPs/BETAs.
  2. Some of the modelling tools, especially architecture explorer, are very resource hungry. My 1.5GB ram virtual environment often had the gulp ... telling me to "go for coffee, while I give the external drive a beating" ... processing different viewing modes.
  3. Running all of TFS 2010 and VSTS 2010 on the same virtual machine has proven to be a patience tester ... if you can give the VPC more than one processor and more than 2GB on Hyper-V, then that is the way to go. Running it in Virtual PC with 1.25GB or 1.5GB is not a pleasurable experience.

We still have one last post to go, "Visual Studio 2010 CTP 2 - A close encounter with Test Impact Analysis", which will document our excursions and findings with the test impact analysis feature.

Posted by willy with 2 comment(s)
Filed under: ,

Visual Studio 2010 CTP 2 (6/7) - The exciting world of construction Part 2/2

Continued from http://dotnet.org.za/willy/archive/2008/11/19/visual-studio-2010-ctp-2-6-7-the-exciting-world-of-construction-part-1-2.aspx ... this is part two of two, focusing on construction.

Tour of VSTS 2010

Test Driven Development (TDD) , Code Analysis

... covered in part 1.

Program interruption

...while working with the test impact analysis, using my own test solution and team project, I noticed the following:
image

Notice ...

  1. The build log, the duration and in general the amount of information contained in the build report
  2. The legend, top left, which shows the build progress and past results graphically.
  3. The activity log, showing the overall position within the build.
  4. The menu ... and much more.

WOW!

Sorry, we can now get back to the regular program ... sorry for the deviation!

Test Impact Analysis

... my feedback on this is postponed and will be included in a separate post, as I am busy investigating some features and issues around the feature ... as soon as I understand my own mess, I will advise.

Manual test Cases

Camano is back, stronger than before, allowing us to organise tests into test suites and introducing structure and control to the test environment. Here are a few screen shots of the Camano environment:

image image

To add a test case we select "new test case":
 image

We then complete the details of the test case, including manual test steps:

image

... and link it to a user story:
image image

image ... as shown the user story (1) and the test cases (2) are visible to the solution stakeholders through the more classical interfaces, i.e. Team Explorer, as well.

The Camano product is one to keep an eye on. I am not a typical tester and am therefore more excited about other features, such as the next q;-)

Branch Visualisation
Winning Team Of Blue Figures Holding Hands And Standing In A Circle Around Their Golden Championship Trophy Clipart Illustration Image .

The final visualisation model has finally entered the picture, the "branch visualisation" diagram or rather diagrams.

image ... find a work item, right click and select Track Work Item.

image ... select the relevant branches ... for the demo we selected all.

Now watch with amazement, because the long awaited visualisation of branches materialises in front of our eyes (click on the image for a larger view):

Track on timeline view

Track on Hierarchy view

Highlight Merges to Source branch

image

image

image

... then comes more magic. Select a changeset and drag to another branch, i.e. INTEGRATION -> MAIN as shown:
image 

Which starts a merge process:
image

Once complete we can see the completed merger visually off course:
 image

This is the feature that I am getting really excited about in this post, because we can finally visualise the branching world, which will allow more teams to effectively use branching and merging without having to be terrified of an invisible branching hell.

Gated Check-in
CLIPART_OF_12401_SM

Finally we must mention the new build type, that was unfortunately not in CTP1, the Gated Check-In:
image

Any check-in will be stopped by the GATE, notifying the user that check-ins must be verified before being processed:
image 

In the background, the gated check-in environment creates a shelveset:
image

Starts a build and if successful, automatically checks-in the changes:
image

Note that the options of the Gated Check-In allow preservation of pending changes locally and a bypass (not recommended) of the validation:
image

Gated Check-In ... a great feature, but one I need to mull over a bit more before getting too excited q;-)

Diagram | Model Summary ... we have completed the list

Diagram Usage
Activity Visualise the workflow through a system
Use Case Visualise the interaction between users (actors) and the system
Sequence Visualise the sequence of interaction between users (actors) and the system
Component Visualise the functional division of a system
Logical Class Visualise the classes and interfaces, as well as relationships in the system
Architecture Exploration Visualise the various pieces of a system and their dependencies
Layer Visualise the software assets that provide behaviour into groups, called layers and validate architecture
Branching Visualise the hierarchy and timeline of branches

Summary

What is exceptionally exciting is the fact that Test Driven Development?Design (TDD) is now feasible and combined with the branch visualisation modelling, the 2010 CTP2 development environment get my thumbs up. I believe that there is a need for serious guidance and "101 how to use" documentation, because the functionality and options are literally exploding in our faces.

My 'personal' rating, based on a 5 smiley (maximum) system ...

Preview Walk-through document Ditto.
Visual Studio Team System 2010 With the gated check-in and especially the branch vitalization taking on shape I am tempted to give five smiley's. I will, however, resort to a four as I have simply not had time to explore all the features and will need a lot more time and documentation to actually understand all the features.
Team Foundation Server 2010 The server/services of TFS have behaved themselves very well, even under the most difficult circumstances ... VPC, little memory, ... at this stage full points.

Average evaluation rating so far is 52 smiley's out of 55, i.e. 4.73/5 score

Accumulative Wish List

  1. Ability to insert|paste images into the description and history fields of work items.
  2. Ability to select a list of source files or projects in a new view (list of graphical), which allows analysts to determine the impact on the test impact if specific projects or files re touched, without having to make code changes.

Concern / Observation List

  1. Performance and stability of the IDE is a concern, but as we are working with a CTP and functionality is currently dominating the priority list, I am convinced that reliability, stability and performance concerns will evaporate in the next CTPs/BETAs.
  2. Some of the modelling tools, especially architecture explorer, are very resource hungry. My 1.5GB ram virtual environment often had the gulp ... telling me to "go for coffee, while I give the external drive a beating" ... processing different viewing modes.
  3. Running all of TFS 2010 and VSTS 2010 on the same virtual machine has proven to be a patience tester ... if you can give the VPC more than one processor and more than 2GB on Hyper-V, then that is the way to go. Running it in Virtual PC with 1.25GB or 1.5GB is not a pleasurable experience.

The next post will explore the new Testing features ...

Posted by willy with 3 comment(s)
Filed under: ,

PDC2008 Videos ... arrived!

After dealing with a frustrating delay at DHL South-Africa, we have finally received the external drive sent by Martin Woodward (MVP Team System) containing 202 videos. If you want a copy, please contact the SA Architect leads (Zayd, Henk, Robert or I) ...preferably bring your eternal drive and we can copy the media while having a chat over coffee.

MVP_Horizontal_FullColor

Thanks Martin for sending the drive! Team System MVPs "ROCK" as we all know ... a close family, even though we are scattered across the planet.

Posted by willy with 3 comment(s)

Visual Studio 2010 CTP 2 (6/7) - The exciting world of construction Part 1/2

Continued from http://dotnet.org.za/willy/archive/2008/11/14/visual-studio-2010-ctp-2-5-7-reviewing-a-solution.aspx.

While it is tempting to dig into all the Visual Studio Team System features, applicable for developers,  I will limit my excursions to the areas covered in the walk-through documents from Microsoft, covering the following worlds:

  • Test Driven Development
  • Code Analysis
  • Test Impact Analysis
  • Manual test Cases
  • User Stories and/versus Test cases
  • Gated Check-in

Again we will skim these features and give our view from as seen from our trenches environment ... in other words we will analyse the features critically based on our environment, requirements and capabilities.

Tour of VSTS 2010
Blue Man Riding a Bicycle Clipart Illustration

Test Driven Development (TDD)

With Test-Driven development (TDD), often referred to as test-driven design (TDD) ... {TDD versus TDD?!?!? Can I raise my hatred for TLA's (three lettered acronyms) again} ... we develop a solution by developing in rapid cycles of writing test code and building supporting code until the test passes. A real brain bender for some, but for many the only way to develop a solution these days.

Recent versions of Visual Studio did not really support the notion of TDD and we were interested to see what 2010 brings to the party ... let's step through the walk-through quickly:

  1. Setup the Test Execution options, limiting test results to one.
    image
  2. We create a simple unit test project, implementing the instructor as shown. As we have no code, the IDE gets very annoyed with us, (1) underlining stuff in red ... but, it also gives us a (2) smart tag with the option of generating the code:
     image
    We set the project location, which is not within the test project (which is the default), but instead in our production code project named PaymentSystem:
     image
    ... clicking OK generates the base code for us ... cool ... so far so good q;-)
  3. We add extensions to the test code, again typing hypothetical code references, smiling at the red underlining, selecting the smart tag and in this case generate a method stub. The stub will create a stub method with the standard NotImplementedException exception being thrown.
    image
  4. Following TDD practices, we run the unit test and welcome the failure ... not oten that we are happy about a failure q;-) ... we warned that TDD is a brain bender at times.
    image
  5. Implement the stubbed method until the test passes.
  6. Repeat steps 3 to 5 until all business logic defined by the unit of work ( i.e. work item) has been implemented and successfully unit tested.
  7. Four Blue People Standing in a Circle and Holding Hands For Teamwork and Unity Clipart Illustration ... it appears that the TDD support is finally emerging and that we can finally embrace the test-driven development/design concepts using Visual Studio.

Code Analysis

Nine out of ten project teams using Visual Studio in our environment either do not know what code analysis is all about or feel that it is to time consuming and noisy to add any real value to the overall project. While the former is frustrating and puzzling, especially as we have and are actively evangelising code metrics, code analysis and code profiling, the latter is understandable. Code analysis has always been a "oh my dear" shocker when run against most code, including Microsoft generated code and patterns and practices code ... so much so, that even us had  difficult time motivating the value thereof.

Rule sets allow us to categorise analysis ...
image

In the current CTP, however, we find the concept of rule sets and the default analysis based on "Minimum Recommended Rules", rather than everything, as a great productivity step in the right direction. The default focuses on critical issues, such as security, instability and design hiccups, which are a fundamental check that should be enforced or at least promoted in all projects.

Looking at the minimal code analysis ...
image 

Although the code analysis will still be perceived as unnecessary noise by many, I suggest that you trial the enhancements and consider code analysis as one of your tools in your toolbox. Not easy to motivate, but definitely a great value-add.

Test Impact Analysis, User Stories and/versus Test cases, Gated Check-In

... covered in part 2 ... next post. Trying to keep posts to a manageable size q;-)

The next post will continue with part two of construction features ...

Posted by willy with 1 comment(s)
Filed under: ,
More Posts Next page »