Moja firma rozważa konsolidację wszystkich aplikacji i witryn poziomu 1 (tj. Produkcji na najwyższym poziomie) w jedną kompleksową bazę kodu.
Teoria polega na tym, że ich uprawnienia, wygląd i ogólna funkcjonalność mogą być homogenizowane i centralnie zarządzane.
Nie mam końca obaw związanych z tym podejściem, ponieważ struktury danych leżące u podstaw każdej aplikacji są bardzo różne, reguły biznesowe są złożone i unikalne dla każdej aplikacji, a ogólne podstawy kodu dla istniejących aplikacji są bardzo zróżnicowane i bardzo zaniedbane.
EDYCJA :
Obecne środowisko składa się z trzech witryn ASP.Net 1.1, które ledwo dostrzegły prawdziwej miłości od momentu napisania (głównie z powodu braku doświadczonych programistów w firmie) oraz jednej aplikacji MVC2, która była również witryną ASP.Net 1.1, zanim została zaktualizowany w zeszłym roku. Piszemy wyłącznie w języku C #.
Firma jest dość mała, zatrudnia około 50 pracowników; z których trzech to prawdziwi programiści. Zarządzanie (nawet zarządzanie IT) nie ma żadnego zaplecza informatycznego ani doświadczenia innego niż zarządzanie projektami projektów IT (a zatem pewna wiedza na temat terminologii i wpływu na biznes).
Aplikacje są głównie usługami online do obsługi produktów sprzedawanych przez firmę. Firma nie sprzedaje bezpośrednio żadnego oprogramowania.
Sformułujmy więc całą tę sytuację za pomocą dość konkretnego i możliwego do odpowiedzi pytania: jakie są niektóre istotne powody przemawiające za i przeciw próbowaniu połączenia wszystkich systemów w jedno nadrzędne rozwiązanie, biorąc pod uwagę obecne warunki (tj. Stara baza kodu, złożone systemy biznesowe i reguły )?