Heat oil in a non-stick pan. Add the shallot, garlic, pepper, and mushrooms, and sauté until they begin to soften. Include the hamburger and separate as you cook until the meat is caramelized. Add the tomatoes and basil. Simmer while the pasta cooks.
Cook the penne pasta as per package directions. Drain and return to the pot. Toss with the beef sauce.
Spot one portion of the pasta in the base of a casserole. Top with 1/2 of the parmesan. Top with remaining pasta. Sprinkle with mozzarella and the remaining parmesan.
Bake for 20 minutes or until the cheddar tans and the casserole bubbles.