Создание системы мониторинга уровня знаний

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 28.01.2014
Размер файла 1,3 M

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

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

SELECT LQ.ID_QUERY, LQ.ID_TEST, LQ.NUM, 'Вопрос № '|| INTTOSTR(LQ.NUM, '%d')

FROM L_QUERY LQ

WHERE LQ.ID_TEST = :IN_ID_TEST

INTO :OUT_ID_QUESTION, :OUT_ID_TEST, :OUT_NUM, :OUT_QUESTION_DESCRIPTION

DO SUSPEND;

END^

ALTER PROCEDURE REP_GET_VARIANT (

IN_QUESTION_NUMBER INTEGER)

RETURNS (

OUT_ID_ANSWER INTEGER,

OUT_IS_CORRECT INTEGER,

OUT_TEXT VARCHAR(128),

OUT_SCORE DOUBLE PRECISION,

OUT_NUMBER INTEGER,

OUT_AUERY_TEXT VARCHAR(512))

AS

BEGIN

/*Получаем список вариантов ответа по вопросу*/

SELECT TEXT

FROM L_QUERY

WHERE ID_QUERY = :IN_QUESTION_NUMBER

INTO :OUT_AUERY_TEXT;

out_number = 0;

FOR

SELECT la.ID_ANSWER, la.IS_CORRECT, la.TEXT, la.SCORE

FROM L_ANSWER la

WHERE la.ID_QUERY = :IN_QUESTION_NUMBER

ORDER BY ID_ANSWER

INTO :OUt_ID_ANSWER, :OUT_IS_CORRECT, :OUT_TEXT, :OUT_SCORE

DO BEGIN

OUT_NUMBER = OUT_NUMBER +1;

SUSPEND;

END

END^

ALTER PROCEDURE W_ADD_QUERY (

IN_ID_TEST INTEGER)

RETURNS (

OUT_ID_QUERY INTEGER)

AS

DECLARE VARIABLE V_NUM INTEGER;

BEGIN

/*ДОБАВЛЯЕМ ЗАПИСЬ В СПИСОК ВОПРОСОВ ТЕСТА*/

SELECT MAX(Q.NUM)+1

FROM L_QUERY Q

WHERE Q.ID_TEST = :IN_ID_TEST

INTO :V_NUM;

SELECT GEN_ID(G_ID_QUERY_TYPE,1)

FROM RDB$DATABASE

INTO :OUT_ID_QUERY;

INSERT INTO L_QUERY (ID_QUERY, ID_TEST, NUM)

VALUES (:OUT_ID_QUERY, :IN_ID_TEST, :V_NUM);

SUSPEND;

END^

ALTER PROCEDURE W_SAVE_QUERY (

IN_ID_QUERY INTEGER,

IN_QUERY_TEXT VARCHAR(512),

IN_TEXT_1 VARCHAR(128),

IN_TEXT_2 VARCHAR(128),

IN_TEXT_3 VARCHAR(128),

IN_TEXT_4 VARCHAR(128),

IN_TEXT_5 VARCHAR(128),

IN_CORRECT_1 VARCHAR(5),

IN_CORRECT_2 VARCHAR(5),

IN_CORRECT_3 VARCHAR(5),

IN_CORRECT_4 VARCHAR(5),

IN_CORRECT_5 VARCHAR(5),

IN_SCORE_1 DOUBLE PRECISION,

IN_SCORE_2 DOUBLE PRECISION,

IN_SCORE_3 DOUBLE PRECISION,

IN_SCORE_4 DOUBLE PRECISION,

IN_SCORE_5 DOUBLE PRECISION)

RETURNS (

OUT_SUCCESS INTEGER,

OUT_MESSAGE VARCHAR(128))

AS

DECLARE VARIABLE V_ID_ANSWER INTEGER;

DECLARE VARIABLE V_CORRECT INTEGER;

DECLARE VARIABLE v_num INTEGER;

BEGIN

/*Процедура сохраняет данные с формы*/

OUT_MESSAGE = 'Вопрос сохранен.';

/*запишем параметры вопроса*/

FOR

SELECT ID_ANSWER, NUM

