Вопросы разработки и стандартизации программных продуктов в учебном процессе вуза Кириллов В. А., Спицын А. В

Вид материалаДокументы
Подобный материал:

Вопросы разработки и стандартизации программных продуктов в учебном процессе ВУЗа

Кириллов В.А., Спицын А.В.

Санкт-Петербургский Гуманитарный университет профсоюзов

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

В настоящее время ситуация меняется кардинально – в качестве общепризнанной графической нотации применяется язык визуального моделирования UML, средства визуального моделирования фирм Rational и Together интегрируются в средства разработки гигантов мировой программной индустрии Microsoft, IBM и Borland, лидирующую роль при организации разработки играет унифицированный процесс разработки программного обеспечения RUP.

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

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

Особое внимание на старших курсах уделяется вопросам применения шаблонов проектирования (design patterns), фиксации рефакторингов (refactorings), реинжинирингу и повторному использованию компонент (software reengineering and reusing). Отдельно рассматривается модель зрелости процесса разработки программного обеспечения CMM и основные ключевые области обследования.

Курсовое проектирование строится в соответствии с методом проектов. Бригады студентов выполняют индивидуальные проекты в соответствии с моделью жизненного цикла, реализованной в RUP. В начале выполняется распределение исполнителей по ролям в проекте и планирование проекта и итераций с использованием MS Project, затем выполняется бизнес-моделирование и анализ требований, определяются риски и критерии качества программного продукта. Формируется набор метрик проекта. Анализ и проектирование производятся с использованием инструментальных средств фирмы Rational или, для простых проектов, – с помощью MS Visio. Результаты представляются в виде артефактов процесса в соответствии с шаблонами, имеющимися в составе RUP. Шаблоны конкретизируются с целью более полного описания архитектуры системы и решений, выполненных на фазе реализации.

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

Рассматриваемые подходы реализованы авторами в СПбГУП при обучении студентов по специальности “Прикладная информатика”, и в СПбГЭТУ при обучении студентов по направлению «Информатика и вычислительная техника» и магистрантов по направлению «Технология разработки программных систем».