Headspring Certified Training Agile Boot Camp for .Net

Preview:

DESCRIPTION

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 - PowerPoint PPT Presentation

Citation preview

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, Lean & Extreme Programming

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

Source Control

Repository structure-Trunk

-Tags

-Branches

Automated build with nant

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

Domain-Driven Design

Object-Relational Mapping

Why ORM?

• Save human time.• Consistent quality• Work in object-oriented manner rather than data-oriented.

That’s all, folks!

Recommended