FROM L_ANSWER

WHERE ID_QUERY = :IN_ID_QUERY

ORDER BY NUM

INTO :V_ID_ANSWER, :V_NUM

DO BEGIN

/*---------------------------------------------------------------------------*/

IF (V_NUM = 1 ) THEN

BEGIN

IF (IN_TEXT_1 = '') THEN

DELETE FROM L_ANSWER

WHERE ID_ANSWER =:V_ID_ANSWER;

ELSE

BEGIN

IF (IN_CORRECT_1= 'on')

THEN V_CORRECT = 1;

ELSE V_CORRECT = 0;

UPDATE L_ANSWER

SET TEXT = :IN_TEXT_1,

IS_CORRECT = :V_CORRECT,

SCORE = :IN_SCORE_1

WHERE ID_ANSWER =:V_ID_ANSWER;

END

END

/*---------------------------------------------------------------------------*/

IF (V_NUM = 2 ) THEN

BEGIN

IF (IN_TEXT_2 = '') THEN

DELETE FROM L_ANSWER

WHERE ID_ANSWER =:V_ID_ANSWER;

ELSE

BEGIN

IF (IN_CORRECT_2= 'on')

THEN V_CORRECT = 1;

ELSE V_CORRECT = 0;

UPDATE L_ANSWER

SET TEXT = :IN_TEXT_2,

IS_CORRECT = :V_CORRECT,

SCORE = :IN_SCORE_2

WHERE ID_ANSWER =:V_ID_ANSWER;

END

END

/*---------------------------------------------------------------------------*/

IF (V_NUM = 3 ) THEN

BEGIN

IF (IN_TEXT_3 = '') THEN

DELETE FROM L_ANSWER

WHERE ID_ANSWER =:V_ID_ANSWER;

ELSE

BEGIN

IF (IN_CORRECT_3= 'on')

THEN V_CORRECT = 1;

ELSE V_CORRECT = 0;

UPDATE L_ANSWER

SET TEXT = :IN_TEXT_3,

IS_CORRECT = :V_CORRECT,

SCORE = :IN_SCORE_3

WHERE ID_ANSWER =:V_ID_ANSWER;

END

END

/*---------------------------------------------------------------------------*/

IF (V_NUM = 4 ) THEN

BEGIN

IF (IN_TEXT_4 = '') THEN

DELETE FROM L_ANSWER

WHERE ID_ANSWER =:V_ID_ANSWER;

ELSE

BEGIN

IF (IN_CORRECT_4= 'on')

THEN V_CORRECT = 1;

ELSE V_CORRECT = 0;

UPDATE L_ANSWER

SET TEXT = :IN_TEXT_4,

IS_CORRECT = :V_CORRECT,

SCORE = :IN_SCORE_4

WHERE ID_ANSWER =:V_ID_ANSWER;

END

END

/*---------------------------------------------------------------------------*/

IF (V_NUM = 5 ) THEN

BEGIN

IF (IN_TEXT_5 = '') THEN

DELETE FROM L_ANSWER

WHERE ID_ANSWER =:V_ID_ANSWER;

ELSE

BEGIN

IF (IN_CORRECT_5= 'on')

THEN V_CORRECT = 1;

ELSE V_CORRECT = 0;

UPDATE L_ANSWER

SET TEXT = :IN_TEXT_5,

IS_CORRECT = :V_CORRECT,

SCORE = :IN_SCORE_5

WHERE ID_ANSWER =:V_ID_ANSWER;

END

END

/*---------------------------------------------------------------------------*/

END

/*сохраним текст вопроса*/

IF (C(IN_QUERY_TEXT)='') THEN

BEGIN

DELETE FROM L_QUERY

WHERE ID_QUERY = :IN_ID_QUERY;

DELETE FROM L_ANSWER

WHERE ID_QUERY = :IN_ID_QUERY;

OUT_MESSAGE = 'Вопрос удален.';

END

ELSE

UPDATE L_QUERY

SET TEXT = :IN_QUERY_TEXT

WHERE ID_QUERY = :IN_ID_QUERY;

/*исправим нумерацию если её сбили*/

V_NUM = 1;

