Разработка системы взаимодействия студентов в открытых системах дистанционного образования

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 28.08.2012
Размер файла 145,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru

Размещено на http://www.allbest.ru

Содержание

Введение

1 Формирование требований к программному средству

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

3. Проектирование программного средства

4. Реализация программного средства

5. Описание пользования программным средством

6. Тестирование программного средства

7. Заключение

Приложение

Введение

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

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

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

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

1.Формирование требований к программному средству

Цель

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

Краткое содержание

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

Позиционирование

Деловые преимущества

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

Определение проблемы

Проблема

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

затрагивает

Администратора, пользователей.

Ее следствием является

Задержка получения информации

Успешное решение

Оптимальная организация работы

Проблема

Высокая трудоёмкость процесса обмена информации

затрагивает

Администратора

Ее следствием является

Затянутость процесса обмена информации

Успешное решение

Исключение ошибок, повышение эргономичности работы администратора

Описания пользователей

Сведения о пользователях

У системы существуют три основных пользователя: администратор, менеджер, студент.

Менеджер - сортирует, удаляет и переносит информацию на постоянное хранение.

Администратор - руководит процессом обмена информации

Студент - пользователь, который вводит и копирует данные.

Пользовательская среда

В процессе обмена информации участвуют один администратор, три менеджера и порядка 5 пользователей одновременно.

Операционная система: Microsoft Windows XP, Server 2005 Express Edition.

Профили пользователей

Типичный представитель

Менеджер

Описание

Пользователь системы, наделенный правами на чтение, сортировки и удаления данных.

Тип

Пользователь

Ответственности

Сортирует и удаляет информацию. Назначает срок жизни документа в системе информации. Осуществляет контроль чистоты информации.

Типичный представитель

Администратор

Описание

Пользователь системы, наделенный правами на изменение, удаление информации в системе

Тип

Пользователь

Ответственности

Выполнение заказов в срок, слежение за не цензурной лексикой

Критерий успеха

Выполнение заказов в срок; минимизация простоя оборудования

Типичный представитель

Студент

Описание

Пользователь системы, наделенный правами на внесение и копирование информации

Тип

Пользователь

Ответственности

Ввод данных без не нецензурной лексики

Критерий успеха

Наличие в БД оперативной информации

Ключевые потребности пользователей

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

Краткий обзор изделия

Контекст использования системы

Система является законченной независимой разработкой. В перспективе возможно использование системы в комплексе с системами автоматизации других отделов. Коммуникации - на уровне доступа к общей базе данных.

Предположения и зависимости

Система будет использоваться на сосредоточенном интернет - пространстве.

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

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

Возможности продукта

Структурированное описание

Возможность описания процесса обработки информации через упорядоченную во времени совокупность работ, а также параметров.

Передача заказа в производство

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

Планирование работы

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

Назначение исполнителей

Возможность для каждой из работ назначить менеджера.

Контроль исполнения и оперативная корректировка планов

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

Ограничения

Внедрение системы не должно занимать более 3 месяцев.

В ядре системы должна быть представлена промышленная СУБД реляционного доступа.

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

Показатели качества

Применимость

Время, необходимое для обучения обычных пользователей - 3 рабочих дня (24 часа), для обучения продвинутых пользователей - 1 рабочий день (8 часов).

Время отклика для типичных задач - не более 5 секунд, для сложных задач - не более 20 секунд.

Надежность

Доступность - время, затрачиваемое на обслуживание системы не должно превышать 3% от общего времени работы.

Среднее время безотказной работы - 10 рабочих дней.

Максимальная норма ошибок или дефектов - 1 ошибка на тысячу строк кода.

Другие требования к изделию

Применяемые стандарты

Система должна соответствовать всем стандартам интерфейса пользователя Microsoft® Windows®.

Системные требования

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

64 Mb памяти

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

процессор с тактовой частотой 850 MHz

Операционная система Windows ХР.

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

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

Требования к документации

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

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

Руководства по установке и конфигурированию, файл Read Me

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

Маркировка и пакетирование

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

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

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

программное средство предметный

Модель вариантов использования

