team-work-it-CozyWool

0
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
README.md

Graph Analysis System — README

👥 Участники проекта

  • Student 1 (Specification Engineer) — GitVerse: CozyWool
  • Student 2 (Developer) — GitVerse: gleb1
  • Student 3 (Code Reviewer) — GitVerse: h4n

🧩 Описание проекта

Проект представляет собой учебную командную разработку, моделирующую реальную работу в небольшом инженерном коллективе. Каждый студент выполняет свою роль:

  1. Student 1 — подготовка системной спецификации
  2. Student 2 — реализация функционального кода
  3. Student 3 — проведение code review и оформление замечаний

В итоге была создана полноценная C# консольная система анализа графов, включающая обходы, поиск путей, определение компонент связности и анализ топологии.


🤖 Используемые модели ИИ

Проект выполнялся в гибридном режиме при участии нескольких моделей ChatGPT:

🔹 ChatGPT 5.1

Использовался для:

  • генерации спецификации (Student 1)
  • генерации и корректировки кода (Student 2)
  • проведения профессионального code review (Student 3)

🔹 Стек моделей

  • OpenAI GPT-5.1 — основная модель для разработки кода
  • OpenAI GPT-4o — вспомогательная при уточняющих заданиях (если применялось)
  • Cursor IDE AI — при разработке и автодополнении (если использовалось в процессе)

(Уточните и добавьте любые другие модели, которые использовали.)


🧠 Краткое описание функциональности кода

Реализованная система предоставляет удобный CLI-интерфейс для работы с неориентированным графом, моделирующим карту городов.

🔹 Основные возможности:

  • Добавление / удаление городов

  • Создание и удаление маршрутов между ними

  • Обход графа:

    • DFS (Depth-First Search)
    • BFS (Breadth-First Search)
  • Поиск связных компонент (рекурсивный обход)

  • Определение циклов в графе

  • Поиск кратчайшего пути (по количеству рёбер)

  • Вывод статистики графа

  • Текстовая визуализация графа

🔹 Формат данных

Граф представлен через adjacency list:

Dictionary<string, List<(string neighbor, int distance)>>

🔹 Команды CLI

add city <name> remove city <name> connect <c1> <c2> <distance> remove edge <c1> <c2> path <c1> <c2> components dfs <city> bfs <city> cycle stats show graph help exit

📁 Структура репозитория

Рекомендуемая структура проекта:

/ (корень) │ ├── README.md # Описание проекта ├── spec/ │ └── codex.md # Полная спецификация от Student 1 ├── dev/ │ └── solution.cs # Полная реализация от Student 2 └── demo/ └── program_proof.txt # Примеры входных данных

(Если структура отличается — адаптируйте описание под вашу.)


🛠 Как запускать проект

1. Скомпилировать

dotnet build

2. Запустить

dotnet run

⭐ Итоги

Проект успешно демонстрирует навыки:

  • командной разработки;
  • написания спецификаций;
  • реализации алгоритмов графов;
  • проведения code review;
  • документирования и анализа архитектуры.