УДК 378
ИСПОЛЬЗОВАНИЕ НОВЫХ ОБРАЗОВАТЕЛЬНЫХ ТЕХНОЛОГИЙ ПРИ ПОДГОТОВКЕ ИТ-СПЕЦИАЛИСТОВ
Т. Г. Долгова1, К. В. Филатова2
1 Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660014, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
Е-mail: [email protected] 2Сибирский государственный технологический университет Россия, 660049, г. Красноярск, просп. Мира, 82. E-mail: [email protected]
Описываются концепции обучения бакалавров и магистров, позволяющие приобрести достаточный опыт и количество знаний для успешной работы в ИТ-отрасли. Рассматривается применение новых проектных технологий разработки программного обеспечения (Agile), для успешной работы в команде разработчиков ИТ-проектов.
Ключевые слова: образовательные технологии, ИТ-специалисты, проектные технологии обучения, технологии командной разработки программного обеспечения.
THE USE OF NEW EDUCATIONAL TECHNOLOGIES IN THE TRAINING OF IT-SPECIALISTS
T. G. Dolgov^, K. V. Filatova2
2Siberian State Aerospace University named after academician M. F. Reshetnev 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660014, Russian Federation E-mail: [email protected] 2Siberian State Technological University 82, Mira Av., Krasnoyarsk, 660049, Russian Federation E-mail: [email protected]
Describes the concept of training of bachelors and masters, to acquire sufficient experience and amount of knowledge for successful work in the it industry. Applications of new design technologies software development (Agile), to work successfully in a team of developers it projects.
Keywords: educational technology, it professionals, project learning technologies, technology team software development.
При подготовке ИТ-специалистов должны учитываться специфика ИТ-отрасли, тенденции развития современных технологий, потребности ИТ-компаний, а также специализация выбираемая студентами. В статье описывается концепция обучения бакалавров и магистров, которые имели бы достаточный опыт и количество знаний для успешной работы в ИТ-отрасли.
Современная система высшего образования выпускает достаточно много специалистов, обладающих знаниями о современных информационных технологиях. Тем не менее, образовательные курсы рассматривают каждого студента как изолированную единицу. Факультеты выпускают бакалавров и магистров по различным ИТ-специальностям, в процессе обучения по которым студент общается и совместно работает над проектами только со студентами своей же специальности. Таким образом, будущий бакалавр или магистр не имеет профессионального взаимодействия со студентами смежных специальностей и, следовательно, не получает необходимых навыков работы в команде разработчиков ИТ-проектов. Кроме того, в современном образовательном процессе присут-
ствует проблема «пустых» курсовых проектов, дипломных работ и диссертационных исследований. Возникает данная проблема в том случае, если результаты научной работы не имеют практического применения, или в ходе работы студенту приходится пропускать или имитировать некоторые этапы в силу отсутствия необходимых знаний или навыков.
С другой стороны предприятия-потребители ИТ-ресурсов требуют уже готовых специалистов, обладающих навыками работы в ИТ-отрасли, где взаимодействие между профессионалами различных специальностей достаточно сильно. Причем немаловажным, а во многих случаях решающим фактором становится наличие навыков взаимодействия с коллективом, работающим над общей проблематикой.
Обозначенные проблемы подготовки ИТ-специалистов требуют разработки новых методик обучения.
Сейчас высшее образование перешло от специали-тета к двухуровневой модели «бакалавр-магистр», что требует модернизации существующих образовательных программ.
В рамках перехода к новым образовательным и отраслевым стандартам обучения дипломированных бакалавров и магистров по ИТ-специальностям предлагаются следующие концепции [1]:
• внедрение сквозного учебного курса «Технология программирования», аккумулирующего знания и опыт студентов;
• переход от «навязываемого» набора предметов к самостоятельному выбору необходимых курсов по специализациям;
• совместная работа студентов смежных специальностей в рамках курса «Технологии проектирования».
Главная концепция в обучении ИТ- специалистов - формирование сквозного курса («Технология программирования»), который позволит студентам применять приобретаемые ими знания, одновременно обучаясь работать в команде. Имеет смысл включать курс «Технология программирования» в учебную программу начиная со 2-го курса. На 2-м курсе студенты объединяются в команды по 2-3 человека и реализуют в течение семестра достаточно простое приложение, стараясь пройти основные этапы жизненного цикла разработки программного обеспечения: написание требований, разработка кода, тестирование. Это поможет студентам узнать различные области ИТ, а также понять свои предпочтения. Далее, на 3-м курсе студенты объединяются в группы по 5-7 человек и приступают к реализации нового проекта, уже более сложного и требующего определенных навыков. На 4-м курсе группа студентов из 15-20 человек приступает к выполнению нового большого проекта, самостоятельно выбирая его тему. Компании-партнеры вуза могут участвовать в формировании темы проекта, что позволит, в случае успешного завершения проекта, получить сформированную команду разработчиков. Студент же по окончании проекта получит опыт работы над решением актуальных задач, что позволит ему взвешенно выбрать направление специальности магистра, или покажет, что имеющиеся у него знания достаточны для успешной работы в отрасли.
Необходимо также интегрировать данный сквозной курс с другими учебными дисциплинами (теория вероятностей, методы оптимизации, численные методы и т. п.) для того, чтобы курсовые задания по данным дисциплинам имели непосредственное отношение к завершенной студентами работе на предыдущих семестрах. Такой подход создаст цельную картину образовательного процесса у обучаемых, а также покажет применимость и практическую пользу преподаваемых дисциплин.
Следующей концепцией является выбор студентом, исходя из принципов Болонской системы набора учебных дисциплин внутри специальности, которые он хотел бы посещать [2]. В качестве вариантов предметов могут выступать не только официальные дисциплины, предлагаемые стандартом образования, но и дополнительные курсы по различным направлениям. Получая в рамках курса «Технология программирования» поверхностные знания обо всех ролях в коллективе разработчиков на 2-м и 3-м курсах последова-
тельно, студенту предоставляется возможность на 4-м курсе влиться в работу по специальности, учитывая особенности выбираемых им курсов в ходе обучения. При этом на 4-м курсе в рамках курсового проекта «Технологии программирования» группа из 15-20 студентов может формироваться из студентов различенных кафедр факультета. Такой подход к формированию группы необходим для того, чтобы роли, определенные для успешной разработки проекта, были заняты студентами, имеющими необходимые навыки и знания. В таком случае студент может полностью раскрыть свой потенциал в выбранной им специализации.
Важной частью работы в проектной группе так же является профессиональное взаимодействие между участниками. При размере группы в 15-20 человек структура группы не является чрезмерно сложной, а, следовательно, отдельные ее члены не изолируются от остального коллектива. В ходе разработки участники группы, обучающиеся по разным специальностям, будут получать информацию от коллег и осваивать основы взаимодействия. Кроме того, учитывая малый размер коллектива, они получат множество разносторонних знаний об информационных технологиях и смежных областях. Участие в проектах студентов, чья специализация наиболее полно соответствует роли в проекте, позволит уменьшить время дополнительного обучения в рамках выбранной проектной цели, а значит увеличить эффективное время разработки проекта, что, в конечном счете, существенно увеличит число успешно завершенных проектов [3].
В ходе обучения следует применять новые технологии командной разработки программного обеспечения такие, как Agile. Современная методика управления проектами помогает максимально эффективно использовать навыки каждого в команде [4].
Agile (как и ее вариации - методология Scrum, методология Extreme Programming и т. д.) подразумевает разработку программного обеспечения короткими циклами. Каждый этап - это уменьшенный вариант ИТ-проекта: проводится планирование, анализ требований, проектирование, кодирование, тестирование и документирование. По окончании этапа получается работающая версия ИТ-системы, а если требуется - пересматриваются дальнейшие приоритеты проекта, и цикл разработки запускается снова. В итоге создается решение, которое на 100 % соответствует ожиданиям.
Преимущества Agile как гибкой разработки программного обеспечения:
• Быстрая и постоянная обратная связь команды разработчиков с заказчиком - изменения в требованиях пользователей оперативно учитываются.
• Гибкий график реализации функциональности -при использовании Agile, Scrum или Extreme Programming процесс разработки легко перестраивается для лучшей реакции на потребности бизнеса.
• Акцент на эргономичность ИТ-системы - требования заказчика к эргономике системы имеют равный приоритет с требованиями к ее функциональности.
• Отсутствие затрат на формализацию процессов и документации - Agile позволяет избежать затрат
на работы, которые не всегда нужны (например, составление и согласование подробной технической документации).
• Возможность остановки проекта без ущерба для осуществленных вложений в разработку ИТ-системы -каждая стадия проекта (за исключением начальных) заканчивается созданием вполне готовой версии ИТ-системы; есть возможность (например, при замораживании бюджета) остановить проект и при этом получить работоспособное решение.
На практике методология Agile может использоваться в нескольких интерпретациях: Scrum, Extreme Programming, Lean Software Development (LSD), Dynamic Systems Development Method (DSDM), Open Unified Process (OpenUP), Agile Project Management (АРМ), Microsoft Solutions Framework для Agile (MSF).
Сейчас многие компании частично или полностью применяют концепции и инструменты Agile.
Применение данных технологий позволит студентам:
• Познакомиться с полной концепцией Agile подхода, разобраться в Agile как способе мышления (mindset) и общем подходе к организации процессов разработки, помимо набора конкретных практик. А также они смогут научиться определять, достаточен ли в их проекте уровень взаимодействия между людьми.
• Систематизировать знания по основным принципам гибкой разработки, используемым терминам, знаниям о возможных подводных камнях и дополнительных требованиях, которые необходимы для эффективного участия в agile-проектах, распределения ролей, поиска и анализа проблем совместно с другими студентами.
• Ознакомиться сразу с несколькими основными подходами современной разработки программного обеспечения: Agile (Scrum, ХР) и Lean (Kanban), от начала работы над проектом до выпуска и поддержки работающего продукта.
При использовании технологии командной разработки программного обеспечения Agile в настоящее время предлагаются различные облачные сервисы. Доступным и эффективным инструментом управления проектами по разработке программного обеспечения является проектный хостинг «Облако проектов» [5].
Управлять своими проектами позволяет многие Web-приложения. Среди них можно отметить популярные.
Atlassian - программный продукт австралийской компании Atlassian для управления жизненным циклом любого проекта или рабочего процесса. Это система для коллективной работы с задачами в рамках бизнес-процесса или проекта. Система позволяет работать с несколькими проектами, разбивать их на этапы, настраивать любые типы задач и многое другое. Данная фирма выпускает различные приложения, например: Confluence, Basecamp. Эти инструменты для управления проектами незаменимы при работе распределённых команд и позволяют контролировать ход исполнения задач любым исполнителем в любой про-
межуток времени, а также сравнивать выполненные задачи с поставленными ранее руководителем .JIRA
Redmine - открытое серверное веб-приложение для управления проектами и отслеживания ошибок. Redmine написан на Ruby и представляет собой приложение на основе широко известного веб-фреймворка Ruby on Rails [5].
Devprom - web-приложения для поддержки полного цикла управления проектами по разработке ПО с применением современных практик Agile: Scrum, Kanban, Трекинг задач, Поддержка пользователей. Система базируется на Agile методиках и гибко адаптируется под особенности команды.
Trello - веб-приложение для управления задачами, разработанное Fog Creek Software. В основе его работы лежит японская философия менеджмента «кан-бан», популяризацией которой занималась корпорация Toyota в 80-е годы ХХ века. Все проекты здесь представлены в виде «досок» со списком задач. Пакет решений для бизнеса был представлен в 2013 году.
«Битрикс24» - социальный интранет, включающий в себя, наряду с CRM, систему управления задачами. Создан и поддерживается российской компанией «1С-Битрикс». Работает как облачный сервис, но возможна и поставка коробочной версии [6].
При подготовке студентов в Вузах необходимо использовать данные или другие современные инструменты разработки программных приложений с использование проектных технологий.
В целом, предложенные концепции требуют тесного сотрудничества компаний ИТ-отрасли и вуза. Предприятиям-партнерам такое сотрудничество даст возможность получать бакалавров или магистров, имеющих не только общие знания и навыки в разработке ИТ-проектов, но и специфические знания о разработке проектов именно этих предприятий. Эта возможность основывается на участии предприятий в формировании цели проекта, курировании его этапов или непосредственном участии некоторых сотрудников Заказчика в студенческой исследовательской работе. А участие в проектах студентов различных специальностей позволит формировать к концу обучения готовые команды разработчиков для предприятий ИТ-отрасли.
Библиографические ссылки
1. Профессиональные стандарты в области ИТ [Электронный ресурс] // Сайт Ассоциации Предприятий Компьютерных и Информационных Технологий (АП КИТ). URL: http://www.apkit.rn/committees/ education/meetings/standarts.php (дата обращения: 1.09.2014).
2. Байденко В. И. Болонский процесс: структурная реформа высшего образования Европы / Исследовательский центр проблем качества подготовки специалистов. М. : Российский новый университет, 2002. 126 с.
3. Синицын С. В., Петухова Е. А., Садчиков С. М., Налютин Н. Ю. Индивидуальная подготовка ИТ-специалистов [Электронный ресурс]. URL: http://www.ict.edu.ru/vconf/index.php?a=vconf&c=getFo nn&r=4hesisDesc&d-
light&id_sec=234«feid_thesis=8069 (дата обращения: 10.03.2014).
4. Кон М. Scrum: гибкая разработка ПО -Succeeding with Agile: Software Development Using Scrum (Addison-Wesley Signature Series). M. : Вильяме, 2011. 576 с.
5. Хабрахабр. Инструменты, которые мы используем для командной разработки [Электронный ресурс]. URL: http://habrahabr.ru/post/178827/ (дата обращения: 1.09.2014).
6. Какая система управления задачами лучше -выбор ИТ-менеджеров и предпринимателей [Электронный ресурс]. URL: http://siliconrus.com/2014/06/ task-management/ (дата обращения: 1.09.2014).
References
1. Professional Standards in the field of IT [Electronic resourse] // The site of the Association of Computer and Information Technology (AP KIT). URL: http: //www.apkit.rn/committees/education/ meetings / standarts.php (date of visit: 1.09.2014).
2. Baydenko V. I. Bologna process: the structural reform of higher education in Europe / Research Center of the quality of training, M. : Russian New University, 2002. 126 p.
3. Sinicyn S. T., Petukhov E. A., Sadchikov C. M., Nalyutin N. Y. Individual training of IT professionals [Electronic resource]. URL: http://www.ict.edu.ru/ vconf/index.php?a=vconf&c=getFonn&r=4hesisDesc&d-light&id_sec=234«feid_thesis=8069 (date accessed: 10.03.2014).
4. Cohn M. Scrum: Agile Software - Succeeding with Agile: Software Development Using Scrum (Addison-Wesley Signature Series). M. : Williams' 2011. 576 p.
5. Habrahabr. The tools that we use for team development [Electronic resource]. URL: http:// habrahabr.ru/post/178827/ (date of visit: 1.09.2014).
6. What is the best task management system - the choice of IT managers and entrepreneurs [Electronic resource]. URL: http://siliconrus.com/2014/06/task-management/ (date of visit: 1.09.2014).
© Долгова Т. Г., Филатова К. В., 2014
УДК 51
ОБУЧЕНИЕ ЧЕРЕЗ ЗАДАЧИ ПРИ ФОРМИРОВАНИИ МАТЕМАТИЧЕСКИХ ПОНЯТИЙ
О. И. Жданова
Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева
Аэрокосмический колледж Российская Федерация, 660014, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
Е-таП: [email protected]
Рассмотрен один из способов организации процесса обучения математике при подготовке специалистов среднего профессионального образования (обучение через задачи при формировании понятий). Подобрана серия задач. Описана методика формирования понятия экстремума функции одной переменной.
Ключевые слова: формирование понятий, обучение через задачи, экстремум функции одной переменной.
LEARNING THROUGH TASKS IN THE FORMATION OF MATHEMATICAL CONCEPTS
O. I. Zhdanova
Siberian State Aerospace University named after academician M. F. Reshetnev
Aerospace College 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660014, Russian Federation E-mail: [email protected]
Considered one of the ways of learning mathematics with training of secondary vocational education (learning through tasks in the formation of concepts). Picked up a series of tasks. The method of formation of the concept of extremum of a function of one variable.
Keywords: the process of concept formation, learning through tasks, the extremum of a function of one variable.
Основными структурными элементами содержа- ние у студентов таких понятий (сложных для понимания дисциплины «Математика» при подготовке спе- ния в силу высокого уровня абстрактности) является циалистов среднего профессионального образования одной из основных задач обучения, ориентированного служат научные понятия. В связи с этим, формирова- на развитие мышления [2].