Реализация целостного подхода в формировании профессиональных компетенций бакалавров программной инженерии на основе проектной деятельности

Бесплатный доступ

Рассматривается проблема подготовки конкурентоспособных специалистов в области программной инженерии. Предлагается использовать проектную деятельность как неотъемлемый элемент реализации целостного подхода в формировании профессиональных компетенций бакалавров. Разработаны и представлены таблицы, характеризующие деятельностный, когнитивный и мотивационный компоненты профессиональной компетентности на различных этапах разработки ИТ-проекта, с описанием уровней сформированности для каждой трудовой функции.

Программная инженерия, профессиональные компетенции, проектная деятельность, целостный подход, CDIO

Короткий адрес: https://sciup.org/148330633

IDR: 148330633

Текст научной статьи Реализация целостного подхода в формировании профессиональных компетенций бакалавров программной инженерии на основе проектной деятельности

Программная инженерия является одним из центральных направлений в современной ИТ-индустрии, играя значимую роль в разработке и эксплуатации программного обеспечения (ПО) [2]. Данная область деятельности решает комплексные задачи проектирования, создания, тестирования и сопровождения программных систем, востребованных во всех сферах человеческой деятельности. Программная инженерия опирается на методологии, технологии и инструменты, позволяющие повысить эффективность, качество и надежность разрабатываемого ПО в условиях растущей сложности программных систем, необходимости обеспечения их безопасности и производительности [7]. В этой связи подготовка конкурентоспособных специалистов в области программной инженерии, компетенции которых соответствуют современному уровню развития ИТ-технологий, становится важной проблемой профессионального образования.

Объектом исследования является процесс формирования профессиональных компетенций бакалавров программной инженерии в условиях проектной деятельности. Предмет исследования – организация проектной деятельности студентов на основе разработки ИТ-проектов как средство реализации целостного подхода к формированию профессиональных компетенций бакалавров программной инженерии.

Цель статьи заключается в обосновании реализации целостного подхода к формированию профессиональных компетенций бакалавров по направлению подготовки «Программная инженерия» на основе применения проектной деятельности студентов.

Гипотеза исследования состоит в том, что если организация проектной деятельности бакалавров программной инженерии будет основана на принципах концепции CDIO и обеспечивать комплексное прохождение всех этапов разработки ИТ-проекта, то это будет способствовать целостному развитию их профессиональных компетенций.

Задачи исследования:

  •    обосновать потенциал проектной деятельности как механизма реализации целостного подхода в профессиональной подготовке;

  •    описать механизмы интеграции проектной деятельности в образовательный процесс на основе концепции CDIO;

  •    раскрыть сущность целостного подхода в формировании профессиональных компетенций бакалавров программной инженерии;

  •    раскрыть содержательные характеристики уровней сформированности компонентов профессиональных компетенций (деятельностного, когнитивного и мотивационного) через анализ этапов разработки.

Работа программных инженеров охватывает все этапы жизненного цикла программного продукта, от анализа требований до его внедрения и сопровождения. Выделим основные виды деятельности при разработке ИТ-проекта:

  • 1.    Анализ требований и проектирование – глубокое исследование потребностей заказчика, создание архитектуры системы и формализация требований;

  • 2.    Программная реализация – написание кода с использованием современных языков программирования и гибких методологий разработки;

  • 3.    Тестирование и верификация – создание надежности и качества программного обеспечения через тестирование различных уровней: от модульного до системного;

  • 4.    Поддержка и модернизация – установка ПО, обучение пользователей, обновления и адаптация системы под новые требования;

  • 5.    Управление проектами – планирование и организация работы команды, контроль сроков и ресурсов для успешной реализации проекта.

В нашем исследовании разработка ИТ-проекта рассматривается не только как узкотехническая задача, но и как средство самореализации и профессионального становления студента. При работе над созданием ИТ-проекта происходит постоянная рефлексия и переосмысление проектного опыта, полученного ранее, тем самым обеспечивается преемственность между учебными проектами, накопление и трансформация профессионального опыта.

