200 likes | 366 Views
Headspring Certified Training Agile Boot Camp for .Net. Presented by Jeffrey Palermo CTO, Headspring Systems Microsoft MVP, MCSD.Net jpalermo@headspringsystems.com. About me. CTO, Headspring Systems Software management consultant Agile coach MCSD.Net Microsft MVP Certified ScrumMaster
E N D
Headspring Certified TrainingAgile Boot Camp for .Net Presented by Jeffrey Palermo CTO, Headspring Systems Microsoft MVP, MCSD.Net jpalermo@headspringsystems.com
About me • CTO, Headspring Systems • Software management consultant • Agile coach • MCSD.Net • Microsft MVP • Certified ScrumMaster • Director, Austin .Net User Group • Board member, AgileAustin • INETA speakers bureau • U.S. Army Veteran • Party with Palermo
Agile • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan
Lean • Eliminate waste • Amplify learning • Decide as late as possible • Deliver as fast as possible • Empower the team • Build integrity in • See the whole
Extreme Programming • Whole team • Planning game • Small releases • Customer tests • Simple design • Pair programming • Test-Driven Development • Design improvement • Continuous integration • Collective code ownership • Coding standard • Metaphor • Sustainable pace
Repository structure -Trunk -Tags -Branches
What does a build do? • Compiles • Links • Versions • Packages • Runs all tests • Succeeds or fails, no gray area.
Why automate? • Avoid manual steps • Performs steps the same every time • Save human time • Increase rate of feedback
Prerequisites • Structured source control • Trunk • Tags • Branches • Access to all key dependencies within trunk working copy
Build goal From a checkout of the trunk, run a single command and output a verified, versioned, packaged, and deployable software application.
Key Steps • Increment version number • Create database that will be used in build testing • Compile and link all code files into .Net assemblies • Execute all primary tests to verify compiled software • Aggregate all files necessary for a deployment and package in organized .zip file • Commit deployable .zip to Subversion • Tag build with version number
Why ORM? • Save human time. • Consistent quality • Work in object-oriented manner rather than data-oriented.