Пиши Дома Нужные Работы

Обратная связь

Методология и технология разработки информационных систем

Жизненный цикл информационных систем

Разработка корпоративной информационной системы, как правило, выполняется для вполне определенного предприятия. Особенности предметной деятельности предприятия, безусловно, будут оказывать влияние на структуру информацион­ной системы. Но в то же время структуры разных предприятий в целом похожи между собой. Каждая организация, независимо от рода ее деятельности, состоит из ряда подразделений, непосредственно осуществляющих тот или иной вид дея­тельности компании. И эта ситуация справедлива практически для всех организа­ций, каким бы видом деятельности они ни занимались.

 

Основные фазы проектирования информационной системы

Каждый проект, независимо от сложности и объема работ, необходимых для его выполнения, проходит в своем развитии определенные состояния: от состояния, когда «проекта еще нет», до состояния, когда «проекта уже нет». Совокупность ступеней развития от возникновения идеи до полного завершения проекта приня­то разделять на фазы (стадии, этапы}.

В определении количества фаз и их содержания имеются некоторые отличия, по­скольку эти характеристики во многом зависят от условий осуществления конк­ретного проекта и опыта основных участников. Тем не менее логика и основное содержание процесса разработки информационной системы почти во всех случа­ях являются общими.

Можно выделить следующие фазы развития информационной системы:

1. формирование концепции. Главным содержанием работ на этой фазе является определение проекта, разра­ботка его концепции, включающая:

- формирование идеи, постановку целей;



- формирование ключевой команды проекта;

- изучение мотивации и требований заказчика и других участников;

- сбор исходных данных и анализ существующего состояния;

- определение основных требований и ограничений, требуемых материальных, финансовых и трудовых ресурсов;

- сравнительную оценку альтернатив;

- представление предложений, их экспертизу и утверждение;

2. разработка технического задания. Главным содержанием этой фазы является разработка технического предложения и переговоры с заказчиком о заключении контракта. Общее содержание работ этой фазы:

- разработка основного содержания проекта, базовой структуры проекта;

- разработка и утверждение технического задания;

- планирование, декомпозиция базовой структурной модели проекта:

- составление сметы и бюджета проекта, определение потребности в ресурсах;

- разработка календарных планов и укрупненных графиков работ;

- подписание контракта с заказчиком;

- ввод в действие средств коммуникации участников проекта и контроля за хо­дом работ;

3. проектирование. На этой фазе определяются подсистемы, их взаимосвязи, выбираются наиболее эффективные способы выполнения проекта и использования ресурсов. Характер­ные работы этой фазы:

- выполнение базовых проектных работ;

- разработка частных технических заданий;

- выполнение концептуального проектирования;

- составление технических спецификаций и инструкций;

- представление проектной разработки, экспертиза и утверждение.

На этом этапе решаются вопросы определения входных и выходных потоков информации, их типов, средств защиты данных, программ, компьютерной системы. В этот момент разрабатываются схема данных, меню действий, схемы ресурсов системы, взаимодействия программ, схемы программ:

· схема данных графически отображает путь данных при решении задач от момента возникновения до передачи потребителю и определяет этапы обработки, а также применяемые носители данных;

· меню действий – это горизонтальный список объектов на экране, представляющих группу действий, доступных пользователю для выбора;

· схема ресурсов системы отображает конфигурацию блоков данных и обрабатывающих средств, которые требуются для решения задачи;

· схема программы отображает последовательность операций в программе;

· схема взаимодействия программ показывает путь активации программ и взаимодействий с соответствующими данными;

· схема работы системы отображает управление операциями и потоками данных и отражает технологический процесс обработки данных в системе.

4. изготовление. На этой фазе производятся координация и оперативный контроль работ по проек­ту, осуществляется изготовление подсистем, их объединение и тестирование. Ос­новное содержание:

- выполнение работ по разработке программного обеспечения;

- выполнение подготовки к внедрению системы;

- контроль и регулирование основных показателей проекта.

5. ввод системы в эксплуатацию. На этой фазе проводятся испытания, опытная эксплуатация системы в реальных условиях, ведутся переговоры о результатах выполнения проекта и о возможных новых контрактах. Основные виды работ:

- комплексные испытания;

- подготовка кадров для эксплуатации создаваемой системы;

- подготовка рабочей документации, сдача системы заказчику и ввод ее в экс­плуатацию;

- сопровождение, поддержка, сервисное обслуживание;

- оценка результатов проекта и подготовка итоговых документов;

- разрешение конфликтных ситуаций и закрытие работ по проекту;

