ISO/IEC 24744
ISO/IEC 24744:2007 — Разработка программного обеспечения — Метамодель для методик разработки ISO/IEC 24744:2007 — Software Engineering — Metamodel for Development Methodologies
Содержание
Назначение
Стандарт ISO 24744 предлагает метамодель SESDM (Software Engineering Metamodel for Development Methodologies). SESDM – это адаптированная метамодель SMSDM (Standard Metamodel for Software Development Methodologies), представленная австралийскими учеными и опубликованная ранее в стандарте AS4651. В свою очередь, AS4651 явился развитием модели OOSPICE (Object-Oriented SPICE), связанной с определением методов, выполнение которых возможно проверить согласно ISO 15504 (SPICE).
Особенности
Стандарт предлагает артефакт-центрированный (а не практико-центрированный, или процесс-центрированный) метод описания: в нём главными для описания метода являются рабочие продукты, а практики и приёмы работы с ними и над ними могут меняться по ходу дела. Так, артефакт "план" может быть составлен множеством разных способов, с ним работают множество других практик, но его наличие постулируется - и уже затем ситуационный метод строится, исходя из необходимости такого артефакта. Подробнее - см. доклад Cesar Gonsales-Perez (презентация переведена на русский)
Основные концепции
Масштаб способа ISO 24744 покрывает многие группы описаний в рассмотрении ЖЦ: процессную, продуктов и исполнителей. Метамодель также позволяет раздельно описывать микро- и макропроцессы с помощью Стадий (stages) и единиц работы (Work Units) соответственно. Люди являются одним из основных элементов, чего не предусмотрено в ряде других метамоделей, и представлены классом Производители (Producers). Моделирование интегрировано в процесс ЖЦ с помощью элемента Единицы Описания (Model Units) – этого нет в OMG SPEM 2.0, где предполагается, что собственно моделирование покрывается профилем стандарта UML.
ISO 24744 обеспечивает широкие возможности по описанию взаимосвязи продуктов и актов деятельности. Есть возможность описать, как разные виды продукты используются и модифицируются разными актами деятельности.
ISO 24744 предлагает онтологию, которая может применяться для описания элементов на всех уровнях: метамодель, метод, проект. Для описания таких сложных сущностей как метод и проект предлагается богатая метамодель, поддерживающая clabjects и powertype. Powertype описываются подтипами класса Шаблон (Template), а разделяемые элементы (parititioned elements) описываются подтипами класса Элемент Проекта (ProjectElement). Дополнительно выделены, так называемые Ресурсы (resources). Ресурсы представляют собой классы метамодели, которые не участвуют в шаблонах powertype. Экземпляры ресурсов могут быть созданы на уровне метода, но не передаются на уровень проекта. Ресурсы отражают элементы метода, которые используются разработчиками без создания экземпляров, например, это может быть нотация или ссылка на описание метода. Все эти механизмы обеспечивают адаптацию метода на уровне проекта, что является критичным для использования метамодели.
Преимущества
- ISO 24744 (через соответствие требованиям к типовой модели практик ISO 15504) соответствует стандарту ISO 15288, описывающему практики системной инженерии. Поэтому его использование для моделирования ISO 15288, который является главным источником методов для системных инженеров, исключает множество проблем, связанных с интеграцией разнородных стандартов.
- Отличительной особенностью этого стандарта является не только его принципиальная расширяемость, но и стандартизация соотношения между методом и реализацией метода (endeavour, предпринятием), а также включение описания языков и нотаций для работы с особым видом рабочих продуктов: моделями. Стандарт также задаёт графическую нотацию для описания методов. Всего его метамодель определяет 68 компонент метода (Action, ActionKind, Build, BuildKind, CompositeWorkProduct, CompositeWorkProductKind, Conglomerate, Constraint, Document, DocumentKind, Element, EndeavourElement, Guidline, HardwareItem, HardwareItemKind, InstrantenousStage, InstantenousStageKind, Language, MethodologyElement, Milestone и т.д. — вот из таких кирпичиков и складываются описания методов).
Недостатки
- Стандарт не включает в себя явное определение жизненного цикла в части менеджерской группы описаний (стадии, контрольные точки, пересмотры выделения ресурсов) что затрудняет его использования для создания требуемых нам описаний ЖЦ.
- Отсутствие готового инструментария для моделирования методов в соответствии с ISO 24744, и это главное препятствие перед ее практической реализацией.