View
40
Download
0
Category
Preview:
DESCRIPTION
Kyvykäs kehitysympäristö - työkalut kuntoon !. Sami Poimala, Offbeat S olutions. #td2013fi. sami.poimala @ offbeat.fi. #td2013fi. Esityksen tavoitteet. Rohkaista ajattelemaan kehitysympäristön kyvykkyyttä…. …. j a kehittämään sitä! Esitellä muutama työkalu käytännössä. - PowerPoint PPT Presentation
Citation preview
Kyvykäs kehitysympäristö
- työkalut kuntoon!Sami Poimala, Offbeat Solutions#td2013fi
#td2013fi
sami.poimala @ offbeat.fi
Esityksen tavoitteet
1. Rohkaista ajattelemaan kehitysympäristön kyvykkyyttä….
…. ja kehittämään sitä!
2. Esitellä muutama työkalu käytännössä
Kyvykäs kehitysympäristö?
#td2013fi
Kyvykäs kehitysympäristö
Työn organisoint
i
Työn tekijät
Työvälineet
Tavoitteiden asettaminen Työn jakaminen
Projektinhallinta Ympäristö
Osaaminen Motivaatio
Kyvykäs kehitysympäristö: Työvälineet
Tekniset
laitteet
Ohjelmistot
Kyvykäs kehitysympäristö: Ohjelmistot
Pakolliset ohjelmist
otIDE
Version-
hallinta …
Työkalut
RégisLaurentDirector of Operations, Global KnowledgeCompetencies include:Gold LearningSilver System Management
Työkalut ==Kyvykkyyttä lisäävät ohjelmistot
#td2013fi
“Mittaa kehitysympäristösi kyvykkyys”Kolme kihelmöivää kysymystä
1. Kuinka kauan kestää kehitysympäristön pystyttäminen?
2. Kuinka usein kehitys keskeytyy – teknisestä syystä -turhaan?
3. Kuinka kauan kestää sovelluksen julkaisu?
1. Kehitysympäristön pystyttäminen
1. Mistä löytyy lähdekoodit?2. Entä mahdollisesti tarvittavat muut
kirjastot?3. Kääntyykö projekti?4. Mitä muuta on tehtävä, ennen kuin
kehitys voi alkaa? 1. IIS:n konffaus? 2. Tietokannan perustaminen? 3. Muuta mahdollista initialisaatiota?
2. Kuinka usein kehitys keskeytyy turhaan?1. Onko versionhallinnassa aina kääntyvä
versio?2. Tietokannan skeemaa pitäisi muuttaa.
Kriisi?3. Tämän hetkistä versiota pitäisi demota.
Koko päivä pilalla?
3. Kuinka kauan kestää sovelluksen julkaisu?1. Version kääntäminen2. Tietokannan synkronointi3. Datakonversiot4. Asennuspaketin koostaminen
1. web.config2. .msi3. …
5. Tiedostojen kopiointi6. Release Notes
=> Mikä on sinun prosessisi?
CASE www.futudent.c
om
Futudent dental HD Camera and services
14.30 @ veranda 3
Julkaisuarkkitehtuuri
Kehitys-ympäristöt
Versionhallinta Käännöspalvelin
Testipalvelin
Tuotantopalvelin
Käännösagentti
Tehtävien hallinta
Käännöskonfiguraatiot
1. Jatkuva integraatio
2. Client1. Nightly build2. Virallinen
julkaisu
3. Web1. Nightly build2. Tuotannon
päivitys
MSI:1. Ajurit2. DirectX filtteri (C++)3. WPF-softa=> Ladattavaksi web-palvelusta1. Päivitä tietokanta2. Generoi web.config3. Päivitä webbisaitti /
luo asennuspaketti
1. Koko .sln käännös
2. Ajaa yksikkötestit
Asiaan!Miten kaikki tämä on toteutettu?
#td2013fi
Keskeiset työkalut a´la Offbeat
VersionhallintaUlkoisten komponenttien hallintaKäännöstyökaluKonfiguraatiotiedostojen generointiTietokantaskeeman hallintaAsennusten skriptausJatkuva integraatio (CI)
Mercurial / GITNuGetMSBuildWeb.config transformationsFluentMigratorPowerShellTeamCity
Muuta pientä
NHibernate, AutoMapper, Autofac, Moq, xUnit, ReSharper
Julkaisuprosessi
Demo
#td2013fi
TeamCity
1. Ilmainen jatkuva integraatio –palvelin1. 20 käännöskonfiguraatiota per palvelin, 3 agenttia
2. Osaa ajaa lähes mitä tahansa buildisteppejä
1. .sln, MSBuild, MSTest, CommandLine, NAnt, ladata NuGet-paketteja, PowerShell, FxCop, …
3. ”Automaattiset” artefaktit4. Toimii NuGet-serverinä, myös
autentikoidut feedit
Yhteenveto
#td2013fi
Kolme kihelmöivää kysymystä
1. Kuinka kauan kestää kehitysympäristön pystyttäminen?Þ Versionhallinta, NuGet, TeamCity,
FluentMigrator, PowerShell2. Kuinka usein kehitys keskeytyy – teknisestä syystä -turhaan?=> TeamCity, FluentMigrator, xUnit3. Kuinka kauan kestää sovelluksen julkaisu?=> MSBuild, config transforms, Team City, FluentMigrator, PowerShell
Teesit
1. Läpimenoaika on kriittistä
2. Tuotantoasennusta on mietittävä heti projektin alussa
3. Automatisoi – mutta vasta kun tiedät mitä
4. Julkaise muutokset aina käyttäen automatisoitua asennustapaa
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentations. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Kiitos ja Q&A!Email: sami@offbeat.fiTwitter: @samipoimalahttp://samipoimala.com/it
PS. Tuliko mieleen ajatuksia, mitä turhia vaiheita on omassa kehitysprosessissasi?
Recommended