- накопление опытных данных для последующих проектов, анализ опыта, состо­яния, определение направлений развития.

Вторую и частично третью фазы принято называть фазами системного проектирования, а последние две (иногда сюда включают и фазу проектирования) — фазами реализации.

Начальные фазы проекта имеют решающее влияние на достигаемый результат, так как в них принимаются основные решения, определяющие качество информацион­ной системы. При этом обычно 30 % вклада в конечный результат проекта вносят фазы концепции и предложения, 20 % —фаза проектирования, 20 % — фаза изготовления, 30 % — фаза сдачи объекта и завершения проекта.

Кроме того, на обнаружение ошибок, допущенных на стадии системного проекти­рования, расходуется примерно в два раза больше времени, чем на последующих фазах, а их исправление обходится в пять раз дороже. Поэтому на начальных ста­диях проекта разработку следует выполнять особенно тщательно. Наиболее часто на начальных фазах допускаются следующие ошибки:

- ошибки в определении интересов заказчика;

- концентрация на маловажных, сторонних интересах;

- неправильная интерпретация исходной постановки задачи;

- неправильное или недостаточное понимание деталей;

- неполнота функциональных спецификаций (системных требований);

- ошибки в определении требуемых ресурсов и сроков;

- редкая проверка на согласованность этапов и отсутствие контроля со стороны заказчика (нет привлечения заказчика).

 

Методология и технология разработки информационных систем

Методология создания информационных систем заключается в организации про­цесса построения информационной системы и обеспечении управления этим про­цессом для того, чтобы гарантировать выполнение требований как к самой систе­ме, так и к характеристикам процесса разработки.

Основными задачами, решение которых должна обеспечивать методология созда­ния корпоративных информационных систем (с помощью соответствующего на­бора инструментальных средств), являются следующие:

- обеспечение создания информационных систем, отвечающих целям и задачам предприятия и соответствующих предъявляемым к ним требованиям по авто­матизации деловых процессов;

- гарантия создания системы с заданными параметрами в течение заданного вре­мени в рамках оговоренного заранее бюджета;

- простота сопровождения, модификации и расширения системы с целью обес­печения ее соответствия изменяющимся условиям работы предприятия;

- обеспечение создания корпоративных информационных систем, отвечающих требованиям открытости, переносимости и масштабируемости;

- возможность использования в создаваемой системе разработанных ранее и при­меняемых на предприятии средств информационных технологий (программ­ного обеспечения, баз данных, средств вычислительной техники, телекомму­никаций).

Методологии, технологии и инструментальные средства проектирования (CASE-средства) составляют основу проекта любой информационной системы. Методология реализуется через конкретные технологии и поддерживающие их стандарты, методики и инструментальные средства, которые обеспечивают выполнение процессов жизненного цикла информационных систем.

Основное содержание технологии проектирования составляют технологические инструкции, состоящие из описания последовательности технологических операций, условий, в зависимости от которых выполняется та или иная операция, и опи­саний самих операций.

Технология проектирования может быть представлена как совокупность трех со­ставляющих:

- заданной последовательности выполнения технологических операций проек­тирования;

- критериев и правил, используемых для оценки результатов выполнения технологических операций;

- графических и текстовых средств (нотаций), используемых для описания проектируемой системы.

Каждая технологическая операция должна обеспечиваться следующими материальными и информационными ресурсами:

- данными, полученными на предыдущей операции (или исходными данными), представленными в стандартном виде;

- методическими материалами, инструкциями, нормативами и стандартами;

- программными и техническими средствами;

- исполнителями.

Результаты выполнения операции должны представляться в некотором стандартном виде, обеспечивающем их адекватное восприятие при выполнении следующей технологической операции (на которой они будут использоваться в качестве исходных данных).

Можно сформулировать следующий ряд общих требований, которым должна удовлетворять технология проектирования, разработки и сопровождения информационных систем:

- поддерживать полный жизненный цикл информационной системы;

- обеспечивать гарантированное достижение целей разработки системы с заданным качеством и в установленное время;

- обеспечивать возможность разделения крупных проектов на ряд подсистем — декомпозицию проекта на составные части, разрабатываемые группами исполнителей ограниченной численности, с последующей интеграцией составных частей. Декомпозиция проекта позволяет повысить эффективность работ. Подсистемы, на которые разбивается проект, должны быть слабо связаны по данным и функциям. Каждая подсистема разрабатывается отдельной группой разработчиков. При этом необходимо обеспечить координацию работ и исключить дублирование результатов, получаемых каждой проектной группой;