FOR

SELECT ID_ANSWER

FROM L_ANSWER

WHERE ID_QUERY = :IN_ID_QUERY

ORDER BY NUM

INTO :V_ID_ANSWER

DO BEGIN

UPDATE L_ANSWER

SET NUM = :V_NUM

WHERE ID_ANSWER = :V_ID_ANSWER;

V_NUM = V_NUM + 1;

END

OUT_SUCCESS = 1;

SUSPEND;

END^

SET TERM; ^

## Script (Python) "Action_create"

##bind container=container

##bind context=context

##bind namespace=

##bind script=script

##bind subpath=traverse_subpath

##parameters=

##title=

##

request = container.REQUEST

RESPONSE = request.RESPONSE

""" Здесь мы сохраняем параматры """

if ( request.get('save')):

id_test = request.get('id_test')

id_query = request.get('id_quest')

var1 = request.get('q1','')

var2 = request.get('q2','')

var3 = request.get('q3','')

var4 = request.get('q4','')

var5 = request.get('q5','')

score1 = request.get('s1','')

score2 = request.get('s2','')

score3 = request.get('s3','')

score4 = request.get('s4','')

score5 = request.get('s5','')

correct1 = request.get('c1','')

correct2 = request.get('c2','')

correct3 = request.get('c3','')

correct4 = request.get('c4','')

correct5 = request.get('c5','')

sav = container.save_query(id_query = id_query, query_text = request.get('quest_name','') , t1=var1, t2=var2, t3=var3, t4 = var5, t5=var5, cor1=correct1, cor2=correct2, cor3 = correct3, cor4 = correct4, cor5 = correct5, score1 = score1, score2 = score2, score3 = score3, score4=score4 , score5= score5)

return RESPONSE.redirect('create?id_session=%s&id_test=%s&id_quest=%s' %(request.get('id_session','' ), request.get('id_test',''), request.get('id_quest','') ))

""" Добавляем новыйй незаполненный вариант """

if ( request.get('add')):

container.ADD_VARIANT(id_quest=(request.get('id_quest','')))

return RESPONSE.redirect('create?id_session=%s&id_test=%s&id_quest=%s' %(request.get('id_session','' ), request.get('id_test',''), request.get('id_quest','') ))

""" Добавляем новый вопрос пока без вариантов """

if ( request.get('new')):

add_query = container.ADD_QUERY(id_test=request.get('id_test',''))

return RESPONSE.redirect('create?id_session=%s&id_test=%s&id_quest=%s' %(request.get('id_session','' ), request.get('id_test',''), add_query[0].OUT_ID_QUERY ))

ADD_QUERY

<params>id_test</params>

select * from W_ADD_QUERY(<dtml-sqlvar id_test type="int">)

ADD_VARIANT

<params>id_quest</params>

SELECT * from ADD_VARIANT (

<dtml-sqlvar id_quest type="int" optional >,

null,

0,

0)

create

<html>

<head>

<title>

The title

</title>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

</head>

<body bgcolor=#faeedd >

<table width=95% align="center" border=1 style="background-color:#F0FFF0" >

<tr>

<td>

<p align="center" ><font size="6">Система мониторинга уровня знаний - "СМУЗ"</font> </p>

<form action="Action_create">

<input type="hidden" name="id_test" id="id_test" tal:attributes="value request/id_test">

<input type="hidden" name="id_quest" id="id_quest" tal:attributes="value request/id_quest|nothing">

<input type="hidden" name="id_questtype" id="id_questtype" tal:attributes="value request/id_questtype|nothing">

<table width=100%>

<tr>

<td width="20%" style="vertical-align: top;">

<DIV style="background:yellow " >

<B> ВОПРОСЫ </B><br>

<span tal:condition="python: request.get('id_test')"

tal:define="list python: container.REP_GET_QUESTION_LIST(id_test=request.get('id_test'))">

<span tal:repeat="item list">

<a tal:content="python: str(item.OUT_QUESTION_DESCRIPTION)"

tal:attributes="href python: 'create?id_quest='+ str(item.OUT_ID_QUESTION) +'&id_test=' + str(item.OUT_ID_TEST) ">

