CategoryAgile

Agile UI Development in .NET: Presenter

A

Next in my series (table of contents) on agile UI development in .NET is the presenter. The presenter is responsible to drive the UI workflow. This means that the presenter is the control center to react to:

events from the model. For example that data has changed.
events from embedded presenters
calls from parent presenter
calls from UI commands

Agile UI Development in .NET: UI Commands

A

In this post, we are going to have a look at UI commands. UI commands are responsible for reacting to user input, for example the send button click in the sample I use throughout this series of agile user interface development in .NET series. For other posts in this series look here: table of contents.
We have seen in the last post that the view binds a command to the send button that it gets from the view-model:

Agile UI Development in .NET: View

A

Last time we started looking at sample code with the view-model class for the UI to send messages on channels (table of contents). In this post, we continue with the next responsibility, the visualization. The View The view is responsible for visualizing the domain model to the user. We have seen in the last post that the view-model provides a simplified mini-model to the view. That means that the view does not have to care about the domain model as a whole with all its interactions and...

Agile UI Development in .NET: View-Model

A

After the posts (table of contents) in which I covered why we need an agile UI design pattern, it’s big picture and the needed tools, I start digging into sample code. I’ll show in each post a small part of the whole picture. If you want to get all at once then you find the source of all samples at . ProCollEE is my playground to experiment with WPF and UI design. Lets start Yes, let’s start. But where? There is one UI design pattern – presenter first (link) – that...

Agile UI Development in .NET: Tools

A

In the last post, I showed you the big picture of my UI design pattern. Before I can start showing you sample code for the different parts, I need to introduce some tools, which are used to glue all the tiny parts together:

Dependency Injection
Design By Contract
Synchronous and Asynchronous Communication
Test Driven Development

Agile UI Development in .NET: The Big Picture

A

In the last two posts of this series (table of contents) I explained the need for a new UI design pattern: changeability and extensibility.
In this post, I’ll throw a big diagram in your face without much explanation. The reason for this is that I want to give you the big picture before I start digging into details in the following posts of this series. You can always come back here to see where we are.
The Big Picture

Agile UI Development in .NET: UI Responsibilities

A

In the first post in this series (table of contents) I explained why agile software development influences the choice of the UI design pattern. For short, changeability and extensibility are must have characteristics. In this post, I’ll show you the corner stones of a UI design pattern that fulfills these needs. Principles of Object Oriented Software Design – SOLID One of the best known set of principles to achieve my goal of a UI design pattern that is changeable and extensible is...

Agile UI Development in .NET: Introduction

A

There are a lot of patterns available for UI architecture: Model-View-Presenter (MVP), Model-View-Controller (MVC), Passive View, Model View View-Model (MVVM) and some more. However, none does really fit my needs in an agile project. In this series, I’ll show you first why they don’t work for me and then I’ll try to evolve a pattern that matches the special needs in agile software development. Why is Agile Software Development different? In agile development, we start little...

Fight for your right to TDD!

F

You want to use Test Driven Development but your fellow developers refuse it because TDD is for nothing then it’s time to convice them. If you need some good arguments then take a look here:
Robert “Uncle Bob” Martin compiled a list of counter-arguments against the most common anti-TDD arguments

TDD Triage
Echoes from the stone age
TDD Derangement Syndrome

Happy reading and argueing…

Scrum certification exam needed

S

Important announcement for all those certified scrum masters out there. The scrum alliance recently changed their policy of the certification process for the certified scrum master. Thanks to Ken Schwaber taking the exam and therefore prove that the individual was able to memorize the scrum basics on a theoretical basis is now more important than the experience of living and breathing scrum… Effective 1 October 2009, certifications will be valid for two years from the date when the CSM...

Recent Posts