Какие есть лучшие мировые практики по организации структуры документов (папок и файлов) IT проекта?
Здесь есть 3 задачи, которые решаются двумя уровнями (человеком и системой).
Теперь, по-порядку:Задача 1: разработать более понятную структуру документов, чем этот набор,Задача 2: и сделать так, чтобы при создании нового документа каждый член команды понимал в какой папке его заводить,Задача 3: а также искать после создания.За задачу 1 - структура: должен отвечать руководитель проекта (РП).За задачу 2 - размещение: должна отвечать автоматическая системаЗа задачу 3 - поиск: должна отвечать автоматическая системаПо задаче 1: Здесь, более-менее, всё понятно: распределить по отделам и внутри по задачам и подзадачам, или т.п.По задаче 2:
Изначально, любой новый документ создаётся в "космосе" (без привязки к разделам и т.д.) - unsorted/uncategorized. Затем, должен быть ещё один логический шаг сразу после создания документа, но перед его размещением:
1. Нужно выяснить: О чём этот документ? (краткое содержание)
Чтобы это сделать, есть несколько способов: список заранее утверждённых тегов (создаёт их РП), анализ текста и морфологический разбор и затем проставление тегов, определение нужных критериев с помощью НС/ИИ.
2. Нужно выяснить: Для кого предназначен этот документ? Это набор объектов из списка ролей в системе (для которой создана текущая структура хранения): пользователь, группа пользователей, проект, конкретная ветка проекта, конкретный билд, конкретный репозиторий и т.д. Здесь выпадающие поля по каждой смысловой группе (с заполнением по аналогии с тегами).
3. Нужно выяснить: Какой тип документа? Варианты: описательный/повествовательный (API, документация и прочее), задача/task/"к исполнению", ресурсный (исходный код, перевод, изображение, звук и т.д.) и т.д.
4. Нужно выяснить (обычно только это применяется сегодня!): К каким близким по смыслу тегам (по мнению автора) относится документ? Тут все теги из доступных (или с возможностью добавления)
Везде: ко всему, к чему у текущего пользователя доступ отсутствует - скрываем!
После всех пунктов - система на основе этих данных сама правильно разместит документ в нужную папку и подпапку и так, что его смогут легко все найти.
После публикации - всем должно прийти уведомление (e-mail, sms и т.д.) об этом: кто создал, какой документ и когда и где он был размещён системой.По задаче 3: Поиск - лента хронологии добавленных и доступных текущему пользователю документов, заготовленные поиски по задачам пользователя и нечёткий поиск по произвольному запросу (тоже: только по доступным документам).
Всё выше описанное - делалось на обычной CMS Joomla! для одной компании для внутреннего использования. Всё это, разумеется, со значительными доработками и интеграцией с MS AD и SharePoint-порталом.
Я бы смотрел для этой цели vTiger и Redmine
Для них есть системы документооборота и/или groupware.