
- •Тюменский государственный университет
- •Предисловие 7 методические материалы 9
- •Теоретические материалы 27 Глава 1. Методология разработки и стандартизации 27
- •Глава 2. Создание модели процессов в bpWin 95
- •Глава 3. Создание модели данных в erWin 121
- •Предисловие
- •Методические материалы Рабочая программа дисциплины Пояснительная записка
- •Содержание дисциплины
- •Рекомендации по самостоятельной работе Календарно-тематический план самостоятельной работы
- •Методические рекомендации по отдельным видам самостоятельной работы
- •Указания по самостоятельному изучению теоретической части дисциплины
- •Указания по выполнению контрольной работы
- •Указания по выполнению курсовой работы
- •Указания к промежуточной аттестации с применением балльно-рейтинговой системы оценки знаний
- •1.1.2. Классы программ
- •1.1.3. Архитектура программных средств
- •1.2. Стандартизация жизненного цикла программных средств
- •1.2.1. Уровни стандартизации
- •1.2.2. Основные модели жизненного цикла
- •1.2.2.1. Каскадная модель
- •1.2.2.2. Каскадная модель с промежуточным контролем
- •1.2.2.3. Модель разработки программных средств на основе ранее созданных компонентов
- •1.2.2.4. Эволюционная модель
- •1.2.2.5. Модель пошаговой разработки программных средств
- •1.2.2.6. Спиральная модель
- •1.2.2.7. Спиральная модель с ограничением версий
- •1.2.3. Структурное программирование
- •1.2.4. Организация человеко-машинного интерфейса
- •1.2.4.1. Принципы разработки
- •2. Учет возможностей аппаратных и программных средств разработчика и пользователя.
- •1.2.4.2. Рекомендации разработчику
- •1.3. Оценка стоимости и планирование разработки программных средств
- •1.3.1. Оценка стоимости разработки
- •1.3.2. Планирование разработки
- •1.4. Качество программных средств
- •1.4.1. Стандарты качества
- •1.4.2. Основные показатели качества
- •1.4.3. Методы достижения качества
- •1.4.4. Сертификация и аттестация
- •1.4.5. Конфигурационное управление версиями
- •1.4.6. Регламентирование тестирования для обеспечения качества
- •1.4.6.1. Цели и этапы тестирования программ
- •1.4.6.2. Основные тестируемые элементы
- •1.4.6.3. Восходящее и нисходящее тестирование
- •1.5. Методология быстрой разработки приложений (rad)
- •1.6. Структурный подход к проектированию информационных систем
- •1.6.1. Сущность структурного подхода
- •1.6.2. Моделирование потоков данных (бизнес-процессов) dfd
- •Отчет о продажах
- •1.6.3. Функциональное моделирование sadt (idef0)
- •1.6.3.1. Состав функциональной модели
- •1.6.3.2. Иерархия диаграмм
- •1.6.4. Моделирование данных
- •1.6.4.1. Основные понятия
- •1.6.4.2. Методология idef1
- •1.7. Общая характеристика и классификация case-средств
- •1. Компонентный состав:
- •2. Функциональная полнота:
- •3. Степень зависимости от субд:
- •4. Тип используемой модели:
- •1.8. Интеллектуализация вычислительных систем
- •1.9. Рынок программных продуктов
- •Структура рынка программных продуктов и услуг
- •1.10. Классификация систем защиты программных средств
- •1.10.1. Методы установки
- •1.10.2. Методы защиты
- •1.10.3. Принципы функционирования
- •1.10.4. Показатели оценки систем защиты
- •В опросы для контроля
- •Глава 2. Создание модели процессов в bpWin
- •2.1. Среда разработки
- •2.2. Функциональная модель (idef0)
- •2.2.1. Принципы построения модели
- •2.2.2. Работы
- •2.2.3. Стрелки
- •2.2.4. Нумерация работ и диаграмм
- •2.2.5. Диаграммы дерева узлов и экспозиций (feo)
- •2.2.6. Слияние моделей
- •2.2.7. Разделение моделей
- •2.2.8. Отчеты по модели
- •2.2.9. Экспертиза и согласование модели
- •2.3. Оценка модели
- •2.3.1. Стоимостной анализ (abc)
- •2.3.2. Анализ свойств, определенных пользователем (udp)
- •2.4. Дополнительные модели
- •2.4.1. Диаграммы потоков данных (dfd)
- •2.4.2. Диаграммы информационных процессов (idef3)
- •2.4.3. Имитационное моделирование
- •Вопросы для контроля
- •Глава 3. Создание модели данных в erWin
- •3.1. Отображение модели данных
- •3.1.1. Модели представления данных
- •3.1.2. Среда разработки
- •3.1.3. Подмодели и сохраняемые отображения
- •3.2. Создание логической модели данных
- •3.2.1. Уровни логической модели
- •3.2.2. Сущности и атрибуты
- •3.2.3. Связи
- •3.2.4. Типы сущностей и иерархия наследования (супертипы, подтипы)
- •3.2.5. Ключи
- •3.2.6. Методы нормализации и денормализации отношений
- •3.2.7. Домены
- •3.3. Создание физической модели данных
- •3.3.1. Уровни физической модели
- •3.3.2. Выбор субд
- •3.3.3. Таблицы и представления
- •3.3.4. Правила проверки значений и значения по умолчанию
- •3.3.5. Индексы
- •3.3.6. Объекты физической памяти
- •3.3.7. Триггеры и хранимые процедуры
- •3.3.8. Хранилища данных
- •3.3.9. Определение размера базы данных
- •3.3.10. Прямое и обратное проектирование
- •3.4. Создание отчетов в erWin
- •3.5. Связывание моделей процессов и модели данных
- •3.5.1. Экспорт данных из erWin в bpWin
- •3.5.2. Создание сущностей и атрибутов bpWin и их экспорт в erWin
- •В опросы для контроля
- •Глава 4. Генератор отчетов rptWin
- •4.1. Создание нового отчета
- •4.2. Среда конструктора отчетов
- •4.3. Размещение объектов отчета
- •4.4. Группировка и сортировка данных отчета
- •4.5. Изменение файла данных отчета
- •4.6. Изменение свойств отчета
- •4.7. Формирование формул
- •4.8. Пример формирования отчета
- •В опросы для контроля
- •Заключение
- •Практикум
- •Задания для контроля Тесты для самоконтроля
- •Ключи к тестам для самоконтроля
- •Пример выполнения контрольной работы
- •Темы контрольных и курсовых работ
- •1. Учет успеваемости студентов.
- •2. Учет обмена валюты.
- •3. Учет объектов строительства.
- •4. Учет выдачи и возврата книг.
- •5. Учет авиапассажиров.
- •6. Учет производства сельскохозяйственных культур.
- •7. Учет выпуска изделий.
- •8. Учет платежей налогов.
- •9. Учет поставок товаров.
- •10. Учет сбросов отравляющих веществ в окружающую среду.
- •11. Учет уволившихся с предприятия.
- •12. Учет призеров Олимпийских игр.
- •14. Учет участников олимпиады.
- •15. Учет проданных товаров.
- •16. Учет малых предприятий.
- •17. Учет больных в больнице.
- •18. Учет движения общественного транспорта.
- •19. Учет дорожно-транспортных происшествий.
- •20. Учет платежных поручений в банке.
- •21. Учет договоров займа.
- •22. Учет проданных ценных бумаг.
- •23. Учет кадров.
- •24. Учет очередников на получение жилья.
- •25. Учет исполнительской дисциплины.
- •26. Учет книг в библиотеке.
- •27. Учет переселенцев.
- •28. Учет успеваемости школьников.
- •29. Учет нарушителей трудовой дисциплины на предприятии.
- •30. Учет вакцинации населения.
- •Вопросы для подготовки к экзамену
- •Список источников информации
- •Приложения Приложение 1. Стандарты Приложение 1.1. Международный стандарт жизненного цикла
- •1. Процесс приобретения
- •2. Разработка системы и программного средства
- •3. Эксплуатация системы и программного средства
- •4. Сопровождение и развитие системы и программного средства
- •5. Управление проектом и обеспечение качества системы и программного средства
- •6. Интегральные процессы поддержки разработки программных средств
- •Приложение 1.2. Стандарты качества
- •Приложение 1.3. Стандарты по тестированию программ
- •Приложение 1.4. Государственные стандарты рф
- •Приложение 1.5. Единая система программной документации (гост 19)
- •2. Эскизный проект
- •3. Технический проект
- •4. Рабочий проект
- •5. Внедрение
- •Приложение 1.6. Автоматизированные системы управления (гост 24)
- •Приложение 1.7. Автоматизированные системы (гост 34)
- •Приложение 2. Список макрокоманд erWin
- •Приложение 3. Список макрокоманд erWin
4.4. Группировка и сортировка данных отчета
Для
группировки и сортировки используется
команда Layout/Sorting
and Grouping
(рисунок 4.4.1).
Рисунок 4.4.1. Окно сортировки и группировки
Рассмотрим основные элементы этого окна.
Dataset Columns – список имен полей набора данных для выбора.
Sort/Group On – список имен полей сортировки и группировки.
Add/Remove – включение/удаление поля сортировки и группировки.
Group and Sort – поле сортировки и группировки (сортировка по полям группировки производится автоматически).
Sort Only – поле только для сортировки.
Ascending/Descending – сортировка по возрастанию/убыванию значений.
Case Sensitive – учет регистра текстовых данных при сортировке.
Sort/Group on Calculated Value – кнопка установки вычисляемых полей сортировки и группировки. Созданная формула автоматически добавляется в список Sort/Group On.
4.5. Изменение файла данных отчета
Созданный файл данных отчета типа LWR можно изменить командой Options/Current Dataset (рисунок 4.5.1).
В верхнем поле
показывается исходный файл данных, а в
нижнем – файл, который сохраняется
вместе с отчетом. Обычно в этих полях
указывается один и тот же файл.
Если необходимо использовать другой
файл данных, то его имя нужно указать в
верхнем поле. Этот файл должен иметь те
же колонки, что и старый. Для постоянного
изменения файла нужно его имя указать
в нижнем поле и нажать кнопку Link.
Этот файл будет связан с текущим шаблоном
отчета (LWR). Если не указать
путь (нажата кнопка No
Path), то шаблон
отчета не привязывается к конкретной
папке и ищется сначала в папке по
умолчанию (Datasets),
затем – с ф
айлом
шаблона отчета и, наконец, – в текущей
папке.
Рисунок 4.5.1. Окно изменения файла данных отчета
4.6. Изменение свойств отчета
Свойства
отчета выводятся командами Options/Current
Layout и
Options/Preferences
(рисунок 4.6.1).
Рисунок 4.6.1. Окно свойств отчета
Рассмотрим основные опции форматирования.
Datetime, Date, Time, Number, Money – форматирование по умолчанию полей: даты и времени, даты, времени, чисел и стоимостных значений соответственно.
Number Format – форматы числовых полей.
Show Text Borders – текстовые поля отчета заключаются в рамки.
Add Names to New Data Fields – поле размещается на форме с дополнительным текстовым полем – именем размещаемого поля.
Fit All Columns on One Page – колонки отчета сжимаются так, чтобы они не выходили за ширину страницы отчета.
Snap Objects To Gride – связать поля с координатной сеткой.
Show Gride – вывести координатную сетку.
Enable Case Sensitive Sort Options – учет регистра при сортировках.
Top, Bottom, Right, Left, Inches/Centimeters – местоположение и размер поля отчета в дюймах/сантиметрах соответственно.
Leading zero on days and month – выводить ведущие, не значащие нули в номерах дней и месяцев.
4.7. Формирование формул
Любое
поле можно преобразовать в формулу
кнопкой Formula
Editor из окна
свойств поля (рисунок 4.7.1).
Рисунок 4.7.1. Окно редактора формул
Для внесения в текст формулы колонки, функции или оперетора нужно дважды щелкнуть по соответствующей строке списка.
Имена колонок могут состоять только из латинских букв, цифр и не должны начинаться с цифры. В противном случае имена колонок заключаются в фигурные скобки.
Допускаются операторы: сложения (+), вычитания (-), умножения (*), деления (/), сцепления строк (&), сравнения (<=, <, =, >=, >), логические операторы (is, in, or, not, is null, is not null).
Строковые константы заключаются в кавычки.
Типы данных: Number, Text, Date, Time, Datetime. Для преобразования типов используются соответствующие функции.
Функции
Агрегативные функции позволяют производить вычисления контекстно по группе строк секции отчета, в которой они находятся (Sum, Avg, Min, Max, Count), или независимо от этой секции (GroupSum, GroupAvg, GroupMin, GroupMax, GroupCount, ReportSum, ReportAvg, ReportMin, ReportMax, ReportCount).
Список функций
Abs(number) – абсолютное значение аргумента.
Age(date) – полное число лет от даты аргумента до текущего дня.
Avg(number) – среднее значение аргумента по строкам (контекстно).
Cos(number) – косинус аргумента.
Count() – количество строк (контекстно).
Date(), DateTime() – текущая дата, текущая дата и время.
DayOfMonth(date), DayOfYear(date) – день месяца, года аргумента.
DayOfWeek(date) – день недели даты аргумента (воскресенье – 1).
DayBetween(datel, date2) – число дней между двумя датами аргументов.
GroupMax/GroupMin/GroupSum/GroupAvg(number) – максимальное/минимальное/сумма/среднее значение аргумента по группе.
GroupCount(number) – количество строк в группе.
Hour(time) – часы (0-23) даты аргумента.
If <условие> Then valuel [Else value2] – если условие истинно, то выполняется выражение Value1, иначе – выражение Value2.
InitCap(text) – текст аргумента, все символы которого в нижнем регистре, за исключением первых символов слов, например InitCap(«aRRoW name») возвращает «Arrow Name».
Lcase(text) – текст аргумента, все символы которого в нижнем регистре.
Left(text, number) – первые символы слева от текста первого аргумента. Количество символов указывается во втором аргументе.
LTrim(text) – текст аргумента без символов пробела слева.
MakeDate(MM, DD, YY) – дата, сгенерированная по трем числам (например, функция MakeDate(l,2,1999) возвращает значение «2 января 1999 г.»).
MakeTime(HH,MI,SS) – время, сгенерированное по трем числам – часы, минуты, секунды.
MakeMoney(number) – тип money, конвертированный из аргумента number.
Max/Min(number) – максимальное/минимальное значение аргумента по строкам (контекстно).
Mid(text, numberl, number2) – подстрока первого аргумента, начиная с позиции numberl и включая number2 символов.
Minite(time) – количество минут времени аргумента (0–59).
Mod(numberl, number2) – остаток от деления первого аргумента на второй.
Month(date) – порядковый номер месяца даты аргумента (1–12).
PageNum(),RecNumQ – номер страницы, строки отчета.
Quarter(date) – квартал даты аргумента (1–4).
Replace(mainText, oldText, newText) – замена символов в строке mainText – старого фрагмента oldText на новый newText.
ReportAvg(number) – среднее значение аргумента по отчету.
ReportCount(number) – количество строк в отчете.
ReportCumAvg(number) – среднее значение аргумента, вычисляемое контекстно. Если ReportCumAvg расположена в секции Detail, то функция будет возвращать среднее значение аргумента всех вышестоящих строк отчета.
ReportCumMax/ReportCumMin (number) – максимальное/минимальное значение аргумента, вычисляемое контекстно, аналогично ReportCumAvg.
ReportCumSum(number) – сумма аргумента, вычисляемая контекстно.
ReportMax(number) – максимальное значение аргумента по отчету.
ReportMin(number) – минимальное значение аргумента по отчету.
ReportSum(number) – сумма аргумента по отчету.
Right(mainText, number) – первые символы справа от текста первого аргумента. Количество символов указывается во втором аргументе.
Round(numberToRound, precisionNumber) – округленное значение первого аргумента. Во втором аргументе указывается точность округления (например, Round(12345,500) возвращает 12500).
RTrim(text) – текст аргумента без символов пробела справа.
Second(time) – количество секунд времени аргумента (0–59).
Sign(number) – 1, если аргумент положительный; 0, если равен нулю и –1, если аргумент отрицательный.
Sin(number) – синус аргумента.
Sum(number) – сумма значений аргумента по строкам (контекстно).
Tan(number) – тангенс аргумента.
Time() – текущее время.
ToDate(text, format) – дата, конвертированная из текстовой строки. Второй аргумент указывает формат даты.
ToNumber(text) – число, конвертированное из текстовой строки.
ToText(date, format) – текст, конвертированный из даты. Второй аргумент указывает формат даты.
Trim(text) – текст аргумента без «лишних» символов пробела. Удаляются пробелы перед строкой и после строки аргумента; если пробелов подряд более двух, то оставляют только один.
Trunc(number, precision) – округленный первый аргумент с отбрасыванием остатка; во втором аргументе указывается точность округления.
Ucase(text) – текст аргумента, все символы которого в верхнем регистре.
Week(date) – порядковый номер недели (в году) даты аргумента (1–54).
Year(date) – год даты аргумента.
YearsBetween(datel, date2) – количество лет между датами первого и второго аргументов.