Диаграмма потоковых данных.

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

источник данных

входной параметр

тип данных

ограничения

Студент

текст

txt

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

Для изображения DFD использую нотацию Йодана (Yourdon).

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

Карта навигации.

Сущностная эффективность

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

СЭ=6/5*100=120

3. Проектирование программного средства

SQL-скрипт базы данных

CREATE TABLE [dbo].[Mysorka](

[id] [int] NOT NULL,

[predmet] [nchar](100),

[infa] [nchar](100),

CREATE TABLE [dbo].[Hranilishe](

[id] [int] NOT NULL,

[predmet ] [int](100),

[info] [ntext](100),

4. Реализация программного средства

Определение основных пространств взаимодействия проектируемой системы:

Для данной системы используется программная среда Microsoft Visual Studio 2005.

Так же реализация данной системы имеет дружественный интерфейс.

Моделирование абстрактного содержимого интерфейса

5. Описание пользования программным средством

При запуске программы запускается окно (рис 6)

Необходимо выбрать дисциплину, сразу появиться сохраненный обмен информации (рис 7)

Текст вводиться в нижнее окно. Для того чтобы все увидели сообщение нужно нажать клавишу отправить. (рис 8)

Для того чтобы зайти в меню администратора необходимо нажать «Ctrl+A». Если у вас есть доступ к исправлению информации, вы должны знать пароль. (рис 9)


В режиме администратора можно редактировать и удалять информацию.

6. Тестирование программного средства

Было проведено системное тестирование созданного программного средства.

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

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

7. Заключение

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

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

Приложение А

Форма1

public class Form1 : System.Windows.Forms.Form

{

private System.Windows.Forms.ComboBox comboBox1;

private System.Windows.Forms.Label label1;

private System.Windows.Forms.TextBox textBox1;

private System.Windows.Forms.TextBox textBox2;

private System.Windows.Forms.Button button1;

private System.Windows.Forms.MainMenu mainMenu1;

private System.Windows.Forms.MenuItem menuItem1;

/// <summary>

/// Required designer variable.

/// </summary>

private System.ComponentModel.Container components = null;

public Form1()

{

//

// Required for Windows Form Designer support

//

InitializeComponent();

//

// TODO: Add any constructor code after InitializeComponent call

//

}

/// <summary>

/// Clean up any resources being used.

/// </summary>

protected override void Dispose( bool disposing )

{

if( disposing )

{

if (components != null)

{

components.Dispose();

}

}

base.Dispose( disposing );

}

#region Windows Form Designer generated code

/// <summary>

/// Required method for Designer support - do not modify

/// the contents of this method with the code editor.

/// </summary>

private void InitializeComponent()

{

System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Form1));

this.comboBox1 = new System.Windows.Forms.ComboBox();

this.label1 = new System.Windows.Forms.Label();

this.textBox1 = new System.Windows.Forms.TextBox();

this.textBox2 = new System.Windows.Forms.TextBox();

this.button1 = new System.Windows.Forms.Button();

this.mainMenu1 = new System.Windows.Forms.MainMenu();

this.menuItem1 = new System.Windows.Forms.MenuItem();

this.SuspendLayout();

// comboBox1

this.comboBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)

| System.Windows.Forms.AnchorStyles.Right)));

this.comboBox1.Location = new System.Drawing.Point(120, 16);

this.comboBox1.Name = "comboBox1";

this.comboBox1.Size = new System.Drawing.Size(312, 24);

this.comboBox1.TabIndex = 0;

this.comboBox1.Text = "Выберите...";

this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);

// label1

this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(204)));

this.label1.Location = new System.Drawing.Point(8, 16);

this.label1.Name = "label1";

this.label1.Size = new System.Drawing.Size(128, 24);

this.label1.TabIndex = 1;

this.label1.Text = "Дисциплина:";

// textBox1

this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)

| System.Windows.Forms.AnchorStyles.Left)

| System.Windows.Forms.AnchorStyles.Right)));

this.textBox1.BackColor = System.Drawing.Color.White;

this.textBox1.Location = new System.Drawing.Point(8, 48);

