- •Министерство образования республики беларусь
- •Белорусский государственный университет
- •Факультет прикладной математики и информатики
- •Кафедра технологий программирования
- •Жизненный цикл проекта
- •Характеристики фаз проекта
- •Описание основных фаз проекта:
- •Инициация проекта
- •Современные процессы разработки программного обеспечения.
- •Выбор методологии
- •Характеристики жизненного цикла проекта
- •Жесткие методологии Модель водопада
- •Итеративная разработка
- •Спиральная модель
- •Гибкие методологии
- •Выбор архитектуры решения
- •Вычислительные системы
- •Операционные системы
- •Классификация операционных систем
- •Особенности областей использования
- •Менеджмент проектов
- •2. Команда менеджмента проекта
- •2.1. Команды в проекте
- •2.2. Соотношение между различными командами в проекте
- •2.3. Цели кмп в проекте
- •3. Создание и развитие кмп
- •3.1. Сущность и характеристики кмп
- •С позиции системного подхода:
- •С позиции психологическогой подхода:
- •С позиции проектного подхода:
- •Управление трудовыми ресурсами проекта и менеджмент человеческих ресурсов проекта
- •3.3. Интегрированная культура кмп
- •4. Оценка деятельности кмп
- •4.1. Что такое эффективная кмп?
- •4.2. Команда Менеджмента Проекта – критический фактор успеха проекта
- •Парадигмы программирования
- •Структурное программирование
- •1. Основные предпосылки структурного программирования
- •2. Цели и задачи структурного программирования
- •3. Реализация структурного программирования
- •Событийно-ориентированное программирование
- •Обработка событий
- •Сферы применения
- •Перспективы
- •Недостатки
- •Объектно-ориентированное программирование
- •Особенности реализации
- •Достоинства ооп
- •Функциональное программирование
- •Концепции
- •Рекурсия
- •Функции высших порядков
- •Аспектно-ориентированное программирование
- •Преимущества использования аоп
- •Недостатки аспектного подхода
- •Визуально-ориентированное программирование
- •Другие парадигмы Процедурное (императивное) программирование
- •Автоматное программирование
- •Логическое программирование.
- •Качество кода Рефакторинг
- •Разумные причины выполнения рефакторинга
- •Когда не следует выполнять рефакторинг
- •Безопасный рефакторинг
- •Документирование
- •Внешняя документация
- •Внутренняя документация
- •Комментарии Комментировать или не комментировать?
- •Виды комментариев
- •Обработка исключений
- •Некоторые предложения по реализации исключений:
- •Архитектура программного обеспечения
- •История
- •Отличие архитектуры по от детального проектирования по
- •Примеры архитектурных стилей и моделей
- •Паттерны проектирования
- •Шаблон AbstractFactory
- •Шаблон Builder
- •Шаблон Bridge
- •Паттерны проектирования классов/обьектов
- •Архитектурные системные паттерны
- •Структурные паттерны
- •Паттерны, обеспечивающие взаимодействие с базой данных
- •Структурные паттерны интеграции
- •Паттерны по методу интеграции
- •Тестирование программного обеспечения Классификация видов тестирования
- •Уровни тестирования
- •Модульное тестирование
- •Интеграционное тестирование
- •Системное тестирование программного обеспечения
- •Функциональное тестирование
- •Регрессионное тестирование
- •Верификационные тесты (Verification Test).
- •Нагрузочное тестирование
- •Тестирование «белого ящика» и «чёрного ящика»
- •Поддержка по. Контроль версий Сопровождение программного обеспечения
- •Возраст и структура программы
- •Процесс сопровождения
- •Процесс управления изменениями
- •Прогнозирование сопровождения
- •Управление изменениями
- •Управление версиями и выпусками
- •Идентификация версий
- •Нумерация версий
- •Идентификация, основанная на значениях атрибутов
- •Идентификация на основе изменений
- •Средства поддержки управления изменениями
- •Средства поддержки управления версиями
- •История
- •Немного о продуктах компании
- •О новинках Облачные вычиления
- •Новые операционные системы
- •Другие разработки
- •Интересные факты
- •Как всё начиналось
- •Настоящее время
- •Позиции на мировом рынке
- •Новые продукты Oracle Новые продукты в области субд
- •Новые продукты в области связующего программного обеспечения
- •Инновации в области управления эффективностью предприятия и бизнес-анализа
- •Новые версии бизнес-приложений и отраслевых решений
- •Разработки компании Apple
- •На чем написан mac os?
- •Особенности Mac
- •История создания Google
- •Индустрия игр.
- •Компьютерные игры. История.
- •Компьютерные игры. Тенденции.
- •Компьютерные игры. Компании.
- •Компьютерные игры. Online.
- •Стандартные приложения Android
- •Разработка программного обеспечения
- •Разработки, происходящии на данный момент
- •Уникальность Android
- •Недостатки Android
- •Позиции на мировом рынке
- •Почему мобильный Windows непопулярен?
- •“Нужно перестать делать телефон центром вашей жизни, пускай ваша жизнь станет центром для телефона”
- •Целевая аудитория:
- •Особенности интерфейса
- •Общие положения
- •Неполная многозадачность
- •Разработка игр и приложений
- •Заключение
- •Сетевые операционные системы Структура сетевой операционной системы
- •Одноранговые сетевые ос и ос с выделенными серверами
- •Примеры серверных ос
- •Роли Active Directory
- •Пользовательские unix-системы
- •Основные пользовательские unix и unix-подобные ос
- •Облачные вычисления
- •Примеры
- •Любой ли сервис по запросу есть облако?
- •Нужны ли облака?
- •Внешние и внутренние облака
- •Какие услуги предоставляются в рамках модели облачных вычислений?
- •Сколько стоят вычисления в облаках?
- •Каковы гарантии того, что облако всегда будет на связи?
- •Проблемы облачных технологий
- •Как минимизировать риски при переходе на облачные вычисления?
- •Безопасность
- •Технология
- •Перспективы
- •Технология Rich Internet Application. Платформы для разработки ria.
- •Преимущества
- •Недостатки
- •Введение в аsр.Nет
- •История asp.Net
- •Принципы asp.Net
- •Компилируемый код выполняется быстрее, большинство ошибок отлавливается ещё на стадии разработки
- •Asp.Net имеет преимущество в скорости по сравнению с другими технологиями, основанными на скриптах. Возможности asp.Net
- •Оттранслированные программы
- •Элементы управления сервера
- •Независимость кода от браузеров
- •Отделение кода от содержимого
- •Управление состоянием
- •Управление состоянием в аsр.Nет
- •Искусственный интеллект
- •Предпосылки развития науки искусственного интеллекта
- •Подходы и направления
- •Тест Тьюринга
- •Символьный подход
- •Логический подход
- •Накопление и использование знаний
- •Суть процесса искусственного мышления
- •Применение
- •Перспективы
- •Искусственный интеллект в играх
- •Нейронные сети
- •Возможные способы применения и реализации
- •Категории аппаратного обеспечения инс
- •Цифровое исполнение
- •Аналоговое исполнение
- •Гибридное исполнение
- •Области применения нейронных сетей
- •Классификация угроз безопасности Web-приложений
- •Мировой рынок экспортного программирования
- •Прогноз развития мирового и российского рынка
- •Белорусские компании
- •Каким может быть аутсорсинг
- •Авторское право по как объект авторского права
- •Права автора Личные неимущественные права:
- •Личные имущественные права:
- •Способы защиты авторского права
- •Нарушение авторских прав
- •Типы лицензий
- •Пиратское по
- •Взгляд в будущее
- •Защита от несанкционированного копирования Введение
- •Организационные меры защиты
- •Защита при помощи компьютерных компакт-дисков
- •Методы взлома/обхода технических мер защиты
- •Проблема «лучше, чем легальное»
- •Классы атак Аутентификация (Authentication)
- •Авторизация (Authorization)
- •Атаки на клиентов (Client-side Attacks)
- •Выполнение кода (Command Execution)
- •Разглашение информации (Information Disclosure)
- •Логические атаки (Logical Attacks)
- •Компьютерные вирусы
- •Классификация вирусов
- •Топ 10 вирусов
- •Антивирусные программы
- •Методы обнаружения вирусов
- •Метод соответствия определению вирусов в словаре
- •Метод обнаружения странного поведения программ
- •Метод обнаружения при помощи эмуляции
- •Метод «Белого списка»
- •Эвристический анализ
Классификация вирусов
Существует очень много разных вирусов. Условно их можно классифицировать следующим образом:
1) загрузочные вирусы или BOOT-вирусы заражают boot-секторы дисков. Очень опасные, могут привести к полной потере всей информации, хранящейся на диске;
2) файловые вирусы заражают файлы. Делятся на:
вирусы, заражающие программы (файлы с расширением .EXE и .COM);
макровирусы вирусы, заражающие файлы данных, например, документы Word или рабочие книги Excel;
вирусы-спутники используют имена других файлов;
вирусы семейства DIR искажают системную информацию о файловых структурах;
3) загрузочно-файловые вирусы способные поражать как код boot-секторов, так и код файлов;
4) вирусы-невидимки или STEALTH-вирусы фальсифицируют информацию прочитанную из диска так, что программа, какой предназначена эта информация получает неверные данные. Эта технология, которую, иногда, так и называют Stealth-технологией, может использоваться как в BOOT-вирусах, так и в файловых вирусах;
5) ретровирусы заражают антивирусные программы, стараясь уничтожить их или сделать нетрудоспособными;
6) вирусы-черви снабжают небольшие сообщения электронной почты, так называемым заголовком, который по своей сути есть Web-адресом местонахождения самого вируса. При попытке прочитать такое сообщение вирус начинает считывать через глобальную сеть Internet свое 'тело' и после загрузки начинает деструктивное действие. Очень опасные, так как обнаружить их очень тяжело, в связи с тем, что зараженный файл фактически не содержит кода вируса.
Топ 10 вирусов
В 2004 году школьник из Германии написал и запустил вирус Sasser. Он заблокировал спутниковую связь французских новостных агентств и отменил несколько рейсов компании Delta. Этот роскошный подарок милый ребенок преподнес себе на 18-летие.
10 место: Первый в истории интернет-червь появился в 1988 году. Червь Morris заразил тысячи компьютеров и практически остановил работу интернета на целый день.
9 место: Самый разрекламированный вирус – это, безусловно, CIH (“Чих”, или “Чернобыль”). Он пришел из Тайваня в июне 1998-го. «Чернобыль» заражал файлы и размножался через оперативную память. Он мог перезаписать микросхемы BIOS и вывести компьютеры из строя.
8 место: Самым заманчивым является червь Sober версии V. Суля бесплатные билеты на мировой футбольный кубок 2006 года в Германии, ему удалось достигнуть значительного уровня заражений. К счастью, пользователи стали осторожнее, и создателю не удалось начать новую эпидемию.
7 место: Самые конъюнктурные вирусы – это «Анна Курникова» и «Бен Ладен». Они появились на волнах популярности соответствующих персонажей, наделали много шуму, но не были такими уж страшно опасными.
6 место: Титул самого грубого без сомнения получает Cisum.A. Этот червь, отключая антивирусные защитные системы на зараженных компьютерах, оставляет пользователю сообщение: “Ты идиот”. Оно не только появляется в небольшом окне на экране, но также раздается из колонок компьютера каждые пять секунд.
5 место: Самый бесчувственный – это червь Zar.A. Он использовал тему пожертвований пострадавшим в результате Азиатского цунами, чтобы заставить пользователей открыть файл, содержащего вредоносный код.
4 место: Самый быстро распространяющийся вирус – это знаменитая «Мелисса». 26 марта 1999 года им заразились 100 тысяч компьютеров по всему миру, что составляло на тот момент 20% деловых компьютеров в мире. Melissa распространялся по электронной почте настолько быстро, что многие крупные корпорации, включая Intel и Microsoft, были вынуждены заблокировать внутреннюю почту.
3 место: Самый знаменитый вирус – это, конечно, ILOVEYOU (Loveletter и The Love Bug) 3 мая 2000 года вирус обнаружился в Гонконге. Он распространялся по почте с темой письма “Я тебя люблю” и вложением файла с “двойным” расширением .txt.vbs. Найденные в компьютере логины и пароли аккуратный вирус высылал своему создателю.
2 место: Самый опасный вирус – Whiter.F, “благородный” код, удаляющий все содержимое жёсткого диска. Любопытный аспект этого кода в том, что перед удалением он заменяет все файлы пользователя на текстовые со следующим сообщением: You did a piracy, you deserve it (ты занимался пиратством и заслужил это).
1 место: Самый милый компьютерный вирус был даже не совсем вирусом, а просто милой игрушкой, мотающей нервы владельцу компьютера. Вирус требовал: «Дай чучу!» – и отключал компьютер, пока пользователь не набирал эту «чучу» на клавиатуре.
Stuxnet
win32/Stuxnet — поражающий компьютеры под управлением операционной системы Microsoft Windows компьютерный червь. Он был обнаружен в промышленных системах, управляющих автоматизированными производственными процессами, в июне 2010 года. Это первый известный компьютерный червь, руткит которого действует на уровне логических контроллеров. Таким образом, Stuxnet заражает не столько программное обеспечение, сколько аппаратную основу системы, что значительно затрудняет борьбу с ним. Имеются сведения, что 60 % всех компьютеров, пораженных этим вирусом, расположены на стратегических объектах атомной промышленности Ирана. Впрочем, компания Siemens, производившая компьютерное оборудование для иранских заводов, опровергает эту версию.
Тем не менее в прессе было сделано предположение, что Stuxnet представляет собой специализированную военную разработку, возможно израильскую, поскольку исходный код вируса содержит завуалированные упоминания слова MYRTUS. Этим словом буквально переводится с иврита имя библейского персонажа, персидской царицы иудейского происхождения Эсфири, которая помогла сорвать план нападения персов на Иудейское царство. Кроме того, в коде однажды встречается никак не объясненная дата 9 мая 1979 г. (19790509) -- по странному совпадению, на этот день пришлась казнь известного иранского промышленника Хабиба Эльганяна, еврея по национальности.
Данный вирус использует четыре ранее неизвестные уязвимости системы Microsoft Windows одна из которых «нулевого дня» (zero-day), направленная на распространение при помощи USB-flash накопителей. Данный червь примечателен тем, что, по сути, он является инструментом промышленного шпионажа — он предназначен для получения доступа к системе Siemens WinCC, которая отвечает за сбор данных и оперативное диспетчерское управление крупным производством. Ускользать от антивирусных программ ему помогало наличие настоящих цифровых подписей, (два действительных сертификата выпущенных компаниями Realtek и JMicron).
До поры до времени Stuxnet никак себя не проявляет, но в заданный момент времени он может, как полагают, отдать команды, физически выводящие из строя промышленное оборудование.
Таким образом, данный вирус может стать «первым настоящим программным оружием», так как он, как утверждается, способен «выйти за пределы цифрового мира» и уничтожить материальные объекты — а не только парализовать интернет-коммуникации.
Объём вируса составляет примерно 500 КБ кода на ассемблере, С и С++.
В августе 2010 года сотрудниками лаборатории Касперского было выдвинуто предположение, что за созданием вируса стояли крупные государственные структуры.
