软件开发方法的特点与选择