Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Совместные проекты/поиск партнёров > Десктоп-клиент Винграда v 0.1


Автор: ivashkanet 26.6.2007, 17:10
Составляем и обсуждаем юзкейсы клиента 0.1.

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


Поэтому алгоритм такой:
1) Ставим себя на мето пользователя, который пользуется приложением и проходим по шагам свои действия. 
2) Запишем их. Это и будут юзкейсы пользователя.
3) Потом идем по шагам пользовательского юзкейса и смотрим какие вопросы могут возникнтуть у приложения: отсутствие чего-то в кэше, например.
2) Запишем их. Получили список юзкейсов приложения.


Юзкейсы составлять в виде повествовательных предложений

Добавлено через 56 секунд
Как обычно ждем всех сочуюствующих.

Автор: tol05 27.6.2007, 11:02
Цитата(ivashkanet @  26.6.2007,  17:05 Найти цитируемый пост)
Следующая стадия: составление юзкейсов.

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

Цитата

Десктоп-клиента Винграда (далее – «клиент») v.0.1
Use cases


1. Общие требования.
1.1 Клиент должен должен быть разработан для функционирования в среде CLR 2.0 и функционировать под управлением ОС Windows версий XP и выше. Ограничение на данном этапе – отсутствие возможности тестирования на платформах более ранних версий.
1.2 Клиент представляет собой пакет исполняемых модулей, файлов локальной базы данных, файлов изображений и вспомогательных файлов, хранящихся в в общей директории файловой системы ПК пользователя.
1.3 Клиент должен предоставлять графический интерфейс пользователя, разработанный с использованием технологии Windows-Forms (Active-X).
1.4 Программное обеспечение должно предполагать расширяемость путем добавления дополнительных программных модулей (Plug-Ins) в будущем.

2. Работа с  данными.
2.1 Клиент обеспечивает работу с данными форума только в режиме read-only.
2.2 Поскольку клиент взаимодействует с сервером на правах учетной записи «Гость», клиент получает не отсортированные (с учетом предпочтений пользователя) данные.
2.3 Данные передаются и хранятся в максимально сжатом виде (например, в бинарном), что обеспечивает как низкую ресурсо-затратность данных, так и их конфиденциальность.
2.4 Клиент обеспечивает обработку и конвертирование форматов данных своими средствами, без помощи сервера.
2.5 Клиент должен обеспечивать возможность просмотра данных (и, в дальнейшем, работы с ними) в режиме отсоединения от сервера.
2.6 Клиент должен обеспечивать хранение, добавление, удаление и обновление данных, полученных с сервера, в локальной БД (далее – «БД»). 
2.7 БД конфигурируется при инсталляции клиента.
2.8 БД должна обеспечивать возможность ее простого удаления и архивации.
2.9 БД должны быть легко переносима и совместима с различными экземплярами приложения клиента. БД не должна им еть зависимостей от системмных характеристик ПК пользователя.

3. Пользовательский интерфейс (UI).
3.1 Клиент должен иметь удобный, интуитивно-понятный графический интерфейс, обеспечивающий удобную работу со списками данных.
3.2 Клиент должен обеспечивать функционирование главного и контекстных меню.
3.3 Все команды, доступные через меню (как главного, так и контекстных) должны иметь возможность дублирования через отдельные органы управления (кнопки, toolbar-ы и т.д.)
3.4 Интерфейс должен обеспечивать пользовательскую настройку в части добавления/удаления органов управления, как одиночных, так и toolbar-ов целиком. 
3.5 Должен обеспечиваться grad&drop органов управления.
3.6 Слой GUI клиента должен обеспечивать возможность масштабируемости UI при расширении или простом изменении функциональности клента в будущем.

4. Конфигурирование.
4.1 Клиент должен иметь локальный конфигурационных файл формата xml для хранения настроек интерфейса, настроек пользователя, настроек соединения с сервером и настроек БД.
4.2 Клиент должен инициализировать свое состояние, считывая настройки из локального конфигурационного файла. По окончания стартового конфигурирования клиент освобождает файл для обеспечения возможности записи в него измененных пользователем локальных настроек.
4.3 Клиент, с помощью своего UI, обеспечивает возможность внесения изменений в собственные настройки и конфигурацию без своего останова. Измененные настройки вступают в силу при следующем запуске приложения клиента.

5. Синхронизация с сервером.
5.1 Клиент должен синхронизироваться с сервером через определенное кол-во времени.
5.2 При запуске синхронизации клиент взаимодействует с сервером на правах учетной записи «Гость».
5.3 При запуске клиента инициализируется таймер синхронизации с настройками, считанными из локального конфирурационного файла.
5.4 Помимо внутреннего таймера, клиент должен предоставлять возможность внеочередной синхронизации по команде пользователя через UI.
5.5 В случае неудачной синхронизации функционирование клиента должно продолжаться без каких-либо нарушений, при этом данные, сохраненные в БД ранее, остаются доступными.

6. Запуск/останов.
6.1 Клиент должен запускаться как в ручном режиме, так и в режиме Windows-сервиса.
6.2 Клиент должен иметь десктоп и notification иконки.
6.3 Клиент должен иметь контекстное меню для обеспечения своего запуска, останова, прекращения работы, управления синхронизацией и собственными настройками.