В работе мы опираемся на фундаментальные исследования В.С. Ильина [2], В.В. Серикова [14], в которых показано, что при целостном подходе образовательный процесс должен акцентировать внимание на целостности личности, формируя у обучающегося опыт самовыражения. Образование качеств и усвоение содержания обучения должны происходить в контексте развития личности, что требует проектирования педагогических процессов с учетом целостного образа. Студент развивается как личность в различных видах деятельности, подчеркивая важность метапредметного опыта, независимого от конкретного материала или задачи.

Целостный подход к формированию профессиональных компетенций бакалавров программной инженерии через разработку ИТ-проектов реализует системную стратегию развития личности специалиста, которая выходит за рамки простого освоения технических навыков. В этой связи профессиональная компетентность рассматривается как многомерная система, включающая взаимосвязанные компоненты: мотивационный (профессиональные установки и ценности), когнитивный (теоретические знания), деятельностный (практические умения и навыки). Обеспечивается непрерывность и преемственность между теоретическим обучением и практической профессиональной деятельностью через интеграцию академических знаний с реальными производственными задачами, моделируется полный жизненный цикл разработки программного обеспечения в образовательном процессе, происходит последовательное усложнение проектной деятельности от учебных до профессионально-ориентированных проектов. Создается целостное профессиональное пространство развития, где каждый этап проектной деятельности является системообразующим элементом формирования компетенций, происходит синхронное развитие профессиональных знаний, умений и личностных качеств, студент последовательно осваивает различные профессиональные роли (аналитик, проектировщик, разработчик и т.д.).

Федеральный государственный образовательный стандарт высшего образования (ФГОС ВО) по направлению подготовки «Программная инженерия» [9] не содержит пе- речень профессиональных компетенций, которыми должны овладеть выпускники данного направления, а рекомендует определить их исходя из трудовых функций на основе таких профессиональных стандартов, как «Программист» [10], «Системный аналитик» [11], «Специалист по тестированию в области информационных технологий» [12], «Системный программист» [13].

Концепция CDIO (Conceive – Design – Implement – Operate) – это международная модель инженерного образования, основанная на обучении через проектную деятельность [1; 15–17]. Основные ее принципы направлены на обеспечение целостного образовательного процесса и включают:

  •    интеграцию теоретических и практических аспектов обучения с акцентом на жизненный цикл разработки инженерных продуктов;

  •    практико-ориентированное обучение через участие студентов в реальных инженерных проектах;

  •    формирование междисциплинарных навыков через проектную деятельность;

  •    непрерывное совершенствование образовательных программ на основе обратной связи от студентов и работодателей.

Данная концепция положена нами в основу подготовки бакалавров по направлению «Программная инженерия», поскольку она предполагает реализацию проектной деятельности. ИТ-проекты являются мощным инструментом для формирования профессиональных компетенций. Работая над реальными задачами, студенты могут:

  •    применять полученные теоретические знания в практической деятельности;

  •    развивать умения анализа требований, проектирования архитектуры, программной реализации и тестирования;

  •    приобретать навыки командной работы, распределения обязанностей и управления проектами;

  •    накапливать практический опыт в разработке программных систем;

  •    формировать профессиональное мышление и осознание роли программного инженера.

Таким образом, проектная деятельность, основанная на принципах CDIO, создает условия для комплексного и целостного формирования профессиональных компетенций бакалавров программной инженерии, так как выступает в качестве связующего звена между академическими знаниями и их практическим применением.

Проанализируем этапы разработки ИТ-проекта:

  • 1.    Планирование. Назначаются роли в команде, определяются цели проекта и анализируются требования заказчика, разрабатывается план реализации с четкими сроками и распределением задач.

  • 2.    Проектирование. Разрабатывается дизайн системы (как она будет работать, как будут взаимодействовать ее компоненты), определяются основные интерфейсы и принципы работы ключевых модулей, моделируются возможные сценарии использования системы.

  • 3.    Программная реализация. Работа происходит в рамках выбранной методологии разработки, используются современные языки программирования, отдельные модули интегрируются в общую систему.

  • 4.    Тестирование и отладка. Для проверки разных аспектов системы создаются тестовые сценарии и данные; проводится тестирование, включая проверку отдельных модулей и всей системы в целом; исправляются найденные ошибки и улучшается качество кода.

  • 5.    Внедрение и сопровождение. Разворачивается ПО на реальных серверах или в облачной среде, пользователи обучаются работе с системой, предоставляется техническая поддержка и внесение изменений при необходимости.

