update design patterns