Еще важный момент: "Scott Ambler started by leading a session on “requirements of the Semat initiative” The goal was to identify stakeholders of Semat, their roles and usages of Semat. This brainstorming session helped clarify the goals of Semat, and the different stakeholders: industry representatives (developers,
executives), the research community, teachers, and methodologists". Я тут уже пару месяцев пишу, что "требования" -- это прежде всего заинтересованные стороны и их цели, а не традиционные "утверждения о свойствах будущей системы". В приведенной цитате это очень наглядно.
Опять же с удовольствием увидел присутствие Tom Gilb с его Planguage -- смесь планирования и инженерии требований в формальном языке (кстати, книжка про Planguage есть в Сети: найдите ссылку в обзоре по целеориентированной инженерии требований -- http://ailev.livejournal.com/811715.html). Рабочее определение программной инженерии было взято от него же: "As a tentative definition of software engineering, we adopted Tom Gilb’s: Software engineering is “the discipline of making software systems deliver the required value to all stakeholders.”".
Эта тусовка заедет в Россию всего через три месяца: один из промежуточных семинаров будет в Санкт-Петербурге на SEAFOOD (Software Engineering Advances For Outsourced and Offshore Development), Saint Petersburg, Russia, 17-18 June, with keynotes by Ivar Jacobson, Richard Soley and Bertrand Meyer (http://seafood.ethz.ch).
Определение программной инженерии как социотехнической дисциплины (см. также мой анализ инженерии требований на этот же предмет, http://ailev.livejournal.com/810548.html):
As can be seen from ... reported experiences from large projects it seems that we have more technical solutions around (which still need more research) than we have a good grip on the process / human related issues (“soft” aspects). This feeling can be substantiated by the fact that many of the reported project failures cannot be attributed to using wrong technology but to wrong or poor management decisions. This highlights the fact that an integrated view (technology and people) is needed and delineates the areas of research.Текущий список базовых понятий (universals, как их называют в SEMAT):
It was agreed by the group that software engineering is not only about these artefacts and products but encompasses also processes between human beings, organisation, management and collaboration to name just a few aspects of this category. Thus other scientific disciplines like sociology, psychology and management science need to be used and made instrumental to found our (SE) discipline in a proper way.
• People / Team
• Quality / Assessment
• System / Solution
• Plans / Lifecycle / Work
• Needs / Requirements
• Money / Resources
• Architecture / Design
Интересно также выделение групп описаний программной инженерии и ее методов:
a. Software as a knowledge machine
b. Culture / cultural anthropology
c. Engineering
d. Scientific
e. Mathematics (software can be expressed as an equation)
А workshop positions разных людей -- просто восхитительны, и читаются как романы о близком будущем: http://www.semat.org/bin/view/Main/WorkshopPositions. Например, там запросто находится упоминание situational metamodel engineering (в позиции Brian Henderson-Sellers). Есть над чем подумать. Или аргументация, почем software engineering всего лишь подраздел systems engineering (в позиции Donald Firesmith). Или мысли, что вся эта программная инженерия вкупе с моделированием -- это вопрос о создании правильных языков (в позиции Jean Bézivin).
Ну что же, мыслью мы от этих титанов не остаем. Разве что чуток делами. Но и тут, пожалуй, есть шансы.