this.textBox1.Multiline = true;

this.textBox1.Name = "textBox1";

this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;

this.textBox1.Size = new System.Drawing.Size(424, 219);

this.textBox1.TabIndex = 2;

this.textBox1.Text = "";

this.textBox1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.textBox1_KeyDown);

this.textBox1.KeyUp += new System.Windows.Forms.KeyEventHandler(this.textBox1_KeyUp);

// textBox2

this.textBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)

| System.Windows.Forms.AnchorStyles.Right)));

this.textBox2.BackColor = System.Drawing.Color.White;

this.textBox2.Location = new System.Drawing.Point(8, 275);

this.textBox2.Multiline = true;

this.textBox2.Name = "textBox2";

this.textBox2.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;

this.textBox2.Size = new System.Drawing.Size(328, 56);

this.textBox2.TabIndex = 2;

this.textBox2.Text = "";

// button1

this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));

this.button1.Location = new System.Drawing.Point(344, 283);

this.button1.Name = "button1";

this.button1.Size = new System.Drawing.Size(88, 24);

this.button1.TabIndex = 3;

this.button1.Text = "Отправить";

this.button1.Click += new System.EventHandler(this.button1_Click);

// mainMenu1

this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {

this.menuItem1});

// menuItem1

this.menuItem1.Index = 0;

this.menuItem1.Shortcut = System.Windows.Forms.Shortcut.CtrlA;

this.menuItem1.Text = "Админ";

this.menuItem1.Visible = false;

this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);

// Form1

this.AutoScaleBaseSize = new System.Drawing.Size(6, 15);

this.ClientSize = new System.Drawing.Size(440, 337);

this.Controls.Add(this.button1);

this.Controls.Add(this.textBox1);

this.Controls.Add(this.comboBox1);

this.Controls.Add(this.label1);

this.Controls.Add(this.textBox2);

this.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(204)));

this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));

this.Menu = this.mainMenu1;

this.Name = "Form1";

this.Text = "Форум";

this.Load += new System.EventHandler(this.Form1_Load);

this.ResumeLayout(false);

}

#endregion

/// <summary>

/// The main entry point for the application.

/// </summary>

[STAThread]

static void Main()

{

Application.Run(new Form1());

}

DataSet dis,

forum,

usery;

int nom=-1;

int ntb=0;

string []s=new string[32000];

private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)

{

textBox1.ReadOnly=true;

}

private void textBox1_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)

{

textBox1.ReadOnly=false;

}

private void menuItem1_Click(object sender, System.EventArgs e)

{

Form2 f2=new Form2();

f2.ShowDialog();

f2.Dispose();

textBox1.Text="";

textBox2.Text="";

comboBox1.Text="Выберите...";

textBox2.Focus();

}

private void Form1_Load(object sender, System.EventArgs e)

{

dis=new DataSet();

string DBConnectionString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb";

System.Data.OleDb.OleDbConnection aCon=new System.Data.OleDb.OleDbConnection(DBConnectionString);

System.Data.OleDb.OleDbCommand команда=new System.Data.OleDb.OleDbCommand("",aCon);

System.Data.OleDb.OleDbDataAdapter adapter=new System.Data.OleDb.OleDbDataAdapter(команда);

aCon.Open();

команда.CommandText="SELECT * FROM dis";

adapter.SelectCommand=команда;

adapter.Fill(dis,"dis");

aCon.Close();

comboBox1.Items.Clear();

for(int i=0;i<dis.Tables[0].Rows.Count;i++)

{

comboBox1.Items.Add(dis.Tables[0].Rows[i]["disciplina"].ToString());

}

}

private void comboBox1_SelectedIndexChanged(object sender, System.EventArgs e)

