21
изучение системного подхода в программировании в рамках учебно - методического комплекса «Практическое параллельное программирование в системе непрерывной подготовки ИТ- специалистов» в НГУ Новосибирский Государственный Университет (механико-математический факультет, кафедра «Программирование») к.ф.-м.н., доц. Калинина А.П. Руководитель проекта по разработке комплекса: проф., д.ф.-м.н. А.Г.

изучение системного подхода в программировании

  • Upload
    shamus

  • View
    67

  • Download
    2

Embed Size (px)

DESCRIPTION

Новосибирский Государственный Университет (механико-математический факультет, кафедра «Программирование» ). изучение системного подхода в программировании. - PowerPoint PPT Presentation

Citation preview

Page 1: изучение системного подхода  в программировании

изучение системного подхода в программировании

в рамках учебно - методического комплекса«Практическое параллельное программирование в системе

непрерывной подготовки ИТ- специалистов» в НГУ

Новосибирский Государственный Университет(механико-математический факультет,

кафедра «Программирование»)

к.ф.-м.н., доц. Калинина А.П.Руководитель проекта по разработке комплекса:

проф., д.ф.-м.н. А.Г. Марчук

Page 2: изучение системного подхода  в программировании

2

Подготовка IT-специалистов в НГУ

базовое образование (ММФ, ФИТ, ФФ, ВКИ)

специализация на базе НГУ

специализация на базе СО РАН (аспирантура)

система привлечения и поддержки талантливой молодежи и переподготовки кадров

Page 3: изучение системного подхода  в программировании

3

Основные компоненты (информационные ресурсы)

