Организационные нормы и организационные требования
- Организационные нормы -- это списки утверждений, которые говорят вам, можно или нельзя что-то сделать, или дают критерий и условия для принятия решения.
- организационные требования -- это что вам нужно, чтобы обеспечить усвоение и выполнение этих норм.
- Может быть множество различных организационных требований, чтобы люди усвоили или были принуждены к выполнению организационных норм.
- Организационные нормы -- это то, что они есть. Они не должны изменяться, чтобы удовлетворить организационным требованиям.
- Изменение в норме может означать различные или дополнительные требования.
IT rule (based on PRR-OCL):A discount of 15% must be applied on the shopping cart if the shopping cart contains between 2 and 4 items and one of the following conditions are met: - the purchase value is greater than $100 and the customer category is gold - the purchase value is greater than $200 and the customer category is silver
Это основная разница: организационное правило для людей из организации, т.е. на человечьем языке (для верности controlled natural language -- это немалая проблема получить такое для русского), а business rule -- это традиционный способ айтишников указать на важность чего-то для их клиентов, добавляя слово "бизнес" к любым сущностям (например, "бизнес-процесс", "бизнес-приложение", "бизнес-требование", и, конечно, "бизнес-правило"). Классическое определение организационной нормы -- "утверждение, которое определяет или ограничивает некоторые аспекты организации". Айтишниками в этом определении не пахнет, хотя они и полезны при удовлетворении организационных требований (которые, в отличие от правил, можно менять, в том числе и по предложениям айтишников). С другой стороны, вся эта терминология "норм" и "требований" существенно пересекается с requirements engineering, и тут придется повозиться, чтобы хоть как-то унифицировать организационные разговоры в рамках organizational engineering и "инженерные" разговоры в рамках system and software engineering. К тому же что для одних требование, для других -- норма, и эти "мета" тоже нужно учитывать. Решение одних проблем всегда порождает другие, хотя и на новом уровне. С концепцией организационных норм все то же самое.Rule discount ruleVariable: ?customer: Customer = Customer->any() ?shoppingCart: ShoppingCart = ShoppingCart->any(c: customer | c=?customer) Condition: (?shoppingCart.containsItemsInRange(2, 4) and (((?shoppingCart.items->collect(i:Item|i.value))->sum()>100 and ?customer.category == "Gold") or ((?shoppingCart.items->collect(value))->sum() > 200 and ?customer.category == "Silver"))) Action: shoppingCart.discountValue = shoppingCart.discountValue+15