{

ntb=0;

dis=new DataSet();

string DBConnectionString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb";

System.Data.OleDb.OleDbConnection aCon=new System.Data.OleDb.OleDbConnection(DBConnectionString);

System.Data.OleDb.OleDbCommand команда=new System.Data.OleDb.OleDbCommand("",aCon);

System.Data.OleDb.OleDbDataAdapter adapter=new System.Data.OleDb.OleDbDataAdapter(команда);

aCon.Open();

команда.CommandText="SELECT * FROM dis";

adapter.SelectCommand=команда;

adapter.Fill(dis,"dis");

aCon.Close();

for(int i=0;i<dis.Tables[0].Rows.Count;i++)

{

if(comboBox1.Items[comboBox1.SelectedIndex].ToString()==dis.Tables[0].Rows[i]["disciplina"].ToString())

{

nom=Convert.ToInt32(dis.Tables[0].Rows[i]["id"].ToString());

}

}

forum=new DataSet();

aCon.Open();

команда.CommandText="SELECT * FROM forum";

adapter.SelectCommand=команда;

adapter.Fill(forum,"forum");

aCon.Close();

usery=new DataSet();

aCon.Open();

команда.CommandText="SELECT * FROM usery";

adapter.SelectCommand=команда;

adapter.Fill(usery,"usery");

aCon.Close();

s=new string[32000];

for(int i=0;i<forum.Tables[0].Rows.Count;i++)

{

if(nom==Convert.ToInt32(forum.Tables[0].Rows[i]["id_disciplina"].ToString()))

{

s[ntb]=forum.Tables[0].Rows[i]["textx"].ToString();

ntb++;

}

}

for(int i=0;i<usery.Tables[0].Rows.Count;i++)

{

if(nom==Convert.ToInt32(usery.Tables[0].Rows[i]["id_disciplina"].ToString()))

{

s[ntb]=usery.Tables[0].Rows[i]["textx"].ToString();

ntb++;

}

}

string []ss=new string[ntb];

for(int i=0;i<ntb;i++)

{

ss[i]=s[i];

}

textBox1.Lines=ss;

textBox2.Text="";

textBox1.Select(textBox1.Text.Length-1, 0);

textBox1.ScrollToCaret();

}

private void button1_Click(object sender, System.EventArgs e)

{

try

{

if(textBox2.Text!="" & nom!=-1)

{

ntb=0;

string DBConnectionString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb";

System.Data.OleDb.OleDbConnection aCon=new System.Data.OleDb.OleDbConnection(DBConnectionString);

System.Data.OleDb.OleDbCommand команда=new System.Data.OleDb.OleDbCommand("",aCon);

System.Data.OleDb.OleDbDataAdapter adapter=new System.Data.OleDb.OleDbDataAdapter(команда);

команда.CommandText="INSERT INTO usery (id_disciplina, textx) VALUES ("+""+nom.ToString()+", '"+textBox2.Text+"')";

aCon.Open();

команда.ExecuteNonQuery();

aCon.Close();

forum=new DataSet();

aCon.Open();

команда.CommandText="SELECT * FROM forum";

adapter.SelectCommand=команда;

adapter.Fill(forum,"forum");

aCon.Close();

usery=new DataSet();

aCon.Open();

команда.CommandText="SELECT * FROM usery";

adapter.SelectCommand=команда;

adapter.Fill(usery,"usery");

aCon.Close();

s=new string[32000];

for(int i=0;i<forum.Tables[0].Rows.Count;i++)

{

if(nom==Convert.ToInt32(forum.Tables[0].Rows[i]["id_disciplina"].ToString()))

{

s[ntb]=forum.Tables[0].Rows[i]["textx"].ToString();

ntb++;

}

}

for(int i=0;i<usery.Tables[0].Rows.Count;i++)

{

if(nom==Convert.ToInt32(usery.Tables[0].Rows[i]["id_disciplina"].ToString()))

{

s[ntb]=usery.Tables[0].Rows[i]["textx"].ToString();

ntb++;

}

}

string []ss=new string[ntb];

for(int i=0;i<ntb;i++)

{

ss[i]=s[i];

}

textBox1.Lines=ss;

textBox2.Text="";

textBox1.Select(textBox1.Text.Length-1, 0);

textBox1.ScrollToCaret();

textBox2.Focus();

}

}

catch(Exception err)

{

MessageBox.Show(err.Message);

}

}

}

}

Форма2

using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.Data;

