Table | Card | RUSMARC | |
Allowed Actions: –
Action 'Read' will be available if you login or access site from another network
Group: Anonymous Network: Internet |
Annotation
Дипломная работа посвящена исследованию проблем сбора и анализа данных о процессах разработки программного обеспечения и созданию инструмента для проведения исследований в этой области. Задачи, которые решались в ходе исследования: 1. Анализ основных источников данных, используемых при проведении исследований в области эмпирического анализа разработки программного обеспечения; 2. Реализация встроенного предметно-ориентированного языка для описания задач; 3. Реализация инструмента для сбора и анализа данных с использованием платформы Java Virtual Machine и экосистемы Python. Инструмент должен позволять проводить локальные исследования и на удаленном вычислительном окружении; 4. Подготовка инструмента к удобной поставке до конечных пользователей. Работа проведена на базе исследовательской группы «Лаборатория инструментов совместной работы» («Intelligent Collaboration Tools Lab») компании «JetBrains». Анализ требуемых данных и подходов проводился на основании изучения материалов профильных конференций в области эмпирической разработки программного обеспечения и сбора артефактов процесса разработки программного обеспечения. В результате, средствами ЯВУ Котлин были разработаны встроенный предметно-ориентированный язык CodescopeDSL, позволяющий описывать эксперименты в виде сценариев выполнения («скриптов»), а также сервис для исполнения этих сценариев и проведения коллективных исследований. Сервис введен в эксплуатацию исследовательской группой «Лаборатория инструментов совместной работы».
Thesis is devoted to researching the problems of mining and analyzing on software development processes artifacts and creating a tool for conducting research in this area. The tasks that were solved during the study: 1. Analysis of the main data sources used in research in the field of empirical software engineering; 2. Implementation of embedded domain-specific language for describing scientific pipelines in field of Mining Software Repositores using Java Virtual Machine and Python; 3. Implementation of a local environment for executing scripts, as well as a server environment, allowing collective research; 4. Create easy-to-use deployment solution. The work was carried out on the basis of the research group «Intelligent Collaboration Tools Lab» of the «JetBrains» company. The analysis of the required data and approaches was carried out based on the study of materials from specialized conferences in the field of empirical software development and the mining software repositories. As a result, the domain-oriented language CodescopeDSL was developed, which allows describing experiments in the form of execution scripts ("scripts"). Service for executing these scripts and conducting collaborative research. The service was put into operation by the research group «Intelligent Collaboration Tools Lab».
Document access rights
Network | User group | Action | ||||
---|---|---|---|---|---|---|
ILC SPbPU Local Network | All | |||||
Internet | Authorized users SPbPU | |||||
Internet | Anonymous |
Table of Contents
- ВВЕДЕНИЕ
- Глава 1. Исследование процессов разработки программного обеспечения
- 1.1. Определение процесса разработки программного обеспечения
- 1.2. Направления исследований
- 1.2.1. Поиск и исследование неисправностей
- 1.2.2. Исследование методологий разработки
- 1.2.3. Практики разработки ПО
- 1.2.4. Тестирование программного обеспечения
- 1.2.5. Оценка качества
- 1.2.6. Эволюция программного обеспечения
- 1.2.7. Работа с требованиями при разработке ПО
- 1.2.8. Работа в команде и коллективное принятие решений
- 1.2.9. Исследование сообщества разработчиков
- 1.3. Артефакты процесса разработки программного обеспечения
- 1.4. Артефакты на практике
- 1.4.1. Правовые ограничения
- 1.4.2. Системы контроля версий
- 1.4.3. Системы управления проектами и обратная связь с пользователями
- 1.4.4. Систем сборки и тестирования ПО
- 1.5. Заключение
- Глава 2. Сбор, хранение и обработка данных о процессах разработки программного обеспечения
- 2.1. Распространенные способы предоставления данных
- 2.2. Сравнительный анализ прикладных средств сбора и анализа процессов разработки ПО
- 2.3. Сравнительный анализ промышленных средств сбора и анализа данных
- 2.4. Заключение
- Глава 3. Реализация системы сбора и анализа данных о процессах разработки программного обеспечения
- 3.1. Требования к системе для сбора и анализа данных о процессах разработки программного обеспечения
- 3.1.1. Функциональные требования
- 3.1.2. Нефункциональные требования
- 3.2. Предметно-ориентированные языки
- 3.2.1. Использование и разработка предметно-ориентированных языков
- 3.2.2. CodescopeDSL
- 3.2.3. CodescopeScript
- 3.3. Локальная среда выполнения CodescopeScript
- 3.4. Клиент-серверное приложение для проведения исследований
- 3.4.1. Алгоритм компиляции сценария
- 3.4.2. Алгоритм исполнения сценария
- 3.4.3. Исполнение Python кода
- 3.4.4. Описание API сервиса
- 3.4.5. Поставка сервиса и развертывание
- 3.4.6. Применения сервиса как среды для исполнения кода
- 3.5. Заключение
- 3.1. Требования к системе для сбора и анализа данных о процессах разработки программного обеспечения
- Глава 4. Использование системы при проведении исследований
- 4.1. Конфигурация системы на базе Google Kubernetes Engine
- 4.2. Рекомендация каналов в приложении для коллективной разработки <
> на основе анализа артефактов разработки пользователей - 4.2.1. Сбор данных
- 4.2.2. Анализ собранных данных
- 4.3. Заключение
- Заключение
- Список литературы
- Приложение А. Артефакты процесса разработки ПО
- Приложение Б. Dockerfile для контейнеризации сервиса
- Приложение В. OpenAPI спецификация сервиса
Usage statistics
Access count: 20
Last 30 days: 0 Detailed usage statistics |