
Дисциплина «Проектный практикум»
Литература
1. Вендров, А. М. Проектирование программного обеспечения экономических информационных систем: учебник.– 2-е изд., перераб. и доп. / А. М. Вендров – М.: Финансы и статистика, 2005. – 544 с.
2. Тидвелл Дж. Разработка пользовательских интерфейсов.–СПб.: Питер, 2008.
3. Рудаков А. В. Технология разработки программных продуктов: учеб. Пособие для студ.сред проф. Образования /А.В. Рудаков.–м.: Издательский центр «Академия», 2007.
4. Разработка и стандартизация программных средств и информационных технологий: методические указания / сост. П. В. Минеев. – Абакан: Сиб. Федер. ун-т / ХТИ – Филиал СФУ, 2008. – 27 c.
Цели дисциплины:
Освоение современных методов анализа, проектирования и реализации программных изделий. Изучение средств стандартизации процесса создания программных изделий.
Лекция 1
Стандарты в области программного обеспечения
В толковом словаре по информатике понятие стандартизация определяется как принятие соглашения по спецификации, производству и использованию аппаратных и программных средств вычислительной техники и применение стандартов, норм, правил и т.п.
Стандарты имеют большое значение — они обеспечивают возможность разработчикам программного обеспечения использовать данные и программы других разработчиков, осуществлять экспорт/импорт данных.
Такие стандарты регламентируют взаимодействие между различными программами. Для этого предназначены стандарты межпрограммного интерфейса, например OLE (связывание и встраивание объектов). Без таких стандартов программные продукты были бы «закрытыми» друг от друга.
Стандарты занимают все более значительное место в направлении развития индустрии информационных технологий. Более 250 подкомитетов в официальных организациях по стандартизации работают над стандартами в области информационных технологий. Более 1000 стандартов или уже приняты этими организациями, или находятся в процессе разработки. Процесс стандартизации информационных технологий далеко не закончен (да, по нашему мнению, вряд ли когда-либо будет закончен, так как область информационных технологий постоянно динамично развивается).
Все компании-разработчики должны обеспечить приемлемый уровень качества выпускаемого программного обеспечения (ПО). Для этих целей предназначены стандарты качества программного обеспечения или отдельные разделы в стандартах разработки программного обеспечения, посвященные требованиям к качеству, программного обеспечения.
С точки зрения пользователя,- все многообразие ПО должно управляться единообразно. Должна быть единообразная навигация - перемещение по программе, единообразные органы управления и единая реакция программного обеспечения на действия пользователя. Для этого разработаны стандарты на пользовательский интерфейс.
Все это регламентируется стандартами, действующими в сфере информационных технологий.
Необходимость стандартизации разработки программного обеспечения наиболее удачно описана во введении в стандарт ISO/IEC 12207: «Программное обеспечение является неотъемлемой частью информационных технологий и традиционных систем таких, как транспортные, военные, медицинские и финансовые.
Имеется множество разнообразных процедур, методов, инструментальных средств и типов операционной среды для разработки и управления программным обеспечением. Это разнообразие создает трудности при проектировании и управлении программным обеспечением, особенно при объединении программных продуктов и сервисных программ.
Стратегия разработки программного обеспечения требует перехода от этого множества к общему порядку, который позволит специалистам, практикующимся в программном обеспечении,-«говорить на одном языке» при разработке и управлении программным обеспечением, этот международный стандарт обеспечивает такой общий порядок».
Имеется классификация стандартов. Верхняя часть классификации имеет свои особенности. Это относится прежде всего к стандартам «де-юре» и «де-факто».
Стандарт «де-факто» — термин, обозначающий продукт какого-либо поставщика, который захватил большую долю рынки и который другие поставщики стремятся эмулировать, копировать или использовать для того, чтобы захватить свою часть рынка.
Одна из главных причин значимости современной программной стандартизации - осознание опасности злоупотреблениия стандартами «Де-факто». В 60-е и 70 годы XX века создание стандартов «де-факто* ставило пользователей в зависимое от производителей положение при использовании основных средств обработки данных и телекоммуникаций. Важный аспект сегодняшней работы по стандартизации - преодоление этой зависимости, и через продвижение стандартных интерфейсов. Долгое время такими стандартами были SQL и стандарт функциональных диаграмм SADT. Другие примеры: Windows, Microsoft.
Стандарт «де-юре» создается формально признанной стандартизующей организацией. Он разрабатывается при соблюдении правил консенсуса в процессе открытой дискуссии, в которой каждый имеет шанс принять участие. Ни одна группа не может действовать независимо, создавая стандарты для промышленности. Если какая-либо группа поставщиков создаст стандарт, не учитывающий требования пользователей, она потерпит неудачу. То же самое происходит, если пользователи создают стандарт, с которым не могут или не будут соглашаться поставщики, — этот стандарт также не будет успешным. Стандарты «де-юре» не могут быть изменены, не пройдя процесс согласований под контролем организации, разрабатывающей стандарты.
Стандарты OSI (Open Systems Interconnection reference model), Ethernet, POSIX, SQL и большинство стандартов языков — примеры такого рода стандартов.
В качестве примера перехода стандарта «де-факто» в стандарт «де-юре» рассмотрим историю развития и стандартизации языка SQL.
Работы по созданию языка SQL были начаты в 70-х годах прошлого столетия в исследовательских лабораториях компании IBM. В настоящее время он стал одним из главных стандартов в области информационных систем и обеспечил технологию базового языка для целого поколения СУБД, основанных на реляционной модели. Несмотря на то, что он был коммерчески реализован в начале 80-х годов лишь для небольшой группы программных продуктов, SQL, бесспорно, получил признание с принятием ANSI и ISO стандарта SQL-86. Позднее, при подготовке стандарта SQL-89, в язык был включен ряд дополнительных возможностей.
Истоки SQL следует отнести к периоду рождения реляционной модели данных. Поскольку в течение нескольких последующих лет не появилось никаких языков, подобных SQL, в исследовательских проектах, инициированных компанией IBM после публикации статьи Э.Ф. Кодда, придавалось особое значение необходимости создания языков интерфейса создаваемых СУБД для проверки возможностей реляционной модели.