</a><br>

</span>

</span>

<br>

<input type="submit" name="new" value="Добавить вопрос"><br><br>

<!-- ТУТ БУДЕТ ШАБЛОН -->

</DIV>

</td>

<td width="80%" style=" vertical-align: top;">

<DIV style="background:#FFF ">

<B> РЕДАКТОР ВОПРОСОВ</B>

<!-- И ТУТ ТОЖЕ --><BR><BR>

<span tal:repeat="item python: container.SQL_QUEST_TYPE()">

<input type="radio" name="type" tal:attributes="id item/ID_QUERY_TYPE"> <span tal:content="item/NAME" /> <br>

</span>

<hr><br >

Вопрос: <br>

<textarea id="quest_name" name="quest_name" tal:content="python: container.SQL_QUERY_TEXT(id_quest= request.get('id_quest',''))[0].TEXT" >

</textarea> <br>

<span tal:repeat="item python: container.REP_GET_VARIANT(id_quest= request.get('id_quest',''))">

<input type="text" tal:attributes="id python: 'q' + str(item.out_number) ;name python: 'q' + str(item.out_number); value python: item.OUT_TEXT">

<input type="text" size=4 tal:attributes="id python: 's' + str(item.out_number) ;name python: 's' + str(item.out_number); value python: item.OUT_SCORE" >

<input type="checkbox" tal:attributes="id python: 'c' + str(item.out_number) ;name python: 'c' + str(item.out_number); checked python: item.OUT_IS_CORRECT">

<br>

</span>

<input type="submit" name="add" value="+"><br><br>

<input type="submit" name="save" value="Сохранить">

</DIV>

</td></tr>

</table>

<br>

</form>

</td>

</tr>

</table>

</body>

</html>

REP_GET_QUESTION_LIST

<params>id_test</params>

select *

from REP_GET_QUESTION_LIST(<dtml-sqlvar id_test type="int"optional >)

REP_GET_VARIANT

<params>id_quest</params>

select * from REP_GET_VARIANT (<dtml-sqlvar id_quest type="int" optional >)

SAVE_QUERY

<params>id_query query_text t1 t2 t3 t4 t5 cor1 cor2 cor3 cor4 cor5 score1 score2 score3 score4 score5</params>

select * from W_SAVE_QUERY

( <dtml-sqlvar id_query type="int" >,

<dtml-sqlvar query_text type="string" optional >,

<dtml-sqlvar t1 type="string" optional >,

<dtml-sqlvar t2 type="string" optional >,

<dtml-sqlvar t3 type="string" optional >,

<dtml-sqlvar t4 type="string" optional >,

<dtml-sqlvar t5 type="string" optional >,

<dtml-sqlvar cor1 type="string" optional >,

<dtml-sqlvar cor2 type="string" optional >,

<dtml-sqlvar cor3 type="string" optional >,

<dtml-sqlvar cor4 type="string" optional >,

<dtml-sqlvar cor5 type="string" optional >,

<dtml-sqlvar score1 type="float" optional >,

<dtml-sqlvar score2 type="float" optional >,

<dtml-sqlvar score3 type="float" optional >,

<dtml-sqlvar score4 type="float" optional >,

<dtml-sqlvar score5 type="float" optional >)

SQL_QUERY_TEXT

<params>id_quest</params>

select text from REP_GET_QUERY_TEXT (<dtml-sqlvar id_quest type="int" optional >)

SQL_QUEST_TYPE

<params></params>

select * from s_QUery_TYPE

LOGIN

<html>

<head>

<title tal:content="template/title">

Добро пожаловать в СМУЗ

</title>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

</head>

<body bgcolor=#faeedd >

<form action="Login_action" >

<table align="center" border=0 style="background-color:#F0FFF0" >

<tr>

<td>

<br>

<p align="center" style="background-color:#white" >

<font size="7">

Система мониторинга уровня знаний

</font>

</p>

<br>

<span tal:condition="python: options.get('err', '')">

<p align="center" style="background-color:#FF0000"> <b> <font size=4 color=#FFFFFF > <span tal:content="python: options.get('err','')"/>