- технология должна обеспечивать возможность ведения работ по проектирова­нию отдельных подсистем небольшими группами (3-7 человек). Это обуслов­лено принципами управляемости коллектива и повышения производительно­сти за счет минимизации числа внешних связей;

- обеспечивать минимальное время получения работоспособной системы. Как правило, даже при наличии полностью завершенного проекта внедрение разработанной системы проводится последовательно, по отдель­ным подсистемам. Реализация же всей системы в сжатые сроки может потребовать привлечения большого числа разработчиков, при этом эффект может оказаться ниже, чем при реализации отдельных подсистем в более короткие сроки меньшим числом разработчиков;

- предусматривать возможность управления конфигурацией проекта, ведения версий проекта и его составляющих, возможность автоматического выпуска проектной документации и синхронизацию ее версий с версиями проекта;

- обеспечивать независимость выполняемых проектных решений от средств реа­лизации системы — системы управления базами данных, операционной систе­мы, языка и системы программирования.

CASE-технологии

CASE (Computer-Aided Software/System Engineering) как новое направление в программировании сформировалось за последние 10-15 лет.

CASE-технологии применяются при создании сложных информационных систем, обычно требующих коллективной реализации проекта, в котором участвуют различные специалисты: системные аналитики, проектировщики и программисты. Основное достоинство CASE-технологии - поддержка коллективной работы над проектом за счет возможности работы в локальной сети разработчиков, экспорта/импорта любых фрагментов проекта, организационного управления проектом.

CASE-технология представляет собой совокупность методологического анализа, проектирования, разработки и сопровождения сложных систем программного обеспечения, поддержанную комплексом программных средств автоматизации. Это инструментарий для системных аналитиков, разработчиков и программистов, который позволяет автоматизировать процесс проектирования и разработки ПО. В настоящее время практически ни один серьезный зарубежный программный продукт не осуществляется без использования CASE-средств. Известная методология структурного системного анализа SADT (точнее ее подмножество IDEFO) принята в качестве стандарта на разработку ПО Министерством обороны США.

Основная цель CASE состоит в том, чтобы отделить проектирование ПО от его кодирования и последующих этапов разработки. Чем больше деятельности будет вынесено в проектирование из кодирования, тем лучше.

Инструментальные средства CASE-технологий применяются на всех этапах жизненного цикла системы (от анализа и проектирования до внедрения и сопровождения), значительно упрощая решение возникающих задач.

CASE-технология позволяет отделить проектирование информационной системы от собственно программирования и отладки: разработчик системы занимается проектированием на более высоком уровне, не отвлекаясь на детали. Это позволяет не допустить ошибок уже на стадии проектирования и получить более совершенные программные продукты.

Эта технология изменяет все стадии разработки ИС, более всего отражаясь на этапах анализа и проектирования

Нередко применение CASE-технологии выходит за рамки проектирования и разработки ИС. Технология дает возможность оптимизировать модели организационных и управленческих структур компаний и позволяет лучше решать такие задачи, как планирование, финансирование, обучение. Таким образом, CASE-технология позволяет произвести радикальное преобразование деятельности компании, направленное на оптимальную реализацию того или иного проекта или повышение общей эффективности бизнеса.

Коллективная работа над проектом предполагает обмен информацией, контроль выполнения задач, отслеживание изменений и версий, планирование, взаимодействие и управление. Фундаментам реализации подобных функций чаще всего служит общая база данных проекта, которую обычно называют репозитарием. По существу, репозитарий - это информационный архив, где хранятся сведения о процессах, данных и связях объектов в разрабатываемом приложении.

В большинстве современных CASE-системах применяются методологии структурного анализа и проектирования, которые основаны на наглядных диаграммах. При этом для описания модели проектируемой системы используются графы, диаграммы, таблицы и схемы. Такие методологии обеспечивают строгое и наглядное описание проектируемой системы. Оно начинается с общего обзора системы, затем детализируется, приобретая иерархическую структуру.

CASE-технологии успешно применяются для построения практически всех типов ПО, как системного и управляющего, так и прикладного. Ключевым признаком CASE-средства является поддержка методологий структурного системного анализа и проектирования.

С самого начала CASE-технологии развивались с целью преодоления ограничений при использовании структурных методологий проектирования 60-70-х годов (сложности понимания, большой трудоемкости и стоимости использования, трудности внесения изменений в проектные спецификации и т.п.) за счет автоматизации поддерживающих средств. Т.о., CASE-технологии не могут считаться самостоятельными методологиями, они только развивают структурные методологии и делают более эффективным их применение за счет автоматизации.

