Thursday, October 30, 2008

Developing an enterpricy solution for less

Enhetstester som kjøres automatisk og jevnlig utover utviklingsperioden
Testene fungerer som dokumentasjon, og viser hva som er lov/ikke lov, best practices og gjør det lettere å komme igang med noen annens kode
Et mål kan være å få koden enklere for at den skal bli mer oversiktlig, og lettere å begynne å jobbe mot.

Dele opp operasjonene i komponenter som gjør minst mulig. De har en startposisjon hvor de henter noe fra disk og legger resultatet tilbake når prosessen er ferdig.
Dette sikrer at kompleksiteten holdes lav, og at man kan skalere de komponentene som bruker mest ressurser.
Lett å holde track på hvor langt en gjennomkjøring har kommet.
Unngår å ha en lang kjede med dyre operasjoner som kan feile halvveis

Hold deg til enkle standarder som finnes på markedet.
RSS, XML, JSON, REST, "Ruby on Rails", komprimert XML
Pass på grensesnittene (Interface), særlig ut mot kunden. Disse må endres så sjelden som mulig.
Skill grensesnittene fra implementasjon

Ny funksjonalitet som "Endring av kundedata" kan godt implementeres med "Ruby on Rails"
Prøv å holde kompleksiteten lav. Trenger virkelig kunden alt det han spør om?
Enkle applikasjoner som ikke har avhengigheter til hverandre.
REST tankegang for å manipulere dataene, helt ut til Webgrensesnittet kan være en stor fordel

Ha Load balancer og throttlers mot integrasjonspunkter og interfacene mot kunden.
Dvs at dere har kontroll på antall forespørsler som kommer inn og som går ut mot kunden.
Det er en fordel å kunne skru av og på traffikken for å hindre at systemet henger seg, og lett kunne switche aktive systemer og endepunkter

SIMPLICITY IS THE KEY

No comments:

Post a Comment

Spam will be pruned