Маркетинг

Больше данных – меньше проблем!


Новые системы хранения данных для компаний малого и среднего бизнеса. Узнайте подробности и задайте вопросы на on-line-семинаре IBM




White Papers

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

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

Открытые системы :: Академия ОС

О преподавании программной инженерии

в buzz в мой мир в twitter версия для печатисохранить в pdf

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

Ханс ван Влиет

В последние годы программистское сообщество приложило немало усилий для упорядочения накопленных знаний и поиска способов их преобразования в учебные планы. В результате этих усилий появились проекты SWEBOK (Guide to the Software Engineering Body of Knowledge — «Руководство по сумме знаний о программной инженерии») и SE 2004 (Software Engineering 2004).

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

SE 2004 и SWEBOK — важные вехи, отражающие обширный реальный опыт авторских коллективов и результаты обсуждения в рабочих группах. Оба документа особо подчеркивают «инженерную» сторону программной инженерии [1-3], направленность которой влияет как на содержание типичного курса последней, так и на понимание студентами сущности изучаемой дисциплины. Техническая ограниченность понимания дисциплины порождает ряд допущений, способных ввести в заблуждение преподавателей.

Ряд авторов опубликовали схожие статьи о мифах, относящихся к формальным методам, разработке требований и содержанию учебных курсов по программной инженерии. Например, в [4] обсуждается, смогут ли новые выпускные программы по программной инженерии стать панацеей. Заблуждения, о которых идет речь, касаются содержания типичного курса программной инженерии и его восприятия студентами младших курсов.

Контекст

Как правило, голландские университеты не предлагают отдельных ученых степеней по информатике и компьютерной инженерии. Они располагают трехлетней программой бакалавриата и двухлетней магистерской программой по информатике. Большинство студентов выбирают бакалавриат сразу после средней школы. Учебная программа не имеет особой специализации и обычно включает в себя лишь общий курс по программной инженерии, который, как правило, состоит из теоретических основ и практической работы над проектом. Магистерская программа содержит более специализированные курсы по программной инженерии.

В Свободном университете (Vrije Universiteit) оценивают теоретическую и практическую части собственного курса программной инженерии, соответственно, как четыре и восемь зачетных единиц ECTS. В Европейской системе зачетов результатов обучения (European Credit Transfer System, ECTS) одна единица ECTS составляет приблизительно 28 учебных часов, а полный год равен 60 ECTS. Продолжительность курса Свободного университета — 12 недель. Студенты должны изучать его на втором году программы бакалавриата, не имея на начальном этапе достаточной зрелости в области информатики и программной инженерии. Как правило, каждый год на него записываются 150-200 студентов.

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

Заблуждения преподавателей программной инженерии

Заблуждение 1. Для курса программной инженерии нужен промышленный проект

Это заблуждение основано на том, что студентов надо готовить к «реальному миру», который сложен, изменчив и полон противоречий. Он наполнен действующими лицами из разных предметных областей, имеет политические и культурные аспекты. Чтобы достойно ответить на его вызов, следует основывать учебные проекты на реальных примерах [5] или вводить в упражнения для студентов искусственные усложнения и препятствия [6]. Вопрос состоит в том, насколько все это нужно.

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

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

И последнее по счету, но не по важности: студенты еще не осознают всей пользы разработки требований. Несколько лет назад при решении конкретной задачи я попросил студентов первым делом сформулировать требования. Один из них недовольно возразил: «Как я могу написать, что делает система, если я ее пока не запрограммировал?»

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

Максимальное упрощение. В своем учебнике по программной инженерии [7] я использую аналогию с обучением плаванию. В начале XX века амстердамские школьники обычно учились плавать на школьной игровой площадке, лежа на деревянных скамейках и отрабатывая правильные движения. Моему отцу, выросшему в деревне, плавание далось намного труднее — дед обвязал его веревкой вокруг пояса, бросил в реку и крикнул: «Плыви!» Сегодня уроки плавания начинаются мягко, в детском бассейне, с мамой и множеством плавательных приспособлений. Постепенно количество поплавков уменьшается, а бассейн становится глубже.

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


31.08.2006г


Комментарии:


Для того, чтобы оставить комментарий авторизуйтесь или зарегистрируйтесь.

Новости ОСП-ТВ - 03.09.10


30/05/2007 №04