</font> </b> </p>

</span>

Login: <br>

<input type="text" id="login" name="login"> <br>

Password:<br>

<input type="password" id="passw" name="passw" ><br>

<pre> <input type="submit" value="Войти"></pre>

</td>

</tr>

<tr>

<td>

<a href="add_user">

Зарегистрироваться

</a >

</td>

</tr>

</table>

</form>

</body>

</html>

LOGIN_ACTION

## Script (Python) "Login_action"

##bind container=container

##bind context=context

##bind namespace=

##bind script=script

##bind subpath=traverse_subpath

##parameters=

##title=

##

request = container.REQUEST

RESPONSE = request.RESPONSE

login= request.get('login','')

password = request.get('passw','')

if (login==''):

return container.Login(err='Вы не ввели логин')

elif (password==''):

return container.Login(err='Вы не ввели пароль')

else:

log = container.P_LOGIN(login=login, password=password)[0]

if (log.OUT_SUCCESS=='1'):

return RESPONSE.redirect('Iface?id_session=%s' % (log.OUT_ID_SESSION))

else:

return container.Login(err = log.OUT_MESSAGE)

Парсер для Zexp файлов

#!/usr/bin/python

from cStringIO import StringIO

from pickle import Pickler, Unpickler

from struct import pack, unpack

class Dummy:

def __call__(self,*a,**b):

print '-->',self.__dict__['xmodule'], '>>call', a,b

self.__dict__['xmodule']=self.__dict__['xmodule']+(', instance(%s,%s)' % (a,b))

return self

def __setattr__(self,name,value):

print '-->',self.__dict__['xmodule'], 'setattr', name,value

def __getattr__(self,name):

print '-->',self.__dict__['xmodule'], 'getattr', name

def __repr__(self):

return self.__dict__['xmodule']

class Dummy2:

def __init__(self,*a,**b):

#print a,b

self.argmt=[a,b]

def __repr__(self):

return '<%s dict=%s>' % (self.__class__.__name__, self.__dict__)

class CustomUnpickler(Unpickler):

def find_class(self, module, name):

#print '>>find_class', module,name

clname=('%s.%s' % (module,name)).replace('.','_')

exec('class %s(Dummy2):pass' % clname)

return eval(clname)

cls=Dummy()

cls.__dict__['xmodule']='%s.%s' % (module,name)

return cls

_oid = '\0'*8

def FileToNodes(fpath):

#Copyright (c) Zope

f=file(fpath,'rb')

f.read(4)

oids = {}

export_end_marker = '\377'*16

def new_oid():

global _oid

last = _oid

d = ord(last[-1])

if d < 255: # fast path for the usual case

last = last[:-1] + chr(d+1)

else: # there's a carry out of the last byte

last_as_long, = unpack(">Q", last)

last = pack(">Q", last_as_long + 1)

_oid = last

return last

def u64(v):

"""Unpack an 8-byte string into a 64-bit long integer."""

return unpack(">Q", v)[0]

class Ghost(object):

__slots__ = ("oid",)

def __init__(self, oid):

self.oid = oid

def __repr__(self):

return '<%s dict=%s>' % (self.__class__.__name__, self.oid)

def persistent_id(obj):

if isinstance(obj, Ghost):

return obj.oid

def persistent_load(ooid):

"""Remap a persistent id to a new ID and create a ghost for it."""

klass = None

if isinstance(ooid, tuple):

ooid, klass = ooid

if ooid in oids:

oid = oids[ooid]

else:

if klass is None:

oid = new_oid()

else:

oid = new_oid(), klass

oids[ooid] = oid

return Ghost(oid)

out=[]

while 1:

h = f.read(16)

if h == export_end_marker:

break

if len(h) != 16:

raise Exception("Truncated export file")

l = u64(h[8:16])

p = f.read(l)

if len(p) != l:

raise Exception("Truncated export file")

ooid = h[:8]

if oids:

oid = oids[ooid]

if isinstance(oid, tuple):

oid = oid[0]

else:

oids[ooid] = oid = new_oid()

pfile = StringIO(p)

unpickler = CustomUnpickler(pfile)

