Is it wrong to use Agile when clients’ requirements don’t change at all?

I have seen a lot of posts recently saying that one of the major reasons why Agile is used is because clients often change the requirements.

However, let’s say the clients do not change the requirements often.
In fact, the clients have firm requirements though might be a bit vague (but nothing unreasonably vague), but I use Agile anyway.

The reason why I employ Agile is because the software is complex enough that there are details, problems that I wouldn’t recognize until I actually face them.
I could do a full scale heavy planning approach like waterfall, but then it would take a few months to finalize all the high level design and low level coding signatures. There is a very specific, fixed architectural design for the system though.

My question is: Would this be considered as bad, cowboy coding, anti-pattern, etc..?
Must we employ waterfall and plan as much as possible in great details before we start coding when requirements are stable instead of this ‘let’s do it’ mentality in Agile?

EDIT: The major point here is that: we CANNOT blame the clients for changing requirements. Assume the clients pointed us to a very concrete problem, give us a wish list in very reasonable details and leave us alone (ie the clients have their own productive things to do, don’t bug them any more. Only demo to them near the end when you have a minimum working prototype). Would it be wrong to use Agile in this scenario?

10

Would this be considered as bad, cowboy coding, anti-pattern.

Short answer: no. Doing “agile” correctly does not mean “no planning”, it does mean not to overanalyse things.

one of the major reasons why Agile is used is because clients often change the requirements.

That’s an oversimplifying statement. “Changing requirements” is also about how the team’s understanding of the requirements change. And it is about how the customer’s priorities about the requirement change when he actually sees a few releases of the software.

In fact, “agile” works IMHO best exactly in the situation you describe – the client has a good knowledge about his overall requirements, you can write a general plan from it, fill your backlog with lots of “user stories”, and have already enough information to choose the right system architecture. The short iterations of an agile development strategy then will help to make the “vague requirements” more precise, with lots of feedback if you are still going into the right direction. It will also give you early feedback about the real effort and costs (which is something you can still fail in a waterfall approach, even if you know every single bit of requirement in detail).

2

Using agile in this situation is still a very good idea. There are many benefits to agile, only one of which is regular feedback from the customer and the ability to respond to changing requirements as you mention.

One of the main reason waterfall projects are notorious for failure is the ‘nearly done’ problem – testing produced piles of bugs at the end, leaving an unreleasable product and no idea whether it needs another two days or two years to fix the outstanding bugs. Agile removes this risk entirely. If an agile project is over-running, you can still deliver a working version which:

A) Proves to the customer you are actually nearly there through demo’s (“All these stories are done, we can do the last few if you want”) and some more time will get exactly what they want.

B) Potentially is good enough for them to be happy anyway and release.

To me, removing this risk of complete failure is enough reason alone for a business to move to an agile development process, the ability to build better software than initially planned is icing on the cake. As mentioned in other answers, those ‘concrete’ requirements are often still surprisingly malleable.

5

Agile is ideal if you need a frequent feedback loop with the client. This can be because the requirements change frequently, but it could also be for other reasons.

On the other hand, Agile can work equally well if the requirements are fully stable and the client expects only a single big-bang delivery, but you might have to adapt things a bit for the amount of involvement that the client expects to have during the project. This means that the Product Owner role must be filled from within your own organization and that person must have enough mandate from the customer to make decisions.

3

You can always split the big release into smaller releases(sprints) and ask your client for feedback. This way you are sure that you’re doing the right thing and the client can keep track of your progress.

If there is something wrong, you can offer your client the chance to correct you sooner, which is very good. It is better to correct your mistakes as soon as possible, rather than show him a bullshit at the end and try to fix it when you don’t even know where to start.

1

Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa Dịch vụ tổ chức sự kiện 5 sao Thông tin về chúng tôi Dịch vụ sinh nhật bé trai Dịch vụ sinh nhật bé gái Sự kiện trọn gói Các tiết mục giải trí Dịch vụ bổ trợ Tiệc cưới sang trọng Dịch vụ khai trương Tư vấn tổ chức sự kiện Hình ảnh sự kiện Cập nhật tin tức Liên hệ ngay Thuê chú hề chuyên nghiệp Tiệc tất niên cho công ty Trang trí tiệc cuối năm Tiệc tất niên độc đáo Sinh nhật bé Hải Đăng Sinh nhật đáng yêu bé Khánh Vân Sinh nhật sang trọng Bích Ngân Tiệc sinh nhật bé Thanh Trang Dịch vụ ông già Noel Xiếc thú vui nhộn Biểu diễn xiếc quay đĩa Dịch vụ tổ chức tiệc uy tín Khám phá dịch vụ của chúng tôi Tiệc sinh nhật cho bé trai Trang trí tiệc cho bé gái Gói sự kiện chuyên nghiệp Chương trình giải trí hấp dẫn Dịch vụ hỗ trợ sự kiện Trang trí tiệc cưới đẹp Khởi đầu thành công với khai trương Chuyên gia tư vấn sự kiện Xem ảnh các sự kiện đẹp Tin mới về sự kiện Kết nối với đội ngũ chuyên gia Chú hề vui nhộn cho tiệc sinh nhật Ý tưởng tiệc cuối năm Tất niên độc đáo Trang trí tiệc hiện đại Tổ chức sinh nhật cho Hải Đăng Sinh nhật độc quyền Khánh Vân Phong cách tiệc Bích Ngân Trang trí tiệc bé Thanh Trang Thuê dịch vụ ông già Noel chuyên nghiệp Xem xiếc khỉ đặc sắc Xiếc quay đĩa thú vị
Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa
Thiết kế website Thiết kế website Thiết kế website Cách kháng tài khoản quảng cáo Mua bán Fanpage Facebook Dịch vụ SEO Tổ chức sinh nhật