Пять этапов анализа проблемы
При разработке программных систем, существуют проблемы, связанные с правильным пониманием и удовлетворением потребностей. Правильное определение проблем, для решения которых создается большинство систем, предопределяют методы анализа проблем.
Анализ проблемы – это
1) процесс осмысления реальных проблем и потребностей пользователя,
2) пути решений для удовлетворения этих потребностей.
Анализ области проблем должен определить из множества возможных решений решение, наиболее соответствующее анализируемой проблеме. Целью анализа проблемы является необходимость добиться лучшего понимания решаемой проблемы до начала разработки, что можно осуществить с помощью пяти этапов:
1) достижение соглашения об определении проблемы;
2) выделение основных причин - проблем, состоящих за проблемами;
3) выявление круга заинтересованных лиц и пользователей;
4) определение границы системы решения;
5) выявление ограничений, которые необходимо наложить на решение.
Этап 1. Достижение соглашения об определении проблемы.
Один из простейших способов достижения согласия об определении проблемы заключается в том, чтобы просто записать проблему и выяснить, все ли согласны с такой постановкой. Часто бывает полезно записать проблему в стандартной форме в виде таблицы, в которой один столбец представляет элемент, состоящий проблемы, влияния, результатов и выигрыша, а второй – описанием проблемы, круга лиц, воздействия на них и бизнес процесс, а также списка преимуществ, предлагаемых решением проблемы.
Этап 2. Выделение основных причин-проблем, стоящих за проблемой.
Пониманию реальных проблем и их причин помогает метод анализа корневых причин, являющийся семантическим способом нахождения причин.
Способ определения корневых причин зависит от конкретного случая, и выявить их чаще всего помогают люди, непосредственно занимающихся этим делом. Однако для серьезных проблем часто нужно произвести детальное исследование каждой из проблемы и количественно определить вклад ее в отдельности.
Устранение корневых причин.
Часто устранение большой части корневых причин не дает желаемого результата, поскольку затраты на их устранение превысят причиняемый проблемой ущерб.
Полученные данные можно затем использовать для определения функций новой программной системы, которая призвана устранить эти ошибки.
Выделенную корневую причину или причины можно также оформить в виде таблицы. После написания постановки проблемы, ее следует передать для ознакомления заказчикам и заинтересованным лицам, чтобы они внесли свои комментарии.
Этап 3. Выявление заинтересованных лиц и пользователей.
Решение любой сложной проблемы невозможно без выявления потребности различных групп заинтересованных лиц, имеющих различные точки зрения на проблему и различные потребности.
Заинтересованные лица – это прямые и непрямые пользователи, которых затрагивает реализация новой системы или приложения. Понимание их потребностей является важнейшим фактором в выработке успешного решения. Потребности прямых пользователей легко учитываются, так как они непосредственно привлекаются к определению и использованию системы. Потребности непрямых пользователей, а также тех, на кого воздействуют только бизнес–последствия разработки выявить и учесть гораздо сложнее.
Этап 4. Определение границ системы-решения
Определение системы можно производить только после согласования постановки проблемы и определения круга пользователей и заинтересованных лиц.
Границы системы представляет собой «рубеж» между решением и окружающим его реальным миром. Все взаимодействия с системой осуществляются посредством интерфейсов между системой и внешним миром. Таким образом, мир делится на две части:
- создаваемая система,
- то, что взаимодействует с создаваемой системой.
Обозначим понятием «актеры», «то, что взаимодействует с разрабатываемой системой» и заставляет ее работать. Круг актеров можно выявить при определении
1) поставщика, пользователя информации в системе
2) администратора системы (управлять системой)
3) группы сопровождение системы
4) места использования системы
5) источника информации.
6) внешних систем взаимодействующих с данной системой
Определившись с подобной информацией, аналитик может создать блок-схему, описывающую границы системы, пользователей и другие интерфейсы. На рисунке ниже представлена новая система ввода заказов на покупку и ее окружение
Рис. Система и ее окружение.
Пунктирная линия изображает границу системы для предполагаемого решения. При этом видно, что основная часть нового приложения будет развернута в новой системе ввода заказов на покупку, но часть кода решения должна разрабатываться в уже существующей унаследованной системе.
Этап 5. Выявление ограничений, налагаемых на решение.
Наличие ограничений в системе может значительно сузить разработчикам возможность создать необходимое решение. Следовательно, в процессе планирования необходимо тщательно изучить все ограничения. Многие из них могут заставить разработчиков пересмотреть изначально предлагавшийся технологический подход.
Существуют различные источники ограничений. Ограничения могут быть заданы еще до начала работы. Примеры видов ограничений.
1. Экономические:
- финансовые,
- бюджетные,
-связанные с вопросами себестоимости и ценообразования,
- связанные с вопросами лицензирования.
2. Политические, влияющие на потенциальное решение:
- внешние;
- внутренние;
- проблемы между подразделениями;
3. Технические, накладывающие ограничения на выбор технологии:
- возможность использования новых технологий;
- необходимость закупки новых пакетов;
- использование существующих платформ.
4. Системные:
- использование существующих систем;
- необходимость создания новых систем;
- необходимость совместимости с существующими решениями
5. Эксплуатационные:
- наличие ограничений на информационную среду;
- наличие юридических, правовых ограничений;
- ограничения требований техники безопасности;
6. Временные и ресурсные:
- наличие графика;
- ограничения на ресурсы;
- возможность увеличения штатов;
- возможность привлечения сотрудников со стороны;
Некоторые выявленные ограничения станут требованиями к новой системе. При анализе проблемы необходимо выявить потенциальные источники ограничений, и понять какое влияние каждое ограничение окажет на область возможных решений.
Дата добавления: 2015-10-21; просмотров: 4947;