COOPER
Введение
Программирование — это умственно напряжённое занятие, ориентированное на программистов. Одним из ключевых вопросов, влияющих на эффективность и качество разработки программного обеспечения, является обеспечение эффективной кооперации между разработчиками. Платформа COOPER решает проблему интеллектуальной кооперации для разработчиков программного обеспечения путём анализа больших данных о разработчиках, создания полноценного портрета разработчиков и анализа отношений сотрудничества. На основе этого анализируются знания разработчиков, а также предоставляется услуга интеллектуального поиска и рекомендаций для разработчиков и ресурсов.
*****#### Инструкция по использованию:
- Скачайте сжатый пакет исходного кода COOPER на этой странице и распакуйте его.
- Установите MySQL базу данных, MongoDB базу данных, Neo4j базу данных, Elasticsearch поиск и Tomcat инструмент на серверах внутренней сети (или внешней сети) в одном сегменте сети. Они должны быть запущены в фоновом режиме постоянно.
- Откройте файл path_to_cooper/show/act/src/main/resources/local_backendconfig.properties в распакованном пакете и измените IP адреса, номера портов, имена аккаунтов и пароли для различных сервисов баз данных и поиска, чтобы они соответствовали новым службам.
- Перенесите подготовленные данные GitHub, Stack Overflow, Topcoder и CSDN на новые серверы данных. Также можно перенести данные кода компании/школы/юридического лица после их анализа на серверы данных. Из-за большого объема данных и сложности процесса анализа, при необходимости обратитесь к нам за помощью.
- Импортируйте проект COOPER в IDE как Maven проект, создайте исполняемый JAR файл (или используйте командную строку Maven для сборки), затем поместите его на сервер с установленным Tomcat инструментом. Запустите COOPER в фоновом режиме с помощью команды (nohup java -jar -Dserver.port=8080 act-0.0.1-SNAPSHOT.jar > nohup.out 2>&1 &) && sleep 1.
- Откройте браузер и введите IP_ADDRESS:8080 для доступа к платформе COOPER.
Детальное описание платформы:
1.Платформа COOPER включает в себя графических знаний разработчика, многомерного аналитического инструмента способностей разработчика, поискового инструмента разработчиков/ресурсов, рекомендательного инструмента разработчиков/ресурсов и т. д., каждый из которых можно легко переключаться между ними через верхнюю навигационную панель страницы платформы.
2. Поисковый инструмент разработчиков: Это инструмент поиска и сортировки разработчиков на основе ключевых слов, который основан на четырёх платформах сообществ GitHub, Stack Overflow, Topcoder и CSDN. Он позволяет находить подходящих разработчиков на основе различных условий поиска и методов сортировки, а также получать информацию о разработчиках и портреты их способностей.
3. Инструмент рекомендации разработчиков: Подразделяется на инструмент рекомендации рецензентов кода, инструмент рекомендации ответчиков вопросов и инструмент рекомендации массовых разработчиков.
- Инструмент рекомендации рецензентов кода: Основной принцип заключается в анализе взаимодействия между пользователями GitHub, их способностями и особенностями проектов, чтобы рекомендовать наиболее подходящего рецензента для выбранного pull request. - Инструмент рекомендации ответчиков вопросов: Аналогично традиционным системам рекомендаций, он собирает исторические данные и информацию о пользователе, создаёт простой портрет его способностей; затем делит вопросы на более мелкие категории, чтобы сузить область рекомендаций; использует метод классификации для прогнозирования возможных ответчиков вопросов как первоначальных рекомендаций; наконец, анализирует историческую информацию о взаимодействии и сотрудничестве пользователя, чтобы получить окончательные рекомендации.
- Инструмент рекомендации массовых разработчиков: После тщательного анализа записей распределения задач массового участия и специализаций каждого разработчика, он предлагает наиболее подходящего разработчика для выполнения задачи пользователя, что экономит время выбора и сравнения.
- Поисковый инструмент ресурсов разработчиков: Этот инструмент обеспечивает точную и эффективную рекомендацию соответствующих ресурсов разработчика путём совпадения тематических меток проектов GitHub, вопросов и ответов Stack Overflow, задач массового участия Topcoder и блогов CSDN, чтобы помочь разработчику в процессе разработки.
- Инструмент рекомендации ресурсов разработчиков: Подразделяется на инструмент помощника Java-программиста и инструмент автоматической генерации кода. - Инструмент помощника Java-разработчика: Этот инструмент представлен в виде плагина для Eclipse и предоставляет разработчику удобные рекомендации при написании кода, автоматическое предложение при возникновении исключений, запросы на рекомендации от разработчиков и активное поиск информации для рекомендаций.
- Инструмент автоматической генерации кода: Этот инструмент предназначен для всех API JDK языка Java и генерирует последовательность API с контролирующими структурами на основе естественного языка, введенного пользователем, чтобы помочь разработчику в написании кода.
- Портрет разработчика: Подразделен на инструмент количественной оценки способностей разработчика и инструмент создания портрета характеристик способностей разработчика.
- Инструмент количественной оценки способностей разработчиков: инструмент для статистического анализа и визуализации вклада разработчиков в процессы разработки, сотрудничество и качество кода. Этот инструмент проводит количественную оценку способностей разработчиков на платформах открытого исходного кода GitHub, площадках контрактной разработки Topcoder, сообществах разработчиков Stack Overflow и CSDN. Анализируя данные о разработчиках на этих платформах, он графически представляет уровень их способностей.Благодаря этому инструменту пользователи могут более полно и наглядно оценить способности разработчиков.- Инструмент создания портрета навыков разработчиков: инструмент для статистического анализа и визуализации навыков разработчиков. Этот инструмент создаёт портрет навыков разработчиков на платформах открытого исходного кода GitHub, площадках контрактной разработки Topcoder, сообществах разработчиков Stack Overflow и CSDN. Проанализировав данные о разработчиках на этих платформах, он графически представляет навыки разработчиков. Благодаря этому инструменту пользователи могут более наглядно и полно понять навыки разработчиков.
-
Инструмент поиска связей между разработчиками и визуализации данных: этот инструмент предназначен для поиска и визуализации отношений "разработчик-разработчик" и "разработчик-ресурс разработки", существующих на вышеупомянутых платформах. Он позволяет каждому разработчику находить и представлять эти связи в виде графа.
-
REST API: основные функции платформы поддерживаются через REST API, что позволяет пользователям использовать эти функции согласно своим требованиям и правилам.
-
Другие функции: включают инструмент кластеризации ресурсов на основе характеристик и связей разработчиков, статистическое представление данных платформы и анализ трендов и прочее.*****
Участие в проекте
- Создайте форк этого репозитория
- Создайте новую ветку
Feat_xxx
- Подтвердите изменения
- Отправьте pull request*****
Благодарим вас за участие!
Комментарии ( 0 )