Hej

Jeg tænker tit på, at jeg synes, at det kunne være sjovt og lærerigt at prøve at lave en hel arkitektur og applikation på ”den rigtige måde”.
Har I lyst til at være med? Her er lidt af mine strøtanker og de er naturligvis til diskussion.
  • Baseret på .NET platformen
  • Består som minimum af database, applikationsserver, og klient
  • Teknisk set kunne jeg forestille mig at vi benytter
    • SQL Server 2008
    • VS 2010
    • .NET/C#
    • Silverlight (og måske smartphone klient)
    • WCF/RIA services
    • Entity Framework
    • WWF
    • Code analysis, stylecop…
  • Vi vil forsøge at adressere alle aspekter, herunder fx
    • System-, databaseskema- og kodedokumentation
    • Versionering af databaseskema
    • Automatiseret test
    • Logning/debugging information
    • Customization og extensibility model – hvordan kan kunder/partnere fx tilrette og udvide systemet på en måde så det også virker efter opgradering
    • Hvis nogen tænder på det kunne vi også eksperimentere med mere processorienterede ting som fx aktivetsbranches
    • shelving og review
    • build og release
    • changerequests/workitems
  • Det er noget vi laver i vores fritid og vi ejer det 100% selv og hver af os kan frit bruge det som vi lyster

Jeg har også nogle idéer fra mit tidligere job, som jeg synes kunne være interessante at debattere og måske implementere i en eller anden form. Uden at uddybe det nærmere, så er her et par stikord:
  • Specifikationssprog for databaseskema/-model
  • Specifikationssprog for vinduer/dialoger + renderingsengine. Så kan man næsten lave en helt ny klient ved blot at implementere en ny renderingsengine.
  • Workflow maskine indbygget i renderingsengine for vinduer/dialoger, således at specifikation af vinduer også består af ”aktioner”. Så kan vi fx lave workflow specifikationer der siger ”Timeseddel.Bogfør.Enabled = Timeseddel.Total < new Hours(24)”.

Grundlæggende kunne det være spændende at lave en ”perfekt” applikation og arkitektur under nogle rammer, hvor vi kan lære af hinanden og hvor udgangspunktet i en eller anden grad er, at alt skal laves rigtigt og opdager man at noget kunne laves smartere – ja, så laver vi det selvfølgeligt om. Selvfølgelig findes der ingen perfekt applikation eller arkitektur. Det afhænger af forretningsområde og en milliard andre ting, så en del af projektet bliver også undervejs i en eller anden grad at definere en forretningsmodel for at berettige de tekniske/arkitekturmæssige valg vi foretager undervejs.

Jeg ved ikke præcis hvordan vi vil kunne administrere projektet, men et versionsstyringssystem er selvfølgeligt et absolut minimumskrav. Jeg foreslår vores TFS. Et debatforum (Unik eller ej er nok lidt ligegyldigt for mig) vil sikkert også være nødvendigt. Derudover kunne vi måske engang imellem tage en time eller to fra kl 15 når Michael er i Vejle (hvis du/han vil være med) – selvfølgeligt 100% frivilligt. Det sjove ved at være flere er selvfølgelig også, at der er mulighed for at fokusere på ens præferenceområder – det kunne fx være Nikolaj på databasen og Michael på Silverlight eller hvad ved jeg. Som udgangspunkt er min holdning dog at man ikke er forpligtet på nogen minimumsindsats og man er heller ikke forpligtet på at deltage i andre dele af projektet end dem man har lyst til  Projektet behøver ikke nogen sinde at blive færdigt – men det vil da helt sikkert være fedt, hvis det rent faktisk lykkes at få implementeret hele stakken fra database til UI i klienten.

Personligt ved jeg, at der vil være perioder hvor jeg ikke får gjort noget ved det for til gengæld i andre perioder måske at bruge flere aftener på en uge på det. Men systemet skal jo også dokumenteres og kodes på en måde som gør det let for andre at tage over…
Har du lyst til at være med?

Med venlig hilsen
Bjarke Meier

Last edited Aug 26, 2010 at 6:19 AM by halvorsen, version 5

Comments

No comments yet.