Embora eu concorde, em princípio, com a idéia de que a classificação é Business Logic, porque, ao dividir sua origem, você terminaria com algo como "O cliente gostaria que a página do produto fosse exibida com as imagens classificadas por data", então fica claro que a ordem de classificação dos dados geralmente não é arbitrária - mesmo se não houver classificação, pois ainda é uma decisão comercial por omissão (uma lista vazia ainda é uma lista).
MAS ... Essas respostas parecem não levar em conta os avanços na tecnologia ORM, só posso falar em relação ao Entity Framework (vamos evitar uma discussão sobre se isso é verdadeiro ORM, esse não é o ponto) da Microsoft como é isso que eu uso, mas tenho certeza de que outros ORMs oferecem funcionalidade semelhante.
Se eu criar uma exibição fortemente tipada para uma classe de produto usando o MS MVC e o Entity Framework e houver um relacionamento de chave estrangeira entre a tabela Product e Image (por exemplo, FK_Product_Image_ProductId), seria possível classificar rapidamente as imagens durante a exibição usando algo parecido com isto na exibição:
@foreach(Image i in Model.Image.OrderBy(e => e.DisplayOrder)){ //etc etc... }
Houve menção a uma camada específica de lógica de negócios, que eu também uso para executar 80% da minha lógica de negócios, mas não gravarei funcionalidade de classificação na camada de lógica de negócios que imite algo que vem pronto para uso do Entity Framework.
Acho que não há uma resposta correta para essa pergunta, além de dizer isso; você deve abstrair lógica de negócios complexa sempre que possível, mas não ao custo de reinventar a roda.