Как определить конец веб-приложения жизни? [закрытый]

5
задан Gabriele Petronella 2 November 2013 в 18:02
поделиться

8 ответов

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

Вот мои предложения:

  • присоединяются младший разработчик Текущий разработчик.
  • Сбрасывать большинство будущих обновлений на младшем Разработчик (при помощи от SR. Разработчик)
  • Задать младший разработчик сделать Документация его работы
  • Спросите SR. Developer для рассмотрения Документация

в течение периода времени у вас есть другой человек, который может поддерживать это приложение, и он также будет документирован. Теперь вам не нужно убивать свое собственное очень хорошо архивационное приложение с вашими руками.

.

Расширение этого решения с предложением Jefferey ниже («Иногда перезаписи - это хорошие инвестиции».)

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

Используя документацию текущей и предлагаемой системы, вы можете посмотреть, можно ли постепенно модуль по компонентам обновления модуля (повторной записи). Это возможно, если приложение очень хорошо архиваторно.


Согласно вашему (Geo) комментариям

Организация Гео имеет пользовательские сторонние (с одним и только одним разработчиком контракта) CMS, которое реализует ниже бизнес-требования и оплачивает лицензионный сбор за поддержку и использование его Кодекса.

  • Бизнес-требования для CMS
  • веб-сайтов
  • Предложение Treator
  • Tracker Marketing Campaign

Вот мои предложения

  • Создать модуль по модулю. Дело документ для этого проекта. Ваш Разработчик может сделать это или будет Идеально, чтобы иметь отдельный бизнес аналитик на то же самое.
  • Прокат SR. Developer для оценки, если CMS с открытым исходным кодом может обрабатывать все или большинство ваших требований (например, Joomla, Drupal и т. Д.).
  • Самое главное здесь было бы Возможность перенести ваши существующие данные к новой системе. Возможно, вам понадобится помощь от ваш существующий договор договора сделай это.
  • Вам, возможно, придется обновить бизнес процесс или рабочий процесс для использования новых система.
  • Модули, которые не могут быть реализованы Использование CMS с открытым исходным кодом может потребоваться быть реализованным с использованием пользовательских Веб-сайт.

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

7
ответ дан 18 December 2019 в 11:56
поделиться

Это только мое мнение, но если это продукт, который вы продаете, то все это сводится к деловым перспективам. Если продукт не продает, то отбросьте его. Если у продукта есть будущее, то инвестируйте в него, и сделайте его лучшим программным обеспечением, которое вы можете по рефакторингу, переписыванию, или что вы должны сделать. Если у вас есть постоянные клиенты или сильный бренд, то это стоит защищать.

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

3
ответ дан 18 December 2019 в 11:56
поделиться

Используйте комментарии:

   Object o = foo() //
      .bar() //
      .toString();
-121--1843159-

Не используйте литье в стиле Си при выполнении литья по множественному дереву наследования. Если вы используете dynamic _ cast вместо этого вы получите ожидаемый результат:

B* b = new C();
dynamic_cast<A*>(b)->a();
-121--3762201-

Приложение достигло конца срока службы с момента поставки без какой-либо документации. Начните разработку сейчас, и вы можете подумать о замене человека, который знает исходную систему. Если они прошли 6/7 лет без создания какой-либо документации, они не те, кого вы хотите в вашей компании.

2
ответ дан 18 December 2019 в 11:56
поделиться

Единственный вид документации, которая расширит жизнь вашей системы, - это вещи, которые остаются согласованными в качестве системы изменений в своей жизни, такие как тестовые люксы, самодиагностические инструменты, комментарии кода, декларативные контракты, такие как Interfcages, и автоматически сгенерированные документации.

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

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

2
ответ дан 18 December 2019 в 11:56
поделиться

Я обнаружил, что принимая снимки объекта с каждым событием (создание, обновление и т. Д.) И хранение этих снимков (наряду с датами и информацией пользователя) в другой таблице позволяет встретить все виды потребностей в исторической отслеживании в жизни приложения. Затем вы можете представить снимки пользователю, представить хронологические изменения пользователю, вывести состояние объекта на заданной дате и т. Д.

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

Отредактируйте: также, когда пользователь удалил объект, я бы флагополул запись как удаление и выполнить конечный снимок для таблицы истории. Вы можете скрыть объект от интерфейса на неопределенный срок или вы могли бы выбрать его - зависит от потребностей использования.