namespace Форум

{

/// <summary>

/// Summary description for Form2.

/// </summary>

public class Form2 : System.Windows.Forms.Form

{

private System.Windows.Forms.Label label1;

private System.Windows.Forms.TextBox textBox1;

private System.Windows.Forms.Button button1;

/// <summary>

/// Required designer variable.

/// </summary>

private System.ComponentModel.Container components = null;

public Form2()

{

//

// Required for Windows Form Designer support

//

InitializeComponent();

//

// TODO: Add any constructor code after InitializeComponent call

//

}

/// <summary>

/// Clean up any resources being used.

/// </summary>

protected override void Dispose( bool disposing )

{

if( disposing )

{

if(components != null)

{

components.Dispose();

}

}

base.Dispose( disposing );

}

#region Windows Form Designer generated code

/// <summary>

/// Required method for Designer support - do not modify

/// the contents of this method with the code editor.

/// </summary>

private void InitializeComponent()

{

this.label1 = new System.Windows.Forms.Label();

this.textBox1 = new System.Windows.Forms.TextBox();

this.button1 = new System.Windows.Forms.Button();

this.SuspendLayout();

//

// label1

//

this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(204)));

this.label1.Location = new System.Drawing.Point(16, 16);

this.label1.Name = "label1";

this.label1.Size = new System.Drawing.Size(224, 24);

this.label1.TabIndex = 0;

this.label1.Text = "Введите пароль Администратора:";

//

// textBox1

//

this.textBox1.Location = new System.Drawing.Point(16, 40);

this.textBox1.Name = "textBox1";

this.textBox1.PasswordChar = '@';

this.textBox1.Size = new System.Drawing.Size(224, 20);

this.textBox1.TabIndex = 1;

this.textBox1.Text = "";

//

// button1

//

this.button1.Location = new System.Drawing.Point(80, 80);

this.button1.Name = "button1";

this.button1.Size = new System.Drawing.Size(88, 32);

this.button1.TabIndex = 2;

this.button1.Text = "Ок";

this.button1.Click += new System.EventHandler(this.button1_Click);

//

// Form2

//

this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);

this.ClientSize = new System.Drawing.Size(256, 126);

this.Controls.Add(this.button1);

this.Controls.Add(this.textBox1);

this.Controls.Add(this.label1);

this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;

this.MaximizeBox = false;

this.MinimizeBox = false;

this.Name = "Form2";

this.Text = "Введите парь";

this.ResumeLayout(false);

}

#endregion

private void button1_Click(object sender, System.EventArgs e)

{

DataSet pas=new DataSet();

string DBConnectionString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb";

System.Data.OleDb.OleDbConnection aCon=new System.Data.OleDb.OleDbConnection(DBConnectionString);

System.Data.OleDb.OleDbCommand команда=new System.Data.OleDb.OleDbCommand("",aCon);

System.Data.OleDb.OleDbDataAdapter adapter=new System.Data.OleDb.OleDbDataAdapter(команда);

aCon.Open();

команда.CommandText="SELECT * FROM pas";

adapter.SelectCommand=команда;

adapter.Fill(pas,"pas");

aCon.Close();

for(int i=0;i<pas.Tables[0].Rows.Count;i++)

{

if(textBox1.Text.ToString()==pas.Tables[0].Rows[i]["pas"].ToString())

{

this.Visible=false;

Form3 f3=new Form3();

f3.ShowDialog();

f3.Focus();

f3.Dispose();

Close();

}

else

{

textBox1.Text="";

MessageBox.Show("Вы не угадали пароль!","Ошибка");

}

}

}

}

}

Форма 3

using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.Data;

namespace Форум