Помимо автоматизации структурных методологий CASE обладают следующими основными достоинствами:

· улучшение качества создаваемого ПО за счет средств автоматического контроля;

· создание за короткое время прототипа будущей системы, что позволяет на ранних этапах оценить ожидаемый результат;

· ускорение процесса проектирования и разработки;

· освобождение разработчика от рутинной работы, позволяя ему целиком сосредоточиться на творческой части проекта;

· поддержка развития и сопровождения разработки.

В настоящее время CASE-технологии - одно из наиболее динамично развивающихся отраслей информатики, объединяющие сотни компаний. Из имеющихся на рынке CASE-технологий можно выделить: Application Development Workbench (ADW) фирмы Knowlegge Ware, BPwin (Logic Works), CDEZ Tods (Oracle), Clear Case (Alria Softwere), Composer (Texas Instrument), Discover Development Information System (Software Emancipation Technology).

Современные CASE-технологии успешно применяются для создания ИС различного класса для банков, финансовых корпораций, крупных фирм. Они обычно имеют достаточно высокую стоимость и требуют длительного обучения и кардинальной реорганизации всего процесса создания ИС. Тем не менее экономический эффект применения CASE-технологий весьма значителен, и большинство серьезных программных проектов осуществляется именно с их помощью.

Средства CASE-технологий делятся на две группы:

· встроенные в систему реализации - все решения по проектированию и реализации привязаны к выбранной системе управления базами данных (СУБД);

· независимые от системы реализации - все решения по проектированию ориентированы на унификацию начальных этапов жизненного цикла и средств их документирования, обеспечивают большую гибкость в выборе средств реализации.

Некоторые CASE-технологии ориентированы только на системных проектировщиков и представляют собой специальные графические средства для изображения различного вида моделей:

* диаграммы потоков данных (DFD - data dfow diagrams) совместно со словарями данных и спецификациями процессов;

* диаграммы «сущность-связь» (ERD - entity relationship diagrams), являющиеся инфологической моделью предметной области;

* диаграммы переходов состояний (STD - state transition diagrams), учитывающие события и реакцию на них системы обработки данных.

Другой класс CASE-технологий поддерживает только разработку программ, включая:

* автоматическую генерацию кодов программ на основании их спецификаций;

* проверку корректности описания моделей данных и схем потоков данных;

* документирование программ согласно принятым стандартам и актуальному состоянию проекта;

* тестирование и отладку программ.

Кодогенерация программ выполняется двумя способами: создание каркаса программ и создание полного продукта. Каркас программы служит для последующего ручного варианта редактирования исходных текстов, обеспечивая возможность вмешательства программиста; полный продукт не редактируется вручную.

 

Большинство специалистов считают, что хорошее инструментальное средство CASE должно обладать следующими качествами:

· наличие выбора из различных методов проектирования (разработчик может оперативно переключаться с одного метода на другой);

· простота использования в сочетании с мощными функциями;

· поддержка коллективной работы;

· удобный просмотр иерархии классов;

· возможность "нелинейной" разработки программ;

· ввод программного кода в диаграмму с последующим ее обновлением;

· наличие функции контроля версий;

· распечатка больших диаграмм на стандартных страницах;

· гибкость построения диаграмм, позволяющая пользователю каждый раз видеть то, что ему требуется;

· наличие анимации, с помощью которой можно наглядно моделировать поведение системы;

· наличие хороших средств контроля ошибок, в том числе проверку на наличие логических ошибок;

· разделение компонентов объектной модели по категориям выполняемых функций;

· применение методов "обратного проектирования": использование в разработке алгоритмов существующего кода либо построение логической модели по уже имеющейся базе данных;

· Возможность генерации кода;

· при наличии неоднородной вычислительной среды поддержка нескольких платформ;

· возможность включения в модель элементов проверки и фильтрации данных;

· поддержка сложных моделей, в частности моделей финансовых потоков, деловой и производственной активности;

· приемлемая цена.

 

Классификация CASE-средств по типам отражает их функциональную ориентацию в технологическом процессе.

Анализ и проектирование, создание спецификаций системы поддерживают следующие системы: CASE. Аналитик; Excelerator (Index Technology); Design-Aid (Nastec); Analist/Designer (Yourdon); Design/IDEF (Meta Software); SELECT (Select Software Tools); System Architech (Software&Systems) и др. На выходе продуцируются спецификации компонентов системы и интерфейсов, связывающих эти компоненты, а также предварительная архитектура системы; детальная проработка проекта, включающая алгоритмы и определение структур данных.

