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

Введение

 

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

Курсовое проектирование по дисциплине «Технология разработки программных продуктов» является неотъемлемой частью подготовки специалистов в среднем профессиональным образованием.

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

Цель курсовой работы:

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

Задачи курсовой работы:

· закрепить, углубить и обобщить теоретические знания, полученные по изучаемым дисциплинам, и применить эти знаний к комплексному решению конкретной информационной задачи;

· изучить особенности конкретной предметной области, относящиеся к теме курсового проекта (работы);

· проанализировать возможные подходы и методы решения с обоснованием выбранного метода;

· развить навыки работы со справочной литературой, материалами ГОСТов;

· научиться применять современные технические средства для разработки программного продукта;

· разработка программной и эксплуатационной документации;

· проанализировать полученные результаты работы

 

Обучающе-контролирующая программа «Минимизация функций» дает возможность пройти обучение раздела «Минимизация функций» учебной дисциплины «Элементы математической логики» по следующим темам: «Минимизация функций методом Квайна», «Минимизация функций методом Вейча 3-х,4-х переменных». Так же в учебном материале даны задачи для самостоятельной работы. После изучения учебного материала можно пройти тест из 15 вопросов, по окончании которого на экран в виде сообщения выводится оценка. Преимущество обучающее - контролирующей программы в том, что на рынке программных продуктов нет такого программного продукта который бы отвечал требованиям нашего колледжа поэтому возникла необходимость в создании данного программного продукта.

 

1.Спецификация программного продукта

1.1. Описание предметной области

Обучающе - контролирующая программа может использоваться в учебных заведениях, по ФГОС третьего поколения, для специальности «программирование в компьютерных системах». Данная программа представлена как электронное пособие, разделы которого предназначены не только для самостоятельного изучения темы.

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

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

Программа обладает простым интерфейсом и будет понятна любому пользователю.

 

 

1.2. Разработка программного продукта

1.2.1. Структура программного продукта

 

1.3 Описание логической структуры

 


Рис. 1.1 Структурная схема проекта

Титульная форма загружается автоматически при запуске программы. На форме располагаются кнопки навигации «Начать обучение», «Выход» и дополнительные элементы меню «Файл», «Справка» и «О программе». С помощью компонент Image загружена фоновая картинка, содержащая информацию по данной теме программы (фоновая картинка создана с использованием программы Adobe Photoshop).

 
 

 


Материал для обучения загружается при нажатии на кнопку навигации «Начать обучение», находящейся на главном меню. Форма «Начать обучение» содержит структуру дерево, на форме еще находится кнопка «Тест». Также на этой форме размещен компонент WebBrowser, в который загружается теоретический материал и задания для самостоятельной работы.

Дополнительный элемент меню «Файл », в который входят подпункт «Выход» (на всех формах прописывается аналогично).

Дополнительный элемент меню «Справка », «О программе» (на всех формах прописывается аналогично).

 

 

 


Тест загружается при нажатии на кнопку навигации «Тест», находящейся на форме «Начать обучение», представляет собой бланк регистрации. Содержит три поля для ввода необходимых данных, а именно: фамилии, имени и отчества. А также кнопку навигации «Далее» .Если текстовые поля не будут введены, то кнопка «Далее» будет неактивна.

 

 

 
 

 


Так же тест можно загрузить при нажатии на кнопку навигации «Далее», находящейся на форме «Регистрация». Содержит компонент Label в котором отображается вопрос и три компонента RadioButton для вывода вариантов ответа. А также кнопка навигации «Далее»

 

Форма тест

выводит информацию о времени прохождения теста, количество правильно отвеченных вопросов и количество оставшихся вопросов.

Сообщение кот выводит информацию

Меню состоитЖ справка о программе

 

 

1.2.2. Средства проектирования

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

Последняя версия языка Delphi 7 представляет собой интегрированную среду разработки — IDE (Integrated Development Environment). Это означает, что в Delphi 7 интегрирован набор инструментов, облегчающих и значительно ускоряющих процесс разработки готового приложения. Такая реализация языка Delphi 7 с полным правом позволяет отнести его к средствам быстрой разработки приложений — RAD (Rapid Application Development) и ставит практически в один ряд с такими средствами разработки, как Visual C++ и другими.

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

Adobe Photoshop — многофункциональный графический редактор, разработанный и распространяемый фирмой Adobe Systems.

В основном работает с растровыми изображениями, однако имеет некоторые векторные инструменты.