Кафедра программирования ММФ (http://mag.iis.nsk.su/kafedra/)

Кафедра вычислительных систем ММФ (http://mmfd.nsu.ru/mmf/kaf/vs/)

Кафедра систем информатики ФИТ (http://fit.nsu.ru/)

Летняя школа юных программистов (ЛШЮП) (http://school.iis.nsk.su/info/)

Всесибирская заочная школа информационных технологий (ВЗШИТ) (http://fit.nsu.ru/)

Система переподготовки ИТ-специалистов в партнерстве с Интернет-университетом информационных технологий (http://fit.nsu.ru, http://www.intuit.ru)

Page 4: изучение системного подхода  в программировании

4

Курсы по информатике и программированию (НГУ), важные при переходе на многопроцессорную платформу

Основы работы на ЭВМ (базовый, 0.5 год) Программирование (базовый, год) Физические основы ЭВМ (спецкурс, 0.5 год) Микропроцессорные системы (спецкурс, год) Операционные системы (спецкурс, 0.5 год) Дискретная математика (базовый, год) Теория графов в программировании (спецкурс, год) Методы трансляции (спецкурс, год) Парадигмы программирования (спецкурс, год) Функциональное программирование (спецкурс, год)

Page 5: изучение системного подхода  в программировании

5

Курсы по информатике и программированию (НГУ), важные при переходе на многопроцессорную платформу

(продолжение)

Методы верификации программ (спецкурс, год) Методы оптимизации (спецкурс, год) Теория параллельного программирования (спецкурс, 0.5 год) Основы параллельного программирования (спецкурс, 0.5 год) Задачи и методы параллельного программирования

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

(спецкурс, год)

Page 6: изучение системного подхода  в программировании

6

Система привлечения и поддержки талантливой молодежи - Летняя школа юных программистов (ЛШЮП)

(http://school.iis.nsk.su/info/ )

Летние школы юных программистов проводятся в Новосибирском Академгородке, начиная с семидесятых годов

Принять участие в Летней школе юных программистов могут школьники 6-11 классов.

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

За две недели работы школы участники мастерских создают под руководством мастера законченный проект (от мультфильма на Flash до большой клиент-серверной системы на C++).

школьники посещают различные лекции, спецкурсы и семинары

Page 7: изучение системного подхода  в программировании

7

Всесибирская заочная школа информационных технологий (ВЗШИТ)

(http://fit.nsu.ru/)

Дополнительная система обучения школьников в области информатики и программирования

Важное звено – система олимпиадного тренинга для студентов и старшеклассников Новосибирска

Функции координатора осуществляют ФИТ НГУ и ИСИ СО РАН

Партнерство с Интернет-университетом информационных технологий

Page 8: изучение системного подхода  в программировании

8

Причины создания учебно - методического комплекса

Основная причина: необходимость массового овладения практическими навыками параллельного программирования

Существующий «перекос» в базовых курсах в пользу парадигм последовательного программирования и привыкание к ним

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

Недостаточный практический опыт

Недостаточное изучение в рамках базовых курсов параллельных алгоритмов

Page 9: изучение системного подхода  в программировании

9

Методы и концепции:

Смещение сроков начала изучения параллельного программирования к младшим курсамНГУ, реорганизация программ ВЗШИТ и ЛШЮП.

Изучение взаимосвязанного, комплексного или «системного» подхода к программированию как в рамках базовых, так и специальных курсов

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

Углубленное изучение параллельных алгоритмов на старших курсов после получения первоначальных представлений и практических навыков на младших курсах НГУ

Page 10: изучение системного подхода  в программировании

10

Цели и задачи проекта

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

Модернизация базовых курсов «Основы работы на ЭВМ» и «Программирование»

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

Разработка дополнительных блоков для программ предпрофессионального обучения в Всесибирской заочной школе информационных технологий (ВЗШИТ)

Подготовка и проведение мастерских по практическому параллельному программированию в рамках Летней школы юных программистов (ЛШЮП)

Page 11: изучение системного подхода  в программировании

11

Специальности НГУ, которых непосредственно касается

переход на многопроцессорную платформу

2201, 220100 Вычислительные машины, комплексы, системы и сети

2203, 220400 Программное обеспечение вычислительной техники и автоматизированных систем

552800, 654600 Информатика и вычислительная техника

510200, 010200 Прикладная математика и информатика

Page 12: изучение системного подхода  в программировании

12

Специальности НГУ, которых может коснуться

переход на многопроцессорную платформу

010500, 510300 Механика 510400 Физика 510500, 011000 Химия 511000 Геология 011600 Биология

Page 13: изучение системного подхода  в программировании

13

ПЕРСПЕКТИВЫ (2008 – 2010)

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

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

Page 14: изучение системного подхода  в программировании

14

«Практическое параллельное программирование в системах с общей памятью» (спецкурс)

Лекции – 18 ч.

Лабораторные занятия – 18 ч.

Итоговый контроль – дифференцированный зачет

Количество студентов – определяется количеством мест в компьютерном классе

Page 15: изучение системного подхода  в программировании

15

Динамическое наполнение спецкурса – выбор подробно изучаемых:

Методология параллельного программирования

Технология параллельного программирования в системах с общей памятью

Инструмент по изучению качества последовательного кода

Инструмент по отладке параллельного кода

Инструмент по профилированию параллельной программы

Page 16: изучение системного подхода  в программировании

16

Цели дисциплины:

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

Ознакомление в минимальном объеме с теоретическими основами функционирования уровней и их взаимосвязей

Page 17: изучение системного подхода  в программировании

17

Структура спецкурса

Блок лекций

Блок лабораторного практикума

Page 18: изучение системного подхода  в программировании

18

Лекции (содержание)

Теоретические основы строения и функционирования параллельных архитектур с общей памятью

Основы выбранной методологии параллельного программирования

Основы выбранной технологии параллельного программирования в системе с общей памятью

Особенности работы операционной системы при выполнении параллельного приложения

Необходимые сведения об инструментальных средствах тестирования

Page 19: изучение системного подхода  в программировании

19

Лабораторный практикум (структура)

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

Выполнение курсовой работы на основе индивидуальной задачи более высокого уровня сложности (предполагаемый класс задач - криптография)

Подготовка реферата – теоретическое описание с демонстрационным примером

Page 20: изучение системного подхода  в программировании

20

По окончании изучения дисциплины студент должен :

 

иметь представление об основных составляющих комплексного подхода

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

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

Page 21: изучение системного подхода  в программировании

21

????