web-сервисы в РУЖЭЛЬ

21
Web-сервисы обмена данными в РУЖЭЛЬ Геннадий Кушнир

Upload: -

Post on 07-Jul-2015

656 views

Category:

Education


2 download

DESCRIPTION

Доклад на 9-й конференции разработчиков свободных программ в Обнинске, 24 июля 2012

TRANSCRIPT

Page 1: Web-сервисы в РУЖЭЛЬ

Web-сервисыобмена данными

в РУЖЭЛЬ

Геннадий Кушнир

Page 2: Web-сервисы в РУЖЭЛЬ

бумажные отчеты доинформатизации

Page 3: Web-сервисы в РУЖЭЛЬ

бумажные отчеты “дикая”информатизация

Page 4: Web-сервисы в РУЖЭЛЬ

принудительная“информатизация”

протест

Page 5: Web-сервисы в РУЖЭЛЬ

Московская “интеграция”

ОЭЖД

Page 6: Web-сервисы в РУЖЭЛЬ

Каждое отображение снижает достоверность

Page 7: Web-сервисы в РУЖЭЛЬ

Нужна сводка

Каждая отдельная отметка не важна

Page 8: Web-сервисы в РУЖЭЛЬ

запрос

отчет

Актуальные данные

отображение всех данных

обработка данных

Подход ОЭЖД

Page 9: Web-сервисы в РУЖЭЛЬ

запрос

отчет

Актуальные данные

результат обработки

оформление сводки

запрос

запрос

Предлагаемый подход

Page 10: Web-сервисы в РУЖЭЛЬ

Хочу сводный отчет об успеваемости

HTTP GET

<XML />

Сейчас запрошу...

Спасибо!

Ваш отчет готов:

Page 11: Web-сервисы в РУЖЭЛЬ

Перечень отчетов

Разработчик

Конечное количество стандартизованных отчетов

напряжется однажды и реализует их

Page 12: Web-сервисы в РУЖЭЛЬ

Перечень отчетовИзменения Дополнения

!"#$%&'(

«)**+,-. /0123405.36»

«)**+,-. +-*7-,88296»

«)**+,-. :,-3,2/*: -0;0236»

<0123405.30 5=*3 (50/>, ?@. +3/,230, !#, A0@0B*)

C507* 1 7*@*:, 3 24 4,5, : 5D/.,1

Разработчик

Page 13: Web-сервисы в РУЖЭЛЬ

Обобщенная модель данных

позволит согласовать язык запросов

Page 14: Web-сервисы в РУЖЭЛЬ

Описание модели данныхна примере итоговой оценки

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

Page 15: Web-сервисы в РУЖЭЛЬ

Протокол гибких запросовс опорой на модель

http://…/agr/itogMark?eduYear=2011&perNum=1&_grp1=grade%2Cstudent& _agr1=c0%2Cc2%2Cc3%2Cc4%2Cc5%2Ccn&c0=count%28mark%3D%27н%2Fа%27%29&…

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE request SYSTEM "agregate.dtd" ><response entity="itogMark"> <param attribute = "eduYear">2011</param> <param attribute = "perNum">1</param> <param attribute = "perCount">1</param> <grouping stage="2"> <attribute name="grade">5</attribute> <agregate name="total" type="count">37</agregate> <agregate name="fine" type="count">32</agregate> <agregate name="exl" type="count">1</agregate> <agregate name="good" type="count">12</agregate> <agregate name="one4" type="count">0</agregate> <agregate name="one3" type="count">3</agregate> <agregate name="na" type="count">4</agregate> <agregate name="bad" type="count">1</agregate> <agregate name="bad1" type="count">1</agregate> <agregate name="bad2" type="count">0</agregate> <agregate name="worse" type="count">0</agregate> <agregate name="cnSum" type="sum" attribute ="cn">2</agregate> </grouping>...

запрос

ответ

Page 16: Web-сервисы в РУЖЭЛЬ

Конструктор запроса

http://atomic.rujel.net/Apps/WebObjects/Rujel.woa/agr

Это форма для подготовки HTTP GET запроса

Page 17: Web-сервисы в РУЖЭЛЬ

Перспективы развития

Развитие модели

Сохраненные запросы

Отложенные запросы

Page 18: Web-сервисы в РУЖЭЛЬ

Хочу сводный отчет об успеваемости

???Сейчас недоступно.

Будет завтра.

нет связи

Отложенный запрос

Page 19: Web-сервисы в РУЖЭЛЬ

Отложенный запрос

HTTP GET

<request/>

Есть ко мне вопросы?

Нужен такой отчет: …

HTTP POST <XML />Вот, пожалуйста!

HTTP OKСпасибо, принято

связь появилась

Page 20: Web-сервисы в РУЖЭЛЬ

Как там мой отчет?

Настало утро

Спасибо!

Ваш отчет готов:

Отложенный запрос

Page 21: Web-сервисы в РУЖЭЛЬ

Спасибо

http://atomic.rujel.net/Apps/WebObjects/Rujel.woa/agr

http://www.rujel.net/

http://wiki.rujel.net/

Официальный сайт РУЖЭЛЬ

Описания, сообщество

Конструктор запросов в демо-версии