7. Инсталляция и деинсталляция.
7.1 Клиент должен инсталлироваться методами once-click и Х-copy. 
7.2 Пакет инсталляции должен быть упакован в самораспаковывающийся архив.
7.3 Инсталляция должна запускаться автоматически. 
7.4 Должен быть предусмотрен режим деинсталляции с опциями "полная деисталляция" и "деинсталляция без удаления БД".

Автор: mr.DUDA 19.7.2007, 16:06
По поводу локальной БД есть вопрос - а нужно ли хранить какие бы то ни было данные на клиенте ? Как их синхронизировать с сервером ? Как долго хранить ?

Автор: Neuronix 19.7.2007, 16:11
Бррр... Опять все на винду
КГ/АМ

Автор: ivashkanet 19.7.2007, 16:26
Цитата(mr.DUDA @  19.7.2007,  16:06 Найти цитируемый пост)
По поводу локальной БД есть вопрос - а нужно ли хранить какие бы то ни было данные на клиенте ?

Нужно. Чтобы уменьшить нагрузку на сервер и уменьшить трафик.
Цитата(mr.DUDA @  19.7.2007,  16:06 Найти цитируемый пост)
Как их синхронизировать с сервером ? 

По дате или по номеру последнего сообщения (где-то это было расписано)
Цитата(mr.DUDA @  19.7.2007,  16:06 Найти цитируемый пост)
Как долго хранить ? 

Пока бесконечно. Но может потом что-нить придумаем ;-)

P.S. Neuronix, убей себя ап стену

Автор: Djinn 22.7.2007, 02:12
Цитата(Neuronix @ 19.7.2007,  16:11)
Бррр... Опять все на винду
КГ/АМ

согласен с тобой, лучшеб на линуху сделали б...

Автор: aktuba 29.8.2007, 00:26
Цитата

согласен с тобой, лучшеб на линуху сделали б... 


ну так сделайте, кто мешает =)

Автор: RodeGO 29.8.2007, 07:28
А Jav`у куда подевали? Будет Вам тогда и линь и вынь....

Автор: Str!pe 29.8.2007, 10:51
Гы, а что это такое? И нужно л это народу?

Автор: DarthMHz 29.8.2007, 11:07
Я что-то тоже плохо понял что это такое... smile 

Автор: ivashkanet 29.8.2007, 11:18
С добрым утром, товарищи. 

Проект успел как благополучно начаться, так и благополучно заглохнуть.

У меня времени нет, а остальных... хз чего нет smile


P.S. 
Цитата(Str!pe @  29.8.2007,  10:51 Найти цитируемый пост)
И нужно л это народу? 

А разве у него спрашивают? Мы его продавать не собирались. Кому понравилось бы тот и использовал бы.

Автор: Opik 29.8.2007, 23:01
Hunter?

Автор: ivashkanet 30.8.2007, 08:49
Opik, во всяком случае его аналог.

Во первых: ниже есть ещё две темы: http://forum.vingrad.ru/index.php?showtopic=160123 и http://forum.vingrad.ru/index.php?showtopic=160398

P.S. Задача не нашла поддержки среди администрации форума, а без неё сложновато будет :(

Автор: Keith 10.9.2007, 12:35
Почему же администрация не захотела? Очень интересно.

У RSDN'а есть свой клиент - Janus. 
Кстати, в исходниках.


Автор: 2man 10.9.2007, 18:52
Цитата(ivashkanet @  30.8.2007,  08:49 Найти цитируемый пост)
P.S. Задача не нашла поддержки среди администрации форума, а без неё сложновато будет :( 

А ты лично обращался? Girder и Domestic Cat меня консультировал по этому вопросу. Спроси у них

Автор: ivashkanet 10.9.2007, 19:15
2man, я общался с Вовой. Он предлагает юзать RSS...
После этого я послал ему большущее письмо на которое не пришло ответа...

По поводу РСС... Я уже вторую неделю парсю его (.Net раздел) и у меня уже больше 100 тем и больше 500 постов в базе.

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

Автор: 2man 10.9.2007, 23:26
Там в принципе ничего сложного. Сам алгоритм есть, нужно его только реализовать. У меня нету навыков работы в дельфях и т.д., я просил посейдона сделать, но отмазался типа не шарит в SQL. 
Вот может поможет: http://forum.vingrad.ru/forum/topic-72013/view-all.html

Автор: ivashkanet 11.9.2007, 09:36
2man, ты о чем?  smile Где там?
В версии 0.1 авторизация и не планировалась.......

Автор: ivashkanet 11.9.2007, 09:57
Когда будет реализовываться авторизация (если до нее вообще дойдет), то она будет производиться на уровне вэбсервиса (именно он будет торчать из форума, никакой БД) и, скорее всего,  с каждый запросом пользователя сервису будет передаваться полученный ранее объект аутентифицирующий пользователя.

Подробнее:
1) Клиент отправляет Сервису запрос на авторизацию (имя и пароль)
2) Сервис проверяет действительно ли этот юзер есть и это его пароль и выдаёт ответ в виде строки (числа), например.
Эта строка (число) зашифрована и полностью идентефицирует пользователя (у нее так же может быть срок действия).
3) С каждым запросом требующим авторизацию Сервису отправляется эта строка...

Но вообще об этом рано думать. Да и  оффтоп это тут. Такие вещи нужно обсуждать тут: http://forum.vingrad.ru/index.php?showtopic=160123

Автор: gambit 25.9.2007, 12:13
Готов помочь в разработке. gambit@mail.ru

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)