КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Библиографический список. Вспомогательные процессы анализа
Заключение Вспомогательные процессы анализа Основные процессы анализа К основным относятся те процессы анализа, которые непосредственно связаны с целями проекта и показателями, характеризующими успешность исполнения проекта: · анализ сроков - определение соответствия фактических и прогнозных сроков исполнения операций проекта директивным или запланированным; · анализ стоимости - определение соответствия фактической и прогнозной стоимости операций и фаз проекта директивным или запланированным; · анализ качества - мониторинг результатов с целью их проверки на соответствие принятым стандартам качества и определения путей устранения причин нежелательных результатов исполнения качества проекта; · подтверждение целей- процесс формальной приемки результатов проекта его участниками (инвесторами, потребителями и т.д.).
Вспомогательные процессы анализа связаны с анализом факторов, влияющих на цели и критерии успеха проекта. Эти процессы включают: · оценку исполнения - анализ результатов работы и распределение проектной информации с целью снабжения участников проекта данными о том, как используются ресурсы для достижения целей проекта; · анализ ресурсов - определение соответствия фактической и прогнозной загрузки и производительности ресурсов запланированным, а также анализ соответствия фактического расхода материалов плановым значениям. В число процессов анализа не включены анализ взаимодействия с целью оптимизации процедур обработки проектной информации, анализ исполнения контрактов с целью своевременного внесения изменений и предотвращения споров и ряд других процессов, которые не носят регулярного характера (как анализ взаимодействия), либо составляют часть включенных процессов (как анализ контрактов). В результате анализа либо принимается решение о продолжении исполнения проекта по намеченному ранее плану, либо определяется необходимость применения корректирующих воздействий. Заключение
Технология разработки программного обеспечения – это дисциплина, рассматривающая приложение теории, знаний и практики для эффективного построения программных систем, удовлетворяющих требованиям пользователей и заказчиков. В рамках дисциплины изучается весь спектр процессов, ведущих к созданию программного обеспечения: от разработки требований к ПО, через проектирование, разработку и аттестацию до модернизации программных систем. В курсе можно выделить две основных части: Процесс разработки программного обеспечения. Эта часть курса посвящена процессу разработки программного обеспечения. Рассматриваются различные модели процесса разработки, изучаются основные фазы этого процесса: формирование требований, проектирование ПО, аттестация ПО и эволюция ПО. Управление программными проектами. Под управлением проектом подразумевается деятельность, направленная на реализацию проекта с максимально возможной эффективностью при заданных ограничениях по времени, денежным средствам, а также качеству конечных результатов проекта. Разработка программного обеспечения требует знакомства с методами и инструментами управления проектами.
Контрольные вопросы
1. Barker, R. CASE*Method. Entity-Relationship Modelling [Текст]/ R.Barker - Copyright Oracle Corporation UK Limited, Addison-Wesley Publishing Co., 1990. 2. Boehm, B.W. A Spiral Model of Software Development and Enhancement. ACM [Текст]/ Boehm B.W. - SIGSOFT Software Engineering Notes, Aug. 1986 3. DATARUN Concepts [Текст] / Computer Systems Advisers Research Ltd., 1994. 4. DeMarco, Tom. Structured Analysis and System Specification. [Текст] / Tom DeMarco. - Yourdon Press, New York, 1978. 5. Gane, Chris. Structured System Analysis [Текст]/ Chris Gane, Trish Sarson. - Prentice-Hall, 1979. 6. IEEE Std 1209-1992. IEEE Recommended Practice for the Evaluation and Selection of CASE Tools. [Текст] 7. IEEE Std 1348-1995. IEEE Recommended Practice for the Adoption of CASE Tools. [Текст] 8. PVCS Tracker. User's Guide. [Текст] 9. PVCS Version Manager. User's Guide. [Текст] 10. QA Partner. User's Guide. [Текст] 11. SE Companion Installation and Administration Manual. [Текст] /SECA Inc., 1995. 12. Uniface V6.1 Designers' Guide. [Текст] / Uniface B.V., Netherlands, 1994. 13. Westmount I-CASE User Manual. [Текст] / Westmount Technology B.V., Netherlands, 1994. 14. Yourdon, Edward. Modern Structured Analysis. [Текст] / Edward Yourdon. - Prentice-Hall, 1989. 15. Автоматизация управления предприятием [Текст] / В.В. Баронов [и др.] - М.: ИНФРА-М, 2000. - 239 с. 16. Брауде, Э. Дж. Технология разработки программного обеспечения [Текст] / Э. Дж. Брауде – СПб.: Питер, 2004. – 655 с.: ил. 17. Буч, Гради. Язык UML. Руководство пользователя: Пер. с англ. /Г. Буч, Д. Рамбо, А. Джекобсон - М.: ДМК, 2000. 18. Вендров, А.М. CASE-технологии. Современные методы и средства проектирования информационных систем. [Текст] / А.М. Вендров. - М.: Финансы и статистика, 1998. 19. Вендров, А.М. Проектирование программного обеспечения экономических информационных систем [Текст] / А.М. Вендров. - М.: Финансы и статистика, 2002. 20. Зиндер, Е.З. Бизнес-реинжиниринг и технологии системного проектирования: Учебное пособие [Текст] / Е.З. Зиндер. - М., Центр информационных технологий, 1996. 21. Калянов, Г.Н. CASE: Структурный системный анализ (автоматизация и применение) [Текст] / Г.Н. Калянов. - М.: ЛОРИ, 1996. 22. Калянов, Г.Н. Case-технологии: консалтинг в автоматизации бизнес-процессов [Текст] / Г.Н. Калянов. - М.: «Горячая линия - Телеком», 2002. 23. Калянов, Г.Н. Консалтинг при автоматизации предприятий (подходы, методы, средства) [Текст] / Г.Н. Калянов - М.: СИНТЕГ, 1997. 24. Калянов, Г.Н. Теория и практика реорганизации бизнес-процессов [Текст] / Г.Н. Калянов. - М.: СИНТЕГ, 2000. 25. Константайн, Л. Разработка программного обеспечения [Текст] / Л. Константайн, Л. Локвуд. – СПб.: Питер, 2004. – 592 с.: ил. 26. Куперштейн, В.И. Microsoft Project в делопроизводстве и управлении [Текст] / В.И. Куперштейн – СПб.: БХВ-Петербург, 2003. – 480с.:ил. 27. Маклаков, С.В. BPWin и ERWin.CASE-средства разработки информационных систем [Текст] / С.В. Маклаков. - М.: ДИАЛОГ-МИФИ, 2000. 28. Маклаков, С.В. Создание информационных систем с AllFusion Modeling Suite [Текст] / С.В. Маклаков – М.:ДИАЛОГ-МИФИ, 2003 – 432 с.: ил. 29. Марка, Д.А. Методология структурного анализа и проектирования [Текст] / Д.А. Марка, К. Мак Гоуэн. – М.: Метатехнология, 1993. 30. Международные стандарты, поддерживающие жизненный цикл программных средств [Текст] / М.: МП "Экономика", 1996. 31. Новоженов, Ю.В. Объектно-ориентированные технологии разработки сложных программных систем [Текст] / Ю.В. Новоженов. - М., 1996. 32. Ойхман, Е.Г. Реинжиниринг бизнеса: реинжиниринг организации и информационных технологий [Текст] / Е.Г. Ойхман, Э.В. Попов. - М.: Финансы и статистика, 1997. 33. Орлов, С. Технологии разработки программного обеспечения: Уч. [Текст] / С. Орлов -СПб.:Питер,2003.-480с.-(Учеб. пособие) 34. Садовский, В.Н. Основания общей теории систем. Логико-методологический анализ [Текст] / В.Н. Садовский. - М.: Наука, 1974. - 278 с. 35. Шеер, А.В. Бизнес-процессы. Основные понятия. Теория. Методы: Пер. с англ. - 2-е изд., испр. и доп./ А.В. Шеер - М.: АОЗТ «Просветитель», 1999. 36. Шеер, А.В.. Моделирование бизнес-процессов: Пер. с англ. - 2-е изд., испр. и доп./ А.В. Шеер. - М.: ООО «Издательство «Серебряные нити», 2000. 37. Шлеер, С. Объектно-ориентированный анализ: моделирование мира в состояниях [Текст] /С. Шлеер, С. Меллор. – Киев.: Диалектика, 1993. 38. Якобсон, А. Унифицированный процесс разработки программного обеспечения. [Текст] / А. Якобсон, Г. Буч, Дж. Рэмбо – СПб.: Питер, 2002. – 496 с.: ил.
Заключение Технология разработки программного обеспечения – это дисциплина, рассматривающая приложение теории, знаний и практики для эффективного построения программных систем, удовлетворяющих требованиям пользователей и заказчиков. В рамках дисциплины изучается весь спектр процессов, ведущих к созданию программного обеспечения: от разработки требований к ПО, через проектирование, разработку и аттестацию до модернизации программных систем. В курсе можно выделить две основных части: Процесс разработки программного обеспечения. Эта часть курса посвящена процессу разработки программного обеспечения. Рассматриваются различные модели процесса разработки, изучаются основные фазы этого процесса: формирование требований, проектирование ПО, аттестация ПО и эволюция ПО. Управление программными проектами. Под управлением проектом подразумевается деятельность, направленная на реализацию проекта с максимально возможной эффективностью при заданных ограничениях по времени, денежным средствам, а также качеству конечных результатов проекта. Разработка программного обеспечения требует знакомства с методами и инструментами управления проектами.
Контрольные вопросы
Библиографический список Barker, R. CASE*Method. Entity-Relationship Modelling [Текст]/ R.Barker - Copyright Oracle Corporation UK Limited, Addison-Wesley Publishing Co., 1990. Boehm, B.W. A Spiral Model of Software Development and Enhancement. ACM [Текст]/ Boehm B.W. - SIGSOFT Software Engineering Notes, Aug. 1986 DATARUN Concepts [Текст] / Computer Systems Advisers Research Ltd., 1994. DeMarco, Tom. Structured Analysis and System Specification. [Текст] / Tom DeMarco. - Yourdon Press, New York, 1978. Gane, Chris. Structured System Analysis [Текст]/ Chris Gane, Trish Sarson. - Prentice-Hall, 1979. IEEE Std 1209-1992. IEEE Recommended Practice for the Evaluation and Selection of CASE Tools. [Текст] IEEE Std 1348-1995. IEEE Recommended Practice for the Adoption of CASE Tools. [Текст] PVCS Tracker. User's Guide. [Текст] PVCS Version Manager. User's Guide. [Текст] QA Partner. User's Guide. [Текст] SE Companion Installation and Administration Manual. [Текст] /SECA Inc., 1995. Uniface V6.1 Designers' Guide. [Текст] / Uniface B.V., Netherlands, 1994. Westmount I-CASE User Manual. [Текст] / Westmount Technology B.V., Netherlands, 1994. Yourdon, Edward. Modern Structured Analysis. [Текст] / Edward Yourdon. - Prentice-Hall, 1989. Автоматизация управления предприятием [Текст] / В.В. Баронов [и др.] - М.: ИНФРА-М, 2000. - 239 с. Брауде, Э. Дж. Технология разработки программного обеспечения [Текст] / Э. Дж. Брауде – СПб.: Питер, 2004. – 655 с.: ил. Буч, Гради. Язык UML. Руководство пользователя: Пер. с англ. /Г. Буч, Д. Рамбо, А. Джекобсон - М.: ДМК, 2000. Вендров, А.М. CASE-технологии. Современные методы и средства проектирования информационных систем. [Текст] / А.М. Вендров. - М.: Финансы и статистика, 1998. Вендров, А.М. Проектирование программного обеспечения экономических информационных систем [Текст] / А.М. Вендров. - М.: Финансы и статистика, 2002. Зиндер, Е.З. Бизнес-реинжиниринг и технологии системного проектирования: Учебное пособие [Текст] / Е.З. Зиндер. - М., Центр информационных технологий, 1996. Калянов, Г.Н. CASE: Структурный системный анализ (автоматизация и применение) [Текст] / Г.Н. Калянов. - М.: ЛОРИ, 1996. Калянов, Г.Н. Case-технологии: консалтинг в автоматизации бизнес-процессов [Текст] / Г.Н. Калянов. - М.: «Горячая линия - Телеком», 2002. Калянов, Г.Н. Консалтинг при автоматизации предприятий (подходы, методы, средства) [Текст] / Г.Н. Калянов - М.: СИНТЕГ, 1997. Калянов, Г.Н. Теория и практика реорганизации бизнес-процессов [Текст] / Г.Н. Калянов. - М.: СИНТЕГ, 2000. Константайн, Л. Разработка программного обеспечения [Текст] / Л. Константайн, Л. Локвуд. – СПб.: Питер, 2004. – 592 с.: ил. Куперштейн, В.И. Microsoft Project в делопроизводстве и управлении [Текст] / В.И. Куперштейн – СПб.: БХВ-Петербург, 2003. – 480с.:ил. Маклаков, С.В. BPWin и ERWin.CASE-средства разработки информационных систем [Текст] / С.В. Маклаков. - М.: ДИАЛОГ-МИФИ, 2000. Маклаков, С.В. Создание информационных систем с AllFusion Modeling Suite [Текст] / С.В. Маклаков – М.:ДИАЛОГ-МИФИ, 2003 – 432 с.: ил. Марка, Д.А. Методология структурного анализа и проектирования [Текст] / Д.А. Марка, К. Мак Гоуэн. – М.: Метатехнология, 1993. Международные стандарты, поддерживающие жизненный цикл программных средств [Текст] / М.: МП "Экономика", 1996. Новоженов, Ю.В. Объектно-ориентированные технологии разработки сложных программных систем [Текст] / Ю.В. Новоженов. - М., 1996. Ойхман, Е.Г. Реинжиниринг бизнеса: реинжиниринг организации и информационных технологий [Текст] / Е.Г. Ойхман, Э.В. Попов. - М.: Финансы и статистика, 1997. Орлов, С. Технологии разработки программного обеспечения: Уч. [Текст] / С. Орлов -СПб.:Питер,2003.-480с.-(Учеб. пособие) Садовский, В.Н. Основания общей теории систем. Логико-методологический анализ [Текст] / В.Н. Садовский. - М.: Наука, 1974. - 278 с. Шеер, А.В. Бизнес-процессы. Основные понятия. Теория. Методы: Пер. с англ. - 2-е изд., испр. и доп./ А.В. Шеер - М.: АОЗТ «Просветитель», 1999. Шеер, А.В.. Моделирование бизнес-процессов: Пер. с англ. - 2-е изд., испр. и доп./ А.В. Шеер. - М.: ООО «Издательство «Серебряные нити», 2000. Шлеер, С. Объектно-ориентированный анализ: моделирование мира в состояниях [Текст] /С. Шлеер, С. Меллор. – Киев.: Диалектика, 1993. Якобсон, А. Унифицированный процесс разработки программного обеспечения. [Текст] / А. Якобсон, Г. Буч, Дж. Рэмбо – СПб.: Питер, 2002. – 496 с.: ил. Содержание Введение 4 1 Цели при разработке программного обеспечения 5 1.1.1 Качество разработки ПИ 5 1.1.2 Эффективность разработки ПО 6 2 Жизненный цикл ПО. Модели жизненного цикла 8 3 Анализ требований 13 3.1 Принципы структурного анализа 13 3.2 Проблема сложности ИС 15 3.3 Группы средств моделирования систем 16 3.4 Диаграммы потоков данных 20 3.4.1 Основные символы DFD 20 3.4.2 Контекстная диаграмма и детализация процессов 21 3.4.3 Декомпозиция и слияние данных 22 3.4.4 Построение модели 22 4 Построение модели в DFD на примере банковской задачи 23 5 Словарь данных 29 6 Спецификации процессов 30 7 Методология функционального моделирования SADT (IDEF0) 34 7.1 Structured Analysis and Design Technique 34 7.2 Диаграммы IDEF0. 36 7.2.1 Виды связей в IDEF0 39 7.2.2 Диаграмма дерева узлов 41 7.2.3 Диаграмма «Только для просмотра» (For Exposition Only – FEO) 42 8 Моделирование данных в нотации IDEF1x 42 8.1 Базовые понятия ERD 43 8.2 Виды сущностей в IDEF1x 43 8.3 Виды связей в IDEF1X 44 8.4 Нормализация схемы данных 47 9 Комплексная интеграция BPWin, ERWin и Paradigm Plus. 52 9.1 Соответствие объектов моделей процессов и моделей данных 52 9.2 Экспорт между моделью данных и моделью процессов 53 9.3 Paradigm Plus: двусторонняя связь с ERwin 54 10 Создание физической модели данных в ERWin 55 10.1 Уровни физической модели 55 10.2 Правила валидации и значения по умолчанию 56 10.3 Индексы 57 10.4 Триггеры и хранимые процедуры 57 10.4.1 Значения RI, используемые ERWin для различных типов связей 59 11 Тестирование и сертификация программного обеспечения 60 11.1 Дестабилизирующие факторы и методы обеспечения высокого качества функционирования ПО 61 11.2 Использование среды автоматизированного тестирования Platinum TESTBytes 62 11.3 Методы обеспечения качества и надежности программных средств 63 11.4 Использование CASE для повышения качества ПО 63 11.5 Влияние стандартов открытых систем на качество ПО 64 11.6 Повышение качества ПО путем тестирования 65 11.7 Основные особенности процесса тестирования ПО 65 11.8 Организационные особенности тестирования 65 11.9 Сертификация ПО 66 12 Организация и планирование тестирования для обеспечения качества ПО 67 12.1 Важнейшие разделы ISO 9003 69 12.2 Общие положения 69 12.3 Документирование системы качества 69 12.4 Программа качества 69 12.5 Внутренние проверки системы качества 69 12.6 Корректирующие действия 69 13 Стандарты, регламентирующие разработку ПО 70 13.1 Стандарт ISO 12207:1995 - Процессы жизненного цикла программных средств 70 13.2 ISO 15504 SPICE 74 13.3 Серия стандартов ГОСТ 34-ХХХ «Информационная технология» 77 13.3.1 ГОСТ 34.601-90. Информационная технология. Автоматизированные системы. Стадии создания. 77 13.3.2 ГОСТ 34.602-89. Информационная технология. Техническое задание на создание автоматизированной системы 77 13.3.3 ГОСТ 34.603-92. Информационная технология. Виды испытаний автоматизированных систем 77 14 Управление проектами разработки информационных систем 77 14.1 Процессы управления проектами 77 14.2 Процессы проекта 78 14.3 Группы процессов 78 14.4 Взаимосвязи процессов 79 14.5 Процессы инициации 79 14.6 Процессы планирования 79 14.6.1 Основные процессы планирования 80 14.6.2 Вспомогательные процессы планирования 80 14.7 Процессы исполнения и контроля 81 14.8 Процессы анализа 82 14.8.1 Основные процессы анализа 82 14.8.2 Вспомогательные процессы анализа 82 14.9 Процессы управления 83 14.9.1 Основные процессы управления 83 14.9.2 Вспомогательные процессы управления 83 14.10 Процессы завершения 84 15 Определение концепции проекта (область применения, цели и подход) 84 15.1 Введение 84 15.2 Результаты 84 15.3 Исходная информация 84 15.4 Шаги задачи 85 15.5 Методика и подход 85 15.5.1 Выработать основные положения проекта 85 15.5.2 Определить область применения, цели и подход 85 15.5.3 Произвести оценку рисков 86 15.5.4 Получить подтверждение Заказчика и Исполнителя 86 15.6 Роли и ответственность 87 16 Рабочий план 87 16.1 По работам 87 16.2 По исполнителям 89 16.3 Диаграмма Гантта по проекту 89 16.4 График движения денежных средств по проекту 89 16.5 Полномочия в изменении плана 89 17 Заключение 89 18 Контрольные вопросы 91 Библиографический список 97
Диаграммы потоков данных Нотация диаграмм потоков данных (Data Flow Diagrams) принадлежит к классу средств моделирования функциональных требований к проектируемой системе. С помощью средств данного класса требования разбиваются на функциональные компоненты (процессы) и представляются в виде сети, связанной потоками данных. Главная цель таких средств – продемонстрировать, как каждый процесс преобразует входные данные в выходные, выявить отношения между процессами. Рассмотрим DFD в нотации Гейна – Сарсона (Gane - Sarson), используемой в CASE-средстве BPWin.
Основные символы DFD На диаграммах потоков данных функциональные требования представляются с помощью процессов и хранилищ, связанных потоками данных (рис.6). Основные символы DFD
Поток данных – механизм, использующийся для моделирования передачи информации (физических компонентов) из одной части системы в другую. Поток изображается именованной стрелкой, ориентация которой указывает направление движения информации. Если информация движется между двумя элементами модели в противоположных направлениях, это изображается либо двумя встречными стрелками, либо одной двунаправленной. Процесс – производит выходные потоки из входных в соответствии с действием, задаваемым именем процесса. Имя должно содержать глагол в неопределенной форме с последующим дополнением (например, ВЫЧИСЛИТЬ МАКСИМАЛЬНУЮ ВЫСОТУ). Кроме того, каждый процесс должен иметь уникальный номер для ссылок на него внутри диаграммы. Номер может использоваться совместно с номером диаграммы для получения уникального индекса процесса во всей модели. Хранилище (накопитель) данных – позволяет на определенных участках определять данные, которые будут сохраняться в памяти между процессами. Фактически, хранилище представляет собой временной «срез» потока данных. Информация, содержащаяся в хранилище данных, может быть использована в любой момент и выбрана в произвольном порядке. Имя хранилища должно идентифицировать его содержимое и быть существительным. В случае, если поток данных проходит через хранилище и его структура соответствует структуре хранилища, он должен иметь то же самое имя, которое нет необходимости отражать на диаграмме. Внешняя сущность (терминатор) представляет сущность вне контекста системы, являющуюся источником или приемником данных системы. Имя внешней сущности должно содержать существительное (например, СКЛАД ТОВАРОВ). Узлы, изображаемые внешними сущностями, не должны участвовать ни в какой обработке данных.
Контекстная диаграмма и детализация процессов Декомпозиция DFD осуществляется путем раскрытия процессов при помощи DFD нижнего уровня. Контекстная диаграмма – специальный вид DFD, моделирующий систему наиболее общим образом. Контекстная диаграмма отражает интерфейс системы с внешним миром, информационные потоки между системой и внешними сущностями, с которыми она должна быть связана. Контекстная диаграмма идентифицирует внешние сущности и, как правило, единственный процесс, отражающий наиболее общий процесс деятельности, соответствующий главной цели или природе системы. DFD первого уровня строится как декомпозиция единственного процесса, отраженного на контекстной диаграмме. Построенная диаграмма первого уровня имеет также множество процессов, каждый из которых в свою очередь может быть описан при помощи DFD нижнего уровня. Таким образом, строится иерархия DFD с контекстной диаграммой в корне дерева. Процесс декомпозиции останавливается тогда, когда процесс может быть эффективно описан при помощи короткой (не более 1 страницы текста или модели) спецификации процесса. Для контроля и поддержания иерархии моделей и процессов в DFD используются структурированные номера процессов. Нумерация строится следующим образом: Контекстный процесс – не нумеруется, или имеет номер 1. Процессы диаграммы первого уровня – имеют номера 1.1, 1.2, 1.3 и т.д. Процессы диаграммы второго уровня, раскрывающей процесс 1.1 нумеруются 1.1.1, 1.1.2, 1.1.3 и т.д. Процессы диаграммы второго уровня, раскрывающей процесс 1.2 нумеруются 1.2.1, 1.2.2, 1.2.3 и т.д. Декомпозиция и слияние данных Одни и те же данные или объекты, порожденные одной функцией, могут использоваться сразу в нескольких функциях. Потоки же, порожденные несколькими функциями, могут представлять собой одинаковые или однородные данные, которые затем могут использоваться или перерабатываться в одной точке назначения. Для моделирования таких ситуаций используется механизм разветвления или слияния потоков. Смысл разветвления или слияния передается наименованием каждой ветви потока. Существуют правила присвоения имен потокам в такой ситуации. Если поток именован до разветвления, а после разветвления ни одна ветвь не именована, следовательно, каждая ветвь моделирует те же данные что и до разветвления. Если поток именован до разветвления, а после разветвления часть ветвей именована, а часть – нет, подразумевается, что именованные ветви соответствуют наименованию, а неименованные ветви моделируют те же данные, что и до разветвления. Недопустима ситуация, когда поток до разветвления не именован, а после разветвления не именована какая-либо ветвь. Правила именования потоков при слиянии – аналогичны. При слиянии потоков недопустима ситуация, когда не именована какая-либо из ветвей до слияния и поток после слияния.
Построение модели Главная цель построения модели в DFD заключается в том, чтобы сделать требования к системе ясными и понятными на каждом уровне детализации, а также разбить требования на части с четко определенными отношениями между ними. Для достижения этой цели следует пользоваться следующими рекомендациями: На каждой диаграмме – 2-7 процессов. Не загромождать диаграмму несущественными на данном уровне деталями. Декомпозицию потоков данных осуществлять параллельно с декомпозицией процессов, обе эти работы ведутся параллельно, а не одна после другой. Для улучшения понимаемости модели выбирать ясные, отражающие суть дела имена объектов модели, стараться не использовать аббревиатуры. Однократно определять функционально идентичные процессы на самом верхнем уровне, где такой процесс необходим, и ссылаться на него на нижних уровнях. Использовать простейшие диаграммные техники: если что-то можно описать при помощи DFD, то это и следует сделать, а не использовать более сложные методы. В соответствии с данными рекомендациями процесс построения модели разбивается на следующие этапы: Расчленение множества требований и организация их в основные функциональные группы. Идентификация внешних объектов, с которыми должна быть связана система. Идентификация основных видов информации, циркулирующих между системой и внешней средой. Разработка предварительной контекстной диаграммы. Функциональные группы представляются процессами, внешние объекты – внешними сущностями, основные виды информации – потоками данных между процессами и внешними сущностями. Верификация предварительной контекстной диаграммы, внесение в нее изменений по результатам ответов на возникающие вопросы. Построение контекстной диаграммы путем слияния всех процессов предварительной диаграммы в один процесс, а также группировки потоков. Формирование DFD первого уровня на базе процессов предварительной контекстной диаграммы. Проверка основных требований по DFD первого уровня. Декомпозиция каждого процесса текущей DFD с помощью детализирующей диаграммы или спецификации процесса. Проверка основных требований по DFD соответствующего уровня. Добавление определений новых потоков в словарь данных при каждом их появлении на диаграммах. Параллельное с процессом декомпозиции изучение требований (в том числе и вновь поступающих), разбиение их на элементарные и идентификация процессов или спецификаций процессов, соответствующих этим требованиям. После построения каждых 2-3 уровней – ревизия модели с целью проверки ее корректности и улучшения понимаемости. Построение спецификаций процессов в тех случаях, когда нет необходимости или возможности раскрывать их при помощи DFD. Построение модели в DFD на примере банковской задачи В качестве примера создания модели рассмотрим фрагмент проекта системы, организующей работу по обслуживанию клиента банка через банкомат. На этом примере рассмотрим основные базовые техники структурного анализа и проектирования по мере того, как будет возникать необходимость в них. На рисунке 7 приведена контекстная диаграмма системы с единственным процессом («Обслужить»), идентифицирующая внешние сущности «Клиент» и «Компьютер банка» (в компьютере банка хранится информация о состоянии счетов всех клиентов). Контекстная диаграмма банковской задачи Опишем потоки данных, связывающие систему с внешними объектами. Для банковского обслуживания клиент должен предоставить системе свою «Кредитную карту». С «Кредитной карты» автоматически считывается информация – «Пароль», «Лимит денег», «Детали клиента». Кроме того, клиент должен сообщить свои «Ключевые данные», состоящие из составных частей «Пароль» и «Запрос на обслуживание». «Запрос на обслуживание» представляет собой вариант требуемой клиенту услуги (например, снятие со счета наличных денег). Банковское обслуживание с точки зрения клиента должно обеспечивать выполнение следующих операций: Выдать «Сообщение», приглашающее клиента ввести «Ключевые данные». Выдать клиенту «Деньги». Выдать клиенту «Выписку» по проведенному обслуживанию. «Выписка» включает в себя следующие элементы: «Выписка о деньгах», «Выписка по балансу», «Выписка по операции». С компьютером банка контекстный процесс обменивается следующей информацией: «Данные по счету» клиента в банке. «Протокол обслуживания» включающий в себя элементы: «Обработанная документация», «Денежная сумма», «Данные по истории запроса». Детализация контекстного процесса при помощи DFD нижнего уровня представлена на рис. 8.
Детализация процесса «Обслужить»
Диаграмма содержит следующие процессы: Процесс 1 («Получить пароль») осуществляет прием и проверку пароля клиента. Процесс использует следующие потоки данных: «Сообщение» – используется для информирования клиента о готовности принять пароль. «Введенный пароль» – элемент внешнего потока «Ключевые данные»; «Пароль» из хранилища «Данные кредитной карты» для проверки вводимого клиентом пароля. Процесс 2 («Получить запрос на обслуживание») осуществляет прием и проверку запроса клиента на проведение необходимой ему банковской операции. Процесс использует следующие потоки данных: «Сообщение» используется для информирования клиента о готовности системы принять запрос на обслуживание. «Запрос на обслуживание» является элементом внешнего потока «Ключевые данные». «Лимит денег» из хранилища «Данные кредитной карты» – используется для контроля наличия денег на счете клиента. Процесс 3 («Обработать запрос на обслуживание») использует следующие потоки данных: «Данные по счету» от внешней сущности «Компьютер банка». «Детали клиента» из хранилища «Данные кредитной карты». «Выписка». «Деньги». «Протокол обслуживания». Процесс 4 («Обработать кредитную карту») осуществляет считывание информации с кредитной карты. Процесс использует следующие потоки данных: «Кредитная карта». «Данные кредитной карты». Данный поток на модели не именован, поскольку он полностью соответствует по структуре хранилищу «Данные кредитной карты». Процессы 1, 2 и 4 являются элементарными, их спецификация будет приведена в лекции по спецификации процессов. Декомпозиция процесса 3 приведена на рис. 9.
Декомпозиция процесса «Обработать запрос на обслуживание»
Диаграмма содержит следующие процессы: Процесс 3.1 («Обработать документацию») осуществляет обработку внутренней банковской документации по клиенту. Процесс использует следующие потоки данных: «Детали клиента». «Обработанная документация», которая является частью потока «Протокол обслуживания». Процесс 3.2 («Распечатать баланс клиента») выдает клиенту справку по истории его счета и баланса. Процесс использует потоки: «Детали клиента». «Данные по балансу» (часть потока «Данные по счету»). «Выписка по балансу» (часть потока «Выписка»). «Данные по истории запроса» (часть потока «Протокол обслуживания»). Процесс 3.3 («Приготовить деньги клиенту») обеспечивает выдачу наличных денег и информирует компьютер банка об изъятых из банка деньгах. Процесс использует следующие потоки данных: «Денежная сумма». «Детали клиента». «Деньги». «Денежная сумма» (часть потока «Протокол обслуживания»). Процесс 3.4 («Распечатать операцию клиента») выдает справку по истории счета и уведомление по проведенной операции. Процесс использует следующие потоки: «Данные по счету». «Детали клиента». «Выписка по операции» (часть потока «Выписка»). «Данные по истории запроса» (часть потока «Протокол обслуживания»).
[1] В процессе проекта заказчик может быть изменен. Например, на начальных этапах большого проекта, менеджер комплексного проекта может принять решение о начале работ до согласования с действительным заказчиком сформулированных требований. В этом случае до утверждения требований действительным заказчиком, роль заказчика принимает на себя менеджер комплексного проекта.
Дата добавления: 2014-01-07; Просмотров: 1578; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |