Главная страница
Навигация по странице:

  • Задачи практической работы

  • Обеспеченность занятия: Учебно-методическая литература

  • Образец заполнения отчета в Приложении 1. Теоретический материал

  • Анализ предметной области

  • Связи между сущностями Диаграмма «Сущность-связь»

  • Комментарии к примеру 2.

  • Этапы календарного планирования

  • Оптимизация диаграммы Ганта

  • Задания для практического занятия

  • Примечание

  • Ответы на вопросы: 1. 2. 3. Индивидуальное задание: Порядок выполнения работы

  • Приложение 3 Задание 1.

  • Формат ряда данных/Заливка/Нет Заливки

  • Формат оси/Параметры оси/Обратный порядок категорий

  • Убираем легенду.

  • Формат оси/Параметры оси/Максимальное и минимальное значения

  • Ставим недельные шкалы

  • лабораторка. ЛПЗ 1. Практическая работа 1 Анализ предметной области


    Скачать 1.87 Mb.
    НазваниеПрактическая работа 1 Анализ предметной области
    Анкорлабораторка
    Дата15.11.2020
    Размер1.87 Mb.
    Формат файлаdocx
    Имя файлаЛПЗ 1.docx
    ТипПрактическая работа
    #150762

    Практическая работа №1

    Анализ предметной области

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

    Задачи практической работы:

    1. Повторить (изучить) теоретический материал.

    2. Выполнить практическую работу.

    3. Оформить и сдать отчет по практической работе.

    Обеспеченность занятия:

    1. Учебно-методическая литература:

    1. В. В. Бахтизин, Л. А. Глухова. Технология разработки программного обеспечения : учеб. пособие / – Минск : БГУИР, 2018

    2. К.Вигерс. Разработка требований к программному обеспечению. Издательско-торговый дом «Русская редакция», 2019

    3. Гагарина Л.Г., Кокорева Е.В., Виснадул Б.Д. Технология разработки программного обеспечения: учебное пособие.- М.: ИД «Форум»: ИНФРА-М, 2019

    4. А.В. Рудаков .Технология разработки программных продуктов. М.: ACADEMIA, 2016

    5. Рудаков А.В., Федорова Г.Н. Технология разработки программных продуктов. Практикум: -М.:ACADEMA, 2016

    Образец заполнения отчета в Приложении 1.

    Теоретический материал

    Этапы проектирования ПО ИС

    1) анализ предметной области и выработка требований к системе

    2) логическое представление реальности

    3) идентификация и проектирование видимых сущностей

    4) разработка абстрактных (поддерживаемых) сущностей и концептуальной схемы базы данных

    5) разработка физической схемы базы данных

    6) проектирование структуры приложения

    7) разработка приложения

    Предметная область

    Множество всех предметов или объектов некоторой части реального мира, свойства которых и отношения между которыми рассматриваются в научной теории или в практической деятельности человека.

    Для сбора, хранения, поиска и выдачи информации о предметной области и ее объектов в настоящее время в информационных системах широко используются базы данных.

    Анализ предметной области

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

    Пример 1

    Нужно разработать информационную систему по обслуживанию хранилищ, музеев, выставок и аукционов предметов живописи.

    Предметная область – Музей живописи.






    Связи между сущностями



    Диаграмма «Сущность-связь»


    Таким образом, выделяются следующие шаги работы над проектом (системой).

    1. Описание предметной области. Определение гласит: «Под предметной областью (application domain) принято понимать ту часть реального мира, которая имеет существенное значение или непосредственное отношение к процессу функционирования программы. Другими словами, предметная область включает в себя только те объекты и взаимосвязи между ними, которые необходимы для описания требований и условий решения некоторой задачи». Следовательно, разработчикам необходимо выделить основные объекты (компоненты), участвующие в функционировании системы, определить их наиболее существенные характеристики, взаимосвязи в рамках решаемой задачи, а также определить основные информационные потоки в системе. При этом отдельные компоненты выбираются таким образом, чтобы при последующей разработке их было удобно представить в форме классов и объектов. В этом случае немаловажное значение приобретает и сам язык представления информации о концептуальной схеме предметной области.

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

    Комментарии к примеру 2. Для разрабатываемой системы «Кроссворд» в первую очередь необходимо дать определение кроссворда, привести краткую историю его создания, рассказать о разновидностях кроссвордов и особенностях их построения и разгадывания (привести в качестве иллюстраций «сетки» различных кроссвордов), при этом подробно рассказать об особенностях линейного кроссворда, различных формах его построения (привести иллюстрации). На рисунке 1 представлен один из вариантов представления чайнворда.


    Рисунок 1 – Чайнворд, как разновидность линейного кроссворда

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

    2. Результатом последнего этапа является диаграмма объектов предметной области и краткое описание их свойств и функций. При построении данной диаграммы нужно помнить о том, что в данном случае объект – это «конкретная материализация абстракции», а не экземпляр класса, т.е. пока это понятие не программистское. Диаграмма объектов представляет статическую составляющую взаимодействующих между собой объектов, она должна включить в себя только те объекты предметной области, которые потом преобразуются в диаграмму классов. Связи между объектами показывают отношения между ними, при необходимости в диаграмме можно привести и атрибуты (свойства) объектов. На рисунке 2 приведен фрагмент диаграммы объектов для рассматриваемой в качестве примера системы.

    Диаграммы объектов не позволяют полностью описать объектную структуру системы, поэтому при их использовании нужно сосредоточиться на изображении интересующих вас наборов конкретных объектов.

    Комментарии к примеру 2. Как видно из диаграммы, линейный кроссворд представляет собой (как и любой кроссворд) совокупность двух составляющих: сетки, на которой будут располагаться слова, и задания, которое по существу представляет собой набор определений, которые разъясняют смысл слов (понятий). Набор понятий и определений хранятся во внешнем файле (чаще всего текстовом), который мы называем словарем понятий.



    Коротким пунктиром выделены те сущности, которые могут представлять собой единое целое, длинным – внутренние объекты системы.
    Диаграммы Ганта (англ.Gantt chart, также ленточная диаграмма) - это популярный тип столбчатых диаграмм, который используется для иллюстрации плана, графика работ по какому-либо проекту. Является одним из методов планирования проектов, представляет собой изображение календарного графика задач в проекте. График Ганта является своеобразным стандартом в области управления проектами, ведь именно с его помощью появляется возможность показать структуру выполнения всех этапов проекта наглядно.

    Диаграммы Ганта позволяет:

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

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

    - детально проанализировать реальный ход выполнения задач.

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

    Использование диаграммы значительно упрощает управление проектами небольших масштабов и даёт возможность всегда держать деятельность сотрудников под контролем.

    Диаграмма Ганта состоит из полос, ориентированных вдоль оси времени. Каждая полоса на диаграмме представляет отдельную задачу в составе проекта (вид работы), её концы - моменты начала и завершения работы, её протяженность - длительность работы. Вертикальной осью диаграммы служит перечень задач. Кроме того, на диаграмме могут быть отмечены совокупные задачи, проценты завершения, указатели последовательности и зависимости работ, метки ключевых моментов (вехи), метка текущего момента времени «Сегодня» и др.

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

    Часто диаграмма Ганта соседствует с таблицей со списком работ, строки которой соответствуют отдельно взятой задаче, отображенной на диаграмме, а столбцы содержат дополнительную информацию о задаче. Пример такой таблицы представлен ниже. 



    В электронном виде диаграмма Ганта строится с помощью таких средств, как: MS Project, MS Visio, Primavera и прочее.

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

    Рассмотрим основные принципы построения диаграммы:

    Графически задачи отображаются сверху вниз, слева направо.

    Задача может состоять из нескольких подзадач, но не менее 2-х (на графике Задача 4. Разработка ПО и ее подзадачи 4.1. и 4.2.).

    Задачи могут выполняться последовательно (Задачи 1. и 2.) и параллельно (Задачи 2. и 3.).

    Загруженность исполнителей ставится с учетом выполнения работ во времени (Обратите внимание на Задачи 2. и 3.).

    Этапы календарного планирования

    1) Определение основных этапов проекта. Как правило, выделяется минимум три этапа проекта. Этапы можно обозначить, руководствуясь следующими принципами:

    a. По времени – делить на примерно равные временные промежутки;

    b. По характеру работ – делить проект на различные блоки работ, отличные друг от друга по содержанию и характеру;

    c. По результатам – выделить значимые, измеряемые результаты.

    2) Декомпозиция этапов на меньшие и конкретные работы (задачи). Если возможно, то максимально подробно, если нет – руководствуйтесь принципами из пункта 1, то есть, разделите каждый этап как минимум еще на 3 задачи.

    3) Определение последовательности работ.

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

    5) Спланировать сроки выполнения задач с построением диаграммы Ганта, диаграмма будет рассмотрена ниже.

    6) Определение потребности в ресурсах:

    a. людские ресурсы - определить ответственных по каждой задаче;

    b. машины и механизмы;

    c. помещения;

    d. материалы и так далее.

    7) Определение стоимости ресурсов и трудозатрат.

    8) Оптимизация диаграммы Ганта с учетом загрузки ресурсов. Например, первоначально вы не знали, кого назначите выполнять две параллельные задачи, а потом оказалось, что их может выполнить одно должностное лицо и никак иначе, соответственно, эти задачи станут последовательными.

    Оптимизация диаграммы Ганта:

    1) Рассмотрите возможность выполнения задач параллельно.

    2) Определите крайние точки проекта и отдельных задач.

    3) Установите связи для последовательных задач.

    4) Задачи, которые можно сделать позже передвиньте в конец.

    5) Определите критичный путь – последовательность задач, которая определяет длительность проекта, и рассмотрите каждую на возможность сокращения по времени.



    Задания для практического занятия:

    1. Провести анализ предметной области, согласно задания по номеру в журнале (Приложение 2).

    2. Построить диаграмму «сущность-связь» (для информационной системы с БД) или диаграмму объектов (для приложения).

    3. Построить диаграмму Ганта по реализации поставленной задачи для коллектива разработчиков (Приложение 3).

    4. Ответить на контрольные вопросы. Оформить в отчет.

    Примечание: в п.2 и 3 рекомендовано использование программы MS Visio.
    Приложение 1

    Отчет по практической работе №

    Тема

    Цель работы:
    Ответы на вопросы:

    1.

    2.

    3.
    Индивидуальное задание:
    Порядок выполнения работы:

    1.

    2.

    3.
    Выводы:
    Приложение 2

    1. Разработать программный модуль «Учет успеваемости студентов». Программный модуль предназначен для оперативного учета успеваемости студентов в сессию деканом, заместителями декана и сотрудниками деканата. Сведения об успеваемости студентов должны храниться в течение всего срока их обучения и использоваться при составлении справок о прослушанных курсах и приложений к диплому.

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

    3. Разработать программный модуль «Личные дела студентов». Программный модуль предназначен для получения сведений о студентах сотрудниками деканата, профкома и отдела кадров. Сведения должны храниться в течение всего срока обучения студентов и использоваться при составлении справок и отчетов.

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

    5. Разработать приложение «Органайзер». Приложение предназначено для записи, хранения и поиска адресов и телефонов физических лиц и организаций, а также расписания, встреч и др.

    6. Разработать приложение «Калькулятор». Приложение предназначено для любых пользователей и должно содержать все арифметические операции (с соблюдением приоритетов) и несколько математических функций.

    7. Разработать программный модуль «Кафедра», содержащий сведения о сотрудниках кафедры (ФИО, должность, ученая степень, дисциплины, нагрузка, общественная работа, совместительство и др.). Модуль предназначен для использования сотрудниками отдела кадров и деканата.

    8. Разработать программный модуль «Лаборатория», содержащий сведения о сотрудниках лаборатории (ФИО, пол, возраст, семейное положение, наличие детей, должность, ученая степень). Модуль предназначен для использования сотрудниками профкома и отдела кадров.

    9. Разработать программный модуль, реализующий генерацию блок-схем из текста программы на языке Java.

    10. Разработать программный модуль «Автосервис». При записи на обслуживание заполняется заявка, в которой указываются ФИО владельца, марка автомобиля, вид работы, дата приема заказа и стоимость ремонта. После выполнения работ распечатывается квитанция.

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

    12. Разработать программный модуль «Учет нарушений правил дорожного движения». Для каждой автомашины (и ее владельца) в базе хранится список нарушений. Для каждого нарушения фиксируется дата, время, вид нарушения и размер штрафа. При оплате всех штрафов машина удаляется из базы.

    13. Разработать программный модуль, реализующий работу с матрицами «Матричный калькулятор».

    14. Разработать программный модуль «Картотека агентства недвижимости», предназначенный для использования работниками агентства. В базе содержатся сведения о квартирах (количество комнат, этаж, метраж и др.). При поступлении заявки на обмен (куплю, продажу) производится поиск подходящего варианта. Если такого нет, клиент заносится в клиентскую базу и повещается, когда вариант появляется.

    15. Разработать программный модуль, дающий графическое представление абстрактного типа данных – двоичных деревьев.

    16. Разработать программный модуль «Картотека абонентов АТС». Картотека содержит сведения о телефонах и их владельцах. Фиксирует задолженности по оплате (абонентской и повременной). Считается, что повременная оплата местных телефонных разговоров уже введена.

    17. Разработать приложение, позволяющее сравнивать бинарные изображения.

    18. Разработать программный модуль «Авиакасса», содержащий сведения о наличии свободных мест на авиамаршруты. В базе должны содержаться сведения о номере рейса, экипаже, типе самолета, дате и времени вылета, а также стоимости авиабилетов (разного класса). При поступлении заявки на билеты программа производит поиск подходящего рейса.

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

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

    21. Разработать программный модуль решения задачи Дидоны с произвольной береговой линией.

    22. Разработать программный модуль «Автостоянка». В программе содержится информация о марке автомобиля, его владельце, дате и времени въезда, стоимости стоянки, скидках, задолженности по оплате и др.

    23. Разработать приложение для построения элементов фрактальной графики.

    24. Разработать программный модуль «Кадровое агентство», содержащий сведения о вакансиях и резюме. Программный модуль предназначен как для поиска сотрудника, отвечающего требованиям руководителей фирмы, так и для поиска подходящей работы.

    25. Разработать приложение «Конструктор молекул» с 3D-интерфейсом, с использованием фрагментов-заготовок.

    Приложение 3

    Задание 1. Построение диаграммы Ганта. Стрелочная диаграмма.

    1.Нарисуйте таблицу, в левый столбец которой занесите наименования выполняемых мероприятий. Наименования мероприятий следует расставлять сверху вниз в порядке их выполнения.

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

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

    Пример диаграммы Ганта: 



    Задание 2.

    1. Сбор данных.

    Для того чтобы построить график, понадобятся следующие данные:

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

    • название каждого этапа;

    • продолжительность каждого этапа.

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

    Важно: проследите за тем, чтобы все форматы данных были указаны правильно: в частности, это касается дат.

    Особенность диаграммы Ганта в том, что ее столбики начинаются в произвольном месте, в то время как наиболее похожая на нее диаграмма – линейчатая диаграмма начинается с оси. Поэтому мы используем один из самых распространенных трюков с диаграммами – скроем какие-то данные.

    Создадим таблицу.



    Обратите внимание, что не озаглавлены названия этапов, т.е. ячейка А1 пустая. Этот прием позволяет с первого раза в диаграмме определить, где находятся данные, а где подписи к ним.

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



    Второй необходимый шаг – это скрытие первого ряда. Для этого делаем его невидимым. Щелкаем на синих данных, правой кнопкой мыши Формат ряда данных/Заливка/Нет Заливки

    .

    По умолчанию данные расположены в порядке снизу вверх. Исправляем это положение - кликаем на ось категорий (подписей) правой кнопкой мыши - Формат оси/Параметры оси/Обратный порядок категорий. Все, основная диаграмма готова, нужно теперь сделать еще кое-какое полезное форматирование:

    • Убираем легенду. Она просто уже неактуальна для диаграммы Ганта. Выделяем и кнопкой Delete удаляем.

    • Определяем границы. Excel сам определяет откуда начинаются значения, т.е. на рисунке сверху шкала начинается с первого апреля. Необходимо установить другую дату. Поэтому правой кнопкой мыши на оси дат Формат оси/Параметры оси/Максимальное и минимальное значения. На диаграмме это 3 мая (точнее, 28 апреля, понедельник) и 20 июня. Правда, есть нюанс, в Excel 2007 надо ставить числа в числовом формате.

    • Ставим недельные шкалы. Там же в параметрах оси, ставим 7 в окне цена основных делений. Вот для чего потребовалось, чтобы первая дата стояла понедельником.

    Форматируем, добавляем названия диаграммы:

    Задание 3. Создание диаграммы Ганта в MS Visio

    При помощи диаграммы Ганта можно составить расписание задач проекта, а затем отследить его ход.

    1.В меню Файл последовательно выберите команды Создать, Расписание, а затем – команду Диаграмма Ганта.

    2.На вкладке Дата введите количество задач для начала работы, единицы времени, которые нужно отобразить, и диапазон дат для проекта.

    ПРИМЕЧАНИЕ. Параметры форматирования можно изменить в любой момент. В меню Диаграмма Ганта выберите команду Параметры, а затем перейдите на вкладку Формат.

    3.Замените имена задач по умолчанию именами задач, соответствующими проекту, а также замените даты начала и окончания задач и длительность.

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

    5.В диаграмме Ганта выделите ячейку, содержащую дату, которую необходимо изменить, а затем введите новую дату.

    ПРИМЕЧАНИЕ. Дату для итоговой задачи изменить нельзя. Даты итоговых задач изменяются только при изменении даты одной или нескольких задач, расположенных уровнем ниже итоговой задачи.

    6.В диаграмме Ганта выделите ячейку, содержащую длительность, которую нужно изменить, а затем введите новое значение длительности. Используйте следующие сокращения: м - минуты, ч - часы, д - дни и н - недели.

    ПРИМЕЧАНИЕ. Между числом и сокращением не должно быть пробела. Например, для указания длительности в 5 дней введите 5д.

    СОВЕТ. Длительность можно также изменить, выделив область задач и перетащив маркер выделения с правой стороны области задач на новую дату окончания на временной шкале.

    7.Добавьте дополнительные задачи в диаграмму Ганта.

    - Выделите рамку проекта, щелкнув сплошную линию вокруг диаграммы Ганта.

    - Перетащите вниз маркер выделения , расположенный по центру нижней части рамки. Будут созданы новые строки задач, заполняющие пространство.

    - Выделите ячейку Название задачи одной из новых задач, а затем введите имя задачи.

    СОВЕТ. Положение задач в диаграмме Ганта можно изменить, перетащив строки задач внутри рамки диаграммы.

    10.Добавьте вехи в диаграмму Ганта.

    - Из набора элементов Фигуры диаграммы Ганта перетащите на страницу документа фигуру Веха и поместите ее между задачами, которые предваряет или за которыми следует веха.

    ПРИМЕЧАНИЕ. При добавлении фигуры Веха в диаграмму Ганта автоматически добавляется строка со значением длительности, равным 0 (нулю).

    - Введите имя и дату для вехи.

    СОВЕТ. Задачу в вехе можно изменить, задав значение ее длительности равным 0. Подобным образом можно изменить веху в задаче, задав положительное значение длительности.

    11.Создайте зависимости между задачами в диаграмме Ганта.

    - Сначала выделите область задач или веху, из которых нужно установить связь, а затем нажмите клавишу SHIFT и выделите зависимую задачу или веху.

    - Щелкните правой кнопкой мыши одну из фигур, а затем в контекстном меню выберите команду Связать задачи.


    написать администратору сайта