Дипломная работа: Информационная технология формирования компетенций в области использования геометрических эффектов в изобретательской деятельности

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

2. МЕТОДИКА ПРОГНОЗИРОВАНИЯ ИЗОБРЕТАТЕЛЬСКОЙ ДЕЯТЕЛЬНОСТИ В ВУЗЕ [Электронный ресурс] Режим доступа: http://elibrary.ru/item.asp?id=13456252

3. Нейматов, Я. М. Образование в XXI веке [Текст] / Я.М. Нейматов. - М. : Алгоритм, 2002. [Электронный ресурс] // Режим доступа: http://www.lexed.ru/pravo/theory/yagofarov2005/?ist.html

4. Гмурман В. Е. Теория вероятностей и математическая статистика. Учеб. Пособие для вузов. -- изд. 7-е, стер. -- М.: Высш. шк., 2001. -- 479 с. [Электронный ресурс] // Режим доступа: http://emag.iis.ru/arc/infosoc/emag.nsf/BPA/477c285e6a6eeb11c32570280035b99f

5. Новиков, А. М. Профессиональное образование в России [Текст] / А. М. Новиков. - М. : ИЦП НПО РАО, 1997. [Электронный ресурс] // Режим доступа: http://www.anovikov.ru/

6. Пиявский С.А. Методическое указание. Методы анализа данных.// Самара. 2010 С.68

7. ОБЩИЕ МЕТОДЫ ПРОЕКТИРОВАНИЯ ИС [Электронный ресурс] // Режим доступа: http://inftis.narod.ru/pis/pis-p4-1.htm

8. ПАТЕНТЫ РФ НА ИЗОБРЕТЕНИЯ И ПОЛЕЗНЫЕ МОДЕЛИ [Электронный ресурс] // Режим доступа: http://elibrary.ru/item.asp?id=9308758

9. ИССЛЕДОВАНИЕ ДИНАМИКИ ПАТЕНТОВАНИЯ ИЗОБРЕТЕНИЙ И НАПРАВЛЕНИЙ ТЕХНИЧЕСКИХ РАЗРАБОТОК [Электронный ресурс] // Режим доступа: http://elibrary.ru/item.asp?id=21120785

ПРИЛОЖЕНИЕ А

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АРХИТЕКТУРНО-СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ» (СГАСУ)

УТВЕРЖДАЮ __________________________

__________________________

Информационная технология формирования компетенций в области использования геометрических эффектов в изобретательской деятельности

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

ЛИСТ УТВЕРЖДЕНИЯ

02068389. 40100.12.И3.01-ЛУ

(вид носителя данных)

Листов 1

Разработчик:

Магистрант группы ГИП-М12

Смолянко И.А

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АРХИТЕКТУРНО-СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ» (СГАСУ)

УТВЕРЖДЕНО

02068389.40100.12.И3.01-ЛУ

Информационная система формирования компетенций в области использования геометрических эффектов в изобретательской деятельности

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

(вид носителя данных)

Листов 4

А.1 Введение

Открываем программу с ролью «Методист», для этого в окне нажимаем на кнопку «Методист».

А.2 Редактирование справочников

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

Рисунок А.2 - Редактирование справочников

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

А.3 Открытие и сохранение темы задачи

А.3.1 Открытие темы и описания задачи

Для открытия ранее сохраненной задачи нажмите на кнопку «Открыть». В появившемся окне выберите необходимый файл, содержащий тему и описание задачи. И нажмите на кнопку ОК. После этого автоматически заполнятся поля

Рисунок Б.3 - Открытие файла

А.3.2 Сохранение темы и описания задачи

Для сохранения темы и описания задачи в файл нажмите на кнопку «Сохранить». В появившемся окне укажите название файла и нажмите на кнопку ОК

Рисунок Б.4 - Сохранение файла

А.4 Подбор геометрического эффекта

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

Рисунок А.4 - Подбор эффекта

А.5 Подбор идей и действий патентов

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

Рисунок А.5 - Подбор идей и действий патентов

А.6 Просмотр справки

Для просмотра полной информации о текущем состоянии базы данных нажмите на кнопку «Справка».