Проектирование баз данных и файлов предполагает использование следующих CASE-средств: ERWin (Logic Works); S- Designer (SDR), Designer/2000 (Oracle), Silverrun (Computer, Systems Advisers и др. Средства данной группы обеспечивают логическое моделирование данных, автоматическое преобразование моделей данных в 3НФ, автоматическую генерацию схем БД и описание форматов файлов на уровне программного кода.

Программирование. Средства этой группы поддерживают этапы программирования и тестирования, а также автоматическую кодогенерацию из спецификаций, получая полную документированную выполняемую программу: СOBOL 2/Workbench (MicroFocus); DECASE (DEC); NETRON/CAP (Netron), APS (Sage Software). Помимо диаграммеров различного назначения и средств поддержки работы с репозитарием, в эту группу средств включены и традиционные генераторы кодов, анализаторы кодов (как в статике, так и динамике), генераторы наборов тестов, анализаторы покрытия тестами, отладчики.

Сопровождение и реинжинеринг. К таким средствам относятся документаторы, анализаторы программ, средства реконструирования и реинжениринга: Adpac CASE Tools (Adpac), Scan/COBOL & Super Structure (Computer Data Systems), Inspector/Recoder (Language Technology). Их целью является корректировка, изменение, анализ, приобретение и реинжениринг существующей системы.

Мобильность системы обеспечивается в CASE-средствах средствами миграции и реинжениринга. К средствам миграции относятся трансляторы, конверторы, макрогенераторы и др., позволяющие обеспечить перенос существующей системы в новое операционное или аппаратное окружение. Средства реинжениринга включают:

- статистические анализаторы для продуцирования схем системы ПО из ее кодов, оценки влияния модификаций (например, «эффект ряби»- внесение изменений с целью исправления ошибок порождает новые ошибки);

- динамические анализаторы (обычно компиляторы и интерпретаторы с встроенными отладочными возможностями);

- документаторы, позволяющие автоматически получать обновленную документацию при изменении кода;

- редакторы кодов, автоматически изменяющие при редактировании и все предшествующие коду структуры (например, спецификации);

- средства доступа к спецификациям, их модификации и генерации нового (модифицированного кода);

- средства реверсного инжиниринга, транслирующие коды в спецификации.

Окружение. Средства поддержки платформ для интеграции, создания и придания товарного вида CASE-средствам Multi/Cam (AGS Management Systems), Sylva Foundry (Cagware).

Управление проектом – средства, поддерживающие планирование, контроль, руководство, взаимодействие, т.е. функции, необходимые в процессе разработки и сопровождения проектов: Project Workbench (Applied Business Technology).

CASE-средства классифицируются также по категориям. Такая классификация определяет уровень интегрированности по выполняемым функциям и включает:

- вспомогательные программы (tools) - решают небольшую автономную задачу, принадлежащую проблеме более широкого масштаба;

- пакеты разработчика (toolkit) - представляют собой совокупность интегрированных программных средств, обеспечивающих помощь для одного из классов программных задач (использует репозитарий для всей технической и управляющей информации о проекте, концентрируясь при этом на поддержке, как правило, одной фазы или одного этапа разработки ПО;

- интегрированные программные средства (workbench) - поддерживают системный анализ, проектирование и разработку ПО. По сравнению с toolkit обладают более высокой степенью интеграции выполняемых функций, большей самостоятельностью и автономностью использования; наличием тесной связи с системными и техническими средствами аппаратно-вычислительной среды, на которой workbench функционирует.

 

 






ТОП 5 статей:
Экономическая сущность инвестиций - Экономическая сущность инвестиций – долгосрочные вложения экономических ресурсов сроком более 1 года для получения прибыли путем...
Тема: Федеральный закон от 26.07.2006 N 135-ФЗ - На основании изучения ФЗ № 135, дайте максимально короткое определение следующих понятий с указанием статей и пунктов закона...
Сущность, функции и виды управления в телекоммуникациях - Цели достигаются с помощью различных принципов, функций и методов социально-экономического менеджмента...
Схема построения базисных индексов - Индекс (лат. INDEX – указатель, показатель) - относительная величина, показывающая, во сколько раз уровень изучаемого явления...
Тема 11. Международное космическое право - Правовой режим космического пространства и небесных тел. Принципы деятельности государств по исследованию...



©2015- 2024 pdnr.ru Все права принадлежат авторам размещенных материалов.