Soak the beans in water overnight. Drain. Discard soaking water.
Place beans in a large soup pot.
Cover with about 3 quarts of water,.
Place pot over medium high heat and bring to a boil. Reduce heat to low. Simmer for about 2 hours.
Fry the bacon until crisp. Drain the excess fat. Set aside.
Pour olive oil into a skillet. Add onions, celery and carrots. Sauté until translucent. Remove from heat and set aside.
When the beans are soft, remove one third of them. Place removed beans, with a bit of the cooking water, into a blender (work in batches, if needed) and purée. Return puréed beans to the cooking pot (this will thicken the soup).
Add cooked vegetables, tomatoes, prepared bacon, salt and pepper. Mix well. Continue to cook over low heat.
Prepare pasta according to package directions. Drain. Add it to the soup. Mix well.
When ready to serve, ladle soup into large bowls.
Sprinkle with cheese and parsley. Serve hot.