This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
courses:mse:2017:project_list [2017/09/06 10:08] tatyana.berlenko [12. Автоматизация проверки задач для онлайн-курса SSH-tricks] |
courses:mse:2017:project_list [2022/12/10 09:08] (current) |
||
---|---|---|---|
Line 8: | Line 8: | ||
Необходимо реализовать email-робота (smtp-клиента) для проверки соответствия формату, учета времени отправки, фильтрации, хранения и ведения статистики входящих e-mail. | Необходимо реализовать email-робота (smtp-клиента) для проверки соответствия формату, учета времени отправки, фильтрации, хранения и ведения статистики входящих e-mail. | ||
- | **deliverables**: smtp-клиент на языке Python. | + | **Ожидаемый результат**: smtp-клиент на языке Python. |
+ | |||
==== 2. Генератор отчета по курсовой работе по содержимому репозитория на Github.com ==== | ==== 2. Генератор отчета по курсовой работе по содержимому репозитория на Github.com ==== | ||
Line 15: | Line 17: | ||
* cформировать раздел Приложение, который включает разделы "замечания по ходу выполнения работы" - дискуссия из пулл-реквестов в репозитории и "Исходный код". | * cформировать раздел Приложение, который включает разделы "замечания по ходу выполнения работы" - дискуссия из пулл-реквестов в репозитории и "Исходный код". | ||
- | **deliverables**: консольный скрипт на языке Python. | + | **Ожидаемый результат**: консольный скрипт на языке Python. |
+ | |||
==== 3. Тренажер публичных выступлений ==== | ==== 3. Тренажер публичных выступлений ==== | ||
- | Цель: сделать тренажер, позволяющий докладчику объективно измерить | + | Цель: сделать веб-приложение тренажер, позволяющий докладчику объективно измерить |
- | - скорость речи (сколько слов в секунду он произносит) | + | * скорость речи (сколько слов в секунду он произносит) |
- | - четкость речи | + | * четкость речи |
- | - скорость доклада (расход времени/слов на каждый слайд/ среднее время/слова на каждый слайд) | + | * скорость доклада (расход времени/слов на каждый слайд/ среднее время/слова на каждый слайд) |
- | - проверить укладываемость во временное ограничение | + | * проверить укладываемость во временное ограничение |
- | - измерить те же самые параметры в контексте ответов на вопросы | + | * измерить те же самые параметры в контексте ответов на вопросы |
- | - сопоставить распознанные слова и текст речи или тезисы для выявления неосвященных тем* | + | * сопоставить распознанные слова и текст речи или тезисы для выявления неосвященных тем* |
Сценарий использования: | Сценарий использования: | ||
- | - пользователь открывает приложение | + | * пользователь открывает приложение |
- | - пользователь загружает презентацию и указывает временное ограничение (количество минут на доклад) | + | * пользователь загружает презентацию и указывает временное ограничение (количество минут на доклад) |
- | - пользователь нажимает кнопку "Начать тренировку" | + | * пользователь нажимает кнопку "Начать тренировку" |
- | - на экране отображается презентация, обратный отсчет времени, номер слайда/общее количество слайдов, график (стрелочный индикатор) количества слов в минуту , кнопки переключения слайдов | + | * на экране отображается презентация, обратный отсчет времени, номер слайда/общее количество слайдов, график (стрелочный индикатор) количества слов в минуту , кнопки переключения слайдов |
- | - пользователь осуществляет доклад | + | * пользователь осуществляет доклад |
- | - если темп речи превышает некоторый, заранее заданный порог, то график/индикатор окрашивается красным | + | * если темп речи превышает некоторый, заранее заданный порог, то график/индикатор окрашивается красным |
- | - по окончанию доклада пользователь нажимает кнопку "Доклад окончен" | + | * по окончанию доклада пользователь нажимает кнопку "Доклад окончен" |
- | - на экране отображается статистика выступления - общая и по отдельным слайдам | + | * на экране отображается статистика выступления - общая и по отдельным слайдам |
- | **deliverables**: веб-приложение на языке Python/Turbogears + MongoDb. | + | **Ожидаемый результат**: веб-приложение на языке Python/Turbogears + MongoDb. |
==== 4. Анализатор пулл-реквестов ==== | ==== 4. Анализатор пулл-реквестов ==== | ||
Line 49: | Line 53: | ||
==== 5. Информационная система кафедры: учёт студентов ==== | ==== 5. Информационная система кафедры: учёт студентов ==== | ||
- | Требуется доработтаь компоненты информационной системы кафедры, обеспечивающие: | + | Требуется расширить функционал компонентов информационной системы кафедры, которые обеспечивают: |
* Управление студенческими данными | * Управление студенческими данными | ||
Line 56: | Line 60: | ||
* Генерация отчетов. | * Генерация отчетов. | ||
- | **deliverables**: веб-приложение на языке Python2.7/Django + MongoDb. | + | **Ожидаемый результат**: веб-приложение на языке Python2.7/Django + MongoDb. |
==== 6. Информационная система кафедры: научная работа ==== | ==== 6. Информационная система кафедры: научная работа ==== | ||
- | Приложение должно предоставлять возможность ввода/обработки/хранения/предоставление информации о: | + | Требуется расширить функционал компонентов информационной системы кафедры, которые обеспечивают возможность ввода/обработки/хранения/предоставления информации о: |
* публикациях/научных трудах (группировка по годам/людям) | * публикациях/научных трудах (группировка по годам/людям) | ||
Line 67: | Line 71: | ||
* Также приложение должно обеспечивать разные уровни доступа к информации для различных пользователей. | * Также приложение должно обеспечивать разные уровни доступа к информации для различных пользователей. | ||
- | **deliverables**: веб-приложение на языке Python2.7/Django + MongoDb. | + | **Ожидаемый результат**: веб-приложение на языке Python2.7/Django + MongoDb. |
==== 7. Информационная система кафедры: индивидуальный план преподавателя ==== | ==== 7. Информационная система кафедры: индивидуальный план преподавателя ==== | ||
- | Требуется доработать компоненты информационной системы кафедры, обеспечивающие управление индифидуальными планами преподавателей | + | Требуется расширить функционал компонентов информационной системы кафедры, которые обеспечивают управление индивидуальными планами преподавателей: |
* Планирование учебной нагрузки | * Планирование учебной нагрузки | ||
Line 80: | Line 84: | ||
* … и другие параметры индивидуального плана | * … и другие параметры индивидуального плана | ||
- | **deliverables**: веб-приложение на языке Python2.7/Django + MongoDb. | + | **Ожидаемый результат**: веб-приложение на языке Python2.7/Django + MongoDb. |
==== 8. Автоматизация проверки задач для курса по программированию ==== | ==== 8. Автоматизация проверки задач для курса по программированию ==== | ||
Line 89: | Line 93: | ||
Курс содержит практические задачи и лабораторные работы на языке Си. | Курс содержит практические задачи и лабораторные работы на языке Си. | ||
- | Ознакомиться с видами задач в проверяющей системе Stepik можно [[https://stepik.org/course/1/syllabus?module=4|здесь]] | + | Подробнее о типах задач в Stepik [[https://stepik.org/course/1/syllabus?module=4|здесь]] |
+ | |||
+ | **Ожидаемый результат**: набор готовых проверяющих задач в курсе по программированию (Python2/Python3 + bash) + набор задач-тестов для каждой проверющей задачи в репозитории (язык C). | ||
- | **deliverables**: набор готовых проверяющих задач в курсе по программированию (Python2/Python3 + bash) + набор задач-тестов для каждой проверющей задачи в репозитории (язык C). | ||
==== 9. Генератор задач для онлайн-курса по GDB/Valgrind ==== | ==== 9. Генератор задач для онлайн-курса по GDB/Valgrind ==== | ||
- | Интерактивные задачи на дебаг: | + | Требуется автоматизировать проверку интерактивных задач на платформе Stepik для курса по GDB/Valgrind. |
+ | |||
+ | Цель: разработать интерактивные задачи на отладку и профилирование С программ по следующим темам: | ||
- сегфолтов | - сегфолтов | ||
- неправильных вызовов | - неправильных вызовов | ||
Line 102: | Line 109: | ||
- проблемы с производительностью | - проблемы с производительностью | ||
- | Научиться "замусоривать" код программы кодом без побочных эффектов. | + | Подзадача: освоить инструменты обфускации / замусоривания исходного кода лишними инструкциями. |
Задачи GDB: | Задачи GDB: | ||
Line 127: | Line 133: | ||
* Производительность. Дан бинарный файл программы, в котором очень много разных функций и их вызовов. Задача: определить самую часто вызываемую функцию. | * Производительность. Дан бинарный файл программы, в котором очень много разных функций и их вызовов. Задача: определить самую часто вызываемую функцию. | ||
- | **deliverables**: набор автоматически проверяемых заданий. | + | **Ожидаемый результат**: набор автоматически проверяемых заданий, интегрированных в Stepik. |
==== 10. Генераторы задач для онлайн-курса по нереляционным БД ==== | ==== 10. Генераторы задач для онлайн-курса по нереляционным БД ==== | ||
- | Цель: разработка системы автоматической проверки лабораторных работ для курса "Введение в нереляционные БД". | + | Цель: разработка системы автоматической проверки лабораторных работ для курса "Введение в нереляционные БД" на платформе Stepik. |
Задачи: | Задачи: | ||
Line 159: | Line 165: | ||
- RDF | - RDF | ||
- ExistDB | - ExistDB | ||
+ | - ... | ||
- | **deliverables**: набор автоматически проверяемых заданий. | + | **Ожидаемый результат**: набор автоматически проверяемых заданий, интегрированных в Stepik. |
==== 11. Автоматизация сборки мобильных приложений ==== | ==== 11. Автоматизация сборки мобильных приложений ==== | ||
Line 170: | Line 177: | ||
- создание apk и их публикация | - создание apk и их публикация | ||
- | Требования: | ||
- | - начальные знания Andoid-разработки, | ||
- | - начальные знания Bash, | ||
- | - минимальный опыт в Jenkins, | ||
- | **deliverables**: инструмент, позволяющий автоматически оценивать качество Н репозиториев с исходниками мобильных приложений путем их сборки/тестирования/установки; инструкции по развертыванию и настройке инструмента. | + | **Ожидаемый результат**: инструмент, позволяющий автоматически оценивать качество Н репозиториев с исходниками мобильных приложений путем их сборки/тестирования/установки; инструкции по развертыванию и настройке инструмента. |
==== 12. Автоматизация проверки задач для онлайн-курса "SSH-tricks" ==== | ==== 12. Автоматизация проверки задач для онлайн-курса "SSH-tricks" ==== | ||
- | Требуется разработать практическую часть курса на Stepik "SSH-tricks". | + | Цель: разработка интерактивных задач для курса на платформе Stepik “SSH-tricks”. |
+ | |||
+ | Варианты задач: | ||
* Интерактивные задачи (генератор среды + скрипты проверки): | * Интерактивные задачи (генератор среды + скрипты проверки): | ||
Line 191: | Line 196: | ||
* sshfs | * sshfs | ||
- | **deliverables**: набор автоматически проверяемых заданий. | + | Каждая задача состоит минимум из двух скриптов - генератора среды и скрипта проверки. |
+ | |||
+ | **Ожидаемый результат**: набор автоматически проверяемых заданий, интегрированных в Stepik. |