Продукт является лидером рынка в области коммерческих средств редактирования растровых изображений, и наиболее известным продуктом фирмы Adobe. Часто эту программу называют просто Photoshop (Фотошоп). В настоящее время Photoshop доступен на платформах Mac OS X/Mac OS и Microsoft Windows. Ранние версии редактора были портированы под SGI IRIX, но официальная поддержка была прекращена, начиная с третьей версии продукта.

Программное обеспечение Adobe Photoshop CS5, соответствующее отраслевым стандартам, позволяет создавать профессиональные изображения. С легкостью выделяйте сложные области. Удаляйте любые элементы изображения с мгновенным интеллектуальным заполнением пустой области. Рисуйте реалистичные иллюстрации. Создавайте эффектные изображения HDR, устраняйте шумы, добавляйте зернистость и настраивайте виньетирование с помощью самых современных инструментов для обработки фотографий. Повышайте производительность работы на 64-разрядных системах.

 

 

1.2.3. Основные конструкции языка, используемые в программе

Для перехода между формами испол след код :

procedure TForm1.Button1Click(Sender: TObject);

begin

Form2.Show;

Form1.Hide;

end;

 

запись в файл где регистрация

таймер

 

для вывода сообщений Showmessage

Далее подсчет баллов

if radiobutton3.checked then b:=b+1;

Label1.Caption:='II ýòàï ìèíèìèçàöèè ôóíêöèè ìåòîäà Êâàéíà ?' ;

radiobutton1.Caption := 'Ïîñòðîèòü èìïëèêàíòíóþ ìàòðèöó';

radiobutton2.Caption := 'Ïîëó÷èòü ñîêðàùåííóþ ÄÍÔ(ÑêÄÍÔ)';

radiobutton3.Caption := 'Ïîëó÷èòü ÑÄÍÔ';

end;

Обучающий материал

Использ компон тривив вэббраузер

procedure TForm2.TreeView1Click(Sender: TObject);

Begin

If TreeView1.Selected.Text='Ó÷åáíûé ìàòåðèàë Êâàéí' then

webbrowser1.Navigate('C:Êâàéíó÷åáíûé ìàòåðèàë.htm');

 

 

2. Эксплуатационная документация

2.1. Руководство разработчика

2.1.1. Минимальные системные требования

Программное обеспечение:

Windows 98

Технические требования к компьютеру:

30 Mb дискового пространства

Intel 400 МГц, AMD аналогичный

16 Mb RAM, Video 16Mb

24x CDROM

USB 1.1 (если имеется, то в качестве носителя используется Flash-card)

Рекомендуемые системные требования:

Программное обеспечение:

Windows XP

Технические требования к компьютеру:

50 Mb дискового пространства

Intel Celeron 800 MГц, АMD аналогичный

512 Mb RAM, Video 32Mb

32x CDROM

 

2.1.2. Формуляр

Данный программный продукт является бесплатным приложением и может свободно распространяться и передаваться третьему лицу.

Программный продукт находится на одном диске:

1) компилированная версия (.exe),

2)не компилированная версия (программный продукт, который можно запустить с помощью Borland Delphi 7), пояснительная записка, вопросы теста в текстовом формате, обучающий материал.

В качестве формуляра для хранения программы рекомендуется использовать CD-R диск, так как он является более долговечным, более ёмким и сравнительно дешевым и удалить программу с этого носителя нельзя.

Для достаточно долгого хранения носителя необходимо соблюдать следующие правила пользования:

1. Хранить при температуре от -5 до +550 С.

2. Относительная влажность 10-85%.

3. Не прикасаться пальцами к записывающей части диска.

4. Не клеить ничего на поверхность диска.

5. Диск не бросать, не гнуть, не царапать, не мочить.

6. Хранить диск в специальной коробочке.

 

 

2.1.3. Установка программного продукта

Обучающе - контролирующая программа «Минимизация функции» находится на CD – R носителе.

Для того чтобы запустить программу необходимо:

1. Вставить диск в дисковод

2. Зайти в «Мой компьютер» и выбрать диск «Минимизация функции»;

3. Перенести папку с данной программой на диск С:;

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

Программа будет запущенна и на экране появится титульная форма проекта.

 

 

2.1.4. Ввод данных

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

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

 

2.1.5. Вывод данных

Выходными данными являются данные обучающегося проходившего тест: фамилия, имя, отчество, оценка учащегося, количество правильных ответов. Результат тестирования сохраняется на диске C:результат.txt

