Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Горбунов / УП_ОПТ1 / Р1_Введение.doc
Скачиваний:
26
Добавлен:
16.04.2013
Размер:
175.1 Кб
Скачать
    1. Цели и задачи.

«Обдумывай по дважды и по трижды то, что придет тебе на ум.»

Феогнид. Приба, 2-пол.VI в.до н.э.

Настоящий курс ориентируется на студентов, уже имеющих практику программирования на языке С++ несложных задач учебного характера. Однако, требования предъявляемые к созданию современного программного обеспечения требуют широкого кругозора и знания элементов многих специальных теоретических дисциплин. Цель настоящего курса - в едином комплексе дать студентам самые необходимые начальные знания, которые должны облегчить им изучение специальных разделов различных технологий и освоение современной практики их использования при разработке и эксплуатации сложного программного обеспечения. Важно, что на этом материале возникает понимание ими общих принципов создания и развития сложных систем вообще, так характерных для предметных областей всех высоких технологий.

Естественной основой для достижения поставленной цели служатнавыки системногоанализапредметной области, т.е. технология последовательного выделения,изучения и освоенияспециалистом особенностей методов, технологий и соглашений, существующихв конкретной областиреальногомира.Кто ясно мыслит, тот не только просто излагает, но и создает успешные проекты. Системный анализ занимает важнейшее место в практике не только разработки сложных программных систем, но и формируют мировозрение ибазу принятия решенийспециалистамив самых различных проблемных ситуациях. Выработанная системными аналитиками “точка зрения” на проблемную ситуациюпронизывает всюпоследующую разработку, формирует систему понятий решаемой задачи,создает (или нет)целостность программного продукта, т.е. оказывается своего рода “идеологией” сложной инженерной разработки.

Основой системныхсоглашений коллектива разработчиково представлении имипредметной областимогут служитьсамые разнообразные технологии (вплоть до их отсутствия и даже предрасудков). Но безпринятия единой системы понятий (а это часть технологий организации данных – их проектирование на концептуальном уровне),совместная коллективная деятельность невозможна вообще.Поэтому независимо от последующей специализации студентам важно полноценно освоить современные технологииработы с данными. Здесь особое место занимает теорияи практика реляционных баз данных (и освоение самихреляционные СУБД – систем управления базами данных). Они стали стандартом общения как сообщества специалистов, так и самихвычислительных систем (различные интегрированные базы данных, хранилища данных, системы OLAP и многое другое)в организационных, промышленных и научных программных комплексах.

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

Для поддержки различных методик и технологий существуют специализированные средства (CASE) программных разработок. Не надо их бояться, т.к. основная идея их достаточно проста (чего нельзя сказать о совокупности их не всегда документированных свойств). Наиболее перспективные технологии создания и развития сложных систем (ООП) используют язык UML (Unified Modeling Language). Они представлены в настоящем курсе элементами технологии RUP (Rational Unified Process).Для хорошего понимания проблематики и ценности последней технологии желательно предварительно лично поучаствовать в работе над провалившимся программным проектом. Поэтому комплекс идей UML & RUP далеко не просто усвоить, т.к. учиться на чужих ошибках – всегда трудно.Онибудут излагаться во второй частинашегокурса.К сожалению, практика их преподавания показала, что действительно глубокое понимание данных новых технологий возникает только после личного участия слущателей в сложных программных проектах.

Соседние файлы в папке УП_ОПТ1