Принципы классификации программных средств
Программные средства, относящиеся в общем случае к продукции производственно–технического назначения и предлагаемые на рынке в качестве товара, требуют, как и иные виды продукции и услуг, своей системы классификации. Классификация продукции любого вида имеет своей целью облегчить поиск необходимых потребителю средств на соответствующем рынке, унифицировать или сделать сопоставимыми терминологию, нормативы, цены, процедуры в сфере производства и использования соответствующих видов изделий.
Программные средства могут оцениваться по различным параметрам, многие из которых, в принципе, могут служить основой для построения классификации.
По характеру создания и использования все программы могут быть разделены на программы частного применения, создаваемые и используемые для собственных надобностей разработчика, и программы общего пользования, отчуждаемые от их разработчиков, создаваемые с целью удовлетворения потребностей некоторого круга пользователей. Программы первой группы, как правило, остаются неизвестны другим пользователям (за исключением случаев последующего коммерческого распространения удачных «самоделок», примером чего может служить история утилиты Undelete, созданной в свое время Питером Нортоном) и более детальной классификации обычно не подлежат. Программы второй группы поступают в распоряжение широкого круга пользователей, могут распространяться на коммерческой основе и для этих программ имеет практический смысл их более детальная классификация.
Наиболее общим и традиционным подходом к классификации программных средств является их разделение по роли в структуре программного обеспечения вычислительных машин и систем на системное (общее) и прикладное (специальное) ПО (см. рис. 8.10).
Рисунок 8.10. Состав программного обеспечения вычислительной системы (версия 1)
Системное ПО включает в себя программные средства, обеспечивающие согласованное функционирование всей вычислительной системы, а также средства разработки новых программ.
Прикладное ПО включает в себя программные средства, обеспечивающие решение конкретных (прикладных) задач пользователей.
В некоторых случаях принято выделять инструментальные средства из состава системного ПО в отдельный классинструментального ПО.
Инструментальное ПО включает в себя программные средства, обеспечивающие создание других программных средств и различные средства обслуживания (см. рис. 8.11).
Таким образом, собственно системное и инструментальное ПО предназначены для создания условий функционирования информационных систем. Прикладное ПО ориентировано на удовлетворение потребностей конечных пользователей информационных систем.
Рисунок 8.11. Состав программного обеспечения вычислительной системы (версия 2)
Дальнейшая детализация классификации программных средств в соответствии с областью применения предусматривает выделение в составе системного ПО таких классов программных средств, как операционные системы, операционные оболочки, системы программирования, системные обслуживающие программы (утилиты), средства контроля и диагностики и т.д. В составе прикладного ПО принято различать программные средства (ПС) обработки первичной информации, ПС для методо–ориентированных расчетов, ПС для технико–экономических расчетов, ПС редакционно–издательского назначения, электронные таблицы, ПС для систем автоматизированного проектирования (САПР), ПС для автоматизированных систем управления технологическими процессами (АСУ ТП), ПС для экономического моделирования и т.д. Каждый из классов ПС может, в свою очередь, подразделяться на более детальные подклассы, группы, подгруппы.
Классификация ПО в соответствии с областью применения положена в основу Общероссийского классификатора продукции (ОКП).
Отражая общее назначение программной продукции, важное для потребителей, описанная выше классификация, однако, не принимает во внимание целый ряд свойств этой продукции, которые также важны для выбора ПС потребителями, для сопоставления ПС при их создании, при оценке интегральных характеристик качества ПС и т.д.
Другой подход к классификации ПС заключается в совместном применении набора классификационных свойств для характеристики каждого объекта классификации. Параллельная классификация ПС по множеству классификационных свойств реализована в стандарте ГОСТ Р ИСО/МЭК ТО 12182–2002 «Информационная технология. Классификация программных средств».
8.6. Общероссийский классификатор продукции.
Параллельная классификация программных средств
по множеству классификационных свойств
На территории Российской Федерации действует единый классификатор промышленной и сельскохозяйственной продукции, разработанный Всероссийским научно–исследовательским институтом классификации, терминологии и информации по стандартизации и качеству Госстандарта России. Классификатор внесен Главным управлением технической политики в области стандартизации Госстандарта России, принят и введен в действие Постановлением Госстандарта России от 30 декабря 1993 г. N 301 с 1 июля 1994 г. на территории Российской Федерации взамен ранее действовавшего Общесоюзного классификатора промышленной и сельскохозяйственной продукции.
Общероссийский классификатор продукции (далее – ОКП) входит в состав Единой системы классификации и кодирования технико–экономической и социальной информации (ЕСКК) Российской Федерации.
ОКП предназначен для обеспечения достоверности, сопоставимости и автоматизированной обработки информации о продукции в таких сферах деятельности как стандартизация, статистика, экономика и другие.
ОКП представляет собой систематизированный свод кодов и наименований группировок продукции, построенных по иерархической системе классификации. Основные принципы построения ОКП следующие (см. рис. 8.12):
Рисунок 8.12. Структура кодирования продукции в ОКП
Каждая позиция ОКП содержит шестизначный цифровой код, однозначное контрольное число и наименование группировки продукции.
В ОКП предусмотрена пятиступенчатая иерархическая классификация с цифровой десятичной системой кодирования.
На каждой ступени классификации деление осуществлено по наиболее значимым экономическим и техническим классификационным признакам.
На первой ступени классификации располагаются классы продукции (XX 0000), на второй – подклассы (XX X000), на третьей – группы (XX XX00), на четвертой – подгруппы (XX XXX0) и на пятой – виды продукции (XX XXXX).
Коды 2 – 5–разрядных группировок продукции дополнены нулями до 6 разрядов и записываются с интервалом между вторым и третьим разрядами.
Классификация продукции в ОКП может быть завершена на третьей, четвертой или пятой ступенях классификационного деления.
При записи отдельных наименований классификационных группировок используют сокращенную форму записи с заменой лексических элементов графическими, при этом:
– опускают начальную часть полного наименования, вместо которой ставят тире, когда она повторяет предшествующее наименование;
– предшествующее наименование или его часть, соответствующая опускаемой части сокращенного наименования, отделяют косой чертой.
Для однозначности понимания и разграничения объемов используемых понятий отдельные позиции ОКП включают пояснения. Пояснения приведены непосредственно под наименованием позиции, к которой они относятся. Пояснения приводятся для исключения возможности попадания в данную позицию классификатора объекта, входящего в другую его позицию.
При необходимости отражения конкретных типов, марок, моделей и других характеристик отдельных видов продукции, в создаваемых для этих целей отраслевых классификаторах продукции в качестве первых шести знаков должны использоваться коды из ОКП.
Ведение ОКП осуществляет Всероссийский научно–исследовательский институт классификации, терминологии и информации по стандартизации и качеству (ВНИИКИ) Госстандарта России совместно с головными и ведущими организациями по ОКП министерств и ведомств. Класс 50 в ОКП предназначен для программных продуктов.
Укрупненная структура классификации подклассов класса 50 (программные продукты) представлена на рис. 8.13:
Рисунок 8.13. Укрупненная структура классификации подклассов программных продуктов в ОКП
Более детальная классификация программных продуктов в соответствии с ОКП представлена в[180]. В составе ОКП некоторые позиции оставлены свободными, что позволяет при необходимости расширять классификацию программных средств.
Параллельная классификация ПС по множеству классификационных свойств реализована в стандарте ГОСТ Р ИСО/МЭК ТО 12182–2002 «Информационная технология. Классификация программных средств»[181]. Стандарт принят и введен в действие Постановлением Госстандарта РФ от 11 июня 2002 г. N 238–ст. (дата введения 1 июля 2007 года). Стандарт предназначен для специалистов в области программной инженерии, пользователей и разработчиков стандартов (отраслевых, предприятия).
Специалистам в области программной инженерии стандарт может помочь в определении вида (типа) программного средства, для которого применимы конкретные стандарты программной инженерии, в установлении критериев запланированного риска, определения соответствия применяемой модели жизненного цикла условиям реализации конкретного проекта, определении усилия, необходимых для конкретной фазы жизненного цикла, и соответствующего для нее инструментария и др.
Пользователям и разработчикам стандартов он должен помочь в определении подходов к классификации ПС и возможных вариантов стандартов для них на базе принятой схемы классификации и в последующем использовании данной схемы применительно к соответствующим ПС и стандартам программной инженерии. Стандарт определяет основы классификации ПС, схему классификации и содержит примеры применения соответствующих стандартов.
Программная инженерия является быстро изменяющейся сферой деятельности, поэтому представленная в рассматриваемом стандарте классификация может служить, в основном, в качестве концептуальной схемы. Приведенная в стандарте классификация является эмпирической, ее описание не основано на четко установленных потребностях пользователей. По названным причинам применение данной схемы в практической деятельности не является обязательным и носит рекомендательный характер.
Принцип классификации ПС в соответствии с ГОСТ Р ИСО/МЭК ТО 12182–2002 схематически представлен на рис. 8.14.
Рисунок 8.14. Принцип классификации ПС в соответствии с
ГОСТ Р ИСО/МЭК ТО 12182–2002
Классификация ПС комбинируется из ряда видов ПС, а каждый вид содержит классы, соответствующие данному виду. Различные виды рассмотрены в приложении к стандарту[182]. Выбор классов, соответствующих конкретному виду, оставлен на усмотрение пользователя. Следует отметить, что конкретный класс может присутствовать в нескольких видах, а в ряде случаев область применения одного вида перекрывается областью другого.
8.7. Понятие и принципы стандартизации
в сфере программного обеспечения
Стандартизация— это деятельность, направленная на разработку и установление требований, норм, правил, характеристик, как обязательных для выполнения, так и рекомендуемых, обеспечивающая право потребителя на приобретение товаров надлежащего качества, а также право на безопасность и комфортность труда.
Цель стандартизации — достижение оптимальной степени упорядочения в той или иной области посредством широкого и многократного использования установленных положений, требований, норм для решения реально существующих, планируемых или потенциальных задач. Стандартизация связана с такими понятиями, как объект стандартизациии область стандартизации.
Объектом стандартизацииобычно называют продукцию, процесс, услугу, для которых разрабатывают те или иные требования, характеристики, параметры, правила и т.п. Стандартизация может касаться либо объекта в целом, либо его отдельных составляющих (характеристик).
Областью стандартизацииназывают совокупность взаимосвязанных объектов стандартизации.
Стандартизация осуществляется на разных уровнях. Уровень стандартизации зависит от того, участники какого географического, экономического, политического региона мира принимают стандарт.
Если участие в стандартизации открыто для соответствующих органов любой страны, то это международная стандартизация.
Региональная стандартизация— деятельность, открытая только для соответствующих органов государств одного географического, политического или экономического региона. Региональная и международная стандартизация осуществляется специалистами стран, представленных в соответствующих региональных и международных организациях.
Национальная стандартизация— стандартизация в одном конкретном государстве. При этом национальная стандартизация также может осуществляться на разных уровнях: на государственном, отраслевом, в том или ином секторе экономики (например, на уровне министерств), на уровне ассоциаций, производственных фирм, предприятий (фабрик, заводов) и учреждений.
Стандартизацию, которая проводится в административно–территориальной единице (провинции, крае и т.п.), принято называть административно–территориальной стандартизацией.
Стандарт– нормативный документ по стандартизации, разработанный, как правило, на основе согласия, характеризующегося отсутствием возражений по существенным вопросам у большинства заинтересованных сторон, принятый (утвержденный) признанным органом (предприятием). (см. ГОСТ Р 1.0–92. «Государственная система стандартизации РФ. Основные положения».)
Стандарт – (от англ. норма, образец), в широком смысле слова образец, эталон, модель, принимаемый за исходное для сопоставления с ним других подобных объектов. Стандарт может быть разработан как на материальные предметы (продукцию, эталоны, образцы веществ), так и на процессы, нормы, правила, требования различного характера.
По существующим нормам стандартизации стандарты периодически пересматриваются для внесения изменений, чтобы их требования соответствовали уровню научно–технического прогресса. Нормативный документ, в том числе и стандарт, считается признанным техническим правилом, если он разработан в сотрудничестве с заинтересованными сторонами путем консультаций и на основе консенсуса. Стандарты, регулирующие требования к процессам (процедурам), более устойчивы, чем стандарты, задающие требования к продукции.
Указанные выше категории стандартов называют общедоступными. Другие же категории стандартов, такие, как фирменные или отраслевые, не являясь таковыми, могут, однако, использоваться и в нескольких странах согласно существующим там правовым нормам.
В практике термин «стандарт» может употребляться и по отношению к эталону, образцу или описанию продукта, процесса (услуги). По существу, это не является принципиальной ошибкой, хотя эталон правильнее относить к области метрологии, а термин «стандарт» использовать применительно к нормативному документу.
Документ “технические условия” устанавливает технические требования к продукции, услуге, процессу. Обычно в документе технических условий должны быть указаны методы или процедуры, которые следует использовать для проверки соблюдения требований данного нормативного документа в таких ситуациях, когда это необходимо.
На практике различают «стандарт де факто» и «стандарт де юре».
Первый представляет собой негласное соглашение следовать некоторым правилам. Чаще всего, подобная ситуация возникает из потребности следовать в русле удачных решений наиболее влиятельной фирмы в конкретной области деятельности (речь может, в частности, идти о выполнении протоколов и интерфейсов взаимодействия устройств, о кодировании информации, об алгоритмах криптокодирования данных и т.д.).
Второй является утвержденным уполномоченной организацией документом, предназначенным для регулирования соответствующего вида деятельности, обеспечения требований к качеству продукции или услуг и т.п.
Стандарт «де юре»не может быть изменен без выполнения процедуры согласования и утверждения изменений в соответствующей организации (например, в Госстандарте).
Стандарты в сфере ПО являются рекомендательными (кроме стандартов, относящихся к вопросам безопасности).
Соблюдение требований соответствующих стандартов является необходимым условием успешной деятельности фирмы в области создания ПО на соответствующем рынке (международном, национальном, отраслевом).