To make the dressing, in a small bowl add the olive oil, lemon juice, vinegar, dill weed and black pepper. Whisk to mix evenly. Set aside.
Fill a large pot 3/4 full with water and bring to a boil. Add the pasta and cook until al dente (tender), 10 to 12 minutes, or according to the package directions. Drain the pasta thoroughly and rinse under cold water.
In a small saucepan, cover the asparagus with water. Bring to a boil and cook only until tender-crisp, about 3 to 5 minutes. Drain and rinse under cold water.
In a large bowl, add the pasta, asparagus, tomatoes, green peppers, onions and dressing. Toss to mix evenly. Cover and refrigerate. Serve chilled.