Рисунок А.6 - Окно справки

ПРИЛОЖЕНИЕ В

ЛИСТИНГ

Форма эксперта

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace WindowsFormsApplication1

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)

{

int r = dataGridView1.CurrentRow.Index;

string idPatent = dataGridView1.Rows[r].Cells[0].Value.ToString();

try

{

//выбираем те эффекты что привязаны к патенту

string query = "SELECT Геометрические_эффекты.Название, Геометрические_эффекты.Id " +

"FROM Геометрические_эффекты, Патенты_Геометрических_эффектов, Патенты " +

"WHERE Геометрические_эффекты.Id = Патенты_Геометрических_эффектов.Геометрические_эффекты_Id " +

"AND Патенты_Геометрических_эффектов.Патенты_Id = Патенты.Id " +

"AND Патенты.Id = %id%".Replace("%id%", idPatent);

SqlConnection connection = openConnection();

SqlDataReader myReader = sendQuery(query,connection);

//очищаем 3е окно при каждом клике в первом

_paternEffectsDataGridView.Rows.Clear();

while (myReader.Read())

{

int c = _paternEffectsDataGridView.RowCount;

_paternEffectsDataGridView.Rows.Add(1);

_paternEffectsDataGridView.Rows[c].Cells[0].Value = myReader["Id"].ToString();

_paternEffectsDataGridView.Rows[c].Cells[1].Value = myReader["Название"].ToString();

}

closeConnection(connection);

}

catch (Exception exc)

{

string excText = exc.ToString();

}

}

private void Form1_Load(object sender, EventArgs e)

{

try

{

string query = "SELECT Id, Название FROM Патенты";

SqlConnection connection = openConnection();

SqlDataReader myReader = sendQuery(query, connection);

while (myReader.Read())

{

int c = dataGridView1.RowCount;

dataGridView1.Rows.Add(1);

dataGridView1.Rows[c].Cells[0].Value = myReader["Id"];

dataGridView1.Rows[c].Cells[1].Value = myReader["Название"].ToString();

}

myReader.Close();

query = "SELECT Id, Название FROM Геометрические_эффекты";

myReader = sendQuery(query, connection);

while (myReader.Read())

{

int c = _effectsDataGridView.RowCount;

_effectsDataGridView.Rows.Add(1);

_effectsDataGridView.Rows[c].Cells[0].Value = myReader["Id"];

_effectsDataGridView.Rows[c].Cells[1].Value = myReader["Название"].ToString();

}

myReader.Close();

query = "Select Id, название from Идеи";

myReader = sendQuery(query, connection);

while (myReader.Read())

{

int c = _ideasDataGridView.RowCount;

_ideasDataGridView.Rows.Add(1);

_ideasDataGridView.Rows[c].Cells[0].Value = myReader["Id"];

_ideasDataGridView.Rows[c].Cells[1].Value = myReader["Название"].ToString();

}

myReader.Close();

query = "Select Id, Название from Действия";

myReader = sendQuery(query, connection);

while (myReader.Read())

{

int c = _actionsDataGridView.RowCount;

_actionsDataGridView.Rows.Add(1);

_actionsDataGridView.Rows[c].Cells[0].Value = myReader["Id"];

_actionsDataGridView.Rows[c].Cells[1].Value = myReader["Название"].ToString();

}

myReader.Close();

query = "SELECT Геометрические_эффекты.Название, Геометрические_эффекты.Id " +

"FROM Геометрические_эффекты, Патенты_Геометрических_эффектов, Патенты " +

"WHERE Геометрические_эффекты.Id = Патенты_Геометрических_эффектов.Геометрические_эффекты_Id " +

"AND Патенты_Геометрических_эффектов.Патенты_Id = Патенты.Id " +

"AND Патенты.Id = %id%".Replace("%id%", dataGridView1.Rows[0].Cells[0].Value.ToString());

while (myReader.Read())

{

int c = _paternEffectsDataGridView.RowCount;

_paternEffectsDataGridView.Rows.Add(1);

_paternEffectsDataGridView.Rows[c].Cells[0].Value = myReader["Id"].ToString();

_paternEffectsDataGridView.Rows[c].Cells[1].Value = myReader["Название"].ToString();

}

closeConnection(connection);

}

catch (Exception exc)

{

string excText = exc.ToString();

}

}