Миражи интеграции
Герман Хохлов
ИТ-рынок наконец-то осознал необходимость интеграции приложений — интеграционные платформы сегодня на пике популярности, а еще пару лет назад приходилось убеждать, что интегрировать лучше «на шине», чем с помощью прямых интерфейсов. Однако сегодня ожидания от внедрения интеграционных платформ часто значительно превосходят их реальные возможности. Мало того, встречаются даже случаи, когда шины рассматриваются как волшебные палочки, решающие все проблемы автоматизации и бизнеса. Интеграция приложений и интеграционные платформы постепенно становятся существенной статьей ИТ-бюджета.
Виртуализация: за и против
Александр Замятин
Сегодня технологии виртуализации вызывают большой интерес со стороны всех участников ИТ-рынка — все больше заказчиков видят в ИТ реальный инструмент бизнеса и все меньше внимания потребители информационных услуг уделяют оборудованию и программным средствам, на которых будет выполняться интересующая их задача. ИТ-инфраструктура все чаще оценивается как единое информационное поле, позволяющее получать, структурировать, обрабатывать и хранить необходимую компании информацию. Концепции виртуализации, начавшие развиваться около 40 лет назад, стали ответом на эти требования, однако виртуализация таит в себе не только преимущества.
Scrum: гибкое управление разработкой
Михаил Борисов
В большинстве случаев программирование — сложный, слабо определенный процесс, требующий от разработчиков творческого подхода. Различные agile-технологии позволяют организовать процесс постепенного приближения к цели проекта путем проведения циклов испытаний с корректировкой последующих, основанных на анализе результатов предыдущих. Scrum — одна из первых методологий циклического наращивания функциональности и корректировки хода проекта на основе анализа обратной связи от пользователей. Методология Scrum устанавливает правила управления процессом разработки и позволяет использовать уже существующие практики кодирования, корректируя требования или внося тактические изменения. Использование этой методологии дает возможность выявлять и устранять отклонения от желаемого результата на более ранних этапах разработки программного продукта.
Метрики управления качеством защиты приложений
Гуннар Петерсон, Элизабет Николс
Функциональность Web-приложений и их пользовательская база развиваются одновременно с ростом угроз, и хотя специальное оборудование (например, сетевые экраны) играет важную роль в деле защиты приложений, для обеспечения их полной безопасности одного оборудования недостаточно. Все эти устройства обеспечивают защиту хостов и средств связи, но почти бессильны перед атаками на сами программные модули или дизайн (интерфейсные экраны) приложения, поэтому предприятия должны сосредоточиться на усилении защиты Web-приложений. Однако здесь сразу появляется ряд вопросов. Какие проблемы могут возникнуть у моих программ? Насколько установленные приложения уязвимы перед лицом наиболее общих угроз? Какие изменения в цикле разработки программного обеспечения могут повлиять на защиту этих уязвимых мест?
Комбайн автоматизации
Александр Александров
Корпоративные платформы управления бизнес-процессами претендуют на то, чтобы, отделив логику выполнения процессов от их программной реализации, включить в единый цикл взаимодействие людей, потоки документов, распределенные информационные системы и базы данных. Когда появился такой «комбайн» с возможностью объединения анализа и моделирования процессов, управления действиями людей и работой информационных систем при обеспечении мониторинга и оптимизации производительности на протяжении жизненного цикла процессов, потребовалось переосмысление организации системы управления бизнес-процессами.
BPM со всех сторон
Наталья Дубова
Ежегодная конференция «Управление бизнес-процессами на предприятии: интеграция в корпоративные системы» вновь собрала полную аудиторию. С чем связан повышенный интерес к BPM и какие решения в данной области предлагаются сегодня отечественному бизнесу? Дисциплина управления бизнес-процессами сложилась в последнее десятилетие в ответ на неэффективную организацию бизнеса по функциональным подразделениям и избыточную сложность предлагаемых подходов к реинжинирингу бизнес-процессов, обычно предписывающих полную и одномоментную перестройку процессов из состояния «как есть» в состояние «как должно быть».
Транзакционная память — первые шаги
Леонид Черняк
Память современных компьютеров в принципе отличается от легендарных ферритовых колечек только своей емкостью и быстродействием: она последовательна по своей природе. С появлением многоядерных процессоров возникает необходимость в альтернативных решениях. Возможно, таким решением станет транзакционная память.

Содержание

Современные архитектуры

Операционные системы

Советы и мнения

Открытые системы

Книги

Книжная полка ОС

Академия ОС

Программная инженерия

Безопасность

Приложения

Разное

Менеджмент ИТ

Платформы

Новости

От редакции



Эта рубрика в архиве
Список номеров за



Инфозоны

DIRECTUM EVERYWHERE

УРАЛХИМ признал DIRECTUM

Система DIRECTUM стала корпоративным стандартом электронного документооборота в масштабах всего холдинга "Уралхим".

Уфа внедряет электронный муниципалитет

Платформа DIRECTUM стала центральным звеном в создаваемой информационной системе, направленной на повышение эффективности и открытости местных органов власти.

Цена вопроса

Кто и когда должен оценивать эффективность ECM-проектов? Как перейти от общих результатов к конкретным количественным характеристикам?

DIRECTUM во власти

Внедрение СЭД в Правительстве Астраханской области: система управления делами для 12 министерств и более 1300 сотрудников.
OSP.RU :: Написать письмо.