
- •Введение
- •Жизненный цикл it-проекта
- •Концепция проекта
- •Определение проекта
- •Выполнение проекта
- •Завершение проекта
- •Стандарты жизненного цикла
- •Выбор методологии
- •Жесткие и гибкие методологии Модель водопада
- •Итеративная разработка
- •Спиральная модель
- •Архитектура Вычислительные системы
- •Операционные системы
- •Выбор языка и среды программирования
- •Краткий обзор распространенныхпромышленных языков программирования и программных платформ
- •Разработка программного обеспечения Парадигмы программирования
- •Структурное программирование
- •Процедурное программирование
- •Функциональное программирование
- •Событийно-ориентированное программирование
- •Объектно-ориентированное программирование
- •Аспектно-ориентированное программирование
- •Визуально-ориентированное программирование
- •Метапрограммирование
- •Качество кода. Критерии качества кода
- •Форматирование и оформление
- •Комментарии
- •Читаемость
- •Обработка исключений
- •Документирование
- •Рефакторинг
- •Архитектура программного обеспечения
- •Отличие архитектуры по от детального проектирования по
- •Примеры архитектурных стилей и моделей
- •Паттерны проектирования
- •Адаптер (adapter, wrapper)
- •Абстрактная фабрика (abstractfactory, kit)
- •Стратегия (strategy, policy)
- •Менеджмент Проекта
- •Проектный менеджмент
- •Команда менеджмента проекта Команды в проекте
- •Соотношение между различными командами в проекте
- •Цели кмп в проекте
- •Создание и развитие кмп Сущность и характеристики кмп
- •Управление трудовыми ресурсами проекта и менеджмент человеческих ресурсов проекта
- •Интегрированная культура кмп
- •Оценка деятельности кмп Что такое эффективная кмп?
- •Команда Менеджмента Проекта – критический фактор успеха проекта
- •Структура проекта Определение проекта
- •Основные признаки проекта
- •Направленность на достижение целей
- •Координированное выполнение взаимосвязанных действий
- •Ограниченная протяженность во времени
- •Уникальность
- •Структура проекта
- •Разработка программного обеспечения Виртуальная реальность
- •Виртуальная реальность в играх.
- •Виртуальная реальность и 3d.
- •История виртуальной реальности.
- •Что такое виртуальная реальность?
- •Миры с различными потенциально-возможными сценариями хода событий
- •Студии виртуальной реальности на телевидении
- •Имитационное моделирование
- •Искусственный интеллект
- •Предпосылки развития науки искусственного интеллекта
- •Подходы и направления
- •Тест Тьюринга
- •Символьный подход
- •Логический подход
- •Накопление и использование знаний
- •Суть процесса искусственного мышления
- •Применение
- •Перспективы
- •Искусственный интеллект в играх
- •Распределённые и облачные вычисления Распределённые вычисления
- •История
- •Участие в проектах распределенных вычислений Общая схема участия
- •Привлечение и мотивация участников
- •Критика проектов распределенных вычислений
- •Организации, участвующие в проектах распределенных вычислений
- •Список проектов распределённых вычислений
- •Биология и медицина
- •Математика и криптография
- •Естественные науки
- •По для организации распределённых вычислений
- •Облачные вычисления
- •Терминология
- •Критика
- •Примеры
- •Потребность
- •Внешние и внутренние облака
- •Стоимость
- •Надёжность
- •Проблемы облачных технологий
- •Нейронные сети
- •Возможные способы применения и реализации
- •Категории аппаратного обеспечения инс
- •Цифровое исполнение
- •Аналоговое исполнение
- •Гибридное исполнение
- •Области применения нейронных сетей
- •Аутсорсинг
- •Мировой рынок экспортного программирования
- •Прогноз развития мирового и российского рынка
- •Белорусскиекомпании
- •Типы аутсорсинга
- •Развитие cad технологий
- •Исправление ошибок
- •Системы старшего класса
- •Большие сборки
- •Зачем нужны сборки
- •Стратегии упрощения
- •Моделирование
- •Параметризация
- •Гибридное моделирование
- •Практические результаты
- •Проектная база: технология моделирования
- •Переход к гибридному моделированию
- •Электронная сборка
- •Модель акторов
- •История
- •Фундаментальные концепции
- •Формальные системы
- •Применения
- •Семантика передачи сообщений
- •Локальность
- •Безопасность
- •Актуальность в настоящий момент
- •Социальный компьютинг
- •Сферы применения
- •С чего начать
- •Тестирование программного обеспечения Уровни тестирования
- •Модульное тестирование
- •Интеграционное тестирование
- •Системы непрерывной интеграции
- •Системное тестирование программного обеспечения
- •Функциональное тестирование
- •Регрессионное тестирование
- •Виды тестов регрессии
- •Нагрузочное тестирование
- •Тестирование «белого ящика» и «чёрного ящика»
- •Серый ящик. Комбинация предыдущих.
- •Права автора Личные неимущественные права:
- •Личные имущественные права:
- •Способы защиты авторского права
- •Защита при помощи компьютерных компакт-дисков
- •Методы взлома/обхода технических мер защиты
- •Нарушение авторских прав
- •Типы лицензий
- •Проприетарные лицензии
- •Свободные и открытые лицензии
- •Пиратское по
- •Взгляд в будущее
- •Взлом информации и защита от взлома Классы атак Аутентификация (Authentication)
- •Авторизация (Authorization)
- •Атакинаклиентов (Client-side Attacks)
- •Выполнение кода (Command Execution)
- •Разглашение информации (Information Disclosure)
- •Логические атаки (Logical Attacks)
- •Компьютерные вирусы
- •Классификация вирусов
- •Антивирусные программы
- •Методы обнаружения вирусов
- •Метод соответствия определению вирусов в словаре
- •Метод обнаружения странного поведения программ
- •Метод обнаружения при помощи эмуляции
- •Метод «Белого списка»
- •Эвристический анализ
- •Классические hips
- •Экспертные hips
- •Жизненный цикл вируса.
- •Стратегии развития крупнейших it-компаний
- •Перспективы развития Microsoft
- •Секреты успеха
- •Крупнейшие производители современных операционных систем и их продукты
- •Основные заблуждения по поводу Macintosh
- •Технические подробности операционной системы
- •Причины успеха и будущее компании
- •История создания Linux
- •Свободное программное обеспечение
- •Графические интерфейсы Linux
- •Дистрибутивы Linux
- •Безопасность Linux
- •Краткая история FreeBsd и unix
- •Рождение системы bsd
- •Bsd на платформах Intel х86
- •Рождение FreeBsd
- •Преимущества FreeBsd
- •Различия между FreeBsd и Windows
- •Мобильные ос
Нарушение авторских прав
Ответственность за нарушения авторских прав определяется законом. Как правило, наказание включает в себя изъятие программно обеспечения, использованного с нарушение авторских прав, и наложение штрафа. В некоторых случаях предусматривается наказание в виде лишения свободы на срок до двух лет.
В случае, когда код одной программы частично копирует код другой программы, однозначный ответ дать трудно. На практике зачастую используются программы, определяющие процент плагиата, то есть процент кода, копированного или частично измененного. Также учитывается структура программы, то есть если программы содержат одинаковый широко используемый алгоритм, то такой фрагмент кода “украденным” считать нельзя.
|
|
Типы лицензий
Лицензии на программное обеспечение в целом делятся на две большие группы: несвободные (собственнические, они же проприетарные; и полусвободные) и лицензии свободного и открытого ПО. Их различия сильно влияют на права конечного пользователя в отношении использования программы.
Проприетарные лицензии
Основной характеристикой проприетарных лицензий является то, что издатель ПО в лицензии даёт разрешение её получателю использовать одну или несколько копий программы, но при этом сам остаётся правообладателем всех этих копий. Одно из следствий такого подхода заключается в том, что практически все права на ПО остаются за издателем, а пользователю передаётся лишь очень ограниченный набор строго очерченных прав. Для проприетарных лицензий типично перечисление большого количества условий, запрещающих определённые варианты использования ПО, даже тех, которые без этого запрета были бы разрешены законом об авторском праве. Хорошим примером проприетарной лицензии может служить лицензия на Microsoft Windows, которая включает большой список запрещённых вариантов использования, таких как обратная разработка, одновременная работа с системой нескольких пользователей и распространение тестов её рабочих характеристик.
Наиболее значительным следствием применения проприетарной лицензии является то, что конечный пользователь обязан принять её, так как по закону владельцем ПО является не он, а издатель программы. В случае отказа принять лицензию пользователь вообще не может работать с программой. Не стоит путать проприетарное ПО с коммерческим.
Свободные и открытые лицензии
В отличие от проприетарных, свободные и открытые лицензии не оставляют права на конкретную копию программы её издателю, а передают самые важные из них (составляющие 4 свободы по определению Фонда СПО, или попадающие под другое определение свободного или открытого ПО) конечному пользователю, который и становится владельцем. В результате пользователь по умолчанию получает важные права, которые закон об авторском праве по умолчанию даёт только владельцу копии, однако все авторские права на ПО по-прежнему остаются у издателя. Примером свободной лицензии является GNU General Public License (GPL), которая даёт пользователю право самому распространять ПО под этой лицензией, участвовать в его обратной разработке или изменять другими способами. Тем не менее, перечисленные права обязывают пользователя ПО под GPL подчиняться определённым правилам, например, любые изменения программы, сделанные пользователем и распространённые дальше, должны сопровождаться исходным кодом этих изменений.
Главной отличительной чертой свободных лицензий является то, что они совершенно не ограничивают личное пользование — пользователь волен принимать или не принимать их: работать с программой он может и без лицензии. Однако если ему требуется какое-либо из дополнительных прав, которые даёт лицензия (например, на распространение ПО, или предоставление доступа к нему по сети [пример — Affero General Public License]), он обязан принять лицензию и действовать в её рамках.
Формы распространения ПО
Freeware
Свободно распространяемые программы. Платить за них не надо. Freeware обычно распространяется в бинарном виде, без исходных кодов. Очень много серьезных компаний пишут freeware-программы. Дело в том, что freeware — прекрасный инструмент в продвижении новых технологий и продуктов. Некоторые shareware-программы становятся бесплатными. Всем известная программа Winamp первоначально была shareware-программой стоимостью в $10. Однако после того, как сайт winamp.com стал привлекать большое количество посетителей, разработчики, получая солидные доходы от рекламы, решили сделать свой продукт бесплатным, еще больше увеличив его популярность. Отметим, что данный тип ПО относится к проприетарному.
Shareware
«Условно бесплатное программное обеспечение». Более официально употребляется наименование этого типа ПО — «пробное» (trial). Основное достоинство shareware — «попробуй, прежде чем купить» (try before you buy). Пользователю предоставляется продукт с некоторыми ограничениями, пока он его не приобретет. Ограничения могут быть функциональными (не все возможности доступны) и/или временными (чаще всего программа работает 30 дней или определенное количество запусков).
Public Domain Software
Очень похож на freeware — программы этого типа также распространяются бесплатно. Однако, в отличие от freeware, где автор программы имеет все права на программу, в случае с public domain у него эти права отсутствуют. Программа распространяется вместе с исходным кодом, и автор отказывается от своих прав.
Open Source
Развитие концепции public domain software, в которой учтены ошибки предыдущего варианта. Программа, как и раньше, распространяется на бесплатной основе вместе с исходным кодом. Однако автор уже не отказывается от своих прав. Существует система требований к лицензии на программный продукт, который называется The Open Source Definition (OSD), которая представлена на сайте. К программе обязательно должен быть приложен исходный код. Модифицированное ПО должно распространяться на тех же условиях, что и исходный продукт. Также здесь будет немаловажным упомянуть и об открытом лицензионном соглашении(GPL). Она предоставляет пользователю права копировать, модифицировать и распространять (в том числе на коммерческой основе) программы (что по умолчанию запрещено законом об авторских правах), а также гарантировать, что и пользователи всех производных программ получат вышеперечисленные права.
Commercial
Коммерческий тип программного обеспечения, т.е. распространяемое за плату. Оплата должна быть произведена сразу после получения копии ПО на лицензионном диске или дискете в фирменной упаковке (часто такие программы называют «коробчатыми»). Использование такой программы без предварительной оплаты является незаконным. Стоит отметить, что на данный момент этот тип ПО приносит наибольший доход фирмам-разработчикам. По оценке журнала «Software Magazine» сумма общемировых годовых доходов компаний «списка 500» бизнеса программного обеспечения составила в 2007 $451,8 миллиарда.
Adware
К этой категории относятся программы, которые во время своей работы демонстрируют пользователю рекламу — чаще всего графические баннеры размером 468x60 точек. Adware сочетает в себе freeware и shareware.Часто данный тип программ относится к вредоносному ПО.
Donationware
Такое ПО также распространяются бесплатно, однако разработчик программы в лицензионном соглашении указывает, что, если пользователю программа нравится, то он может (а не обязан) выслать денежное вознаграждение. Иногда сумма указывается конкретно, а иногда пишется «кто сколько может». Встречается даже такая фраза: «Пришлите мне столько денег, чтобы их хватило на ящик пива
Homepageware
Чем-то похож на adware: вы также не обязаны оплачивать регистрацию, однако при каждом запуске программы вашей домашней страницей будет становиться страница программы.