Таким образом, концепции MRPII/ERP постоянно эволюционируют и совершенствуются. В каждый момент времени в них можно выделить, условно говоря, три слоя.
В первом слое находятся те методы и средства, которые проверены практикой и закреплены в виде стандартов. В США существует система стандартов, которая поддерживается государством, в частности Министерством обороны. В этих стандартах сформулированы требования к информационным системам фирм, выполняющих государственные заказы. В результате на стадии заключения контракта повышается уверенность государства в разумном расходовании бюджетных средств, а на стадии его выполнения осуществляется всесторонний контроль за сроками выполнения и фактическими затратами. В качестве примера можно упомянуть правительственный документ «Требования к системам управления материальными процессами» (Material Management and Accounting System — MMAS).
Стандарты в первую очередь определяют требования к функциональной насыщенности систем управления, методам и результатам получения отчетности о финансовом состоянии контрактов. Фирмы — производители базовых систем тщательно следуют этим стандартам. Именно по этой причине сравнительный анализ различных базовых систем (особенно крупномасштабных) может потребовать значительных усилий, поскольку на первый взгляд функциональные возможности практически не отличаются.
Второй слой составляют достаточно устойчивые, часто применяемые методы и приемы, которые, однако, не носят обязательного характера. Эти методы и приемы можно обнаружить при более глубоком анализе функциональных структур. В качестве примеров можно привести методологию скользящего планирования в MPS/ MRP, алгоритмы образования партий в MRP, правила приоритетов в SFC и многое другое.
|
Этот слой, жестко не регламентируемый, тем не менее представляет собой довольно стройную систему взаимосвязанных идей и методов. Главная роль в поддержании этой части концепций MRPII/ ERP принадлежит, безусловно. Американскому обществу управления производством и запасами (APICS), основанному в 1957 г. Сегодня APICS объединяет около 70 000 специалистов из многих стран мира, представляющих около 20 000 компаний. В их числе примерно 500 компаний США, работающих в области систем MRPII/ERP. Среди направлений деятельности APICS — распространение информационных материалов; оповещение о публикациях и проектах в области образования и переподготовки; реализация двух программ сертификации специалистов — по управлению производством и запасами (CPIM) и интегрированными ресурсами (CIRM); проведение очных и заочных конференций. APICS периодически издает толковый словарь «APICS's Dictionary», который содержит сотни терминов, относящихся к MRPII/ERP, и способствует унификации терминологии. Этот момент исключительно важен, особенно для потенциальных пользователей в России на стадии анализа и выбора базовой системы. Значительный интерес представляют имеющиеся в Internet рекомендуемые APICS списки литературы по различным вопросам MRPII/ERP. Действует гибкая система членства в APICS, предусматривающая четыре вида членства — для корпораций, специалистов, учащихся университетов и колледжей, пенсионеров. Внутри APICS выделена группа, специализирующаяся в области управления сложными отраслями промышленности (CI SIG), такими, как аэрокосмическая и оборонная.
|
К третьему слою идей и методов MRPII/ERP следует отнести то новое, что вносят в свои базовые системы фирмы — производители программных продуктов. Реализованные на их основе новые информационные технологии представляют собой «know-how» фирм-разработчиков. Как правило, именно в этом слое можно обнаружить значительные отличия продуктов различных фирм. Некоторые из новых технологий в состоянии оказывать серьезное влияние на эффективность построения крупных информационных систем. К ним относится, например, «Система динамического моделирования» (Dynamic Enterprise Modeling — DEM) фирмы BAAN, которая представляет собой проблемно-ориентированную CASE-технологию проектирования систем управления предприятиями.
Видное место среди идей и методов систем MRPII/ERP принадлежит специально разработанным методикам внедрения систем. Анализ литературы и опыт общения со специалистами различных фирм показывают, что на сегодняшний день сложилось устойчивое представление о том, в какой последовательности и какими методами следует внедрять системы типа MRPII/ERP. Тщательное планирование проектов по внедрению, организация деятельности коллективов, упор на переподготовку персонала всех уровней (особенно высшего уровня) — вот далеко не полный перечень условий достижения положительных результатов. Этой работой занимаются сотни консалтинговых фирм различного масштаба, университеты, бизнес-школы.
Наличие мощной инфраструктуры и методологии построения систем способствует достижению высокого уровня эффективности при внедрении систем управления типа MRPII/ERP на промышленных предприятиях. По некоторым оценкам, внедрение подобных систем способно привести к сокращению запасов до 30%, росту производительности труда до 25%, возрастанию количества заказов, выполненных в срок, до 20%.
|
ЛЕКЦИЯ 10
ЖИЗНЕННЫЙ ЦИКЛ СИСТЕМЫ
Модели ЖЦ и его основные этапы
При описании жизненного цикла системы используются следующие понятия:
• процесс — цепочка последовательно выполняемых работ;
•этапы — последовательные отрезки времени, в течение которого выполняются работы. В течение этапа могут выполняться работы, относящиеся к разным процессам. В основе деятельности по созданию и использованию автоматизированной системы управления предприятием (АСУП) лежит понятие ее жизненного цикла (ЖЦ). ЖЦ является моделью создания и использования АСУП, отражающей ее различные состояния, начиная с момента возникновения необходимости в данном изделии и заканчивая моментом его полного выхода из употребления у всех без исключения пользователей.
Традиционно выделяются следующие основные этапы ЖЦ АСУП:
• анализ требований;
• проектирование;
• программирование/внедрение;
• тестирование и отладка;
• эксплуатация и сопровождение.
ЖЦ образуется в соответствии с принципом нисходящего проектирования и, как правило, носит итерационный характер: реализованные этапы, начиная с самых ранних, циклически повторяются в соответствии с изменениями требований и внешних условий, введением ограничений и т. п. На каждом этапе ЖЦ порождается определенный набор документов и технических решений, при этом для каждого этапа исходными являются документы и решения, полученные на предыдущем этапе. Каждый этап завершается верификацией порожденных документов и решений с целью проверки их соответствия исходным.
Существующие модели ЖЦ определяют порядок исполнения этапов в ходе разработки, а также критерии перехода от этапа к этапу. В соответствии с этим наибольшее распространение получили три следующие модели ЖЦ:
1. Каскадная модель (в 70—80-е годы) — предполагает переход на следующий этап после полного окончания работ по предыдущему этапу и характеризуется четким разделением данных и процессов их обработки.
2. Поэтапная модель с промежуточным контролем (в 80—85-е годы) — итерационная модель разработки с циклами обратной связи между этапами. Преимущество такой модели заключается в том, что межэтапные корректировки обеспечивают меньшую трудоемкость по сравнению с каскадной моделью; с другой стороны, время жизни каждого из этапов растягивается на весь период разработки.
3. Спиральная модель (в 86—90-е годы) — делает упор на начальные этапы ЖЦ: анализ требований, проектирование спецификаций, предварительное и детальное проектирование. На этих этапах проверяется и обосновывается реализуемость технических решений путем создания прототипов. Каждый виток спирали соответствует поэтапной модели создания фрагмента или версии системы, на нем уточняются цели и характеристики проекта, определяется его качество, планируются работы следующего витка спирали. Таким образом углубляются и последовательно конкретизируются детали проекта и в результате выбирается обоснованный вариант, который доводится до реализации.
Специалистами отмечаются следующие преимущества спиральной модели:
• накопление и повторное использование программных средств, моделей и прототипов;
• ориентация на развитие и модификацию системы в процессе ее проектирования;
• анализ риска и издержек в процессе проектирования
. Отметим, что главная особенность индустрии АСУП состоит в концентрации сложности на начальных этапах ЖЦ (анализ, проектирование) при относительно невысокой сложности и трудоемкости последующих этапов. Более того, нерешенные вопросы и ошибки, допущенные на этапах анализа и проектирования, порождают на последующих этапах трудные, часто неразрешимые проблемы и, в конечном счете, могут лишить успеха.
Анализ требований
Анализ требований является первой фазой разработки АСУП, на которой требования заказчика уточняются, формализуются и документируются. Фактически на этом этапе дается ответ на вопрос: «Что должна делать будущая система?». Именно здесь лежит ключ к успеху всего проекта. В практике создания больших систем известно немало примеров неудачной реализации проекта именно из-за неполноты и нечеткости определения системных требований.
Список требований к АСУП должен включать:
• совокупность условий, при которых предполагается эксплуатировать будущую систему (аппаратные и программные ресурсы, предоставляемые системе; внешние условия ее функционирования; состав людей и работ, имеющих к ней отношение);
• описание выполняемых системой функций;
• ограничения в процессе разработки (директивные сроки завершения отдельных этапов, имеющиеся ресурсы, организационные процедуры и мероприятия, обеспечивающие защиту информации).
Целью анализа является преобразование общих, неясных знаний о требованиях к будущей системе в точные (по возможности) определения. Результатом этапа должна являться модель требований к системе (по другому — системный проект), определяющая:
• архитектуру системы, ее функции, внешние условия, распределение функций между аппаратной и программной частями (ПЧ);
• интерфейсы и распределение функций между человеком и системой;
•требования к программным и информационным компонентам ПЧ, необходимые аппаратные ресурсы, требования к базе данных, физические характеристики компонент ПЧ, их интерфейсы. Модель требований должна включать:
• полную функциональную модель требований к будущей системе с глубиной проработки до уровня каждой операции каждого должностного лица;
• спецификации операций нижнего уровня;
• пакет отчетов и документов по функциональной модели, включающий характеристику объекта моделирования, перечень подсистем, требования к способам и средствам связи для информационного обмена между компонентами, требования к характеристикам взаимосвязей системы со смежными системами, требования к функциям системы;
• концептуальную информационную модель требований;
• пакет отчетов и документов по информационной модели;
• архитектуру системы с привязкой к концептуальной информационной модели;
• предложения по оргштатной структуре для поддержки системы.
Таким образом, модель требований содержит функциональную, информационную и, возможно, событийную (в случае если целевая система является системой реального времени) модели, обеспечивающие ряд преимуществ по сравнению с традиционной моделью:
1. Для традиционной разработки характерно осуществление начальных этапов кустарными неформализованными способами. В результате заказчики и пользователи впервые могут увидеть систему после того, как она уже в большей степени реализована. Естественно, эта система будет отличаться от того, что они ожидали увидеть. Поэтому далее последует еще несколько итераций ее разработки или модификации, что требует дополнительных (и значительных) затрат денег и времени. Ключ к решению этой проблемы и дает модель требований, позволяющая:
• описать, «увидеть» и скорректировать будущую систему до того, как она будет реализована физически;
•уменьшить затраты на разработку и внедрение системы;
• оценить разработку по времени и результатам;
• достичь взаимопонимания между всеми участниками работы (заказчиками, пользователями, разработчиками, программистами и т. д.);
• улучшить качество разрабатываемой системы, а именно выполнить ее функциональную декомпозицию и спроектировать оптимальную структуру интегрированной базы данных.
2. Модель требований полностью независима и отделяема от конкретных разработчиков, не требует сопровождения ее создателями и может быть безболезненно передана другим лицам. Более того, если по каким-либо причинам предприятие не готово к реализации системы на основе модели требований, она может быть положена «на полку» до тех пор, пока в ней не возникнет необходимость.
3. Модель требований может быть использована для самостоятельной разработки или корректировки уже реализованных на ее основе программных средств силами программистов отдела автоматизации предприятия.
4. Модель требований может использоваться для автоматизированного и быстрого обучения новых работников конкретному направлению деятельности предприятия, поскольку ее технология содержится в модели.
Этап анализа требований является важнейшим среди всех этапов ЖЦ. Он оказывает существенное влияние на все последующие этапы, являясь в то же время наименее изученным и понятным процессом. На этом этапе, во-первых, необходимо понять, что предполагается сделать, а во-вторых, задокументировать это, так как если требования не зафиксированы и не сделаны доступными для участников проекта, то они вроде бы и не существуют. При этом язык, на котором формулируются требования, должен быть достаточно прост и понятен заказчику.
С другой стороны, рассматриваемый этап ЖЦ является наиболее трудной частью разработки. Нижеследующие проблемы, с которыми сталкивается системный аналитик, взаимосвязаны (и это является одной из главных причин сложности их разрешения):
•аналитик не всегда располагает исчерпывающей информацией для оценки требований к системе с точки зрения заказчика;
• заказчик, в свою очередь, не имеет достаточной информации о проблеме обработки данных для того, чтобы судить, что выполнимо, а что нет;
•аналитик сталкивается с чрезмерным количеством подробных сведений как о предметной области, так и о новой системе;
•традиционная (текстовая) спецификация системы из-за объема технических терминов часто непонятна заказчику;
•если такая спецификация понятна заказчику, она будет недостаточной для проектировщиков и программистов, создающих или адаптирующих систему.
Конечно, применение известных аналитических методов снимает отдельные проблемы анализа, однако приемлемое решение совокупности этих проблем может быть найдено только путем применения современных методик системной и программной инженерии, ключевое место среди которых занимают методологии структурного и объектно-ориентированного анализа.