Таблица 1

Характеристика деятельностного компонента профессиональной компетентности бакалавров программной инженерии

Этап разработки ИТ-проекта

Трудовая функция

Уровень сформированности деятельностного компонента

Выявление требований к Системе и проектных решений по Системе (Системный аналитик)

Высокий : самостоятельно и эффективно выявляет и анализирует требования, формирует проектные решения с учетом всех аспектов проекта.

Средний : способен выявлять основные требования и формировать проектные решения под руководством более опытных специалистов.

Низкий : имеет базовое понимание процесса выявления требований, но нуждается в постоянном руководстве.

Поддержка выбора концепции Системы (Системный аналитик)

Высокий : предоставляет экспертную поддержку при выборе концепции системы, учитывая все аспекты проекта и долгосрочные перспективы.

Средний : способен участвовать в процессе выбора концепции системы, предоставляя базовую аналитическую поддержку.

Низкий : понимает важность выбора концепции системы, но не может самостоятельно предоставить существенную поддержку в этом процессе.

Разработка технического задания на Систему (Системный аналитик)

Высокий : самостоятельно разрабатывает полное и детальное техническое задание, учитывая все аспекты проекта и требования заказчика.

Средний : способен разрабатывать базовое техническое задание, может нуждаться в помощи при описании сложных аспектов системы.

Низкий : понимает структуру технического задания, но не может самостоятельно разработать полноценный документ.

Концептуально-логическое проектирование Системы (Системный аналитик)

Высокий : самостоятельно разрабатывает сложные концептуальные и логические модели системы, учитывая все требования и ограничения.

Средний : способен разрабатывать базовые концептуальные и логические модели, может нуждаться в помощи при работе со сложными системами.

Низкий : понимает основы концептуально-логического проектирования, но не может самостоятельно разрабатывать полноценные модели.

Проектирование компьютерного программного обеспечения (Программист)

Высокий : самостоятельно разрабатывает архитектуру сложных программных систем, учитывая все технические и бизнес-требования.

Средний : способен проектировать компоненты программного обеспечения средней сложности, может нуждаться в руководстве при работе над крупными системами.

Низкий : понимает основы проектирования ПО, но не может самостоятельно разрабатывать полноценную архитектуру.

Продолжение таблицы 1

Характеристика деятельностного компонента профессиональной компетентности бакалавров программной инженерии

Этап разработки ИТ-проекта

Трудовая функция

Уровень сформированности деятельностного компонента

Разработка технических спецификаций на программные компоненты и их взаимодействие (Программист)

Высокий : самостоятельно разрабатывает детальные технические спецификации для сложных программных систем, включая все аспекты взаимодействия компонентов.

Средний : способен разрабатывать технические спецификации для отдельных компонентов и их взаимодействия, может нуждаться в помощи при работе над сложными системами.

Низкий : понимает структуру технических спецификаций, но не может самостоятельно разрабатывать полноценные документы.

Анализ возможностей реализации требований к компьютерному программному обеспечению (Программист)

Высокий : проводит глубокий анализ требований, оценивает возможности реализации с учетом всех технических и ресурсных ограничений, предлагает оптимальные решения. Средний : способен анализировать базовые требования и оценивать возможности их реализации, может нуждаться в помощи при работе со сложными или противоречивыми требованиями.

Низкий : понимает процесс анализа требований, но не может самостоятельно провести полноценную оценку возможностей реализации.

Методическое сопровождение испытаний Системы (Системный аналитик)

Высокий : разрабатывает комплексные методики испытаний, координирует процесс тестирования, анализирует результаты и предлагает эффективные решения по устранению проблем.

Средний : способен разрабатывать базовые методики испытаний и участвовать в процессе тестирования, может нуждаться в помощи при анализе сложных проблем.

Низкий : понимает основы процесса испытаний, но не может самостоятельно разрабатывать методики или проводить анализ результатов.

Выполнение обследования текущей ситуации (Системный аналитик)

