Коротка відповідь… оскільки керована модель часто пов’язана з генерацією коду, а код неміцний; що нам потрібно - це усунення коду та керована модель - це, безумовно, шлях.
Деякі відхилили питання, стверджуючи, що не існує золотого молота і що розробка програмного забезпечення по суті є складною.
Я повністю погоджуюся з ними, що жодного золотого молотка немає, але я не думаю, що керована модель - це пошуки золотих молотків або срібних куль!
Я хотів би йти далі складніше; Є два види складності, які я називаю органічною чи природною складністю, складність, яка притаманна бізнесу та його процесам, але ми також маємо церемоніальну складність.
Складність, яка проникає в системну інструкцію за інструкцією, день у день. Церемоніальна складність - непотрібна складність - по суті виникає внаслідок неконтрольованого керування технічним кодом з бізнес-орієнтованим кодом, а також від недостатньої структури та одноманітності в системі.
Сьогодні вся складність, яка переслідує розвиток інформаційних систем і спричинює невдачі та талії, - це церемоніальна складність; складність, яку можна усунути.
Церемоніальна складність - це відходи, відходи, спричинені кодом, менше значення, несприятливі зміни, інваріантний код; код, який повинен бути зведений до суворого мінімуму.
Як це зробити? Просто! Просто не пишіть його і не генеруйте, в першу чергу!
Необхідний, інваріантний технічний код; код, який використовується для читання / письма, відображення, спілкування… Ось, де потрапляють моделі, описуючи логічну структуру даних - я б додав реляційним шляхом - моделі можуть включати загальну обробку стандартного читання / запису, відображення та спілкування дані.
Це як операційна система, ви не переписуєте її для кожного проекту, яким ви користуєтесь. Отже, необхідний технічний двигун, який обробляє інваріантні аспекти програмного забезпечення, що задаються моделлю. Я називаю це двигуном AaaS (Архітектура як послуга).
Що стосується зайвого коду, ну це непотрібний код, так що він може залишити його неписаним.
Це залишає нам необхідний, орієнтований на бізнес код, який повинен бути записаний, необхідні бізнес-орієнтовані дані, які повинні бути розроблені та необхідний користувальницький інтерфейс та досвід, який слід розробляти та уявляти.
Видаляючи крихкий код, ми можемо сприйняти Архітектуру як Сервіс нову парадигму для розробки програмного забезпечення, що базується набагато більше на моделюванні та дизайні, ніж на коді.