|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
tygra grexhideПри этом появилась другая часть задач, в итоге суммарное время - увеличилось в несколько раз. Но тигре было все равно - ведь он достиг своей цели (ради которой работал месяцы). Откуль появилась другая часть задач? А время то почему и на что так увеличилось???? Время то как раз уменьшилось, задач стало если не меньше, то они стали проще :) Ты делал замеры? Боюсь что нет. И что с чем сравниваем, если не секрет? Я просто удивляюсь - откель такая кардинальность (в разы) - упрощения, убыстрения... Может ты просто не мог использовать базовый инструмент с должным навыком? /// Я вот, от всей этой свистопляски - вижу только увеличение времени разработки, но... увеличение качества (впрочем, второе - может запросто перекрыть первое, в условиях особо злостной хвостатости и волосатости рук вовлеченных каких индивидов). ---- Один месяц на реализацию и продумывание (тем более при параллельных задачах) - тем более, чет как то странно выглядит. Или на выходе имеем примитив, или... а действительно, мож и гениальный какой то тул (и автор, само собой);) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2007, 11:43 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
grexhideОдин месяц на реализацию и продумывание (тем более при параллельных задачах) - тем более, чет как то странно выглядит. Или на выходе имеем примитив, или... а действительно, мож и гениальный какой то тул (и автор, само собой);) Вам это удивительно? У меня - обычная практика, за месяц запустить систему для предприятия с нуля. Ради таких возможностей в общем-то и делаются подобные тулзы. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2007, 12:06 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
iscrafm за месяц запустить систему для предприятия с нуля Вообще то за месяц можно внедрить (чет (полу-)готовое). Но разработать.... ? // Предпроект, договор, диагностика, техзадание, техпроект, блаблабла импорт чего то там, проведение приемки, подписание актов.. Или Вы о чем вообще? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2007, 12:15 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
grexhideИли Вы о чем вообще? о разработке конечно, мы же о ней говорим. Подписание актов, заключение договора... это разработка? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2007, 12:34 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
iscrafmо разработке конечно, мы же о ней говорим. Подписание актов, заключение договора... это разработка? IMHO разработать != запустить ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2007, 12:37 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
grexhide iscrafmо разработке конечно, мы же о ней говорим. Подписание актов, заключение договора... это разработка? IMHO разработать != запустить совершенно с Вами согласен. Я просто в понятие запуска не включаю акты и т.п. Это параллельный процесс. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2007, 13:03 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
grexhidе: "Я бы на твоем месте почитал бы букварь, на предмет того, что такое методология, а что такое метод..." Существует много определений методологий разработки, но в данном случае мне ближе всего "Гибкая методоло́гия разрабо́тки (англ. Agile software development) — это концептуальный каркас, в рамках которого выполняется разработка программного обеспечения. Большинство гибких методологий нацелены на минимизацию рисков, путём сведения разработки к серии коротких циклов, называемых итерациями, которые обычно длятся одну-две недели. Каждая итерация сама по себе выглядит как программный проект в миниатюре, и включает все задачи, необходимые для выдачи мини-прироста по функциональности: планирование, анализ требований, проектирование, кодирование, тестирование и документирование. Хотя отдельная итерация, как правило, недостаточна для выпуска новой версии продукта, подразумевается что гибкий программный проект готов к выпуску в конце каждой итерации. По окончании каждой итерации, команда выполняет переоценку приоритетов разработки". http://ru.wikipedia.org/wiki/ ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2007, 19:31 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
Иван Дмитренкоhttp://ru.wikipedia.org/wiki/ Не тот букварь читаешь. Впрочем, можешь вот отсель начать: http://en.wikipedia.org/wiki/Methodology а также http://en.wikipedia.org/wiki/Methodology_%28software_engineering%29 --- Но какая там Методология может быть в построении интерфейса - это, увы, для меня загадка (для многих, уверен тоже, несмотря на твои призывы её обсудить ;)) По сути - это и не метод, и не методология, а просто - технология (скорее - принцип, способ). ... |
|||
:
Нравится:
Не нравится:
|
|||
05.08.2007, 23:04 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
CodenamedДавайте сразу определимся. Я рассуждаю не умозрительно. У меня есть некоторый опыт использования управляемого данными функционала. Достаточно ограниченный - но всё таки опыт. Я вижу, что пользоваться им удобно и это экономит массу времени. Я могу ошибаться, когда пытаюсь разобраться в причинах этого удобства, но только не пытайтесь меня убедить в том, что мне на самом деле неудобно. Если слово "удобно" кажется вам недостаточно строгим, подставьте вместо него "заметно меньшие трудозатраты на проект\задачу". Я часто играю роль ПМ и считать трудозатраты - моя работа. Ещё одна мысль. Предложения типа "переделайте свои процессы разработки, увольте таких программистов, перепишите клиента, но только не делайте Ужасный Функционал Управляемый Данными", звучат не очень серьезно. Давайте соотносить цели и средства. Codenamed bebop 1) в гуёвом коде клиентского приложения написанного несколькими поколениями программистов средней ценовой категории разбираться, почему-то, на порядок сложнее чем в серверном Бывает, согласен. Но разбираться так и так надо. Иначе что это за система, в которой вы сами не разбираетесь?Ну мы и разбираемся. Просто это занимает заметно больше времени. Объектные модели гуёвых библиотек и клиентских приложений сами по себе имеют высокую сложность.Кроме того клиентское приложение предоставляет программисту гораздо больше возможностей выпендрится, чем код хранимой процедуры. Codenamed bebop 2) следствие 1 - риск возникновения проблем при изменениях в клиенте, по факту (в нашей конторе) оказывается существенно выше, чем при изменениях на сервере (соответственно тратится больше времени на тестирование) Видимо, у вас очень сложный клиент. У вас бизнес-логика сосредоточена там? Это не издевка, как могло бы показаться.. Наличие или отсутствие БЛ на клиенте мне не кажется существенным фактором. Принципиален факт того, что в клиенте что-то изменилось. Например поле переставили на 2мм ниже. Для нас это означает гемор "пересборка-регрессия-выкладка-общение с пользователями". Почему у нас это гемор я чуть ниже напишу. Codenamed bebop 3) интеграция изменений от нескольких разработчиков, правящих одну и ту же форму- постоянная головная боль, при изменениях затрагивающих клиентское приложение, с серверным кодом проблема практически отсуствует или решается механическим "мержем". Хм... А вот это ерунда полная. Не должны одну форму править несколько разработчиков. Либо она принадлежит к одному функциональному модулю и ее "ведет" один разработчик, либо... Это даже трудно представить, по крайней мере пример не смог придумать. Кажется, надуманная сложность. Разработчик "ведёт" форму? Это пройденный этап. При существенной частоте изменений и 8 разработчиках это означает кошмар при планировании. Кроме того это означает отсутствие взаимозаменяемости разработчиков. Геморой с правкой одной формы разными разработчиками, выглядит предпочтительнее. Codenamed bebop 4) цикл выкладки для изменений затрагивающих клиентское приложение получается достаточно тяжёлым (интеграция изменений от нескольких разработчиков, сборка, ручное регрессионное тестирование, выкладка на нескольких промежуточных серверах, взаимодействие с пользователями ("ой, а мы не можем обновляться - у нас сейчас интенсив") 5) при проблемах откат изменений затрагивающих клиентское приложение также получается существенно более трудоёмким. А в таких ситуациях время особенно ценно. Если отбросить проблему интеграции изменений и сборки (откуда такая проблема??)... Неужели вы не проводите тестирование при изменении серверной части? У вас не автоматизировано размещение на каком-то "сервере приложений" новых версий с сохранением текущих? Вы не можете отложить момент обновления клиентской части на произвольное время после того, как она выложена на сервер? Попробую разобраться, почему у нас этот цикл такой тяжёлый получается. Возьмём процесс по небольшому изменению - исправили ошибку или поле добавили\убрали. a) Сборка\интеграция - здесь играет проблема 3 (правка визуальных объектов несколькими людьми одновременно) + у нас слабовато организован процесс сборки. Перед боевой сборкой нужно согласовать "голосом", что в релиз не попадёт то что не должно попасть и не пропадёт то что пропасть пока не должно. Это согласование во многом страховка от накладок по проблеме 3. б) Тестирование - наш опыт такой - вероятность того, что при незначительном изменении в клиенте (передвинули поле) возникнут проблемы настолько существенна, что при любом изменении в клиенте мы делаем регрессионное тестирование. Ручное. При правке серверных процедур, в большинстве случаев (не всегда), есть очень чёткое понимание на что может повлиять изменение и полную регрессию можно пропустить. Соответственно наша практика это подтверждает в) Внедрение - Здесь два фактора - это общение с пользователями и взаимодействие с группой техподдержки, которая осуществляет внедрение (у нас такая практика). Перерыв в работе кол-центра - очень нежелателен. Обновление клиента в середине рабочего дня, нужно согласовывать с ними "голосом". Просто уведомить по почте - сделайте обновление - нельзя. Это всё трудозатраты. Соответственно, чем незаметнее для пользователей пройдёт внедрение\откат, тем дешевле. При изменении серверных процедур мы можем вообще никому ничего не говорить. Если меняешь клиента, то придётся тратиться. По поводу группы техподдержки - они могут быть заняты, им надо объяснять что и как, с ними надо продумывать план отката - это тоже трудозатраты. Для серверных процедур - в большинстве случаев их надо просто уведомить. Codenamed bebop 6) клиентское приложение - вечный источник проблем. У одного пользователя офис не той версии, у другого права на реестр кривые, у третьего Windows XP, у четвёртого рантайм грида забыли развернуть итп. Соответственно каждый раз когда что-то меняешь в клиенте рискуешь собрать эти грабли. Источник всех перечисленных проблем - это не клиентское приложение, а неудовлетворительная работа системного администратора. И эти проблемы должны решаться независимо от того, обновляете ли вы клиентскую часть, или только серверную. Когда клиентских машин 200 в нескольких офисах, трудно добиться от них идентичности конфигурации. Можно, конечно, застраивать админов. Но до того момента когда они застроятся, проектов что-ли не делать? Потом по каждому факту админу ещё нужно доказать, что проблема именно в конфигурации машины. Или вы думаете, что админы автоматически берут вину на себя при ошибке вылетевшей из клиентского приложения? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 10:43 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
bebop ...skipped (ибо устал читать).. bebop a) Сборка\интеграция - здесь играет проблема 3 (правка визуальных объектов несколькими людьми одновременно) + у нас слабовато организован процесс сборки. Перед боевой сборкой нужно согласовать "голосом", что в релиз не попадёт то что не должно попасть и не пропадёт то что пропасть пока не должно. Это согласование во многом страховка от накладок по проблеме 3. Чет вообще не понятно. На кой визуальные правки делать тремя людьми одновременно? Вы чай инвалидов каких набираете, с нарушением двигательных каких фукнций (один на клавиатуре чет там, другой мышой, третий командует и линейкой отступы меряет)? bebop б) Тестирование - наш опыт такой - вероятность того, что при незначительном изменении в клиенте (передвинули поле) возникнут проблемы настолько существенна, что при любом изменении в клиенте мы делаем регрессионное тестирование. Ручное. А на чем строгаете то? Чай на Oracle Forms (я что то не припомню другую чудо среду, у которой сдвиг Item-а мог привести к крушению цивилизации). bebop При правке серверных процедур, в большинстве случаев (не всегда), есть очень чёткое понимание на что может повлиять изменение и полную регрессию можно пропустить. Соответственно наша практика это подтверждает Что вы в большинстве не делаете регрессию? ну ну. bebop Перерыв в работе кол-центра - очень нежелателен. Обновление клиента в середине рабочего дня, нужно согласовывать с ними "голосом". Просто уведомить по почте - сделайте обновление - нельзя. Это всё трудозатраты. Соответственно, чем незаметнее для пользователей пройдёт внедрение\откат, тем дешевле. При изменении серверных процедур мы можем вообще никому ничего не говорить. Если еняешь клиента, то придётся тратиться. Ээ.... обновление делается или в окна (как правило в ночные или вечерние), либо, в случае 24x7... впрочем, у вас же не 24x7, чего распинацца то? bebop 6) клиентское приложение - вечный источник проблем. У одного пользователя офис не той версии, у другого права на реестр кривые, у третьего Windows XP, у четвёртого рантайм грида забыли развернуть итп. Соответственно каждый раз когда что-то меняешь в клиенте рискуешь собрать эти грабли. И чо? Забейте на реестр, забейте на конченный компонент грида, забейте даже на MS Office. Ориентируйтесь вон на открытые форматы и нативную запись. Делов то. Хорошее приложение - должно работать везде и всегда (где вообще работает что либо). bebopИсточник всех перечисленных проблем - это не клиентское приложение, а неудовлетворительная работа системного администратора. Бред сивой кобылы, извиняюсь. Сисадмины то при чем? Оставьте этих лузеров в покое, пусть вон домены тачают, да принтеры заправляют/настраивают bebop Когда клиентских машин 200 в нескольких офисах, трудно добиться от них идентичности конфигурации. ЭТО ЭЛЕМЕНТАРНО ! Эталонная конфигурация, автоматически обновляемая с сервера. Все пользовательские параметры (читай профили) - только в БД. Алилуя. bebopМожно, конечно, застраивать админов. Но до того момента когда они застроятся, проектов что-ли не делать? На Вашем бы месте - я бы, если честно, задумался - а стоит ли делать их вообще.... bebop Потом по каждому факту админу ещё нужно доказать, что проблема именно в конфигурации машины. Или вы думаете, что админы автоматически берут вину на себя при ошибке вылетевшей из клиентского приложения? Как то вы криво системы строите. По большому счету, нормальному приложению должно быть глубоко фиолетово, как оно и на чем оно. Все необходимое прикладное имеет право доинсталлироваться с сервера, трижды верифицироваться, и только потом запуститься пред ясны очи счастливого пользователя. И - никак иначе. (Т.е. в иделе - это должно быть вообще одно приложение, просто .EXE). ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 13:42 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
grexhide bebop a) Сборка\интеграция - здесь играет проблема 3 (правка визуальных объектов несколькими людьми одновременно) + у нас слабовато организован процесс сборки. Перед боевой сборкой нужно согласовать "голосом", что в релиз не попадёт то что не должно попасть и не пропадёт то что пропасть пока не должно. Это согласование во многом страховка от накладок по проблеме 3. Чет вообще не понятно. На кой визуальные правки делать тремя людьми одновременно? Вы чай инвалидов каких набираете, с нарушением двигательных каких фукнций (один на клавиатуре чет там, другой мышой, третий командует и линейкой отступы меряет)? Чего непонятного? Выполняются 3 параллельных разных проекта. Все они затрагивают контролы на экранной форме "Счёт". Возможно одни и те же. Автоматическое слияние изменений в этом случае затруднено. Есть достаточно большая вероятность неожиданных эффектов. Кроме того нужно голосом договариваться кто после кого будет форму править. grexhideЭталонная конфигурация, автоматически обновляемая с сервера. Все пользовательские параметры (читай профили) - только в БД. Алилуя. Мы работали с переносимыми профилями - не понравилось (не мне, я не админ). Сейчас постепенно отказываемся от них. grexhideЭэ.... обновление делается или в окна (как правило в ночные или вечерние), либо, в случае 24x7...впрочем, у вас же не 24x7, чего распинацца то? Можно конечно автоматизировать выкладку обновлений, так чтобы они делались ночью, но тогда несколько человек должно выйти в 8-30 утра, на случай если будут проблемы. А лучше в 7-30. Опять же тема откатов. При откате обновлений обычно нет возможности ждать "окна". grexhideЧто вы в большинстве не делаете регрессию? ну ну.Как раз проблема в том, что приходится делать её чаще чем хотелось бы. Она ручная. grexhide И чо? Забейте на реестр, забейте на конченный компонент грида, забейте даже на MS Office. Ориентируйтесь вон на открытые форматы и нативную запись. Делов то. Хорошее приложение - должно работать везде и всегда (где вообще работает что либо). Как то вы криво системы строите. По большому счету, нормальному приложению должно быть глубоко фиолетово, как оно и на чем оно. Все необходимое прикладное имеет право доинсталлироваться с сервера, трижды верифицироваться, и только потом запуститься пред ясны очи счастливого пользователя. И - никак иначе. (Т.е. в иделе - это должно быть вообще одно приложение, просто .EXE). На Вашем бы месте - я бы, если честно, задумался - а стоит ли делать их вообще.... Пойду задумаюсь а стоит ли делать проекты вообще ;) Давайте опустимся на землю. Изменение процессов в отделе - вещь несопоставимая с проектом котоый мы обсуждаем. Переписывание клиента(ов) - вещь из области научной фантастики. Увольнение всех разработчиков\администраторов и набор "правильных"- вещь из области научной фантастики. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 15:41 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
grexhide tygra grexhideПри этом появилась другая часть задач, в итоге суммарное время - увеличилось в несколько раз. Но тигре было все равно - ведь он достиг своей цели (ради которой работал месяцы). Откуль появилась другая часть задач? А время то почему и на что так увеличилось???? Время то как раз уменьшилось, задач стало если не меньше, то они стали проще :) Ты делал замеры? Боюсь что нет. И что с чем сравниваем, если не секрет? Я просто удивляюсь - откель такая кардинальность (в разы) - упрощения, убыстрения... Может ты просто не мог использовать базовый инструмент с должным навыком? А я то как удивляюсь!!!! Ты не видел то, что было, что стало, не знаешь, что за система и что я конкретно сделал - и так категорично заявлять???????? Телепат????? Однако, это сильно часто у нас что-то практикуется - объявлять кому-то, что он оказывается и не быстро сделал, и не просто, а все ему только кажется, и на самом деле все плохо, а только трава хорошая... grexhideЯ вот, от всей этой свистопляски - вижу только увеличение времени разработки, но... увеличение качества (впрочем, второе - может запросто перекрыть первое, в условиях особо злостной хвостатости и волосатости рук вовлеченных каких индивидов). Еще одно категоричное высказывание без какой-либо информации, доказательств и т.д. grexhideОдин месяц на реализацию и продумывание (тем более при параллельных задачах) - тем более, чет как то странно выглядит. Или на выходе имеем примитив, или... а действительно, мож и гениальный какой то тул (и автор, само собой);) Я же написал, чего я сделал - что там такого страшного? Если для тебя это сложно, то я тогда не знаю, о чем говорить. Моего опыта хватило, чтобы сделать за месяц работающий вариант. Еще месяц не мешало бы потратить на доведение этого варианта до вообще хорошего состояния, потому как делал быстро. Но это тоже не много. Итого, чтобы сделать все стандартные формы списков и деталировки, связять их вместе, сделать тулзу, которая настравивает это все - пару месяцев достаточно, если есть большой опыт как разработки, так и понимания, чего собственно нужно на выходе. К сведению, я не генерю никаких контролов и не расставляю их - на это наверное надо времени побольше. Но я счел это слишком заумным и в данном случает ненужным. -------- 2 iscrafm Ты не думал сделать форму деталировки в виде грида имя-значение? Не надо размещать контролы, и влезет информации хоть 3 км вниз :)) Как я понял, средний слой у тебя за коннекты в основном отвечает? На вебсервисах не думал сделать? 2 bebop Кстати, эта система тоже для колцентра в том числе. -- Tygra's -- Мои фотогалереи тут и тут ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 16:15 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
grexhide ...... Как то вы криво системы строите. По большому счету, нормальному приложению должно быть глубоко фиолетово, как оно и на чем оно. Все необходимое прикладное имеет право доинсталлироваться с сервера, трижды верифицироваться, и только потом запуститься пред ясны очи счастливого пользователя. И - никак иначе. (Т.е. в иделе - это должно быть вообще одно приложение, просто .EXE). Розовые мечты....!!! :)) Представь на минуту, что в мире много-много компаний, и тех, кто разрабатывает, и тех. кто использует. И все они разные. Не во всех компаниях каждую форму прикрепляют к конкретному разработчику пожизненно, не у всех есть возможность "доинсталлировать" по с сервера и т.д. и т.п. У меня даже нет нормальной возможности переслать ехе, чтобы хотя бы завтра оно обновилось. И т.д. и т.п. Потому считать самую распрекрасную модель, в которой все счастливы, существующей везде во всем мире, не корректно. -- Tygra's -- Мои фотогалереи тут и тут ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 16:21 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
Кажется я понял. Большая часть дискуссии- свелась к вопросам процессов разработки Я считаю, что для малых изменений предпочтителен подход (назову его 1й процесс): "получить запрос на изменение - реализовать - быстро выложить и протестировать на пользователях, если что не так быстро поправить" оправдывает себя - заказчик максимально удовлетворяется при минимальных трудозатратах. Для больших или рискованных проектов это работает плохо. 2й процесс. Подход "получить запрос на изменение- спланировать релиз -реализовать - дождаться остальные изменения релиза - сделать регрессию - внедрить ночью, если что случилось - откатить весь релиз" работает для больших проектов. Такой процесс плохо работает для потока маленьких запросов на изменение. Для заказчика обратная связь становится заметно медленнее. ИТ-отдел реализует существенно меньше изменений в единицу времени. 2й процесс считается формально "правильным" и объективно снижает риск проблем. 1й процесс хорошо себя показывает, если знать его границы. Управляемый данными функционал (УДФ) позволяет расширить границы применимости 1го процесса. Мне это нравится. Заказчику тоже. Если не выходить за границы - то никаких ощутимых проблем с ним нет. В принципе для 2го процесса УДФ тоже хорошо работает. Только там будет несколько другая аргументация и другие акценты. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 16:45 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
tygra2 iscrafm Ты не думал сделать форму деталировки в виде грида имя-значение? Не надо размещать контролы, и влезет информации хоть 3 км вниз :)) Как я понял, средний слой у тебя за коннекты в основном отвечает? На вебсервисах не думал сделать? нет, в виде грида не думал. :) Средний слой и за коннекты тоже конечно отвечает, но основное назначение - управление контентом системы. Описание всех сервисов, раздает кому что нужно, коннектит куда нужно и т.д. Web не web... все равно сервисы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 16:47 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
iscrafm tygra2 iscrafm Ты не думал сделать форму деталировки в виде грида имя-значение? Не надо размещать контролы, и влезет информации хоть 3 км вниз :)) Как я понял, средний слой у тебя за коннекты в основном отвечает? На вебсервисах не думал сделать? нет, в виде грида не думал. :) Средний слой и за коннекты тоже конечно отвечает, но основное назначение - управление контентом системы. Описание всех сервисов, раздает кому что нужно, коннектит куда нужно и т.д. Web не web... все равно сервисы. Ну зато вебсервисы не требуют открытия каких-то портов для какого-то приложения - им вебсервера хватает, не многие согласятся открыть доступ для апп-сервера во внешний мир :) Как ни доказывай -- Tygra's -- Мои фотогалереи тут и тут ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 18:05 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
tygraНу зато вебсервисы не требуют открытия каких-то портов для какого-то приложения - им вебсервера хватает, не многие согласятся открыть доступ для апп-сервера во внешний мир :) Как ни доказывай tygra, вопрос философский...:) Главное защитить то, что открыто. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 18:16 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
tygra Ты делал замеры? Боюсь что нет. И что с чем сравниваем, если не секрет? Я просто удивляюсь - откель такая кардинальность (в разы) - упрощения, убыстрения... Может ты просто не мог использовать базовый инструмент с должным навыком? А я то как удивляюсь!!!! Ты не видел то, что было, что стало, не знаешь, что за система и что я конкретно сделал - и так категорично заявлять???????? Телепат????? Однако, это сильно часто у нас что-то практикуется - объявлять кому-то, что он оказывается и не быстро сделал, и не просто, а все ему только кажется, и на самом деле все плохо, а только трава хорошая... Дело не в траве. Но я сильно сомневаюсь, что за месяц можно придумать, создать и отладить действительно стоящий инструмент, дающий значимый эффект (внедрить и оценить отдачу). Вот честно. У меня лишь на фоновое концептуальное осмысление и оценку всех аспектов, проблематики и вариантов реализации может уходить до полугода (при том сама реализация - ну день-два, плюс откатка с неделю). Если говорить про сопоставимый функционал (озвученный ранее). В твоём же случая - я просто увидел типовое верхоглядство или хваствовство (внешние признаки), потому и засомневался (больше в сроках). Так что никакой телепатии. Может быть я и не прав, но - лишь выразил сомнения (скорее рефлекторно). Привычка - не обижайся ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 19:21 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
bebopПредложения типа "переделайте свои процессы разработки, увольте таких программистов, перепишите клиента, но только не делайте Ужасный Функционал Управляемый Данными", звучат не очень серьезно. Где ж я такое говорил-то?? И зачем тогда уже лет пять делаю "Функционал Управляемый Данными" в том или ином виде? bebopВыполняются 3 параллельных разных проекта. Все они затрагивают контролы на экранной форме "Счёт". Так вот в чем проблема! Попробуйте для 3 разных проектов сделать, соответственно, три разные формы для счета! Это, естественно, если я вас правильно понял: что вы имели в виду три проекта для трех разных заказчиков. И если это действительно так, то представляю, с какими трудностями вы сталкиваетесь! И еще к вопросу о закреплении формы за разработчиком. Вы меня не совсем правильно поняли. Повторюсь, я имел в виду закрепление за сотрудниками некоторого функционального блока системы, который он ведет и в котором он лучше всех ориентируется. Таких людей может быть и несколько, при условии, что они сменяют друг друга и никогда не работают над одним модулем параллельно. Но даже в случае, если их только двое, это уже сопряжено с затратами на вникание в последнюю версию модуля. Если же вы стараетесь не впадать в зависимость от конкретных сотрудников, то это уже плохо пахнет. Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 19:33 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
Кстати, обновление клиентской части - это в подавляющем большинстве ситуаций не есть проблема. Достаточно залить новую версию на deployment сервер, и в нужный момент объявить ее текущей. Загрузочный модуль на клиенте увидит это, загрузит обновленную версию и потребует от пользователя завершить работу. После чего заменит файлы приложения на обновленные и позволит работать дальше. А в случае отката достаточно объявить текущей предыдущую версию (она ведь никуда не делась с deployment сервера) загрузочный модуль точно так же загрузит ее и произведет обновление. Причем это работает даже при весьма дохлых каналах связи. А если система состоит из кластеров, внутри которых связь нормальная, а между - тормозная, то здесь надежнее в каждом кластере завести свой сервер обновлений (благо, и у MS SQL, и у Oracle есть бесплатные версии) а между ними и большим деплойментом наладить репликацию. Собственно, все. Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 19:43 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
Codenamed bebopВыполняются 3 параллельных разных проекта. Все они затрагивают контролы на экранной форме "Счёт".Так вот в чем проблема! Попробуйте для 3 разных проектов сделать, соответственно, три разные формы для счета! Это, естественно, если я вас правильно понял: что вы имели в виду три проекта для трех разных заказчиков. И если это действительно так, то представляю, с какими трудностями вы сталкиваетесь! У нас один заказчик. Большой поток мелких заявок на доработку функционала (до сотни в месяц). Это наряду с несколькими относительно большими проектами. В такой ситуации по одной и той же форме часто параллельно ведётся несколько проектов и проектиков. Codenamed Если же вы стараетесь не впадать в зависимость от конкретных сотрудников, то это уже плохо пахнет. А если человек уволится, заболеет итд итп? Это нормальная практика, если не доводить её до фанатизма. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 20:01 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
CodenamedКстати, обновление клиентской части - это в подавляющем большинстве ситуаций не есть проблема. ... Достаточно интересная схема. А если сервер с клиентскими приложениями терминальный - (т.е. много пользователей использует один и тот же, грубо говоря, екзешник) ? Даже если отвлечься от темы - "аргументы за и против УДФ", то в целом, мне НЕ кажется, что автоматизация выгладки клиента кардинально снизит трудозатраты по статье "внедрение". Мне кажется большинство трудозатрат там организационные - позвонить, договориться, приготовиться к откату. Согласитесь, что отсутствие процедуры выкладки клиента вообще, всё таки менее трудоёмко, чем супер-автоматизированная выкладка. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 20:19 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
2bebop: угу, я понял вашу ситуацию. bebopВ такой ситуации по одной и той же форме часто параллельно ведётся несколько проектов и проектиков. Вот об этом я и говорю. Почему бы не сделать свою копию формы для каждого проекта? Тогда в каждом проекте ее смогут подогнать под собственные нужды, но все изменения будут изолированными внутри отдельного проекта или проектика, а это дорогого стоит. Ведь это колоссально снизит объемы регрессионного тестирования. Кстати, интересно было бы узнать: у вас есть выделенные специалисты-тестировщики (как бы их не называли), то есть люди, у которых это - основная работа. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 20:25 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
bebopСогласитесь, что отсутствие процедуры выкладки клиента вообще, всё таки менее трудоёмко, чем супер-автоматизированная выкладка. Полностью согласен. Для того (среди прочего) и нужны интерфейсные решения, управляемые данными: чтобы при изменении подписи к полю на форме или изменении набора столбцов в списке не приходилось обновлять клиентское приложение. Но согласитесь и вы, что иметь в своем распоряжении решение, позволяющее быстро обновлять клиентскую часть, по крайней мере, полезно. С терминальным вариантом к сожалению/счастью никогда не сталкивался. А вот описанная схема - работает. Исключение - загрузка всех файлов до фактической смены версии. Но это, наверное, потому что без меня делали :) Причем работает настолько хорошо, что обновление - рутинная процедура, не требующая дополнительного уведомления кого бы то ни было. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 20:34 |
|
Построение интерфейса приложения из БД
|
|||
---|---|---|---|
#18+
Codenamed Почему бы не сделать свою копию формы для каждого проекта? Тогда в каждом проекте ее смогут подогнать под собственные нужды, но все изменения будут изолированными внутри отдельного проекта или проектика, а это дорогого стоит. Ведь это колоссально снизит объемы регрессионного тестирования. Заказчик один и форма Счёт соответственно одна. Механически - не разделишь. Но в целом согласен, что в перспективе формы надо разгружать и разделять (скажем выносить отдельный по смыслу функционал в отдельные формы). CodenamedКстати, интересно было бы узнать: у вас есть выделенные специалисты-тестировщики (как бы их не называли), то есть люди, у которых это - основная работа. Есть 2 человека. И ещё их начальник, правда сам он редко тестирует. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.08.2007, 20:36 |
|
|
start [/forum/topic.php?fid=33&msg=34708987&tid=1548962]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 258ms |
total: | 397ms |
0 / 0 |