//функция посылает запрос в базу

SqlDataReader sendQuery(string query, SqlConnection connection)

{

SqlDataReader myReader;

SqlCommand myCommand = new SqlCommand(query, connection);

//выполняем запрос

myReader = myCommand.ExecuteReader();

return myReader;

}

private void dataGridView2_CellContentClick(object sender, DataGridViewCellEventArgs e)

{

}

//кнопка добавления

private void button1_Click(object sender, EventArgs e)

{

int row1 = dataGridView1.CurrentRow.Index;

int row2 = _paternEffectsDataGridView.CurrentRow.Index;

string idPatent = dataGridView1.Rows[row1].Cells[0].Value.ToString();

string idEffect = _paternEffectsDataGridView.Rows[row2].Cells[0].Value.ToString();

string query = "INSERT INTO Патенты_Геометрических_эффектов (Патенты_Id, Геометрические_эффекты_Id) " +

"VALUES (%idPatent%, %idEffect%)"

.Replace("%idPatent%", idPatent)

.Replace("%idEffect%", idEffect);

SqlConnection connection = openConnection();

sendQuery(query, connection);

connection.Close();

int c = _effectsDataGridView.RowCount;

string id = _paternEffectsDataGridView.Rows[row2].Cells[0].Value.ToString();

string s = _paternEffectsDataGridView.Rows[row2].Cells[1].Value.ToString();

_effectsDataGridView.Rows.Add(1);

_effectsDataGridView.Rows[c].Cells[0].Value = id;

_effectsDataGridView.Rows[c].Cells[1].Value = s;

}

//кнопка удаления

private void button2_Click(object sender, EventArgs e)

{

int row1 = dataGridView1.CurrentRow.Index;

int row3 = _effectsDataGridView.CurrentRow.Index;

string idPatent = dataGridView1.Rows[row1].Cells[0].Value.ToString();

string idEffect = _effectsDataGridView.Rows[row3].Cells[0].Value.ToString();

string query = "DELETE FROM Патенты_Геометрических_эффектов " +

"WHERE Патенты_Id = %idPatent% "

.Replace("%idPatent%", idPatent) +

"AND Геометрические_эффекты_Id = %idEffect%"

.Replace("%idEffect%", idEffect);

SqlConnection connection = openConnection();

sendQuery(query, connection);

connection.Close();

_effectsDataGridView.Rows.RemoveAt(row3);

}

//функция открывает соединение с базой

SqlConnection openConnection()

{

SqlConnection connection = new SqlConnection("Data Source=localhost;Initial Catalog=PECHDB;Integrated Security=True");

connection.Open();

//this.Text = "Я открыт";

return connection;

}

//функция закрывает соединение с базой

void closeConnection(SqlConnection connection)

{

connection.Close();

//this.Text = "Я закрыт";

}

private void button3_Click(object sender, EventArgs e)

{

Form2 f2 = new Form2();

f2.Show();

this.Hide();

}

private void button8_Click(object sender, EventArgs e)

