Рубрика «сложность систем»
Сложность должна обитать где-то
2020-06-07 в 9:41, admin, рубрики: Анализ и проектирование систем, Программное обеспечение, проектирование, Проектирование и рефакторинг, рефакторинг, сложность системБорьба со сложностью является постоянной темой в области создания программного обеспечения, которое я встречаю снова и снова. Это нечто, что я постоянно вижу в обсуждениях на всех уровнях, ну например, как много комментариев должно сопровождать методы и функции? Каково идеальное "количество" абстракции? Когда фреймворк начинает содержать "слишком много магии"? Когда в компании используется слишком много языков программирования?
Мы пытаемся избавиться от сложности, обуздать её и ищем простоты. Я думаю, что представлять себе суть вещей таким образом это ложный путь. Сложность обязательно должна где-то обитать.
«А как всё хорошо начиналось…», или О пользе O-нотации не только для анализа алгоритмов
2016-04-26 в 6:14, admin, рубрики: Анализ и проектирование систем, закон брукса, Проектирование и рефакторинг, сложность систем, управление проектами, управление разработкой, философия программированияТермин «О-большое», знакомый нам из курса матанализа, был введён Паулем Бахманом в конце XIX века для описания асимптотического поведения функций. В конце 1970-х Дональд Кнут придумал применять этот термин для оценки эффективности и ресурсоёмкости алгоритмов, благодаря чему с «О-большим» знакомо большинство программистов. Понимание асимптотики быстродействия и ресурсоёмкости даёт возможность выбрать наиболее подходящий метод решения задачи в зависимости от текущих потребностей. «Плохая» асимптотика позволяет сразу же отбросить неподходящий метод.
Идею, которой я хочу поделиться, глубокой не назовёшь: скорее, она лежит на поверхности, но далеко не все её замечают.
Методами, похожими на анализ алгоритмов, можно пользоваться для того, чтобы оценить асимптотику характеристик системы управления проектом разработки программного продукта, таких как общее время и стоимость разработки дополнительной функциональности.