FitNesse is an open source software testing tool which can be used to do acceptance testing in a lot of different scenarios. It was originally developed to test java applications but can also be used with some modifications with the .NET framework. Since the documentation for using it in .NET is widely spread across the web I decided to write down some of the information that I have found useful in a few posts. Another useful resource of information is Gojko Adzic’s book about Fitnesse. This post sums up briefly what you need to do in order to
* … install and run FitNesse
* … develop the integration layer
* … create a test page
Microsoft’s .NET Framework Version 4 includes a version of the Entity Framework, which allows two ways of creating your model: Database First and Model First. Database First was already available for the previous version of Entity Framework. It means that Visual Studio’s Wizard is used to point to a database and Entity Framework generates the model classes and mappings out of the database tables. Very often the domain model looks different than the data model, which means either developing another mapping layer between the generated classes of Entity Framework or a lot of customization on the generated classes themselves. For this reason it is also possible to use the Model-First approach, which allows you to use the graphical designer and design your model first and then let entity framework generate the database schema and mappings. Lately another approach has been introduced as a CTP: Code-First. Instead of using the designer, Code-First allows you to code your domain with POCOs and persist this plain model using Entity Framework. This article compares Entity Framework 4 Code-First CTP with NHibernate in terms of usability (not performance-wise) using examples of domain driven design concepts.
This post is short summary as well as a collection of ideas and impressions of the Lean and Kanban gathering in Antwerp organized by Agile Minds. According to David Anderson (one of the speakers) it has been the biggest conference on this topic so far: agilility is spreading in software development ( let it be Scrum, Kanban or any other agile methodology) and it is also growing on enterprise level.
Read more …
Software architecture and design has a major impact on success or failure of software projects. How can a good architecture be classified? Which are the architectural key features that decide if a project succeeds or fails? How can architecture support an agile development process such as Scrum?
This post explores attributes of software designs that are required by agile development processes. Furthermore it discusses the differences between classical big up-front designs and the agile way of doing it.