The Pros and Cons for Agile Development