2.5 Характеристика программного продукта.
Все программы по характеру использования и категориям пользователей можно разделить на два класса (рис.2.4) — утилитарные программы и программные продукты (изделия).
Утилитарные программы ("программы для себя") предназначены для удовлетворения нужд их разработчиков. Чаще всего утилитарные программы исполняют роль сервиса в технологии обработки данных либо являются программами решения функциональных задач, не предназначенных для широкого распространения.
Программные продукты (изделия) предназначены для удовлетворения потребностей пользователей, широкого распространения и продажи.
В настоящее время существуют и другие варианты легального распространения программных продуктов, которые появились с использованием глобальных или региональных телекоммуникаций:
freeware — бесплатные программы, свободно распространяемые, поддерживаются самим пользователем, который правомочен вносить в них необходимые изменения;
shareware — некоммерческие (условно-бесплатные) программы, которые могут использоваться, как правило, бесплатно. При условии регулярного использования подобных продуктов осуществляется взнос определенной суммы.
Рис. 2.4. Классификация программ по категориям пользователей
Ряд производителей использует OEM-программы (Original Equipment Manufacturer), т.е. встроенные программы, устанавливаемые на компьютеры или поставляемые вместе с вычислительной техникой.
Программный продукт должен быть соответствующим образом подготовлен к эксплуатации, иметь необходимую техническую документацию, предоставлять сервис и гарантию надежной работы программы, иметь товарный знак изготовителя, а также желательно наличие кода государственной регистрации. Только при таких условиях созданный программный комплекс может быть назван программным продуктом.
Программный продукт — комплекс взаимосвязанных программ для решения определенной проблемы (задачи) массового спроса, подготовленный к реализации как любой вид промышленной продукции.
Путь от "программ для себя" до программных продуктов достаточно долгий, он связан с изменениями технической и программной среды разработки и эксплуатации программ, с появлением и развитием самостоятельной отрасли — информационного бизнеса, для которой характерны разделение труда фирм — разработчиков программ, их дальнейшая специализация, формирование рынка программных средств и информационных услуг.
Программные продукты могут создаваться как:
индивидуальная разработка под заказ;
разработка для массового распространения среди пользователей.
При индивидуальной разработке фирма-разработчик создает оригинальный программный продукт, учитывающий специфику обработки данных для конкретного заказчика.
При разработке для массового распространения фирма-разработчик, с одной стороны, должна обеспечить универсальность выполняемых функций обработки данных, с другой стороны, гибкость и настраиваемость программного продукта на условия конкретного применения. Отличительной особенностью программных продуктов должна быть их системность — функциональная полнота и законченность реализуемых функций обработки, которые применяются в совокупности.
Программный продукт разрабатывается на основе промышленной технологии выполнения проектных работ с применением современных инструментальных средств программирования. Специфика заключается в уникальности процесса разработки алгоритмов и программ, зависящего от характера обработки информации и используемых инструментальных средств. На создание программных продуктов затрачиваются значительные ресурсы — трудовые, материальные, финансовые; требуется высокая квалификация разработчиков.
Как правило, программные продукты требуют сопровождения, которое осуществляется специализированными фирмами — распространителями программ (дистрибьюторами), реже — фирмами-разработчиками. Сопровождение программ массового применения сопряжено с большими трудозатратами — исправление обнаруженных ошибок, создание новых версий программ и т.п.
Сопровождение программного продукта — поддержка работоспособности программного продукта, переход на его новые версии, внесение изменений, исправление обнаруженных ошибок и т.п.
Программные продукты в отличие от традиционных программных изделий не имеют строго регламентированного набора качественных характеристик, задаваемых при создании программ, либо эти характеристики невозможно заранее точно указать или оценить, так как одни и те же функции обработки, обеспечиваемые программным средством, могут иметь различную глубину проработки. Даже время и затраты на разработку программных продуктов не могут быть определены с большой степенью точности заранее.
Основными характеристиками программ являются:
алгоритмическая сложность (логика алгоритмов обработки информации);
состав и глубина проработки реализованных функций обработки;
полнота и системность функций обработки;
объем файлов программ;
требования к операционной системе и техническим средствам обработки со стороны программного средства;
объем дисковой памяти;
размер оперативной памяти для запуска программ;
тип процессора;
версия операционной системы;
наличие вычислительной сети и др.
Программные продукты имеют многообразие показателей качества, которые отражают следующие аспекты:
насколько хорошо (просто, надежно, эффективно) можно использовать программный продукт;
насколько легко эксплуатировать программный продукт;
можно ли использовать программный продукт при изменении условия его применения и др.
Дерево характеристик качества программных продуктов представлено на рис. 2.5.
Мобильность программных продуктов означает их независимость от технического комплекса системы обработки данных, операционной среды, сетевой технологии обработки данных, специфики предметной области и т.п. Мобильный (многоплатформный) программный продукт может быть установлен на различных моделях компьютеров и операционных систем, без ограничений на его эксплуатацию в условиях вычислительной сети. Функции обработки такого программного продукта пригодны для массового использования, без каких- либо изменений.
Рис. 2.5. Дерево характеристик качества программного продукта
Надежность работы программного продукта определяется бессбойностью и устойчивостью в работе программ, точностью выполнения предписанных функций обработки, возможностью диагностики возникающих в процессе работы программ ошибок.
Эффективность программного продукта оценивается как с позиций прямого его назначения — требований пользователя, так и с точки зрения расхода вычислительных ресурсов, необходимых для его эксплуатации.
Расход вычислительных ресурсов оценивается через объем внешней памяти для размещения программ и объем оперативной памяти для запуска программ.
Учет человеческого фактора означает обеспечение дружественного интерфейса для работы конечного пользователя, наличие контекстно-зависимой подсказки или обучающей системы в составе программного средства, хорошей документации для освоения и использования заложенных в программном средстве функциональных возможностей, анализ и диагностику возникших ошибок и др.
Модифицируемость программных продуктов означает способность к внесению изменений, например расширение функций обработки, переход на другую техническую базу обработки и т.п.
Коммуникативность программных продуктов основана на максимально возможной их интеграции с другими программами, обеспечении обмена данными в общих форматах представления (экспорт/импорт баз данных, внедрение или связывание объектов обработки и др.).
В условиях существования рынка программных продуктов важными характеристиками являются:
стоимость;
количество продаж;
время нахождения на рынке (длительность продаж);
известность фирмы-разработчика и программы;
наличие программных продуктов аналогичного назначения.
Программные продукты массового распространения продаются по ценам, которые учитывают спрос и конъюнктуру рынка (наличие и цены программ-конкурентов). Большое значение имеет проводимый фирмой маркетинг, который включает:
формирование политики цен для завоевания рынка;
широкую рекламную кампанию программного продукта;
создание торговой сети для реализации программного продукта (так называемые дилерские и дистрибьютерные центры);
обеспечение сопровождения и гарантийного обслуживания пользователей программного продукта, создание горячей линии (оперативный ответ на возникающие в процессе эксплуатации программных продуктов вопросы);
обучение пользователей программного продукта.
Спецификой программных продуктов (в отличие от большинства промышленных изделий) является также и то, что их эксплуатация должна выполняться на правовой основе — лицензионные соглашения между разработчиком и пользователями с соблюдением авторских прав разработчиков программных продуктов.
- 1. Понятие и свойства информации
- 1.1 Понятие информации
- 1.2 Понятие о информатике
- 1.3 Структура информатики
- 2. Компьютерные технологии обработки информации.
- 2.1 Архитектура и структура персонального компьютера
- 2.2 Классификация компьютеров
- 2.2.1 Карманные пк
- 2.2.2 Блокнотные пк
- 2.2.3 Персональные компьютеры сферы автоматизации домашнего хозяйства
- 2.2.4 Базовые настольные персональные компьютеры
- 2.2.5 Сетевые персональные компьютеры
- 2.2.6 Высокопроизводительные настольные персональные компьютеры и серверы начального уровня
- 2.2.7 Многопроцессорные рабочие станции и серверы высокого уровня
- 2.2.8 Суперкомпьютеры и кластерные системы
- 2.3 Основные понятия программного обеспечения
- 2.4 Категории специалистов, занятых разработкой и эксплуатацией программ.
- 2.5 Характеристика программного продукта.
- 2.6 Жизненный цикл программного продукта.
- 2.7 Основные классы программных продуктов и их назначение.
- 3. Архитектура аппаратных и программных средств ibm-совместимых персональных компьютеров (рс)
- 3.2. Устройства, входящие в состав системного блока
- 3.2.1. Материнская плата
- 3.2.2. Центральный процессор
- 3.2.3. Оперативная память
- 3.2.4. Жесткий диск
- 3.2.5. Графическая плата
- 3.2.6. Звуковая плата
- 3.2.7. Сетевая плата
- 3.2.9. Дисковод 3,5’’
- 3.2.10. Накопители на компакт-дисках
- 3.2.11. Накопители на dvd дисках
- 3.2.12. Флэш-память
- 3.3. Периферийные устройства
- 3.3.1. Клавиатура
- 3.3.2. Манипуляторы
- 3.3.3. Сканер
- 3.3.4. Цифровой фотоаппарат
- 3.3.5. Мониторы электронно-лучевые (crt)
- 3.3.6. Мониторы жидкокристаллические (lcd)
- 3.3.7. Плазменные панели (pdp)
- 3.3.8. Принтеры
- 3.3.8.1 Матричные принтеры
- 3.3.8.2 Струйные принтеры (Ink Jet)
- 3.3.8.3 Лазерные принтеры (Laser Jet)
- 3.3.9. Плоттер
- 3.3.10. Модем
- 3.4. Конфигурация компьютера
- 4. Основы работы пользователя в операционной среде персонального компьютера.
- 4.1 Структура системного программного обеспечения.
- 4.2 Базовое программное обеспечение
- 4.3 Сервисное программное обеспечение
- 5. Понятие и свойства информации
- 5.1 Общая характеристика процессов сбора, передачи, обработки и накопления информации и основные операции с данными
- 5.2 Носители данных.
- 5.3 Представление информации в эвм.
- 5.3.1 Системы счисления в эвм
- 5.3.2 Формы представления и кодирование числовых данных
- 5.3.3 Универсальная система кодирования текстовых данных
- 5.4 Единицы представления данных
- 5.5 Единицы измерения данных
- 5.6 Единицы хранения данных
- 5.6.1 Файлы
- 5.6.2 Особенности использования имен файлов в ос семейства Windows.
- 5.6.3 Папки.
- 5.6.4 Понятие о файловой структуре и файловой системе
- 5.7 Формы адекватности информации
- 5.8 Меры информации
- 5.8.1 Синтаксическая мера информации
- 5.8.2 Семантическая мера информации
- 5.8.3 Прагматическая мера информации
- 5.9 Качество информации
- 6. Основы булевой алгебры
- 6.1 Основные понятия Булевой алгебры
- 6.2 Элементарные логические операции
- 6.3 Вычисление выражений.
- 6.4 Законы булевой алгебры.
- 7. Специализированные профессионально ориентированные программные средства
- 7.1. Текстовые процессоры
- 7.2 Табличные процессоры
- 7.2.1 Основные понятия табличных процессоров
- 7.2.2 Основные типы данных в Microsoft Excel
- 7.2.2.1 Формулы
- 7.2.2.1 Функции
- 7.2.3 Относительная и абсолютная адресация
- 7.2.4 Обобщенная технология работы с электронной таблицей
- 8. Информатизация общества
- 8.1 Информационные ресурсы
- 8.3 Рынок информационных продуктов и услуг