{

SqlConnection connection = openConnection();

SqlCommand query = new SqlCommand("SELECT COUNT (Id) FROM Геометрические_эффекты", connection);

int count=(int)query.ExecuteScalar();

string gE = count.ToString();

query = new SqlCommand("SELECT COUNT (Id) FROM Патенты", connection);

count = (int)query.ExecuteScalar();

string patent=count.ToString();

query = new SqlCommand("SELECT count(distinct(p.id)) FROM Патенты p inner join Патенты_Геометрических_эффектов pg on p.Id = pg.Патенты_Id", connection);

string countLinkPattern = query.ExecuteScalar().ToString();

query = new SqlCommand(@"select count(distinct(t.id))

from(SELECT p.id

FROM Патенты p

inner join Патенты_Геометрических_эффектов pg on p.Id = pg.Патенты_Id

group by p.id

having count(pg.Id) = 1)t", connection);

string countPatternOneLink = query.ExecuteScalar().ToString();

query = new SqlCommand(@"select count(distinct(t.id))

from(SELECT p.id

FROM Патенты p

inner join Патенты_Геометрических_эффектов pg on p.Id = pg.Патенты_Id

group by p.id

having count(pg.Id) = 2)t", connection);

string countPatternTwoLink = query.ExecuteScalar().ToString();

query = new SqlCommand("SELECT COUNT (Id) FROM Патенты_Геометрических_Эффектов", connection);

count = (int)query.ExecuteScalar();

string pGE = count.ToString();

SqlDataReader myReader = sendQuery(@"SELECT top 3

max(ge.Название) Название,

count(pge.Id) Количество_связей

FROM Геометрические_эффекты ge

inner join Патенты_Геометрических_эффектов pge on ge.Id = pge.Геометрические_эффекты_Id

group by ge.Id

order by Количество_связей desc", connection);

string topLink = "";

while (myReader.Read())

{

topLink += myReader["Название"] + " всего связей " + myReader["Количество_связей"].ToString() + "\r\n";

}

myReader.Close();

MessageBox.Show("Паттерны"+

"\r\nВсего патентов в базе: " + patent +

"\r\nПатернов, связанных с геометрическими эффектами: " + countLinkPattern +

"\r\nПатернов, не связанных с геометрическими эффектами: " + (int.Parse(patent)-int.Parse(countLinkPattern)).ToString()+

"\r\nПатернов связанных:\r\nС одним геометрическим эффектом: " + countPatternOneLink +

"\r\nС двумя геометрическим эффектом: " + countPatternTwoLink +

"\r\nС тремя и более геометрическими эффектами: " + (int.Parse(countLinkPattern) - int.Parse(countPatternOneLink) -int.Parse(countPatternTwoLink)).ToString() +

"\r\n\r\nЭффекты:\r\nВсего геометрических эффектов в базе: " + gE + "\r\n"+topLink

,"Статистика наполнения базы");

query = new SqlCommand();

connection.Close();

}

private void button9_Click(object sender, EventArgs e)

{

TestForm test = new TestForm();

test.ShowDialog();

}

private void button10_Click(object sender, EventArgs e)

{

string query = "Select Id, Название from Действия";

SqlConnection connection = openConnection();

SqlDataReader myReader = sendQuery(query, connection);

while (myReader.Read())

{

int c = _actionsDataGridView.RowCount;

_actionsDataGridView.Rows.Add(1);

_actionsDataGridView.Rows[c].Cells[0].Value = myReader["Id"];

_actionsDataGridView.Rows[c].Cells[1].Value = myReader["Название"].ToString();

}

myReader.Close();

}

private void _actionsDataGridView_SelectionChanged(object sender, EventArgs e)

{

}

}

}

Форма обучаемого

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Data.SqlClient;

using System.IO;

namespace WindowsFormsApplication1

{

public partial class Form2 : Form

{

public Form2()

{

InitializeComponent();

}

private void Form2_Load(object sender, EventArgs e)

{

}

private void Form2_Closing(object sender, EventArgs e)

{

Form1 f1 = new Form1();

f1.Show();

}

private void button1_Click(object sender, EventArgs e)

{

this.Close();

}

public int i = 0;

private void button2_Click(object sender, EventArgs e)

{

//string where = " where Коэффициент >= " + comboBox1.SelectedItem.ToString() + "-1 and Коэффициент<= " + comboBox1.SelectedItem.ToString() + "+1";

string where = "";

GetEffect(where);

}

private List<string> ExecuteQueryGetEffect(string lineWhere , ref List<string> effect, ref List<string> effectId)

{

dataGridView1.Rows.Clear();

string query = "SELECT Id, Название FROM Геометрические_эффекты" + lineWhere;

SqlConnection connection = openConnection();

SqlDataReader myReader = sendQuery(query, connection);

//List<string> effect = new List<string>();

//List<string> effectId = new List<string>();

while (myReader.Read())

{

effectId.Add(myReader["Id"].ToString());

effect.Add(myReader["Название"].ToString());

}

myReader.Close();

return effect;

}

private void GetEffect(string lineWhere)