МУ им. С.Ю. Витте, цифровая экономика (проектно-технологическая практика)
| 26.05.2026, 11:57 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ИНДИВИДУАЛЬНОЕ ЗАДАНИЕ Направление подготовки 38.03.05 Бизнес-информатика Направленность программы - Цифровая экономика Вид практики – производственная практика Тип практики – технологическая (проектно-технологическая) практика Содержание практики
Приложение к индивидуальному заданию Задание № 1: Подготовка данных к работе. Формулировка: Необходимо создать модуль datatest.py, при загрузке которого загружается файл dataset.csv и его содержимое сохраняется в глобальное значение df. В файле dataset.csv содержится исходный набор данных. Помимо этого, при прямом запуске модуля datatest.py, программа должна вывести в форме распечаток: - количество строк в наборе данных и колонок в датасете; - информацию о типе данных, находящихся в каждой колонке набора данных; - информацию о количестве незаполненных ячеек в каждой колонке исходного набора данных (даже если их 0); - для колонок, содержащих в себе числовые значения, – базовую статистическую информацию: средние и медианные значения, стандартное отклонение. - для колонок, содержащих в себе категориальные значения – списки уникальных значений в этих колонках и частоту, с которой они встречаются. Распечатки должны выводиться в программную консоль, а также должны дублироваться в файл report.txt с кодировкой utf-8. Распечатки должны выводится только при прямом запуске модуля datatest.py. При импорте модуля в другой модуль распечаток быть не должно. Ожидается, что для реализации этого задания, студент воспользуется функционалом библиотеки pandas, а не будет реализовывать всё самостоятельно. Методические указания: Требования к источнику данных: Исходный файл dataset_Х.csv должен быть выгружен из Электронного университета, где Х – это номер варианта обучающегося. Вариант выбирается по первой букве фамилии студента:
Ссылка на использованный датасет должна быть явно отражена в первом разделе отчёта, где анализируется постановка задачи. Там же необходимо явно указать, какие колонки в датасете содержат счётные значения, а какие категориальные. Категориальные значения отличаются от счётных по двум признакам: – категориальные значения принимает одно из заранее определённого набора значений. Например, на неком круизе есть только три класса пассажира - 0, 1 и 2. Это категории пассажиров; – тем, что, даже категориальные данные и находятся в числовой форме, для них не имеет никакого смысла операция сложения. Например, колонка «количество детей» является счётной, потому что теоретически сумма количества детей имеет смысл. А вот колонка «класс пассажира» не является счётной, потому что сумма классов пассажиров не даёт осмысленного результата (в данном примере, пассажиров более чем второго класса просто нет). Если оба эти признака выполняются, то значение категориальное. Требования к выводу информации: Информация о датасете выводится следующим образом: - количество строк в наборе данных и колонок в датасете; ВНИМАНИЕ: использование датасета, не соответствующего фамилии, а также отсутствие ссылки и анализа типов значений в отчёте обнуляет баллы за задание 1. Программа будет проверяться с использованием стандартного файла под названием dataset.csv, который будет находится в одной папке с файлами python. Если программа не сможет загрузить этот файл, то код будет считаться нерабочим. Задание № 2: Разработка системы первичной визуализации данных. Формулировка:Необходимо создать скрипт data_scatter.py, который импортирует созданный в задании 1 модуль dataset, получая таким образом доступ к глобальному значению dataset.df и содержащимся внутри данным. При прямом запуске, модуль data_ scatter.py должен выводит окно приложения, в котором можно выбрать две числовые колонки датасета, получив пары значений, которые будут отражаться на точечной диаграмме. В рамках этого задания, категориальные колонки игнорируются. Должна быть возможность выбирать колонки для значений x и у, изменяя график, а также сохранять результат кнопкой сохранения. На рис.1 ниже пример интерфейса, соответствующего спецификации для датасета из задания 1 (числовые колонки в том примере это ['Возраст', 'Стоимость_билета', 'Сколько_взрослых' и 'Сколько_детей']). Предполагается, что график генерируется с использованием библиотеки matplotlib, после чего результат извлекается в виде картинки и добавляется в tkinter.Canvas. Использование другого подхода может сильно затруднить выполнение дальнейших заданий. Простой пример реализации этого подхода можно найти в файле по этой ссылке: https://gitflic.ru/project/sotrudniki-muiv/datasets/blob?file=TechPractice%2Fcanvas_matplotlib_example.py&branch=master Рекомендуется разобрать устройство этого примера и адаптировать его под себя. Использование других подходов может сильно усложнить выполнение дальнейших задач, либо привести к проблемам типа продолжения работы программы после закрытия окна. Методические указания: Требования к интерфейсу: · Список кнопок слева и внизу должен быть одинаковым и соответствовать названиям и порядку числовых колонок в датасете. Например, в эскизе отражён датасет с колонками: из которых колонка ««является категориальной и поэтому не выводится; · нажатие кнопки позволяет выбрать колонку для соответствующей оси графика; · изначально в оси абсцисс (х) выбрана первая колонка датасета, а в оси ординат (y) – вторая; · названия выбранных колонок выводятся как подписи к графику; · график всегда отображает точки, представляющие собой пары значений из колонок датасета и обновляется при каждом изменении. Координаты каждой точки берутся из значений выбранных колонок (например, на графике, х-координаты точек берутся из колонки ««, а y-координаты из соответствующих значений в колонке “” датасета); · при нажатии кнопки, на графике обновляется подписи на осях и положения точек, в соответствии с числовыми значениями в обновлённой паре колонок; · можно выбрать одну и ту же колонку на обеих осях (и тогда точки на графике все лягут на линию x=y); · кнопка сохранения должна сохранять текущий график в виде картинки с названием вида graph{HH}_{MM}_{SS}.png, где вместо значений {HH}, {MM} и {SS} вставляется текущее время – часы, минуты и секунды соответственно. Если значение часа, минуты или секунды меньше 10, то добавляется ведущий 0, чтобы всё равно было 2 цифры. ВНИМАНИЕ: невыполнение или неверное выполнение этого требования обнуляет все баллы за задание 2. Подробнее о выведении маркеров на графиках можно прочитать в официальной документации matplotlib: https://matplotlib.org/stable/api/markers_api.html Программу сохранить под именем data_scatter.py Задание № 3: Разработка системы улучшенной визуализации данных. Формулировка: На основе data_scatter.py сделать новую версию приложения: data_visual.py, в которой улучшить систему визуализации графиков, добавив виды графиков, поддерживающих категориальные данные, а также возможность выбора цветовой схемы для всех графиков. Тип выводимого графика должен меняться, в зависимости от выбранных данных. Тип графика меняется, если: - на осях абсцисс и ординат выбрана одна и та же числовая колонка (гистограмма); - на осях абсцисс и ординат выбрана одна и та же категориальная колонка (круговая диаграмма); - на оси ординат выбрана категориальная колонка, а на оси абсцисс – числовая (коробочная диаграмма); - на оси абсцисс выбрана категориальная колонка, а на оси ординат – числовая (столбчатая диаграмма); В остальных случаях, выводится график из задания 2 (точечная диаграмма). Методические указания: Требования по новым типам графиков: В задании 2 кнопки для категориальных колонок не выводились. В задании 3, кнопки для этих колонок должны выводится и слева, и снизу. Требования по цветовым схемам: В верхней части интерфейса добавляется интерфейса выбора цветовой схемы (color map – cmap). Используются стандартные названия цветовых схем из библиотеки matplotlib (документация: https://matplotlib.org/stable/gallery/color/colormap_reference.html). Необходимо предусмотреть выбор из 29 цветовых схем. Изначально должна быть выбрана схема, соответствующая первой букве фамилии. Ниже список требуемых названий схем в соответствии с буквами фамилии.
Выбранная по умолчанию цветовая схема должна быть явно отражена в первом разделе отчёта, где анализируются исходные требования задач. ВНИМАНИЕ: невыполнение или неверное выполнение этого требования обнуляет все баллы за задание 3. Программу сохранить под именем data_visual.py
Задание № 4: Разработка системы модификации визуализаций данных. Формулировка: На основе data_scatter.py или data_visual.py сделать следующую версию: data_draw.py, в которой добавить инструменты ручного рисования на графиках. Добавить кнопку, включающую режим рисования, а также возможность настройки цвета и толщины карандаша. Нажатие кнопки включает режим рисования, позволяющий рисовать мышкой на нарисованном графике. При удержании левой кнопки мышки и движении мышкой по графику, на графике остаётся линия. Можно выбирать цвет и толщину линии. Если линия вышла плохо, её можно отменить комбинацией клавиш CTRL+Z. Нарисованные на графике изменения сохраняются в файл при сохранении графика. Методические указания: При включённом режиме рисования, к отключению режима рисования приводят следующие действия: – повторное нажатие кнопки; – нажатие правой кнопки мыши; – изменение настройки колонок на графике (то есть нажатие одной из кнопок слева или снизу от графика). Кнопка должна возвращаться в исходное состояние при любом выходе из режима рисования. При нажатии и удержании левой кнопки в любом положении, кроме как над графиком приложения, ничего не происходит. При нажатии и удержании левой кнопки над графиком приложения, в указанном месте рисуется квадратик из пикселей. Размер квадратика соответствует выбранной толщине линии. Цвет – выбранному цвету. Толщина линии по умолчанию равна рекурсивной сумме студенческого ID, делённой без остатка на 2, плюс 5. Выбранная по умолчанию толщина линии и цвет кисти должны быть явно отражены в первом разделе отчёта, где анализируются исходные требования задач. ВНИМАНИЕ: невыполнение или неверное выполнение этого требования обнуляет все баллы за задание 4. Требования по режиму отмены Считается, что пока удерживается мышка мы находимся в режиме рисования линии. Как только мышка отпускается, рисование линии завершено. Можно отменить последнюю нарисованную линию комбинацией клавиш Ctrl+Z. В процессе рисования линии (то есть пока мышка нажата) Ctrl+Z не работает. Отменить можно только одну последнюю нарисованную линию. Программу сохранить под именем data_draw.py
Практика осуществляется в три этапа: – Подготовительный этап (проведение инструктивного совещания с приглашением руководителей практики, ознакомление обучающихся с содержанием и спецификой практики, доведение до сведения обучающегося содержания индивидуального задания на практику, видов отчетности по практике). – Организационно-аналитический этап реализуется как практическая подготовка (участие обучающихся в различных видах профессиональной деятельности в соответствии с индивидуальным заданием). – Результативно-аналитический этап (анализ проделанной работы и подведение её итогов, оформление отчета о практике и представление его руководителю). Практика может быть организована на основе договоров с организациями, осуществляющих деятельность по профилю направления подготовки (далее - профильная организация) и может быть пройдена в: – информационно-технологических, программно-обеспечивающих службах организаций различных отраслей, сфер и форм собственности; – подразделениях и учреждениях, занимающихся информационной безопасностью, веб-программированием, созданием и обслуживанием визуально-коммуникативной среды, программного обеспечения и т.п. Обучающиеся, совмещающие обучение с трудовой деятельностью, вправе проходить производственную практику по месту трудовой деятельности в случаях, если профессиональная деятельность, осуществляемая ими, соответствует требованиям образовательной программы к проведению практики. Также производственная практика может проводиться в структурных подразделениях ЧОУВО «Московский университет им. С.Ю. Витте». Индивидуальное задание на практику В процессе прохождения практики обучающийся должен руководствоваться индивидуальным заданием, которое получает от руководителя практики от Университета. Индивидуальное задание может быть получено от руководителя практики от Университета или обучающийся может взять типовое задание из настоящей программы практики. При прохождении практики в профильной организации, индивидуальное задание должно быть согласовано с руководителем практики от профильной организации. Индивидуальное задание представляет собой план работы обучающихся во время практики, направленной на формирование указанных компетенций, выполняемой во внеаудиторное время по заданию и при методическом руководстве преподавателя (Приложения 2.2 – 2.13). Индивидуальное задание предполагает выполнение заданий на языке программирования Python, с использованием дополнительных библиотек, изученных в период прохождения обучения. В качестве задания на практику студентам предлагается реализовать приложение для анализа данных. В рамках реализации этого приложения, студенты имеют возможность приобрести практические навыки разработки программных продуктов для решения прикладных задач среднего уровня сложности. Необходимым условием работы является использование для выполнения заданий языка программирования Python. Работы будут проверяться с использованием наиболее поздней на момент прохождения практики стабильной версии Python, с использованием окружения, в котором будут доступны модули numpy, pandas, matplotlib, pillow, а также модули стандартной библиотеки Python (в том числе, io и tkinter). Использование других модулей или слишком старых версий Python может сделать работу невозможной для проверки, то есть автоматически претендующей на неудовлетворительную оценку. При работе рекомендуется использовать PyCharm. Формулировки заданий имеют общую и индивидуальную части. Индивидуализация заданий реализуется на основе уникального номера ID студента и его ФИО. Необходимо отметить, что возможны разные подходы к решению заданий практики. Данные корректировки обязательно должны быть отражены в отчете. В процессе выполнения задач практики студенты должны: – изучить задачи на разработку программного продукта; – выполнить анализ и составить примерную стратегию решения каждого задания; – спланировать программную архитектуру, которая позволит реализовать предметные области программного продукта; – разработать алгоритмы и реализовать их в среде разработки с помощью выбранных библиотек; – разработать графический интерфейс пользователя с использованием библиотеки tkinter; – выбрать стратегию тестирования и разработать тесты; – выполнить тестирование и отладку; – подробно описать решение каждого задания, форматы входных и выходных файлов; – сформировать отчет по практике, привести листинг программного кода для каждого задания; – сформировать архив исходных текстов программ. ФОРМЫ ОТЧЕТНОСТИ ПО РЕЗУЛЬТАТАМ ПРАКТИКИ Полный пакет отчетных документов по результатам практики включает: – заявление на практику с подписью студента; – договор на практику (если практика проводится на базе профильного предприятия) со всеми подписями и печатями; – индивидуальное задание на практику, со всеми подписями; – отчет о прохождении практики. Не допускается выгрузка отчета внутри архивного файла!; – файлы программного кода *.py; – файл requirements.txt со списком необходимых для работы приложений библиотек и их версий, которые надо будет установить проверяющему в пустое виртуальное окружение – дополнительные файлы, требуемые для работы ПО (при необходимости) Отчет о прохождении Практики, составляется по утвержденной форме: 1. Содержание 2. Введение; 3. Основная часть; 4. Заключение; 5. Список литературы; 6. Приложения. Пример структуры отчета по практике приведен в Приложении 3. Основными требованиями, предъявляемыми к содержанию отчета по практике, являются:Титульный лист отчета по Технологической (проектно-технологической) практике генерируется из личного кабинет электронного университета при нажатии на ссылку со сроками практики. Титульный лист помимо основы информации содержит в правом верхнем углу персонализированный штрих-код, который является уникальным и позволяет идентифицировать как ФИО самого студента, так и всю сопроводительную документацию по практике. Титульный лист вставляется в качестве первого листа в отчет. Подписывать титульный лист не нужно. Запрещается распознавать титульный лист и вставлять его в виде текста. Содержание формируется как Автособираемое оглавление из заголовков отчета. Во введении указываются: цель, задачи, место прохождения практики, источники информации и данных, которые планировалось использовать при выполнения индивидуального задания практики. В основной части отчета дается полное условие задачи с учетом варианта студента и описание основных результатов в период прохождения практики в соответствии с индивидуальным заданием. Основная часть содержит два раздела: анализ заданий практики и описание разработки программного продукта для решения прикладных задач. После каждого раздела приводятся промежуточные выводы в соответствие с выполненными этапами индивидуального задания, соотнесенными с формируемыми компетенциями. В первом разделе необходимо проанализировать исходные данные к заданиям практики, входные и выходные данные, подготовить, обосновать и описать конфигурацию среды разработки, включая использованную версию Python, использованные в работе и библиотеки, необходимые для запуска, полученного ПО. Так же в первом разделе необходимо своими словами отразить понимание поставленных задач, в том числе то, каким образом требования по индивидуализации условий выражаются конкретно в работе обучающегося. Во втором разделе описывается реализованные в процессе выполнения заданий элементы программной архитектуры – процедуры, функции, классы. Даются описания целей и задач, решаемых разными элементами программной архитектуры, вставки реализующего эти элементы кода, скриншоты и краткие описания результатов работы для каждого элемента по очереди. В заключении необходимо сделать выводы по достигнутой цели и решеным задачам практики. В списке использованной литературы необходимо отразить ссылки на учебнометодические материалы, в том числе и электронные библиотеки, техническую документацию, нормативно-правовою информацию, интернет-источники, которые были использованы при прохождении практики и формировании отчетной документации для выполнения программы практики. Также допускается указание специализированных Интернет-ресурсов, посвященных ИТ-тематике. Список литературы следует оформлять по ГОСТ Р 7.0.100-2018. Перечень контролируемых вопросов и компетенций (индикаторов достижения компетенций), сформированных в процессе прохождения практики:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||