2.4 Трудности при проектировании программного обеспечения
Рассмотрим основные затруднения, возникающие в процессе создания программного обеспечения.
Одной из проблем является недостаток прозрачности. Она заключается в сложности отслеживания процесса проектирования.
Такая ситуация возникает обычно при недостаточном финансировании проекта. За счет сокращения этапа проектирования выполняются остальные этапы. В результате не всегда становится известным, из скольких этапов состоит разработка и сколько времени занимает каждый этап.
Еще одной проблемой является недостаток контроля. Без точной оценки процесса разработки может превышаться бюджет проекта или сорваться графики выполнения работ. Также становится затруднительным определить объём выполненной и оставшейся работы. Обычно такая ситуация образуется вследствие дополнительного финансирования проекта, который уже находится в стадии разработки.
Еще одной из возможных проблем является недостаток мониторинга. Если у менеджеров нет возможности отслеживать ход развития проекта, они не могут контролировать ход разработки в реальном времени. Обычно мониторинг производится специальными программами. Если стоимость обучения и приобретения такой программы сопоставима со стоимостью самой разработки, зачастую от таких программ отказываются.
Очень часто проблемы создают заказчики. Например, такие затруднения как неконтролируемые изменения создаются из-за того, что у потребителя появляются новые идеи. Но если бесконтрольно вносить изменения в разработку программы, это скажется на всех этапах в целом. Например, увеличится бюджет проекта или продолжительность проекта. Каждое изменение должно быть согласовано всей командой разработчиков, после анализа влияния этого изменения на весь проект в целом.
Недостаточная надёжность также является типичным затруднением в процессе проектирования программного обеспечения. Выявление и исправление ошибок одни из самых сложных действий. Так количество ошибок невозможно предугадать, то и определить время, отводимое на их исправление также невозможно предсказать. Гарантировать отсутствие ошибок не представляется возможным. Решением может являться доказательный подход к процессу. Свой вклад в развитие данного подхода внесли такие ученые как Кнут, Дейкстра и Вирт. Доказательный подход позволяет обнаружить ошибки в программе до её выполнения.
Обычно такое затруднение появляется, когда разработчики неправильно выбирают средства. Например, при создании сложных программ, использующих средства высокого уровня, с помощью средств низкого уровня. В итоге исходный код программы становится слишком сложным и слабо структурированным.
Неудачный выбор методологии конструирования программ. От выбора необходимой методологии зависят многие показатели программного обеспечения, такие как гибкость, стоимость и функциональность. Так называемые гибкие методологии разработки помогают решить основные проблемы, однако, стоит отметить, что и каскадная модель (waterfall) так же имеет свои преимущества. В некоторых случаях наиболее целесообразным будет применение гибридных методологий в связке Agile + каскадная модель + MSF + RUP и т.д.
Некоторые разработчики к проблемам относят и отсутствие гарантий качества и надежности программ из-за отсутствия гарантий отсутствия ошибок в программах вплоть до формальной сдачи программ заказчикам.
Однако данное затруднение не является проблемой, относящейся исключительно к разработке ПО. Гарантия качества — это проблема выбора поставщика товара (не продукта).
2.2 Диаграммы проекта
Диаграмма — графическое описание множества элементов в виде связного графа, в котором вершины — это сущности, а ребра — отношения.
Бизнес-процесс
Предметная область содержит регистрацию клиентов, регистрацию фирм, отдел продаж, проверку качества, список поставщиков, склад. Для определения их содержания сознается модель бизнес-процессов (рисунок 1).
Рисунок 1. Диаграмма классов.
Диаграммы прецедентов
С помощью диаграммы прецедентов проектируются действия в системе. Рисунок 2 отображает диаграмму прецедентов для всей системы.
Рисунок 2. Общая диаграмма прецедентов.
На рисунках 3-8 представлены диаграммы прецедентов для бизнес-процессов.
Рисунок 3. Диаграмма прецедентов для бизнес-процесса «Отдел продаж»
Рисунок 4. Диаграмма прецедентов для бизнес-процесса «Список поставщик»
Рисунок 5. Диаграмма прецедентов для бизнес-процесса «Список товаров»
Рисунок 6. Диаграмма прецедентов для бизнес-процесса «Фирма покупатель»
Рисунок 7. Диаграмма прецедентов для бизнес-процесса «Контроль качества»
Рисунок 8. Диаграмма прецедентов для бизнес-процесса «Клиент»
Диаграммы последовательностей
Диаграммы последовательностей концентрируют внимание на временных параметрах взаимодействия. На рисунке 9 представлена диаграмма последовательностей для всей системы в целом
На рисунке 9 представлена диаграмма последовательностей для всей системы в целом.
Рисунок 9. Общая диаграмма последовательностей.
На рисунках 10- ? представлены диаграммы последовательностей для каждого бизнес-процесса в отдельности.
Рисунок 10. Диаграмма последовательностей для бизнес-процесса «Клиент\Фирма»
Рисунок 11. Диаграмма последовательностей для бизнес-процесса «Отдел продаж»
Рисунок 12. Диаграмма последовательностей для бизнес-процесса «Контроль качества»
Рисунок 13. Диаграмма последовательностей для бизнес-процесса «Склад»
Рисунок 14. Диаграмма последовательностей для бизнес-процесса «Список поставщиков»
Диаграммы деятельности
Представление информационной системы возможно в виде диаграммы деятельности. В ней демонстрируется последовательность действий в системе.
На рисунке 15 представлена диаграмма деятельности для всей информационной системы в целом.
Рисунок 15. Общая диаграмма деятельности
На рисунках 16-21 отражены диаграммы деятельности для каждого бизнес-процесса в отдельности.
Рисунок 16. Диаграмма деятельности для бизнес-процесса «Отдел продаж»
Рисунок 17. Диаграмма деятельности для бизнес-процесса «Клиент»
Рисунок 18. Диаграмма деятельности для бизнес-процесса «Склад»
Рисунок 19. Диаграмма деятельности для бизнес-процесса «Проверка качества»
Рисунок 20. Диаграмма деятельности для бизнес-процесса «Фирма покупатель»
Рисунок 21. Диаграмма деятельности для бизнес-процесса «Список поставщиков»
Диаграмма классов, ER-диаграмма классов и диаграмма компонентов
Диаграммы классов используются в целях:
1) Для моделирования словаря системы, чтобы выявить, какие абстракции являются ее частью.
2) Для моделирования простых коопераций. (Кооперация — сообщество классов и интерфейсов, работающих совместно).
3) Для моделирования логической структуры базы данных.
Диаграмма классов информационной системы фирмы по продаже компьютеров представлена на рисунке.
Рисунок 22. Диаграмма классов
Также можно построить ER-диаграмму классов (рисунок 23).
Рисунок 23 ER-диаграмма классов.
На рисунке 24 представлена диаграмма компонентов.
Рисунок 24. Диаграмма компонентов
Рисунок 25. Диаграмма развертыванья компонентов
Заключение
В процессе проведения курсовой работы был проведён анализ работы Фирмы по продаже компьютеров и на основе этого были разработаны документы для работы с системой.
Основной целью является автоматизация процесса и упрощения ведения отчётов. Были рассмотрены все бизнес процессы данной предметной области и построены диаграммы.
Список используемой литературы
1. UML-проектирование систем реального времени параллельных и распределенных приложений (Хассан Гома)
2. UML 2.0. Объектно-ориентированное моделирование и разработка (Дж. Рамбо, М. Блаха)
3. Mastering UML with Rational Rose 2002 (Уэнди Боггс, Майкл Боггс)
4. Конспект лекций по дисциплине «Проектирование информационных систем».
5. Учебный курс «Проектирование информационных систем» В.И. Грекул.
6. Федеральный закон «Об информации, информатизации и защите информации».
Размещено на Allbest.ru
Общие положения
1.1. Наименование системы
1.1.2. Краткое наименование системы
Краткое наименование — КХД, Система.
1.2. Основания для проведения работ
Указывается номер и дата договора.
Перечень документов, на основании которых создается система, кем и когда утверждены документы.
Например:
Работа выполняется на основании договора № … от …, заключенного между …
1.3. Наименование организаций – Заказчика и Разработчика
1.3.2. Разработчик
Разработчик: ЗАО Разработчик
Адрес фактический: г. Москва …
Телефон / Факс: +7 (495) 3333333
1.4 Цели, назначение и область использования системы
Определяются цели (чего хочет достичь организация Заказчика от внедрения системы); назначение (для каких пользователей предназначена); области использования АИС (какие виды деятельности организации Заказчика охватывает система).
Информация для разделов «Наименование системы», «Основания для проведения работ», «Наименование организаций Заказчика и Разработчика», «Цели, назначение и область использования системы» берется из одноименных разделов технического задания на создание корпоративного хранилища данных.
1.5. Нормативные ссылки
При эскизном проектировании использовались следующие нормативно-технические документы:
Например:
1. Техническое задание на создание информационной системы КХД
2. ГОСТ 34 -…
3. …
Указывается очередность создания системы и характеристики каждой очереди (функциональность, ограничения, сроки, исполнители).
Мероприятия по подготовке объекта автоматизации к вводу системы в действие
В данном разделе указывают:
— мероприятия по приведению информации к виду, пригодному для обработки на ЭВМ;
— мероприятия по обучению и проверке квалификации персонала;
— мероприятия по созданию необходимых подразделений и рабочих мест;
— мероприятия по изменению объекта автоматизации;
— другие мероприятия, исходящие из специфических особенностей, создаваемых АС.
Ниже представлен пример содержания данного раздела.
3.1 Мероприятия по подготовке информационной базы
Приводится перечень мероприятий, которые должны быть проведены в целях приведения информации к виду, пригодному для использования системе КХД. Для этого необходимо ответить на следующий вопрос: «Какие технические решения необходимо согласовать между Разработчиком и Заказчиком?». Например, форматы взаимодействия, способы взаимодействия и т.п.
3.2 Мероприятия по подготовке персонала
Разрабатывается перечень мероприятий, которые необходимо провести Заказчику в целях подготовки пользователей и обслуживающего персонала системы КХД. Например, комплектация штата, назначение ответственных и т.п.
3.3 Мероприятия по организации рабочих мест
Определяется перечень мероприятий, которые должны быть проведены Заказчиком в целях организации рабочих мест разработчиков, пользователей, администраторов системы. Например, организовать подсеть разработчиков и администраторов, организовать обучение и т.п. Также в этом разделе приводятся предварительные требования к рабочим местам. Например, указывается, что на рабочих станциях пользователей должен быть установлен MS Internet Explorer не ниже версии 5.5 и т.п.
3.4 Мероприятия по изменению объекта автоматизации
Приводится перечень мероприятий, которые должны быть проведены силами Заказчика в целях подготовки помещений для размещения аппаратно-технического комплекса системы и организации необходимого аппаратно-технического обеспечения. Например, организовать сетевое взаимодействие, закупить оборудование и т.п.
3.5 Прочие мероприятия
Указываются мероприятия по изменению объекта автоматизации, другие мероприятия, исходящие из специфических особенностей создаваемой АИС.
Принципиальная схема расстановки мебели
Подбор правильной и удобной мебели и грамотная ее расстановка имеют важнейшее значение для обеспечения комфортности проживания всех жильцов дома. При выполнении работ по проектированиюпринципиальной схемы расстановки мебели заказчику и исполнителю необходимо думать в перспективе — не на короткое время, а на долгие годы. Поэтому необходимо предусмотреть несколько важных моментов:
- Количественный состав проживающих может изменяться — надо учитывать возможность быстрого устройства нового спального (игрового, рабочего) места без необходимости глобальных мебельных перестановок и тем более перепланировки помещений;
- Дети, проживающие в доме, быстро растут — следовательно, регулярно будет изменяться и содержимое детских комнат. Поэтому расстановку мебели в них необходимо проектировать с учетом этого обстоятельства;
- Небрежность в расстановке мебели может стать причиной серьезного дискомфорта в процессе эксплуатации дома, использования бытовой техники, организации пространства, оформления интерьера.
О важности данных проектных работ говорит тот факт, что схема расстановки мебели в деревянном доме считается завершенной только после подписи этого листа самим заказчиком. Также стоит отметить, что при расстановке мебели рекомендуется учитывать особенности деревянных домов — не каждая типовая мебель сможет уютно, эргономично и эстетично вписаться в такое жилище
Это вызвано конструктивными особенностями клееного бруса и дерева вообще
Также стоит отметить, что при расстановке мебели рекомендуется учитывать особенности деревянных домов — не каждая типовая мебель сможет уютно, эргономично и эстетично вписаться в такое жилище. Это вызвано конструктивными особенностями клееного бруса и дерева вообще.
При необходимости специалисты компании «Эльбрус» готовы дать профессиональную консультацию не только по расстановке, но и по подбору мебели.
Планировочное решение
Планировочное решение — это детальный план дома без привязки к разводке коммуникаций внутри здания, мебели и прочим элементам. В планировочном решении определяются все помещения с точным соблюдением размеров в одной плоскости (длина и ширина) и дается экспликация — функциональное описание каждого помещения с указанием его площади.
Планировочное решение разрабатывается отдельно на каждый этаж.
Для заказчика эскизного проекта планировочное решение предоставляет возможность заглянуть «сверху» на каждый этаж будущего дома и визуально оценить эргономичность расположения жилых комнат, санузлов, кладовок и прочих помещений.
2.3 Майлстоун
Майлстоун (milestone) — метафора, которой в software development обозначают промежуточный этап разработки проекта.
Процесс разработки разбивается майлстоунами согласно специальному плану с целью минимизировать риски и успеть в заданные сроки. Каждый майлстоун подразумевает список задач, которые должны быть решены и воплощены в проекте до дедлайна. Если решить все задачи не успевают, происходит срыв майлстоуна. В этом случае либо выделяют дополнительное время на реализацию и сдвигают сроки, либо отказываются от проблемной фичи совсем.
Майлстоун фиксирует все принятые решения, чтобы у разработчиков не возникало соблазна переделывать всё до бесконечности.
Исторически, майлстоуны — это каменные плиты с указанием расстояний до населённых пунктов, которые расставлялись вдоль дорог и служили ориентиром путешественникам.
Milestone — этапы разработки, каждая из которых имеет свой номер (1, 2, 3 и т.д.). Это может быть как пре-альфа, как и бета, так и ранний этап разработки (раньше пре-альфы). Некоторые этапы разработки могут помечаться как pre-. Например pre-Milestone 1.
Рассмотрим каждый этап Milestone.
Начальная стадия разработки — Пре-альфа. Это период времени от начала проектирования до выпуска версии Альфа (В случае отсутствия стадии Альфа — до любой другой). Программы, не вышедшие еще в стадию альфа или бета, но прошедшие этап разработки, также именуют пре-альфа. Такие пре-альфа выпускаются для первоначального анализа функциональных возможностей в действии. Отличие пре-альфа от альфа и бета версий заключается в том, что, пре-альфа могут иметь не все функциональные возможности программы. Пре-альфа содержит следующие действия
- разработка дизайна,
- анализ требований,
- собственно разработка приложения,
- отладка отдельных модулей.
Следующий этап – Альфа. По-другому внутреннее тестирование. Это стадия, на которой специалисты-тестеры тестируют программный продукт. Также на этой стадии возможно добавление новых функциональных возможностей. Использование программ на этой стадии возможно только в качестве знакомства с будущими возможностями.
Следующий этап – Бета. Также его называют Публичное тестирование. Это стадия активного бета-тестирования и отладки, прошедшей альфа-тестирование (если таковое было). Для испытания совместимости другие разработчики могут использовать версии программного продукта этого уровня. Наличие ошибок в программе на этом уровне не отрицается.
Бета-продукт не претендует на название финальной версией. Так как публичное тестирование производится усмотрение пользователя, то разработчик снимает с себя ответственность за ущерб, причинённый в результате использования бета-версии. Такой положение предоставляет многим производителям возможность уйти от ответственности, представляя только бета-версии продукта.
Следующая стадия используется крайне редко — Beta Escrow. Другое название стадия бета-тестирования, релиз-кандидат на Beta.
Релиз-кандидат – одна из основных стадий.
Релиз-кандидат или RC (англ. release candidate), Пре-релиз или Pre — стадия — кандидат на то, чтобы стать стабильной. В программах на этой стадии были найдены и исправлены все найденные ошибки, то есть они прошли комплексное тестирование. Тем не менее, не исключено появление некоторого числа ошибок, которые были не найдены на тестировании.
Стадия RC Escrow – это релиз, который готов получить звание релиз-кандидата. В этом релизе могут быть ещё ошибки.
Стадия релиз или RTM (англ. release to manufacturing промышленное издание) – это выпуск программного продукта, который готов к тиражированию. Обычно — это стабильная версия программного обеспечения, который прошел все предыдущие стадии. На предыдущих стадиях были исправлены основные ошибки. Также существует малая вероятность появления новых, ранее не замеченных, ошибок.
Стадия RTM Escrow – это конечный этап разработки программы, которая готова стать RTM-релизом.
Стадия Пост-релиз или Post-RTM (англ. post-release to manufacturing) — это издание продукта, у которого есть несколько отличий от RTM. Иногда из этой стадии получается первая стадия разработки следующего продукта. Такие релизы продаются, а раздаются бета-тестерам. Это может быть как и стабильная (если не замечено ошибок) либо с ошибками.
Эти стадии разработки (Beta Escrow, RC Escrow, RTM Escrow и Post-RTM) бывают редко. Beta-Escrow, RC-Escrow, RTM-Escrow — статус, указывающий, что на определенном этапе продукт не имеет серьезных ошибок в коде. Сборки с этим статусом передаются для тестирования ключевым и TAP-партнерам. Если тестирование не выявляет серьезных проблем — код подписывается для публичного тестирования
2.2 Диаграммы проекта
Диаграмма — графическое описание множества элементов в виде
связного графа, в котором вершины — это сущности, а ребра — отношения.
Бизнес-процесс
Предметная область содержит регистрацию клиентов, регистрацию
фирм, отдел продаж, проверку качества, список поставщиков, склад. Для
определения их содержания сознается модель бизнес-процессов (рисунок 1).
Рисунок 1. Диаграмма классов.
Диаграммы
прецедентов
С помощью диаграммы прецедентов проектируются действия в
системе. Рисунок 2 отображает диаграмму прецедентов для всей системы.
Рисунок 2. Общая диаграмма прецедентов.
На рисунках 3-8 представлены диаграммы прецедентов для
бизнес-процессов.
Рисунок 3. Диаграмма прецедентов для бизнес-процесса «Отдел
продаж»
Рисунок 5. Диаграмма прецедентов для бизнес-процесса «Список
товаров»
Рисунок 6. Диаграмма прецедентов для бизнес-процесса «Фирма
покупатель»
Рисунок 7. Диаграмма прецедентов для бизнес-процесса «Контроль
качества»
Рисунок 8. Диаграмма прецедентов для бизнес-процесса «Клиент»
Диаграммы
последовательностей
Диаграммы последовательностей концентрируют внимание на
временных параметрах взаимодействия. На рисунке 9 представлена диаграмма последовательностей для
всей системы в целом
На рисунке 9 представлена диаграмма последовательностей для
всей системы в целом.
Рисунок 9. Общая диаграмма последовательностей.
На рисунках 10- ? представлены диаграммы последовательностей для
каждого бизнес-процесса в отдельности.
Рисунок 10. Диаграмма последовательностей для бизнес-процесса
«Клиент\Фирма»
Рисунок 11. Диаграмма последовательностей для бизнес-процесса
«Отдел продаж»
Рисунок 12. Диаграмма последовательностей для бизнес-процесса
«Контроль качества»
Рисунок 13. Диаграмма последовательностей для бизнес-процесса
«Склад»
Рисунок 14. Диаграмма последовательностей для бизнес-процесса
«Список поставщиков»
Диаграммы
деятельности
Представление информационной системы возможно в виде
диаграммы деятельности. В ней демонстрируется последовательность действий в
системе.
На рисунке 15 представлена диаграмма деятельности для всей
информационной системы в целом.
Рисунок 15. Общая диаграмма деятельности
На рисунках 16-21 отражены диаграммы деятельности для каждого
бизнес-процесса в отдельности.
Рисунок 16. Диаграмма деятельности для бизнес-процесса «Отдел
продаж»
Рисунок 17. Диаграмма деятельности для бизнес-процесса «Клиент»
Рисунок 18. Диаграмма деятельности для бизнес-процесса «Склад»
Рисунок 19. Диаграмма деятельности для бизнес-процесса «Проверка
качества»
Рисунок 20. Диаграмма деятельности для бизнес-процесса «Фирма
покупатель»
Рисунок 21. Диаграмма деятельности для бизнес-процесса «Список
поставщиков»
Диаграмма
классов, ER-диаграмма классов и диаграмма компонентов
Диаграммы классов используются в целях:
) Для моделирования словаря системы, чтобы выявить,
какие абстракции являются ее частью.
) Для моделирования простых коопераций. (Кооперация —
сообщество классов и интерфейсов, работающих совместно).
) Для моделирования логической структуры базы данных.
Диаграмма классов информационной системы фирмы по продаже
компьютеров представлена на рисунке.
Рисунок 22. Диаграмма классов
Также можно построить ER-диаграмму классов
(рисунок 23).
Рисунок 23 ER-диаграмма классов.
На рисунке 24 представлена диаграмма компонентов.
Рисунок 24. Диаграмма компонентов
Рисунок 25. Диаграмма развертыванья компонентов
Заключение
В процессе проведения курсовой работы был проведён анализ
работы Фирмы по продаже компьютеров и на основе этого были разработаны
документы для работы с системой.
Основной целью является автоматизация процесса и упрощения
ведения отчётов. Были рассмотрены все бизнес процессы данной предметной области
и построены диаграммы.
Список
используемой литературы
1. UML-проектирование систем реального времени
параллельных и распределенных приложений (Хассан Гома)
2. UML 2.0. Объектно-ориентированное
моделирование и разработка (Дж. Рамбо, М. Блаха)
3. Mastering UML with Rational Rose
2002 (Уэнди Боггс, Майкл Боггс)
4. Конспект лекций по дисциплине
«Проектирование информационных систем».
. Учебный курс «Проектирование
информационных систем» В.И. Грекул.
. Федеральный закон «Об информации,
информатизации и защите информации».
Ситуационный план
Ситуационным планом называется карта местности (города, коттеджного поселка), на которой отмечено расположение земельного участка, где планируется строить дом.
Использование ситуационного плана позволяет оценить удобство расположения и привлекательность участка с точки зрения доступности ко всем элементам социально-культурной, жилищной и иной инфраструктуры.
На ситуационном плане можно определить, как далеко от будущего дома находятся ближайшие детский сад и школа, как быстро можно добраться до магазина или кинотеатра, есть ли в непосредственной близости нежелательные производственные предприятия или крупные автомагистрали, оценить удобство и качество подъездных путей и пр.
На ситуационном плане также осуществляется географическая и логическая привязка участка к местности и генеральному плану застройки территории, который может налагать определенные ограничения на строительство или иное использование некоторой части земельного участка заказчика.
Типовыми масштабами ситуационного плана являются 1:5000 или 1:10000.
План привязки сантехнического оборудования и точек вывода канализации
На данном листе эскизного проекта обозначаются точки вывода канализационных коммуникаций — отдельно для каждого этажа, где подобные коммуникации предусмотрены. Точки вывода канализации, как правило, идут по одному или нескольким «сквозным» стоякам, проходящим строго вниз — с верхнего до нижнего этажа. Такой способ проведения объясняется максимальной практичностью и экономичностью обустройства канализационной системы в частном жилом доме. А одна из важнейших целей всех проектных работ — оптимизация финансовых затрат с целью экономии денег заказчика как на этапе строительства, так и в процессе эксплуатации дома.
Еще на этапе проектирования схемы расположения помещений необходимо выполнять планировку так, чтобы выводы канализации на разных этажах находились в одной точке, один под другим. Если на каждом из этажей предусмотрено несколько санузлов, то оптимальным способом проведения канализации является обустройство соответствующего количество стояков с дальнейшим их сочленением под нижним этажом и выводом в общую систему канализационных отходов — центральную или автономную.
<<< Назад ко всем статьям