Высокий : проводит комплексное обследование, выявляет все ключевые аспекты текущей ситуации, формирует детальный отчет с рекомендациями по внедрению и сопровождению.

Средний : способен провести базовое обследование и выявить основные аспекты ситуации, может нуждаться в помощи при анализе сложных случаев или формулировке рекомендаций.

Низкий : понимает основы проведения обследования, но не может самостоятельно выполнить полноценный анализ или предложить эффективные решения по внедрению и сопровождению.

Таблица 2

Характеристика когнитивного компонента профессиональной компетентности бакалавров программной инженерии

Этап разработки ИТ-проекта

Трудовая функция

Уровень сформированности когнитивного компонента

Выявление требований к Системе и проектных решений по Системе (Системный аналитик)

Высокий : глубокое понимание методологий выявления требований, знание современных подходов к проектированию систем, осведомленность о лучших практиках в области управления требованиями.

Средний : базовые знания методов выявления требований, понимание основных принципов проектирования систем. Низкий : общее представление о процессе выявления требований, начальные знания о проектировании систем.

Поддержка выбора концепции Системы (Системный аналитик)

Высокий : глубокое понимание различных системных архитектур и их применимости, знание современных технологических трендов и их влияния на выбор концепции системы. Средний : базовые знания о типах системных архитектур, понимание основных факторов, влияющих на выбор концепции системы.

Низкий : общее представление о концепциях систем, базовые знания о факторах, влияющих на выбор архитектуры.

Разработка технического задания на Систему (Системный аналитик)

Высокий : глубокое знание стандартов и методологий разработки технических заданий, понимание всех аспектов системы и их отражения в техническом задании.

Средний : знание основных разделов технического задания, понимание ключевых аспектов, которые должны быть отражены в документе.

Низкий : базовое представление о структуре технического задания, общее понимание его роли в процессе разработки.

Концептуально-логическое проектирование Системы (Системный аналитик)

Высокий : глубокое понимание принципов системного анализа и проектирования, знание различных нотаций моделирования (UML, BPMN и др.), осведомленность о паттернах проектирования.

Средний : знание основных методов концептуального и логического проектирования, базовое понимание нотаций моделирования.

Низкий : общее представление о процессе проектирования систем, знакомство с базовыми понятиями моделирования.

Проектирование компьютерного программного обеспечения (Программист)

Высокий : глубокое понимание принципов объектно-ориентированного проектирования, знание архитектурных паттернов, осведомленность о современных подходах к разработке ПО.

Средний : знание основных принципов проектирования ПО, понимание базовых архитектурных паттернов.

Низкий : общее представление о процессе проектирования ПО, знакомство с базовыми концепциями архитектуры программного обеспечения.

Продолжение таблицы 2

Характеристика когнитивного компонента профессиональной компетентности бакалавров программной инженерии

Этап разработки ИТ-проекта

Трудовая функция

Уровень сформированности когнитивного компонента

Разработка технических спецификаций на программные компоненты и их взаимодействие (Программист)

Высокий : глубокое понимание принципов разработки технических спецификаций, знание стандартов документирования ПО, осведомленность о методах описания интерфейсов и протоколов взаимодействия компонентов.

Средний : знание основных элементов технических спецификаций, понимание принципов описания взаимодействия компонентов.

Низкий : общее представление о технических спецификациях, базовое понимание описания программных компонентов.

Анализ возможностей реализации требований к компьютерному программному обеспечению (Программист)

Высокий : глубокое понимание различных технологий и платформ разработки, знание ограничений и возможностей различных языков программирования и фреймворков.

Средний : знание основных технологий разработки, понимание базовых возможностей и ограничений популярных языков программирования.

Низкий : общее представление о технологиях разработки ПО, базовое понимание возможностей языков программирования.

Методическое сопровождение испытаний Системы (Системный аналитик)

Высокий : глубокое понимание методологий тестирования, знание различных видов тестирования (функциональное, нагрузочное и т.д.), осведомленность о современных инструментах автоматизации тестирования.

Средний : знание основных методов тестирования, понимание процесса разработки тестовых сценариев.

Низкий : общее представление о процессе тестирования, базовое понимание роли тестирования в жизненном цикле разработки ПО.

Выполнение обследования текущей ситуации (Системный аналитик)

Высокий : глубокое понимание методологий обследования информационных систем, знание техник сбора и анализа данных, осведомленность о лучших практиках в области внедрения и сопровождения систем.

Средний : знание основных методов обследования, понимание ключевых аспектов внедрения и сопровождения систем. Низкий : общее представление о процессе обследования, базовое понимание задач внедрения и сопровождения информационных систем.

Таблица 3

Характеристика мотивационного компонента профессиональной компетентности бакалавров программной инженерии

Этап разработки ИТ-проекта

Трудовая функция

Уровень сформированности мотивационного компонента

Выявление требований к Системе и проектных решений по Системе (Системный аналитик)

Высокий : проявляет энтузиазм к изучению новых методологий выявления требований, стремится к глубокому пониманию бизнес-процессов заказчика, инициативен в поиске оптимальных проектных решений.

Средний : заинтересован в качественном выполнении работы по выявлению требований, готов к обучению новым методам анализа.

Низкий : выполняет работу по выявлению требований в рамках поставленных задач, не проявляет особого интереса к углублению знаний в этой области.

Поддержка выбора концепции Системы (Системный аналитик)

Высокий : проявляет интерес к новым технологиям и архитектурным решениям, стремится к участию в инновационных проектах, инициативен в предложении различных концепций системы.

Средний : заинтересован в выборе оптимальной концепции системы, готов изучать новые подходы к проектированию. Низкий : участвует в выборе концепции системы в рамках поставленных задач, не проявляет особой инициативы в изучении новых подходов.

Разработка технического задания на Систему (Системный аналитик)

Высокий : стремится к созданию максимально полных и качественных технических заданий, проявляет интерес к совершенствованию процесса разработки ТЗ, инициативен в предложении инновационных подходов.

Средний : заинтересован в качественном выполнении работы по разработке ТЗ, готов к обучению новым методам документирования требований.

Низкий : разрабатывает ТЗ в рамках поставленных задач, не проявляет особого интереса к совершенствованию процесса.

Концептуальнологическое проектирование Системы (Системный аналитик)

Высокий : проявляет энтузиазм к созданию инновационных проектных решений, стремится к изучению передовых методологий проектирования, инициативен в применении новых подходов.

Средний : заинтересован в создании качественных проектных решений, готов к освоению новых инструментов и методов проектирования.

Низкий : выполняет проектирование в рамках поставленных задач, не проявляет особого интереса к инновациям в области проектирования.

Проектирование компьютерного программного обеспечения (Программист)

Высокий : проявляет энтузиазм к созданию эффективных и элегантных архитектурных решений, стремится к изучению новых паттернов проектирования, инициативен в оптимизации архитектуры ПО.

Средний : заинтересован в создании качественной архитектуры ПО, готов к изучению новых подходов к проектированию.

Низкий : выполняет проектирование ПО в рамках поставленных задач, не проявляет особого интереса к совершенствованию архитектурных решений.

Продолжение таблицы 3

Характеристика мотивационного компонента профессиональной компетентности бакалавров программной инженерии

Этап разработки ИТ-проекта

Трудовая функция

Уровень сформированности мотивационного компонента

Разработка технических спецификаций на программные компоненты и их взаимодействие (Программист)

Высокий : стремится к созданию подробных и точных технических спецификаций, проявляет интерес к совершенствованию процесса документирования, инициативен в предложении новых форматов спецификаций.

Средний : заинтересован в создании качественных технических спецификаций, готов к освоению новых инструментов документирования.

Низкий : разрабатывает технические спецификации в рамках поставленных задач, не проявляет особого интереса к улучшению процесса документирования.

Анализ возможностей реализации требований к компьютерному программному обеспечению (Программист)

Высокий : проявляет энтузиазм к изучению новых технологий и их возможностей, стремится к нахождению оптимальных решений для реализации требований, инициативен в предложении инновационных подходов.

Средний : заинтересован в качественном анализе возможностей реализации требований, готов к изучению новых технологий.