-121--3397802-

, чтобы сделать длинную историю: я в сопоставимой ситуации.

  • Поскольку длительное время это приложение является чем-то вроде кашевака, но компания не может позволить себе (или намереваться) разработать новое приложение, она не умрет, прежде чем клиенты решили купить систему более свежи.

  • Переписывание без (документированных) требований практически невозможно.

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

  • Если вы должны поддерживать это приложение, вы должны ввести интерфейсы между модулями, уменьшить общую сложность. Такие старые модули независимо от того, насколько они мессиятся, не волнуют, если вам нужно плагин новую функциональность.

1
ответ дан 18 December 2019 в 11:56
поделиться

Я проходил послушному процессу. У нас было веб-приложение, которое проводилось почти 8 лет. В то время было сделано много технического обслуживания, расширяя его способами, мы не предполагали. Тем не менее, ядро ​​было хорошо, и он все еще мог быть растянутым.

Что подтолкнуло нас, было затраты на техническое обслуживание. Найти людей с правильным набором навыков было легко 8 лет назад. Сегодня никто не хочет работать в этих условиях; Не даже нас :)

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

Итак, мы использовали Screen Shots в качестве наших функциональных требований, обновляли внешний вид и чувствовали себя, и даже могли доставлять повышенную функциональность. Мы также смотрели на данные использования для выявления деталей, которые были редко или никогда не использовали и обрезаны и обрезали их и сосредоточили больше внимания на деталях, которые были использованы.

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

Конечный фактор заключался в том, что наше приложение модульное. Таким образом, мы смогли ловить его в размерах, достаточно маленькими, чтобы иметь комбинацию коротких расписаний доставки с периодом простоя / анализа между каждым результатом. Это гарантировало, что мы были на правильном пути на каждом этапе.

0
ответ дан 18 December 2019 в 11:56
поделиться

Это такие вещи, которые я мог бы рассмотреть при принятии решения, если система может идти «конец жизни»:

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

Это написано в технологии, которую клиенты будут направлены от того, как было бы неловко взаимодействовать в их продуктах, или требует, чтобы они запустили «устаревшие» платформы? Это даст потенциальному клиенту впечатление, что ваша компания значительно позади времен E.g. VB6, вероятно, просто все еще в порядке, даже в 2010 году, но требует совместимости Win16, вероятно, нет.

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

Если это важно для вас, это платформа развития все еще поддерживается поставщиком? Собираетесь ли вы ограничены на какое оборудование или ОС вы можете запустить его, если поставщик больше не обновляет его? Аналогичным образом, есть ли дыры в платформе безопасности, которые могут быть обновлены? Даже ниша продукты с открытым исходным кодом могут пострадать от этого. После того, как продукт выходит из одолжения, и Core Developers перемещается на свежие проекты, может быть трудно получить исправления, выполненные сообществом.

Если оно поддерживается, являются ли поставщиками, заряжающими вас премией для поддержки старой платформы? Если нет сейчас, то как долго они сделают?

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

Насколько сложно выпустить функциональные изменения в нем без обширных изменений «дробовика», которые звонит во всей системе? Это возвращается к тому, как модульная система была разработана в первую очередь. Если вы не хуже, что ваши конкуренты в получении функций на рынке вы, вероятно, в порядке.

Каковы были бы стоимость повторного написания системы? Как это сравнивается с тем, насколько он дешевле будет поддерживать или увеличить доход продажи? Это может быть не экономически осуществимо сделать целое повторное писать. Если платформа развития является звуком, то вы могли бы просто попробовать больше подхода рефакторинга. Именно здесь есть хороший тестовый люкс и документация.

0
ответ дан 18 December 2019 в 11:56
поделиться

Веб-дизайнер: кто-то, кто разрабатывает внешний вид веб-страниц

веб-разработчика: кто-то, кто пишет код резервного копирования для страниц (например, HTML, CSS и т. Д.)

Web Programmer: Кто-то, кто использует языки Backeng Server, такие как ASP, PHP, RUBY и т. Д., Для записи логики для веб-приложения.

-121--1872452-

Даже если он очень хорошо спроектирован и функционирует, тот факт, что он не имеет документации и зависит от одного человека для его жизни, означает, что продукт очень хорошо вошел в неизвестное состояние. Это не хороший знак. Я бы согласился, что продукт длинный прошедший «конец жизни»

0
ответ дан 18 December 2019 в 11:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: