Contact Me
Software Factories:
|
Well it's been six months since I last posted an entry, so let me begin by reassuring my readership ( all two of them), that I have not been hit by a bus or anything like that. Things have been really busy since I started in my current role, and I just haven't found the time to post any new entries. It's a shame too since my unique visitor count was growing steadily as I posted, but obviously those figures have now since dropped off. The lesson to learn from this is that if you plan to setup a blog - post to it! So what has taken up all my time? Well, those who are connected via LinkedIn can see that I started a new role at Confused.com back in January. This has been a fantastic (but busy), opportunity from a development and technology perspective since I'm being exposed to the very latest Microsoft technologies, including the .NET 3.0/3.5 stack (including WCF and WF), and ASP.NET MVC (we're onto Preview 3 already). The most interesting aspect of my current role however, is my involvement with the adoption of Team System and Team Foundation Server. Confused.com is adopting Scrum as an agile methodology, and we've all been involved in slowly introducing agile to the business. To support Scrum in Team System, I have developed an appropriate Process Template from the ground up. This was easily achieved using the Process Template Editor that is part of the Team System Power Toys. The principal reason for developing a custom Process Template, rather than using one of many free versions (such as Conchango's Scrum for Team System), is that we see integration opportunities with other processes and tools already being used within the organization. A custom Process Template will support these integration opportunities much more easily than trying to shoe-horn a third-party template. Read More...
[ add comment ] [ 0 trackbacks ] permalink
Introducing Partial Methods (that's right... methods)
Since the early betas, and now with the final RTM release of Visual Studio 2008, developers have the opportunity to begin exploring some new language features. Perhaps the most talked about language feature is LINQ (Language INtegrated Query), that provides a ubiquitous way in which to query data sources right from within the language itself, whether it be memory resident objects, XML, or relational data. There is however, one new language feature that has not been publicized that much: Partial Methods. By now, most developers will have encountered partial classes and seen their benefits. They provide a means by which code-generation can be easily implemented and managed. Authored code and generated code can exist side-by-side in separate files, and the compiler will perform the task of stitching everything together during compilation. The Form designer provides a good example of this separation in action. Thinking beyond the Form designer however, it is safe to assume that many of the motivations for partial classes was driven by Microsoft's Software Factory thinking. Code that is generated by a DSL for example, can be easily interwoven with code provided by the developer using the DSL. There is no longer the need to mark areas of a source-file as protected from the code-generator, as was often the case in the past. The value gained from partial classes is clear, but not immediately obvious for partial methods. Partial methods are made up of a method-declaration using the partial keyword, and an optional method-body. The method can accept parameters, including parameters modified with the ref, this, or params keyword. Methods must also be private and must return void, and more significantly, they can only be declared within a partial class. The following example demonstrates a partial method declaration (in bold). Read More...
[ add comment ] [ 0 trackbacks ] permalink
T4 Template Editor for Visual Studio 2005/8
Clarius have released a new T4 Templating Transformation Toolkit that provides a better experience when working with T4 templates. Although T4 templates are predominately used for Guidance Automation and DSL work, with the T4 components being included out of the box in Visual Studio 2008, it is likely that more and more developers will begin using them for their own code-generation work. Well worth taking a look.
[ add comment ] [ 0 trackbacks ] permalink
Had a think... time to re-think the adventure
To all those who have subscribed to, or regularly read my blog (there's not many I know but one can hope): I have decided to abandon my attempt in building a Software Factory for 3-tier Enterprise solutions. I have decided to do this because of two principal reasons: The adventure was always supposed to be about getting exposure to the tools used in building Software Factories. I have realized that the sheer size and scope of 3-tier Enterprise applications will most likely interfere with that focus. I had intended to try and conceptualize the underlying Enterprise Framework, but this will be very difficult to do, plus it would detract from the product-line paradigm. One day I may also want to begin talking about and presenting material on what I have learnt during the adventure. This will typically be with my own clients, but as the topic becomes more prominent, I may also look into public speaking. Again, the size and scope of 3-tier Enterprise applications would make this much more difficult. Despite this, I am not abandoning my adventure with Software Factories. Instead I am going to select a domain that is much smaller and self-contained, and continue the adventure with that. I already have a few ideas and I'll post more over the next few days. I hope that you will agree that by adopting a smaller domain, the focus will remain on the tools themselves, and more importantly, the value that they may bring to the process. While pondering my decision, I came across the NMVP Enterprise Factory that has been started on CodePlex. I will take a look at this project soon and possibly even try and contribute to it (if the project owner is willing). I will post more on that if it happens too. Please note: I have removed some of the posts in the Software Factories category because they are no longer relevant. I will continue to add information about my adventures with Software Factories to the same area on the wiki. I really hope you continue following my adventure, albeit a slighty new one.
[ add comment ] [ 0 trackbacks ] permalink
How to add Guidance Automation recipes to arbitrary Visual Studio menus
If you want to place a Guidance Automation recipe virtually anywhere within Visual Studio's menu structure, then here's a great tip for finding those menu Guids and Id's.
[ add comment ] [ 0 trackbacks ] permalink
Articles on building and packaging Software Factories
Jezz Santos has announced a mini-series of articles that will discuss the packaging and building of Software Factories. The first article discusses how the various assets of a Software Factory, such as the DSL's and Guidance Automation Packages, can be combined into a single MSI installer.
[ add comment ] [ 0 trackbacks ] permalink
Integration Scenarios between DSL and GAT
I found this useful article on MSDN regarding scenarios for integrating DSL's and Guidance Automation Packages: Guidance Automation Toolkit and Domain-Specific Language Tools for Visual Studio 2005: Integration ScenariosThis will most likely come in handy later on.
[ add comment ] [ 0 trackbacks ] permalink
Adventures with Software Factories
Updated November 15, 2007This post represents the first, in what I hope, will become a series based on my adventure in developing a Software Factory. I have been very keen on the concept of Model Driven Development ever since I first started reading up on UML 2.0, and kept encountering this other acronym - MDA. I was then fortunate enough to get involved in an MDA pilot project, securing some valuable experience and exposure with the concepts, and also convincing myself that this approach to software development was well worth looking into. Shortly after, I came across Microsoft's Software Factory initiative (which is essentially a form of Software Product Line Engineering). I read, what is fast becoming, the seminal book on Software Factories, and have also pre-ordered the next book from Jack Greenfield which I'm hoping will be more concrete and less theoretical. I can rate the prior book very highly considering the number of times I have taken a highlighter pen to its paragraphs, and the number of Post It notes sticking out of its covers. I think all Developers, Architects and Software Development Managers should keep a close eye on these methods. For me however, I think it's about time I started getting practical with Software Factories. I think the tools and technologies are mature enough to begin developing with - don't get me wrong, they still have a long way to go, but like the MDA pilot project - getting some experience and exposure with the concepts and tools can only be a good thing.
[ add comment ] [ 0 trackbacks ] permalink
|
| « |
February 2010 |
» |
| Mon | Tue | Wed | Thu | Fri | Sat | Sun | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | | 8 | 9 | 10 | 11 | 12 | 13 | 14 | | 15 | 16 | 17 | 18 | 19 | 20 | 21 | | 22 | 23 | 24 | 25 | 26 | 27 | 28 | | | | | | | | | 09/09/10 |
|