AR отлично подходит для CRUD, а вот select запросы лучше всего делать посредством helper объектов и dataset, используя обычный SQL. Это распространенная практика.
От бойцовского клуба и прочих клонов проект очень далеко ушел. Т.е. там полноценная РПГ, с пошаговыми боями на карте и прочими штуками :) В рунете лично я аналогов не видел, хотя, признаюсь честно, не особо слежу за такого рода проектами.
Если убрать мусор, получится:
SELECT * FROM products
LEFT OUTER JOIN product_images ON product_images.product_id = products.id WHERE (sub_category_id = '1')
ORDER BY sub_category_id, products.position
Не вижу ничего страшного и тем более сложного в таком запросе.
Несмотря на то, что в RoR лучшая по мнению многих (я в их числе) реализация AR, сам паттерн не является "серебрянной пулей". M:N отношения без вспомогательного класса отобразить не получится, с наследованием классов, для которых AR является базовым, уже возникают проблемы. С действительно сложными запросами (с having и группировками) тоже не все гладко. В общем решение очень хорошее, но не стоит относиться к нему с фанатизмом.
Это не мешает работать нескольким командам над одним проектом :) Т.е. насколько я понимаю, имеющихся у вас людей необходимо разделить на группы по 6-7 человек (скажу сразу же: у меня такого опыта нет, у нас работает до 10 "техников" в одной команде). Кстати, в этой же статье есть весьма внушительный список компаний, которые применяли в своих разработках Scrum. Думаю, они решили проблему масштабирования :)
Там есть бесплатная версия с лимитом 5 пользователей, хватит для знакомства. Система сделана очень качественно и удобно (мы используем mantis как багтрекер, теперь туда заходить совсем тошно после Acunote :)
Вы не путаете с Crystal Clear? :) Кстати, Crystal Orange, как утверждает Коберн, может применяться в командах до 40 человек. В принципе практически все agile методологии можно без труда внедрить в среднего размера команды (10-30 человек) и разрабатывать весьма сложные проекты.
У любой методологии есть сильные и слабые стороны. Огромный плюс agile методик в целом и XP в частности заключается в том, что они идеально подходят для проектов с постоянно меняющимися требованиями т.е. как раз для веб-девелопинга.
Agile методология, можете почитать здесь. Мы используем систему управления проектами, которая поддерживает scrum - очень довольны. Оперируя идеальными часами и имея постоянную команду можно довольно точно прогнозировать сроки по спринтам и проекту в целом.
SELECT * FROM products
LEFT OUTER JOIN product_images ON product_images.product_id = products.id WHERE (sub_category_id = '1')
ORDER BY sub_category_id, products.position
Не вижу ничего страшного и тем более сложного в таком запросе.