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

3.1 Этапы проектирования баз данных


Этапы проектирования и создания базы данных определяются следующей последовательностью:

- построение информационно-логической модели данных пред­метной области;

- определение логической структуры реляционной базы данных;

- конструирование таблиц базы данных;

- создание схемы данных;

- ввод данных в таблицы (создание записей);

- разработка необходимых форм, запросов, макросов, модулей, отчетов;

- разработка пользовательского интерфейса.

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

При разработке модели данных могут использоваться два подхода. В первом подходе сначала определяются основные задачи, для решения которых строится база, выявляются потребности задач в данных и соответственно определяются состав и структура информационных объектов. При втором подходе сразу устанавливаются типовые объекты предметной области. Наиболее рационально сочетание обоих подходов. Это связано с тем, что на начальном этапе, как правило, нет исчерпывающих сведений обо всех задачах. Использование такой технологии тем более оправдано, что гибкие средства создания реляционных баз данных позволяют на любом этапе разработки внести изменения в базу данных и модифицировать ее структуру без ущерба для введенных ранее данных.[2]

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

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

Рассмотрим формальные правила, которые могут быть использованы для выделения информационных объектов:

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

-определить функциональные зависимости между атрибутами;

- выбрать все зависимые атрибуты и указать для каждого все его ключевые атрибуты, т. е. те, от которых он зависит;

- сгруппировать атрибуты, одинаково зависимые от ключевых атрибутов. Полученные группы зависимых атрибутов вместе с их ключевыми атрибутами образуют информационные объекты[2].

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

В процессе создания сначала конструируются таблицы базы данных, соответствующие информационным объектам построенной модели данных. Далее может создаваться схема данных, в которой фиксируются существующие логические связи между таблицами. Эти связи соответствуют связям информационных объектов. В схеме данных могут быть заданы параметры поддержания целостности базы данных, если модель данных была разработана в соответствии с требованиями нормализации. Целостность данных означает, что в БД установлены и корректно поддерживаются взаимосвязи между записями разных таблиц при загрузке, добавлении и удалении записей в связанных таблицах, а также при изменении значений ключевых полей.[2]

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

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

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

4 ЭТАПЫ РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА


Данная программа создана для учета успеваемости студентов.

Для работы с программой необходимо нужные группы или списки студентов копировать из имеющегося списка, в электронную таблицу «spisok.xls». Списки копируются однажды, после чего могут удаляться напрямую из базы данных «poseshaemost.mdb». После копирования списков или групп необходимо принять данные с помощью кнопки «Сервис - принять данные», в появившемся окне нажать кнопку «Принять данные». Для ввода специальности для выбранной группы нажать на кнопку «справочники- специальности», в появившемся окне ввести группу и код специальности, списки копируются однажды, после чего могут удаляться напрямую из базы данных «poseshaemost.mdb». Для добавления дисциплины для этой группы необходимо нажать на кнопку «справочники- дисциплины», в появившемся окне ввести дисциплины. Дисциплины копируются однажды, после чего могут удаляться напрямую из базы данных «poseshaemost.mdb».

Для ввода оценок нужно нажать на кнопку «Данные – Разноска», где выбирается месяц и год обучения, а также дисциплина, специальность и группа. После ввода данных в эти строки следует «Добавить данные по дисциплине», на экране выведется группа, фамилия имя и отчество студентов, а также пустая графа оценок по выбранной дисциплине, которую необходимо заполнить. Корректировка данных производиться при помощи команды «Данные - корректировка», где корректируются месяц и год обучения, а также дисциплина, специальность и группа. В графе отчеты можно подвести итоги по успеванию и качеству знаний по БПЭК. Подвести итоги можно как по группе, так и по специальности и по колледжу в целом за определенный месяц и год обучения. После нажатия кнопки «Вычислить». Выведется успеваемость и качество. Также в графе подведение итогов можно посмотреть списки студентов неуспевающих (у которых есть хотя бы одна оценка «2»), а также успевающих на отлично (средний бал успеваемости которых «5»). После нажатия кнопки «Вывести», выведется список в электронной таблице Excel, неуспевающих студентов, либо успевающих на отлично. В графе «Отчет» за введенный месяц после нажатия кнопки «Пересчитать итоги» и «Отчет» выведется группа, месяц и год, а также количество студентов и процентное соотношение успеваемости общей и качество в электронной таблице Excel.