{

/// <summary>

/// Summary description for Form3.

/// </summary>

public class Form3 : System.Windows.Forms.Form

{

private System.Windows.Forms.ListBox listBox1;

private System.Windows.Forms.TextBox textBox1;

private System.Windows.Forms.Button button1;

private System.Windows.Forms.Button button2;

private System.Windows.Forms.Button button3;

private System.Windows.Forms.Button button4;

private System.Windows.Forms.ComboBox comboBox1;

private System.Windows.Forms.Label label1;

/// <summary>

/// Required designer variable.

/// </summary>

private System.ComponentModel.Container components = null;

public Form3()

{

//

// Required for Windows Form Designer support

//

InitializeComponent();

//

// TODO: Add any constructor code after InitializeComponent call

//

}

/// <summary>

/// Clean up any resources being used.

/// </summary>

protected override void Dispose( bool disposing )

{

if( disposing )

{

if(components != null)

{

components.Dispose();

}

}

base.Dispose( disposing );

}

#region Windows Form Designer generated code

/// <summary>

/// Required method for Designer support - do not modify

/// the contents of this method with the code editor.

/// </summary>

private void InitializeComponent()

{

this.listBox1 = new System.Windows.Forms.ListBox();

this.textBox1 = new System.Windows.Forms.TextBox();

this.button1 = new System.Windows.Forms.Button();

this.button2 = new System.Windows.Forms.Button();

this.button3 = new System.Windows.Forms.Button();

this.button4 = new System.Windows.Forms.Button();

this.comboBox1 = new System.Windows.Forms.ComboBox();

this.label1 = new System.Windows.Forms.Label();

this.SuspendLayout();

//

// listBox1

//

this.listBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)

| System.Windows.Forms.AnchorStyles.Right)));

this.listBox1.Location = new System.Drawing.Point(8, 40);

this.listBox1.Name = "listBox1";

this.listBox1.ScrollAlwaysVisible = true;

this.listBox1.Size = new System.Drawing.Size(384, 95);

this.listBox1.TabIndex = 0;

this.listBox1.SelectedIndexChanged += new System.EventHandler(this.listBox1_SelectedIndexChanged);

//

// textBox1

//

this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)

| System.Windows.Forms.AnchorStyles.Left)

| System.Windows.Forms.AnchorStyles.Right)));

this.textBox1.Location = new System.Drawing.Point(8, 144);

this.textBox1.Multiline = true;

this.textBox1.Name = "textBox1";

this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Both;

this.textBox1.Size = new System.Drawing.Size(280, 160);

this.textBox1.TabIndex = 1;

this.textBox1.Text = "";

this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged);

//

// button1

//

this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));

this.button1.Location = new System.Drawing.Point(296, 266);

this.button1.Name = "button1";

this.button1.Size = new System.Drawing.Size(96, 32);

this.button1.TabIndex = 2;

this.button1.Text = "Закрыть";

this.button1.Click += new System.EventHandler(this.button1_Click);

//

// button2

//

this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));

this.button2.Enabled = false;

this.button2.Location = new System.Drawing.Point(296, 146);

this.button2.Name = "button2";

this.button2.Size = new System.Drawing.Size(96, 32);

this.button2.TabIndex = 3;

this.button2.Text = "Редактировать";

this.button2.Click += new System.EventHandler(this.button2_Click);

//

// button3

//

this.button3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));

this.button3.Enabled = false;

this.button3.Location = new System.Drawing.Point(296, 186);

this.button3.Name = "button3";

this.button3.Size = new System.Drawing.Size(96, 32);

this.button3.TabIndex = 3;

this.button3.Text = "Очистить";

this.button3.Click += new System.EventHandler(this.button3_Click);

//

// button4

//

this.button4.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));

this.button4.Enabled = false;

this.button4.Location = new System.Drawing.Point(296, 226);

this.button4.Name = "button4";

this.button4.Size = new System.Drawing.Size(96, 32);

this.button4.TabIndex = 3;

this.button4.Text = "Добавить";

this.button4.Click += new System.EventHandler(this.button4_Click);

//

// comboBox1

//

this.comboBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)

| System.Windows.Forms.AnchorStyles.Right)));

this.comboBox1.Location = new System.Drawing.Point(112, 8);

this.comboBox1.Name = "comboBox1";

this.comboBox1.Size = new System.Drawing.Size(280, 21);

this.comboBox1.TabIndex = 4;

this.comboBox1.Text = "Выберите...";

this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);

//

// label1

//

this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(204)));