Также данных выводятся на форме в сообщении «Результат тестирования».

 

2.2. Руководство пользователя

Перед началом работы необходимо запустить приложение “Минимизация функции».При запуске программы на экран выводится титульная форма, которая содержит информацию о теме программы и о предмете.

На ней располагаются кнопки навигации «Начать обучение», «Выход» и дополнительные элементы меню «Файл», «Справка» и «О программе». «Справка» откроет форму , где будет подробно написано как пользоваться программой; «О программе» выведет сообщение кем разработан данный проект; «Файл» откроет подменю, в котором содержатся подпункты «Начать обучение», «Выход».С помощью кнопки «Выход» будет выполнен выход из программы с выгрузкой из оперативной памяти; «Начать обучение» будет произведен переход непосредственно к самому обучению по темам: «Минимизация функций методом Квайна», «Минимизация функций методом Вейча 3-х,4-х переменных». Так же в учебном материале даны задачи для самостоятельной работы.

Кнопка «Тест» открывает форму регистрации. Вы должны ввести свою фамилию, имя и отчество. Если вы не введете свои данные, то не сможете перейти к тестированию. Из окна регистрации, нажав кнопку «Далее» вы переходит к тесту состоящий из 15 вопросов. При прохождении теста необходимо внимательно читать задание, поскольку вопросы разноплановые. Переход между вопросами осуществляется по нажатию кнопки «Далее». После того, как тест пройден, вы увидите сообщение о своем результате. Результаты теста сохраняются в файл на диск C:рузультат.txt. Выход из программы совершается автоматически, после того как вы уведете свою оценку.

 

2.3. Описание применения

Программа выполнена с применением программного продукта Borland Delphi 7, предназначена для учащихся 2 курса, изучающих предмет «Дискретная математика» для изучения темы «Элементы математической логики».

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

 

Заключение

Целью курсового проекта являлось создание обучающе – контролирующей программы с применением программного продукта Borland Delphi 7 раздела «Минимизация функций» учебной дисциплины «Элементы математической логики»

Для этого были решены задачи:

· закрепить, углубить и обобщить теоретические знания, полученные по изучаемым дисциплинам, и применить эти знаний к комплексному решению конкретной информационной задачи;

· изучить особенности конкретной предметной области, относящиеся к теме курсового проекта (работы);

· проанализировать возможные подходы и методы решения с обоснованием выбранного метода;

· развить навыки работы со справочной литературой, материалами ГОСТов;

· научиться применять современные технические средства для разработки программного продукта;

· разработка программной и эксплуатационной документации;

· проанализировать полученные результаты работы

 

Цель работы достигнута, программа соответствует данной теме и всем заданным требованиям.

 

Список литературы

 

Обучающий материал

Тема урока: Минимизация функций методом Квайна

Алгоритм:

1. Получить СДНФ.

2. Получить сокращенную ДНФ (СкДНФ), используя следующие равносильности:

- склеивание;

- поглощение.

3. Построить импликантную матрицу, с помощью которой получить МДНФ.

Пример.

Для построения СДНФ выпишем все наборы, на которых функция равна 1: 000, 001, 010, 101, 110, 111.

 

1. - ДНФ

Соединяя эти конъюнкции знаками дизъюнкции, получаем СДНФ заданной функции:

 

- СДНФ

1 2 3 4 5 6

 

2. Применяя операции склеивания, получаем СкДНФ.

1-2:
1-3:
4-6:
5-6:

 

 

3. Импликантная матрица

 
+ +        
+          
      +   +
        + +

 

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

 

Задания для самостоятельной работы

Задание №1.

Выполнить минимизацию функции f(x,y,z) = K(0,1,3,5) методом Квайна

Задание №2.

Выполнить минимизацию функции f(x,y,z) = K(0,3,4,7) методом Квайна

 

Тема урока: Минимизация функций методом Вейча для 3-х переменных.

Алгоритм:

1. Диаграмма Вейча представляет собой следующую матрицу:

 

2. Диаграмма Вейча заполняется в следующем порядке:

Например

Дана функция f (x1,x2,x3)= К (0,1,4,5)

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

Следует помнить, что покрывать одним прямоугольником можно только 2n и нельзя, покрывать 3, 6, 10 единиц.

 

1 1 1 1

х2 Х2

       
   


х1

 

х1


х3 х3 Х3

 

3. МДНФ f (x1,x2,x3)= х2

 

Задания для самостоятельной работы

