Several years ago, I was a developer in a travel reservation aggregator. Our mission was to pull flight and hotel data from a bunch of cryptic reservation platforms, and provide it to other companies via an API library – for a fee. That was before companies like Expedia standardized such things.
We started with simple methods like getFlightLeg() or addPassengerName(), each performing a small, well-understood function. But our customers wanted bigger, more encompassing services that would “do it all.” Soon, we’d “evolved” into a handful of über services, black boxes like createBookingFromScratch (not a real name). In one call, it could create an account, all the passengers, reserve multiple flight legs, seats, hotel, you name it. It even submitted payment.