this.label1.Location = new System.Drawing.Point(8, 8);

this.label1.Name = "label1";

this.label1.Size = new System.Drawing.Size(128, 24);

this.label1.TabIndex = 5;

this.label1.Text = "Дисциплина:";

//

// Form3

//

this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);

this.ClientSize = new System.Drawing.Size(400, 310);

this.Controls.Add(this.comboBox1);

this.Controls.Add(this.label1);

this.Controls.Add(this.button2);

this.Controls.Add(this.button1);

this.Controls.Add(this.textBox1);

this.Controls.Add(this.listBox1);

this.Controls.Add(this.button3);

this.Controls.Add(this.button4);

this.Name = "Form3";

this.Text = "Администратор";

this.Load += new System.EventHandler(this.Form3_Load);

this.ResumeLayout(false);

}

#endregion

DataSet usery;

DataSet dis;

string []cb=new string[32000];

string []lb=new string[32000];

private void button1_Click(object sender, System.EventArgs e)

{

this.Close();

}

private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e)

{

if(listBox1.SelectedIndex!=-1)

{

button2.Enabled=true;

}

else

{

button2.Enabled=false;

}

}

private void textBox1_TextChanged(object sender, System.EventArgs e)

{

if(textBox1.Text=="")

{

button3.Enabled=false;

button4.Enabled=false;

}

else

{

button3.Enabled=true;

button4.Enabled=true;

}

}

private void Form3_Load(object sender, System.EventArgs e)

{

dis=new DataSet();

string DBConnectionString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb";

System.Data.OleDb.OleDbConnection aCon=new System.Data.OleDb.OleDbConnection(DBConnectionString);

System.Data.OleDb.OleDbCommand команда=new System.Data.OleDb.OleDbCommand("",aCon);

System.Data.OleDb.OleDbDataAdapter adapter=new System.Data.OleDb.OleDbDataAdapter(команда);

aCon.Open();

команда.CommandText="SELECT * FROM dis";

adapter.SelectCommand=команда;

adapter.Fill(dis,"dis");

aCon.Close();

comboBox1.Items.Clear();

for(int i=0;i<dis.Tables[0].Rows.Count;i++)

{

comboBox1.Items.Add(dis.Tables[0].Rows[i]["disciplina"].ToString());

cb[i]=dis.Tables[0].Rows[i]["id"].ToString();

}

}

private void comboBox1_SelectedIndexChanged(object sender, System.EventArgs e)

{

try

{

usery=new DataSet();

string DBConnectionString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb";

System.Data.OleDb.OleDbConnection aCon=new System.Data.OleDb.OleDbConnection(DBConnectionString);

System.Data.OleDb.OleDbCommand команда=new System.Data.OleDb.OleDbCommand("",aCon);

System.Data.OleDb.OleDbDataAdapter adapter=new System.Data.OleDb.OleDbDataAdapter(команда);

aCon.Open();

команда.CommandText="SELECT * FROM usery";

adapter.SelectCommand=команда;

adapter.Fill(usery,"usery");

aCon.Close();

listBox1.Items.Clear();

int po=0;

for(int i=0;i<usery.Tables[0].Rows.Count;i++)

{

if(cb[comboBox1.SelectedIndex].ToString()==usery.Tables[0].Rows[i]["id_disciplina"].ToString())

{

listBox1.Items.Add(usery.Tables[0].Rows[i]["textx"].ToString());

lb[po]=usery.Tables[0].Rows[i]["id"].ToString();

po++;

}

}

}

catch(Exception err)

{

MessageBox.Show(err.Message);

}

}

private void button2_Click(object sender, System.EventArgs e)