Низкий : выполняет анализ возможностей реализации в рамках поставленных задач, не проявляет особого интереса к изучению новых технологий.

Методическое сопровождение испытаний Системы (Системный аналитик)

Высокий : проявляет энтузиазм к разработке эффективных методик тестирования, стремится к изучению новых подходов к обеспечению качества ПО, инициативен в оптимизации процесса тестирования.

Средний : Заинтересован в качественном проведении испытаний системы, готов к освоению новых инструментов и методов тестирования.

Низкий : выполняет сопровождение испытаний в рамках поставленных задач, не проявляет особого интереса к совершенствованию процесса тестирования.

Выполнение обследования текущей ситуации (Системный аналитик)

Высокий : проявляет живой интерес к изучению бизнес-процессов заказчика, стремится к проведению глубокого и всестороннего обследования, инициативен в предложении решений по оптимизации.

Средний : заинтересован в качественном проведении обследования, готов к изучению новых методик анализа текущей ситуации.

Низкий : выполняет обследование в рамках поставленных задач, не проявляет особого интереса к углублению анализа или оптимизации процессов.

На кафедре компьютерных технологий Чувашского государственного университета, опираясь на профессиональные стандарты «Программист», «Системный аналитик», а также требования работодателей, нами были определены профессиональные компетенции бакалавров по направлению 09.03.04 «Программная инженерия», включающие в себя когнитивный, деятельностный и мотивационный компоненты [5; 6].

Рассмотрим, как деятельность студентов на различных этапах разработки ИТ-проекта способствует формированию их профессиональной компетентности. Для наглядности мы сопоставили каждый этап с трудовыми функциями, которые расписали по уровням сформированности (высокий, средний, низкий) (таб. 1–3 на стр. 77–82).

Вместе с тем исследования [3; 8; 18], а также многолетний опыт обучения бакалавров по направлению подготовки «Программная инженерия» позволяют определить ряд проблем, которые приходится решать в процессе организации проектной деятельности студентов на основе разработки ИТ-проектов:

  • 1.    Организационные проблемы:

  •    высокая нагрузка на преподавателей при сопровождении проектной деятельности из-за необходимости постоянного мониторинга и поддержки множества параллельных проектов;

  •    сложность синхронизации учебного плана с этапами проектной деятельности, так как теоретические курсы должны быть согласованы с практическими потребностями проектов;

  •    необходимость регулярного обновления технической инфраструктуры и программного обеспечения для соответствия современным требованиям индустрии;

  •    сложность привлечения реальных заказчиков для студенческих проектов.

  • 2.    Методические проблемы:

  •    трудности в объективной оценке индивидуального вклада каждого студента при командной работе над проектом;

  •    разный уровень начальной подготовки студентов, что осложняет формирование сбалансированных проектных команд;

  •    сложность подбора проектных заданий, которые были бы одновременно реалистичными и соответствовали образовательным целям, из-за разрыва между академическими требованиями и реальными потребностями индустрии.

  • 3.    Ресурсные проблемы:

  •    потребность в современном техническом оснащении для реализации проектов, быстрое устаревание технологий и инструментов, что требует регулярного обновления содержания проектов;

  •    необходимость постоянного повышения квалификации преподавателей в области новых технологий и методологий разработки;

  •    затраты на лицензионное программное обеспечение и облачные сервисы для разработки.

Для решения вышеописанных проблем возможно внедрить систему наставничества со стороны опытных разработчиков, организовать регулярные стажировки преподавателей в ИТ-компаниях, создать гибкую систему оценивания, учитывающую как индивидуальные, так и командные достижения, а также использовать открытое программное обеспечения для снижения затрат.

Практическая значимость исследования заключается в разработке системы уровневой оценки сформированности профессиональных компетенций через анализ этапов разработки ИТ-проектов. Предложенный подход позволяет не только оценивать, но и целенаправленно развивать профессиональные компетенции будущих специалистов в области программной инженерии в соответствии с требованиями профессиональных стандартов и современного рынка труда.

Результаты исследования могут быть использованы при проектировании образовательных программ подготовки бакалавров программной инженерии, а также для совершенствования методик оценки профессиональных компетенций студентов в условиях проектной деятельности.

Статья научная