МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение
высшего профессионального образования
«Дальневосточный федеральный университет»
(ДВФУ)
Школа естественных наук
|
«УТВЕРЖДАЮ»
|
|
Заведующий кафедрой информатики, математического и компьютерного моделирования
|
|
|
|
______________ Чеботарев А.Ю.
|
|
«___15___»_сентября____2012____г.
|
УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС ДИСЦИПЛИНЫ
«РАЗРАБОТКА И СТАНДАРТИЗАЦИЯ ПРОГРАММНЫХ СРЕДСТВ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ»
___080800________ _Прикладная информатика_________________
код специальности (направления) подготовки (название специальности (направления) подготовки)
Кафедра информатики, математического и компьютерного моделирования
Курс 3, семестр 5, 6
Лекции - 52 час.
Практические занятия - 0 час.
Семинарские занятия - 0 час.
Лабораторные работы - 70 час.
Самостоятельная работа – 69 час.
Всего - 191 час.
Реферативные работы не предусмотрены
Контрольные работы не предусмотрены
Экзамен: семестр 6
Зачет: семестр 5
Рабочая программа составлена на основании типовой программы ГОС ВПО и авторских разработок. Номер государственной регистрации 774 эк/бак от 27 декабря 2005г.
Заведующий кафедрой А.Ю. Чеботарёв
Составитель (ли) Е. П. Дьяченко
АННОТАЦИЯ
Дисциплина «Разработка и стандартизация программных средств и информационных технологий» является дисциплиной федерального компонента цикла ОПД. В ее сферу входит изучение вопросов изучение методики применения стандартов (международных и национальных) и получение навыков при разработке программных средств (ПС). Определить целесообразность создания и рациональность затрат на проектирование ПС.
В результате освоения дисциплины обучающийся должен:
Иметь представление о:
- об устройстве и входных языках типовых пакетов прикладных программ общего назначения;
- о принципах адаптивного поведения пакетов прикладных программ и разработки программной оболочки
Знать:
- тенденции развития современных программных средств;
- основы устройства пакетов программ;
- типовые приемы конструирования пакетов сложной структуры;
- организацию проектирования программных средств и информационных технологий и содержание различных этапов процесса разработки с использованием государственного стандарта ГОСТ Р ИСО/МЭК 12207-99 «Информационная технология. Процессы жизненного цикла программных средств»;
Уметь:
- проектировать, конструировать и отлаживать пакеты программ сложной структуры малых и средних размеров;
- использовать существующие пакеты прикладных программ для решения конкретных задач;
Владеть:
-содержание различных этапов процесса разработки с использованием государственного стандарта ГОСТ Р ИСО/МЭК 12207-99 «Информационная технология.
1. Цели освоения дисциплины
Целью освоения дисциплины «Разработка и стандартизация программных средств и информационных технологий» является формирование у обучающегося:
представления о процессе моделирования программных средств;
представления о существующих стандартах разработки и сертификации программных средств;
понимания механизмов моделирования программных средств;
способности создавать объектно-ориентированные модели программных средств на языке UML.
2. Место дисциплины в структуре ООП бакалавриата
Дисциплина относится к циклу ОПД. Она основывается на знаниях и навыках, полученных в рамках дисциплины «Информатика и программирование».
Для освоения дисциплины «Разработка и стандартизация программных средств и информационных технологий» обучающийся знать один из объектно-ориентированных языков на начальном уровне, иметь общее представление о базах данных.
3. Компетенции обучающегося, формируемые
в результате освоения дисциплины
В результате освоения дисциплины обучающийся должен:
теоретические понятия: метода и технологии проектирования программного обеспечения, архитектуры программных систем, жизненного цикла программного обеспечения;
общие подходы к моделированию программных средств;
критерии эффективности и качества программных средств;
общие сведения о сертификации и лицензировании информатизационных процессов;
назначение и способы применения языка графического моделирования UML;
методы объектно-ориентированого моделирования приложений с помощью UML;
методы моделирования приложений баз данных с помощью UML.
проектировать программное обеспечение с использованием инструментальных средств и CASE-технологий;
документировать процессы разработки ПО согласно действующим стандартам.
Владеть: навыками работы со средствами моделирования программного обеспечения.
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение
высшего профессионального образования
«Дальневосточный федеральный университет»
(ДВФУ)
Школа естественных наук
|
«УТВЕРЖДАЮ»
|
|
Заведующий кафедрой информатики, математического и компьютерного моделирования
|
|
|
|
______________ Чеботарев А.Ю.
|
|
«___15___»_сентября____2012____г.
|
РАБОЧАЯ УЧЕБНАЯ ПРОГРАММА ДИСЦИПЛИНЫ
«РАЗРАБОТКА И СТАНДАРТИЗАЦИЯ ПРОГРАММНЫХ СРЕДСТВ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ»
___080800________ _Прикладная информатика_________________
код специальности (направления) подготовки (название специальности (направления) подготовки)
Кафедра информатики, математического и компьютерного моделирования
Курс 3, семестр 5, 6
Лекции - 52 час.
Практические занятия - 0 час.
Семинарские занятия - 0 час.
Лабораторные работы - 70 час.
Самостоятельная работа – 69 час.
Всего - 191 час.
Реферативные работы не предусмотрены
Контрольные работы не предусмотрены
Экзамен: семестр 6
Зачет: семестр 5
Рабочая программа составлена на основании типовой программы ГОС ВПО и авторских разработок. Номер государственной регистрации 774 эк/бак от 27 декабря 2005г.
Заведующий кафедрой А.Ю. Чеботарёв
Составитель (ли) Е. П. Дьяченко
4. Структура и содержание дисциплины
№
|
Раздел
дисциплины
|
Семестр
|
Неделя семестра
|
Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах)
|
Формы текущего контроля успеваемости
(по неделям семестра)
Форма
промежуточной аттестации
(по семестрам)
|
|
|
|
|
Лекции
|
Лаб.работ
|
Самостоятельная работа
|
|
11
|
Производство информационных технологий
|
5
|
1-2
|
2
|
4
|
2
|
Коллоквиум № 1
|
22
|
Архитектура программных систем, жизненный цикл ПО
|
5
|
3-4
|
2
|
4
|
2
|
Коллоквиум № 1
|
33
|
Язык графического описания UML. История, назначение, средства выполнения моделей.
|
5
|
5-6
|
2
|
4
|
2
|
Коллоквиум №1
|
44
|
Статическая структура программы. Моделирование классов.
|
5
|
7-8
|
2
|
6
|
4
|
Практические задания 1.1 – 1.3, коллоквиум №1
|
55
|
Динамическая структура программы. Моделирование состояний.
|
5
|
9-10
|
2
|
6
|
6
|
Практические задания 1.4 - 1.5, коллоквиум №1
|
66
|
Моделирование взаимодействий.
|
5
|
11-15
|
4
|
10
|
8
|
Практические задания 1.6 - 1.7, коллоквиум №1
|
87
|
Коллоквиум №1
|
5
|
16
|
2
|
0
|
24
|
|
98
|
Итого за семестр
|
|
|
16
|
34
|
48
|
Зачет
|
19
|
Моделирование приложений баз данных.
|
6
|
1
|
4
|
2
|
2
|
Коллоквиум №2
|
110
|
Концепция реляционных баз данных. Нормальные формы.
|
6
|
2 - 4
|
4
|
6
|
4
|
Коллоквиум №2
|
111
|
Реализация структуры базы данных – классы.
|
6
|
5 - 6
|
4
|
4
|
2
|
Практическое задание 2.1, коллоквиум №2
|
12
|
Реализация структуры базы данных –ассоциации.
|
6
|
7 - 9
|
4
|
6
|
2
|
Практические задания 2.2 - 2.4, коллоквиум №2
|
13
|
Реализация структуры базы данных – основные ключи.
|
6
|
10 - 12
|
6
|
6
|
3
|
Коллоквиум №2
|
14
|
Проверка ограничений, индексы.
|
6
|
13 - 14
|
4
|
6
|
4
|
Практическое задание 2.6, 2.8, коллоквиум №2
|
15
|
Связь ЯП с базой данных. Объектно-ориентированные БД.
|
6
|
15 - 16
|
6
|
4
|
4
|
Практические задания 2.5, 2.7, 2.9, 2.10
|
16
|
Коллоквиум №2
|
6
|
17
|
4
|
0
|
21
|
|
117
|
Итого за семестр
|
|
|
36
|
36
|
48
|
Экзамен
|
5. Образовательные технологии
В преподавании дисциплины «Разработка и стандартизация программных средств и информационных технологий» используются различные образовательные технологии. Проводится 2 вида занятий: лекционные и практические занятия.
На лекциях даются основные понятия методологии разработки программных средств, при этом активно используется визуальный материал, данный в таблицах, схемах и диаграммах. На занятиях этого вида обучающиеся приобретают базовые знания в области разработки ПО и закрепляют их с помощью повторения и регулярных опросов.
На практических занятиях обучающиеся выполняют задания по разработке программного комплекса. Задания делятся на непосредственное моделирование системы, и реализацию полученных моделей. Обучающиеся используют методические указания преподавателя к заданиям, встроенную справку программ и интернет. Преподаватель осуществляет консультационную и оценочную деятельность. На занятиях этого вида обучающиеся приобретают практические навыки работы со средствами выполнения UML-моделей и развивают навыки программирования.
6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины.
Самостоятельная работа обучающегося заключается в выполнении практических заданий и в изучении лекционного материала для ответа на коллоквиумах.
Контрольно-измерительные материалы
Спроектировать и реализовать систему, позволяющую строить график функции, вычислять интеграл, решать СЛАУ методом Гаусса по заданным табличным данным.
Задание разбито на этапы:
Создать диаграмму классов, соответствующую постановке. Диаграмма должна содержать класс-предок, выполняющий общие задачи ввода-вывода, и классы-потомки, конкретизирующие метод решения.
Реализовать интерфейс классов согласно диаграмме. Каждый класс должен быть расположен в отдельном модуле (файле).
Реализовать чтение табличных данных из файла. Формат файла - в первой строке размерность матрицы (через пробел числа m, n), далее m строк по n столбцов элементов матрицы через пробел. Написать реализацию метода Гаусса. Полагается, что тестовые данные корректны.
Создать диаграмму состояний интерфейса системы.
Реализовать вычисление интеграла по табличным данным (метод трапеций).
Создать диаграмму вариантов использования системы.
Реализовать построение графика по табличным данным (TChart для Delphi или аналоги).
Спроектировать и реализовать систему учета выдачи книг в библиотеке.
Система должна позволять:
Добавлять, удалять, редактировать описания книг (название, автор, год издания, издательство, количество экземпляров).
Искать книги по названию, году издания, автору.
Добавлять, удалять, редактировать списки читателей (Ф.И.О., адрес).
Просматривать списки должников - читателей, не вернувших книги в в течении 15 дней с момента выдачи.
Учитывать выдачи книги. Книгу можно выдать, если читатель не является должником и в хранилище есть хотя бы один экземпляр книги.
Документация разработки ведется согласно методическим указаниям [2].
Задание разбито на этапы:
Создать схему базы с указанием ключей и отношений между таблицами.
Выбрать СУБД и язык программирования, создать базу согласно схеме. Подготовить скрипт создания базы данных.
Описать выбор языка согласно разделу 8.1.
Описать сущности согласно разделу 4.1.
Реализовать добавление, удаление, редактирование данных читателя.
Описать функциональные требования к системе согласно разделу 5. Создать диаграмму использования системы.
Реализовать добавление, удаление, редактирование реквизитов книги, поиск книги по реквизитам.
Создать диаграмму интерфейса системы.
Реализовать выдачу книги читателю.
Реализовать просмотр списка должников.
Создать диаграмму компонентов системы.
Вопросы к коллоквиумам:
1-й коллоквиум:
Архитектура программных систем.
Модели и стадии жизненного цикла программного обеспечения.
Критерии качества программного обеспечения.
Язык UML, назначение, краткая история.
Диаграммы языка UML, описывающие статическую и динамическую структуру программы.
Назначение, семантика диаграммы классов. Графическое обозначение классов, объектов, связей. Создать диаграмму классов, описывающую пользователей интернет - форума (гость, участник, модератор).
Назначение, семантика диаграммы состояний. Виды событий, состояния, сторожевые условия. Начальное и конечное состояния. Создать диаграмму состояний автомата по продаже напитков.
Назначение, семантика диаграммы состояний. Деятельность и действие (entry, exit, do-activity). Создать диаграмму состояний интерфейса интернет - магазина (каталог, корзина, оформление заказа).
Назначение, семантика диаграммы вариантов использования. Графическое обозначение действующих лиц, вариантов использования, связей. Создать диаграмму вариантов использования для
Назначение, семантика диаграммы последовательности. Графическое обозначение переходов. Создать диаграмму последовательности для решения квадратного уравнения.
2-й коллоквиум:
Реляционная модель данных, нормальные формы.
Назначение СУБД, примеры.
Моделирование таблиц реляционной базы данных на UML.
Моделирование ассоциаций реляционной базы данных на UML.
Моделирование ключей реляционной базы данных на UML.
Индексы, проверка ограничений средствами СУБД.
Диаграмма компонентов системы, назначение, графические обозначения. Пример диаграммы для приложения баз данных.
Диаграмма развертывания системы, назначение, графические обозначения. Пример диаграммы для приложения баз данных.
7. Учебно-методическое и информационное обеспечение дисциплины (модуля)
а) основная литература:
Буч Г., Рамбо Д., Джекобсон А., Язык UML Руководство пользователя. — 2-е изд. — М., СПб.: ДМК Пресс, Питер, 2004. — 432 с.
Буч Г., Якобсон А., Рамбо Дж. UML. Классика CS. 2-е изд. / Пер. с англ.; Под общей редакцией проф. С. Орлова — СПб.: Питер, 2006. — 736 с. Мелкумян Б.В. Разработка и стандартизация программных средств и информационных технологий: Учебно-методическое пособие. - .:МИЭМП, 2006. - 231 с.
Лешек А. Мацяшек. Анализ требований и проектирование систем. Разработка информационных систем с использованием UML – Вильямс, 2002 – 432c.
А. В. Рудаков. Технология разработки программных продуктов. Учебное пособие. – 2-е изд. – Академия, 2006. – 208с.
б) дополнительная литература:
Бахвалов Н.С., Жидков Н.П., Кобельков Г.М., Численные методы, 2003.
Роберт Дж. Мюллер. Базы данных и UML. - "Лори", 2002. - 420 стр.
http://window.edu.ru/resource/974/71974 Зикратов И.А., Косовцев В.В., Петров В.Ю. Разработка и стандартизация программных средств и информационных технологий: Учебное пособие. - СПб.: СПбГУ ИТМО, 2010. - 91 с.
http://vtit.kuzstu.ru/books/shelf/178/ Унифицированный процесс разработки программного обеспечения: Методические указания к лабораторной работе Автор/создатель: Крутский Д.Л. Кафедра вычислительной техники и информационных технологий Кузбасского государственного технического университета, 2004.
http://window.edu.ru/resource/120/76120 Стандартизация: учебное пособие / Г.А. Кнодель, И.В. Бондаренкова, И.С. Ковчин, Г.А. Кондрашкова, А.В. Черникова, В.П. Яковлев; ГОУВПО СПбГТУРП. - СПб., 2010. - 68 с.
http://window.edu.ru/resource/754/69754 Ефимова М.В. Метрология, стандартизация и сертификация: Учебное пособие. - Петропавловск-Камчатский: КамчатГТУ, 2006. - 92 с.
http://www.omg.org/spec/UML/Current/ Спецификация текущей версии UML
-
http://cyberleninka.ru /article/n/rol-standartizatsii-kak-kategorii-organizatsionno-pravovogo-obespecheniya-zaschity-informatsii-v-deyatelnosti-podrazdeleniy-fstek БРАЖНИКОВ А. Е. РОЛЬ СТАНДАРТИЗАЦИИ КАК КАТЕГОРИИ ОРГАНИЗАЦИОННО-ПРАВОВОГО ОБЕСПЕЧЕНИЯ ЗАЩИТЫ ИНФОРМАЦИИ В ДЕЯТЕЛЬНОСТИ ПОДРАЗДЕЛЕНИЙ ФСТЭК РОССИИ // Вестник ВИ МВД России. 2008. №1.
в) программное обеспечение и Интернет-ресурсы
Microsoft Visio
-
Методические указания по подготовке и защите отчётов на специализации "Прикладная математика. Системное программирование".
8. Материально-техническое обеспечение дисциплины (модуля)
Используется компьютерный класс.
Моделирование
Построить диаграмму вариантов использования для следующих предметных областей (выделить актеров, варианты использования, отношения между ними):
Владельцем автомобиля является дядя Петя. Каждое утро он отвозит жену Марию и тещу Ангелину Ивановну на работу, а детей Васю и Машу в детский сад. Каждый вечер дядя Петя забирает всех и отвозит домой. Иногда дядя Петя заправляет автомобиль бензином, раз в полгода самостоятельно меняет шины. В случае поломки он транспортирует машину в ближайший автосервис.
Прокат видеофильмов. Кассету можно взять на некоторое время, оставив залог, или купить. Для каждого покупателя оформляется чек, содержащий список кассет и сумму покупки (аренды). Если покупатель не вернул кассету в срок, он обязан выплатить штраф. Если кассета утрачена, продавец оформляет ведомость с указанием номера кассеты и ее стоимости. Раз в неделю продавец заказывает кассеты, проводит ревизию (какие действия входят в ревизию?).
Онлайн–бронирование отеля. Для бронирования пользователь должен зарегистрироваться в системе. После выбора отеля пользователь выбирает отель и номер, узнает его доступность у менеджера, подает заявку на бронирование, указав количество мест, сроки пребывания, уровень обслуживания. Менеджер принимает заявку, если отель способен предоставить требуемые услуги, или отклоняет ее. После принятия заявки нужно получить согласие пользователя, переслать ему платежные реквизиты на предоплату первого дня проживания. Пользователь может внести деньги через выбранную платежную систему и дождаться подтверждения оплаты (копии чека) или отказаться от бронирования до оплаты. После получения предоплаты номер считается забронированным. Если после оплаты пользователь вынужден отменить бронирование, то он должен оставить заявку с копией чека предоплаты и дождаться возврата денег.
Банкомат (возможные актеры - пользователь, инкассатор, техперсонал). Можно снять деньги с карты своего банка без комиссии, с любой другой карты с комиссией 3% от суммы, оплатить услуги (коммунальные счета, интернет, мобильная связь).
Для приведенного описания составить необходимые диаграммы UML.
Библиотекари районной библиотеки №2 используют систему учета и поиска по каталогам. Система позволяет вносить описания новых книг в каталог. Описание состоит из ISBN (International Standard
Book Number), названия, автора, года издания, издательства, порядкового номера для периодических изданий.
Библиотекарь может внести или изменить описание издания, читатель – найти по каталогу. Поиск производится по всем полям, имеющимся в описании.
Для размещения системы в библиотеке используется серверная станция, для доступа – 5 клиентских, для работы библиотекарей – 2 отдельных станции. Система предоставляет читателю возможность распечатать описание книги на принтере, установленном в холле. Кроме этого, есть принтер для печати с рабочих станций библиотекарей.
Язык запросов SQL
Подготовка
Создать подключение к БД example. Вид Обозреватель серверов Подключения данных Добавить подключение…
Источник данных Microsoft SQL Compact Server 3.5, выбрать существующую базу.
Оператор SELECT
SELECT
[DISTINCT | ALL]
select_expression,...
[FROM table_references]
[WHERE where_definition]
[GROUP BY {unsigned_integer | col_name | formula}
[HAVING where_definition]
[ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC], ...]
Из таблицы студентов (Student)
Выбрать всех студентов, отсортировав по имени.
Выбрать всех студентов, родившихся не ранее 1990 года.
Выбрать имена и даты рождения студентов, родившихся между 1988 и 1989 годом.
(WHERE Birthdate BETWEEN ‘1988/01/01’ AND ‘1989/01/01’)
Выбрать имена и номера зачетных книжек студентов, которые учатся на втором курсе.
Выбрать студентов второго курса, находящихся в академических отпусках (IsLeave).
Из таблицы ведомостей (Roll)
Выбрать неповторяющиеся (DISTINCT) названия курсов, отсортированные по алфавиту в порядке убывания(ORDER BY).
Выбрать неповторяющиеся имена преподавателей, которые ведут занятия на втором курсе.
Выбрать количество предметов в каждом из семестров (GROUP BY Semester).
Для группировки строк по какому-нибудь признаку (например, номер семестра), используется GROUP BY column_name.
Пример запроса:
SELECT Semester FROM roll GROUP BY Semester
Выбрать названия предметов, которые преподаются более одного семестра (GROUP BY … HAVING COUNT(*) > …)
Выбрать названия предметов, которые ведутся только одним преподавателем. Список отсортировать по алфавиту в порядке возрастания.
Выбрать сумму часов для каждого семестра.
Для вычисления используются агрегатные функции, применяющиеся к результату запроса.
sum(column_name) – возвращает сумму по столбцу column_name.
avg(column_name) – возвращает арифметическое среднее по столбцу column_name.
max(column_name) – возвращает максимальное значение столбца column_name.
min(column_name) – возвращает минимальное значение столбца column_name.
count(*) – возвращает количество строк, попавших в результат запроса.
Пример запроса:
SELECT sum(Hours) FROM Roll
Выбрать сумму часов предметов каждый преподавателя, который ведет более двух курсов.
Из таблицы оценок (Marks)
Выбрать номера зачетных книжек студентов, которые ни разу не пропустили экзамен (Mark = 0 – неявка).
Выбрать номера зачетных книжек студентов, средняя оценка которых не ниже 4.
Выбрать номер зачетных книжек студентов, которые сдавали предмет ‘Дизайн интерфейсов’. Подзапрос SELECT + проверка на вхождение в множество.
WHERE RollNumber IN (SELECT RollNumber FROM Roll WHERE Name = …)
Подсчитать средний балл по каждому предмету.
тор SELECT, JOIN, подзапросы
Выполнить запросы, используя соединение таблиц.
Выбрать имена названия предметов и оценки, полученные по этим предметам из таблиц Marks и Roll.
Пример запроса:
SELECT R.Discipline, M.Mark
FROM Mark M INNER JOIN Roll R ON R.BookNumber = M.BookNumber
Выбрать имена названия предметов и средние оценки, полученные по этим предметам из таблиц Marks и Roll.
Выбрать студентов, которые сдавали экзамен преподавателю ‘Иржаков Е.В.’, и названия предметов, которые они сдавали.
SELECT R.Discipline
FROM Mark M INNER JOIN Roll R ON R.BookNumber = M.BookNumber
INNER JOIN Student S ON S.BookNumber = M.BookNumber
|