unpickler.persistent_load = persistent_load

a=unpickler.load()

b=unpickler.load()

#

out.append([oid,a,b])

return out

def make_filelist(node,path,flist,index):

objs=node.get('_objects',[])

xobjs={}

for i in objs:

xobjs[i['id']]=i['meta_type']

keys=xobjs.keys()

keys.sort()

for i in keys:

oid=node[i].oid

if xobjs[i] in ('Folder','Folder (Ordered)'):

flist=make_filelist(index[oid],path+[i],flist,index)

flist.append({'node':index[oid],'path':path+[i],'meta_type':xobjs[i]})

return flist

def parseZobj(objs):

index={}

for i in objs:

index[i[0]]=i[2]

root=objs[0][2]

flist=make_filelist(root,[root['id']],[],index)

out="" for item in flist:

out+='%s(%s):\n\n' % ('/'.join(item['path']),item['meta_type'])

if item['meta_type']=='File':

out+=item['node']['data']

elif item['meta_type']=='Script (Python)':

out+='params:%s\n' % item['node'].get('_params','')

out+=item['node']['_body']

elif item['meta_type']=='Page Template':

out+=item['node']['_text']

elif item['meta_type']=='Z SQL Method':

out+='params:%s\n' % item['node']['arguments_src']

out+= item['node']['src']

out+='\n\n'

return out

def get_plain_content(fpath):

""" return content of zexp-file """

objs = FileToNodes(fpath)

return parseZobj(objs)

def compareRevisions(fpath,r1,r2):

import os,tempfile

x, fileR1 = tempfile.mkstemp()

x, fileR2 = tempfile.mkstemp()

#print fileR1,fileR2

os.system('svn cat \'%s\'@%s > %s' % (fpath,r1,fileR1))

os.system('svn cat \'%s\'@%s > %s' % (fpath,r2,fileR2))

x, out1 = tempfile.mkstemp()

x, out2 = tempfile.mkstemp()

#print out1,out2

file(out1,'wb').write(get_plain_content(fileR1))

file(out2,'wb').write(get_plain_content(fileR2))

os.system('C:\Program Files\KDiff3\kdiff3.exe %s %s' % (out1,out2))

os.remove(fileR1)

os.remove(fileR2)

os.remove(out1)

os.remove(out2)

def compare_files(path1,path2):

import os,tempfile

x, out1 = tempfile.mkstemp()

x, out2 = tempfile.mkstemp()

file(out1,'wb').write(get_plain_content(path1))

file(out2,'wb').write(get_plain_content(path2))

os.system('"C:\Program Files\KDiff3\kdiff3.exe" %s %s' % (out1,out2))

os.remove(out1)

os.remove(out2)

if __name__=='__main__':

import sys

if len(sys.argv)==1:

print 'Usage: %s COMMAND [ARGUMENTS]' % __file__

print 'Available commands:\n\t compare_svn - compare revisions zexp file\n\t compare_file - compare files'

sys.exit(1)

command=sys.argv[1]

if command == 'compare_svn':

if len(sys.argv)!=5:

print 'Usage: %s %s FILEPATH REVISION1 REVISION2' % (__file__, command)

else: compareRevisions(sys.argv[2],sys.argv[3],sys.argv[4])

elif command == 'compare_file':

if len(sys.argv)!=4:

print 'Usage: %s %s FILEPATH1 FILEPATH2' % (__file__, command)

else: compare_files(sys.argv[2],sys.argv[3])

Размещено на Allbest.ru


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

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

    курсовая работа [4,9 M], добавлен 29.01.2011

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

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

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

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

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

    дипломная работа [7,5 M], добавлен 16.08.2015

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

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

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

    дипломная работа [2,7 M], добавлен 18.04.2014

  • Инфологическое проектирование базы данных. Создание информационной системы "СПОРТ" для автоматизации обработки данных о проводимых соревнованиях и чемпионатах. Описание размещения в файловой системе. Создание таблиц, запросов и форм просмотра данных.

    курсовая работа [4,6 M], добавлен 22.05.2012

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

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

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

    отчет по практике [904,1 K], добавлен 13.04.2015

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

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

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