Задание 1.

Минимизировать функцию f методом Вейча для 3-х переменных:

1. f(x1,x2,x3) = К(0,1,3,6,7).

2. f(x1,x2,x3) = К(0,1,5,6,7)

 

Тема урока: Минимизация ДНФ методом Вейча для четырех переменных.

Минимизация ДНФ методом Вейча для четырех переменных выполняется аналогично минимизации методом Вейча для трех переменных. То есть она представляет собой ряд следующих шагов:

Этапы выполнения минимизации ДНФ Пример минимизации ДНФ f(x1,x2,x3,x4)=K(1,3,6,7,10,11,13,15)
1. В соответствии с набором в каж­дую клетку диаграммы (см. рисунок 1) записывают единицу или звездочку (при неопределенном наборе) рисунок 1 Для нашего случая К(1) будет распо­лагаться в клетке f1, K(3) – f3, K(6) – f6 и так далее. В результате наша диаграмма примет вид
2. Необходимо покрыть прямоугольни­ками все единицы функции, учиты­вая, что покрывать можно только 2i ячеек, необходимо стремиться покрыть как можно больше единиц одним прямоугольником, и каждый прямоугольник должен иметь хотя бы одну новую единицу. Для нашей ДНФ покрытия прямоугольниками будут иметь следующий вид. Обратите внимание, что в нашем случае мы не покрываем одним прямоугольником максимальное количество единиц, расположенное в ячейках диаграммы f3f7f11f15, так как их покрытие приведет к появлению дополнительного простого слагаемого, а, следовательно, увеличит сложность функции.
3. Требуется записать полученную минимальную ДНФ (МДНФ), определяя в каком виде прямом или инверсном, входят переменные в элементарные конъюнкции МДНФ. Для того чтобы определить в каком виде входит переменная в функцию необходимо посмотреть в какой части диаграммы расположена область покрытия. Для данной ДНФ элементарные конъюнкции будут записаны в следующем виде: Полученная МДНФ будет иметь вид:

 

Задания для самостоятельной работы

Задание 1

Выполните минимизацию функции для четырех переменных:

f(x1,x2,x3,x4) = K(12,13,14,15)

Задание 2

Выполните минимизацию функции для четырех переменных:

f(x1,x2,x3,x4) = K(8,9,10,11)

 

Тест

1. I этап минимизации функции метода Квайна ?

1.Постороить импликантную матрицу;

2.построить диаграмму;

3.получить СДНФ;

2. II этап минимизации функции метода Квайна ?

1.Построить импликантную матрицу;

2.получить сокращенную ДНФ (СкДНФ) ;

3.получить СДНФ;

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

1.Поглащение,склеивание;

2.Двойного отрицания;

3.де Моргана, инднмпотентности;

4. Для f (x1x2x3x4)=K(5,9,11,13,14) МДНФ (f) будет верным:

1.

2.

3.

5. Для f(x1x2x3)=K(0,1,3,5,6,7) МДНФ (f)=будет верным:

1.

2.

3.

6. Правило для объединения единиц при минимизации функции методом Вейча ?

1.3n

2.2n

3.1n

7. Таблица для минимизации функции методом Вейча называется:

1.диаграмма Вейча;

2.матрица Вейча;

3.импликантная матрица;

8. Для функции f(x1x2x3)=K(0,2,5,7) какая диаграмма будет правильной:

 

1.

2.

3.

9. Для функции f(x1x2x3)=K(0,1,5,6,7) МДНФ будет:

1.

2.

3.

10. Для функции f(x1x2x3)=K(1,3,5,6,7) МДНФ будет:

1.

2.

3.

11. МДНФ-это

1.малая дизъюктивная нормальная форма;

2.минимизарованная дизъюктивная номральная форма;

3.минимальная дизъюктивная номральная форма;

12. СДНФ(f) состоит из:

1.элементарных дизъюнкции;

2.элементарных конъюнкции и элементарных дизъюнкции;

3.элементарных конъюнкции;

13. Для функции f(x1x2x3x4)=K(2,3,4,5,6,7,11,15) какая диаграмма будет правильной ?

1.

2.

2.

14. Для функции f(x1,x2,x3,x4)=K(0,1,4,5,8,9,12,13) МДНФ равно:

1.

2.

3.

15. Для функции f(x1,x2,x3,x4)=K(4,5,6,7,9,11,13,14,15) МДНФ равно:

1.

2.

3.

Ответы на тест: