2011-07-14 16 views
6

Witryna naszej organizacji przenosi się do systemu Sitecore CMS, ale zmagamy się z konfiguracją środowisk dla programistów (4), projektantów (4), osób zajmujących się kontrolą jakości (3), autorów (10-15) i osób zatwierdzających (4- 10) w sposób, w którym mogą pracować niezależnie, wiem, że będą zależności, ale pomysł polega na zminimalizowaniu tego.Środowiska Sitecore

Oto kilka zasad:

1) Kto jest odpowiedzialny za zmianę wtedy powinni zrobić to wszystko do czasu, gdy istnieje jakaś zależność.

2) Jeśli jeden zespół pracuje nad jedną funkcją, nie powinien się zatrzymywać ani wpływać na pracę innych zespołów. Jeśli na przykład kontrola jakości polega na testowaniu tej funkcji, Derringerzy i programiści powinni kontynuować pracę nad tą samą funkcją dla nowych ulepszeń.

Pytania związane z środowiskach:

1) W przypadku, gdy projektanci będą pracować? Chodzi mi o to, gdzie dodadzą swój html, js i obrazy? Na którym serwerze? W Sitecore? W kontroli źródła (TFS)?

2) W jaki sposób projektanci i programiści powinni współpracować? Wiem, że programiści będą pracować na swojej lokalnej maszynie w Sitecore. I będą promować swoją pracę na serwerze Integration, ale w jaki sposób zdobędą materiał dla projektantów? Załóżmy, że funkcja została pomyślnie uruchomiona, teraz wymagane są tylko zmiany w projektowaniu grafiki, powiedzmy style czcionek i niektóre obrazy, w których projektanci powinni wprowadzić te zmiany? Na jakim serwerze? Po tym jak ta instancja Sitecore zostanie zsynchronizowana z innymi instancjami Sitecore. A jeśli chodzi o zmiany w projekcie, nie chcę, aby programiści promowali dowolny kod lub plik.

3) Jaki jest najbezpieczniejszy sposób zsynchronizowania środowiska/baz danych Sitecore? Oznacza to, co zostało opublikowane na stronie produkcyjnej, będziemy potrzebować w środowisku DEV, QA i UAT.

Nie chcemy robić żadnej ręcznej promocji plików kodu, html, js i obrazów. Czy jest jakiś sposób na zrobienie tego rodzaju rzeczy automatycznie za pomocą narzędzi lub poleceń Sitecore. Osobiście nie lubię pakietów Sitecore.

4) Czy znasz jakieś dobre referencje? Gdzie mogę znaleźć odpowiedzi na podobne pytania? Każda strona internetowa, książka, blog?

Wiem, że jeden dokument "Understanding Sitecore Deployments 6.2", ale projektanci, część i jak różne środowiska będą zsynchronizowane, nie są tam omawiane.

Dzięki.

Odpowiedz

4
  1. Nie ma potrzeby, aby projektanci mają dostęp do Sitecore zbudować statycznych znaczników/JS/CSS/obrazów, ale za to zostać włączone do Sitecore trzeba będzie kogoś zintegrować go dodając sublayouts lub renderingi, które mają znaczników i odwołaj się do css/js/images. Jeśli rozdzieliłeś projektantów i programistów, zwykle pomocne jest wytłumaczenie im, że korzystasz ze środowiska formularzy internetowych asp.net, ponieważ istnieją specjalne kwestie, o których warto pamiętać (np. Identyfikatory kontrolne i użycie formularzy). Możliwość współdzielenia kontroli nad źródłami za pomocą programistów stanowi ogromną zaletę, ponieważ ogranicza liczbę przeróbek, które mogą być konieczne, jeśli obie pracują w trybie stycznym i dokonują osobnych aktualizacji.

  2. Warto skonceptualizować różnicę między treścią statyczną i dynamiczną.Jeśli chcesz dokonać "zmiany projektu", która wymaga aktualizacji znaczników/css/js, będziesz musiał przepchnąć tę zmianę przez cały cykl rozwoju oprogramowania w taki sam sposób, jak robią to deweloperzy. W rzeczywistości najlepiej byłoby, gdyby programiści to zrobili. Jeśli chcesz dokonać zmiany, która ma bardziej "dynamiczny" charakter i została opracowana dla np. aktualizowanie tekstu, linków, obrazów, a nawet css w niektórych przypadkach przy użyciu pól edytora tekstu w formacie RTF można oczywiście wykonać przez projektantów. Będą "redaktorami", jak każdy, kto używa CMS. Jak duże zaangażowanie w procesie redakcyjnym zależy od tego, jak daleko sięgasz do paradygmatu "opartego na treści". Jeśli chcesz, możesz mieć wszystkie swoje strony po prostu odsłonić pole edytora tekstu sformatowanego, ale byłoby to bardzo złe praktyki z punktu widzenia Sitecore.

  3. Sprawdź produkt o nazwie Team Development for Sitecore od Hedgehog Development.

  4. Istnieje wiele kanałów RSS przez wiodących deweloperów sitecore, takich jak John West, Alex Shyba e.t.c. Istnieje również wiele list czytelniczych.

3

Ta ilustracja Sitecore Infrastructure pokazuje sposób uporządkowania otoczenia, unikając nakładania się i blokowania. Odpowiedzi na twoje pytania:

1 i 2) Zarówno deweloperzy, jak i projektanci pracują na swoich lokalnych maszynach, używając lokalnych instancji Sitecore. Używają TFS jako systemu kontroli źródła, dzięki czemu mogą wzajemnie integrować swoją pracę. Zwykle Projektanci pracują więcej w CSS, JavaScriptcrips, Images, Sublayouts (marce) i Developers na samym kodzie. Mamy wdrożony serwer Continuous Integration (Ex: TeamCity) wdrażający zmiany w 3 różnych środowiskach - serwer CI (dla kontroli kondycji), serwer QA (dla zapewnienia jakości) i serwer Prod (dla edycji zawartości i dostępu publicznego). Kiedy, na przykład, projektant musi naprawić problem z układem, zrobi to na swoim lokalnym komputerze, a następnie zatwierdzą zmiany w TFS. W następnym kroku TeamCity wdroży zmiany w serwerze CI, jeśli kompilacja jest OK, osoba może uruchomić kompilację i przetestować poprawki. Jeśli wszystko działa zgodnie z oczekiwaniami, ktoś może uruchomić kompilację na serwerze produkcyjnym, a poprawka zostaje uruchomiona.

Trzeba to inny schemat Production Setup pokazujące szczegóły, w jaki sposób można skonfigurować serwer Produkcja oddzielić Authoring i zawartość dostawy - Tu jest poszukiwanie Znalazłem kilka blogach dotyczące konfigurowania: sitecore content authoring delivery

3) Ty need TDS (Team Development for Sitecore) - Użyj tego narzędzia do serializowania/deserializowania elementów z jednej instancji Sitecore do innej. Następnie możesz mieć zserializowane pliki do TFS i udostępniać je w zespole i środowiskach. Dobrą rzeczą jest to, że możesz używać TeamCity do automatycznego przekazywania przedmiotów do środowisk CI/QA/Prod;

4) Głównym źródłem informacji o Sitecore jest ich SDN - Możesz zarejestrować się bezpłatnie (lub mieć rozszerzone konto, jeśli masz licencję Sitecore)