Heat the olive oil in a saucepan over a low heat. Stir in the onion, garlic, carrot and celery and fry gently for about 15 minutes, or until softened and translucent but not browned.
Tip in 2oz of the beans and gently crush the beans with the back of a spoon, roughly breaking them up.
Pour in the broth, increase the heat to high and bring to the boil. As soon as the broth is boiling, tip in the pasta, the remaining beans and the tomatoes. Boil for 6-10 minutes, or until the pasta is cooked al dente. Season the soup, to taste, with salt and black pepper.
Remove from the heat, stir in the chopped parsley then ladle the soup into warm serving bowls.