{

try

{

textBox1.Text=listBox1.Items[listBox1.SelectedIndex].ToString();

string DBConnectionString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb";

System.Data.OleDb.OleDbConnection aCon=new System.Data.OleDb.OleDbConnection(DBConnectionString);

System.Data.OleDb.OleDbCommand команда=new System.Data.OleDb.OleDbCommand("",aCon);

System.Data.OleDb.OleDbDataAdapter adapter=new System.Data.OleDb.OleDbDataAdapter(команда);

aCon.Open();

команда.CommandText="DELETE FROM usery WHERE id="+lb[listBox1.SelectedIndex];

команда.ExecuteNonQuery();

aCon.Close();

aCon.Open();

usery =new DataSet();

команда.CommandText="SELECT * FROM usery";

adapter.SelectCommand=команда;

adapter.Fill(usery,"usery");

aCon.Close();

listBox1.Items.Clear();

int po=0;

for(int i=0;i<usery.Tables[0].Rows.Count;i++)

{

if(cb[comboBox1.SelectedIndex].ToString()==usery.Tables[0].Rows[i]["id_disciplina"].ToString())

{

listBox1.Items.Add(usery.Tables[0].Rows[i]["textx"].ToString());

lb[po]=usery.Tables[0].Rows[i]["id"].ToString();

po++;

}

}

}

catch(Exception err)

{

MessageBox.Show(err.Message);

}

}

private void button3_Click(object sender, System.EventArgs e)

{

textBox1.Text="";

}

private void button4_Click(object sender, System.EventArgs e)

{

string DBConnectionString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb";

System.Data.OleDb.OleDbConnection aCon=new System.Data.OleDb.OleDbConnection(DBConnectionString);

System.Data.OleDb.OleDbCommand команда=new System.Data.OleDb.OleDbCommand("",aCon);

System.Data.OleDb.OleDbDataAdapter adapter=new System.Data.OleDb.OleDbDataAdapter(команда);

команда.CommandText="INSERT INTO forum (id_disciplina, textx) VALUES ("+""+cb[comboBox1.SelectedIndex]+", '"+textBox1.Text+"')";

aCon.Open();

команда.ExecuteNonQuery();

aCon.Close();

textBox1.Text="";

}

}

}

1. Размещено на www.allbest.ru


Подобные документы

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

    курсовая работа [2,3 M], добавлен 28.08.2012

  • Анализ предметной области. Основание, назначение для разработки, требования к программному средству. Выбор подхода и модели разработки ПС. Анализ требований, разработка и определение вариантов спецификаций. Описание объектов, свойств и методов.

    курсовая работа [510,3 K], добавлен 23.02.2011

  • Анализ предметной области "Конкурс поэтов" на основе объектно-ориентированного подхода. Разработка оконного приложения и описание информационной модели предметной области. Описание разработанных процедур С++ и результатов тестирования приложения.

    курсовая работа [355,9 K], добавлен 18.06.2013

  • Проектирование программного модуля: сбор исходных материалов; описание входных и выходных данных; выбор программного обеспечения. Описание типов данных и реализация интерфейса программы. Тестирование программного модуля и разработка справочной системы.

    курсовая работа [81,7 K], добавлен 18.08.2014

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

    курсовая работа [601,1 K], добавлен 25.01.2013

  • Анализ предметной области. Диаграмма классов. Проектирование программного продукта "Часы". Тестирование и отладка, руководство программиста. Описание работы приложения. Руководство оператора, модель жизненного цикла. Файл Times.cs, Arrow.cs, Form1.cs.

    курсовая работа [1,7 M], добавлен 20.04.2015

  • Формирование требований к системе учета успеваемости студентов на основе рейтинговой системы. Концептуальное и логическое проектирование структуры информационного обеспечения. Реализация информационного обеспечения и тестирование программного средства.

    курсовая работа [3,1 M], добавлен 28.08.2012

  • Системы дистанционного образования. Структура, требования к электронному практикуму. Функционально-ориентированное и объектно-ориентированное проектирование. Интерфейс системы, тестирование надежности программного средства, руководство пользователя.

    дипломная работа [1,3 M], добавлен 19.01.2017

  • Описание предметной области "Спортивные соревнования". Проектирование концептуальной и логической модели данных. Добавление не вошедших в ER–диаграмму атрибутов. Разработка SQL запросов к базе данных. Описание работы, тестирование клиентского приложения.

    курсовая работа [1,1 M], добавлен 24.11.2014

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

    курсовая работа [953,3 K], добавлен 01.09.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.