unit Unit12;

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, Menus, DB, ADODB;

type

 TForm12 = class(TForm)

 MainMenu1: TMainMenu;

 N1: TMenuItem;

 N2: TMenuItem;

 N3: TMenuItem;

 N4: TMenuItem;

 N8: TMenuItem;

 N9: TMenuItem;

 ADOConnection1: TADOConnection;

 N10: TMenuItem;

 N11: TMenuItem;

 N12: TMenuItem;

 procedure N9Click(Sender: TObject);

 procedure N11Click(Sender: TObject);

 procedure N12Click(Sender: TObject);

 procedure FormCreate(Sender: TObject);

 procedure N2Click(Sender: TObject);

 procedure N3Click(Sender: TObject);

 procedure N4Click(Sender: TObject);

 private

 { Private declarations }

 public

 { Public declarations }

 end;

var

 Form12: TForm12;

implementation

uses Unit13, Unit15, Unit14, Unit16, Unit17, Unit18;

{$R *.dfm}

procedure TForm12.N9Click(Sender: TObject);

begin

 Form13.Show;

end;

procedure TForm12.N11Click(Sender: TObject);

begin

Form15.Show;

end;

procedure TForm12.N12Click(Sender: TObject);

begin

Form14.Show;

end;

procedure TForm12.FormCreate(Sender: TObject);

begin

//Form16.Show;

end;

procedure TForm12.N2Click(Sender: TObject);

begin

Form16.Show;

end;

procedure TForm12.N3Click(Sender: TObject);

begin

Form17.show;

end;

procedure TForm12.N4Click(Sender: TObject);

begin

Form18.show;

end;

end.


unit Unit13;

interfa

ceuses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,Unit12, Forms,

 Dialogs, ExcelXP, OleServer, Grids, DBGrids, StdCtrls, DB, ADODB;

type

 TForm13 = class(TForm)

 Label1: TLabel;

 DBGrid1: TDBGrid;

 ExcelWorkbook1: TExcelWorkbook;

 ExcelApplication1: TExcelApplication;

 ADOQuery1: TADOQuery;

 DataSource1: TDataSource;

 Button1: TButton;

 ADOQuery2: TADOQuery;

 ADOQuery1gruppa: TWideStringField;

 ADOQuery1fio: TWideStringField;

 ADOQuery1Datapr: TWideStringField;

 ADOQuery1Prim: TWideStringField;

 procedure Button1Click(Sender: TObject);

 private

 { Private declarations }

 public

 { Public declarations }

 end;

var

 Form13: TForm13;

implementation

{$R *.dfm}

procedure TForm13.Button1Click(Sender: TObject);

var n: OleVariant;

i:integer;

//S:String;

begin

ADOQuery2.ExecSQL;

AdoQuery1.Open;

n:='d:\55\spisok.xls';

ExcelApplication1.Workbooks.Add(n,0);

Excelworkbook1.ConnectTo(ExcelApplication1.ActiveWorkbook);

i:=2;

ADOQUERY1.Insert;

ExcelApplication1.Visible[0]:=False;

While i<2000 do

begin;

ADOQuery1.FieldByName('gruppa').AsString:=ExcelApplication1.Cells.Item[i,1].Value;

ADOQuery1.FieldByName('Fio').AsString:=ExcelApplication1.Cells.Item[i,2].Value;

ADOQuery1.FieldByName('Datapr').AsString:=ExcelApplication1.Cells.Item[i,3].Value;

ADOQuery1.FieldByName('Prim').AsString:=ExcelApplication1.Cells.Item[i,4].Value;

 If ADOQuery1.FieldByName('gruppa').AsString='' then

 begin

 ADOQUERY1.Delete;

 i:=2001;

 end;

ADOQUERY1.Insert;

i:=i+1;

 end;

ADOQuery1.Open;

Showmessage('Прием данных выполнен');

end;

end.


unit Unit14;

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics,Unit12, Controls, Forms,

 Dialogs, DB, ADODB, ExtCtrls, DBCtrls, Grids, DBGrids;

type

 TForm14 = class(TForm)

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.