SlideShare uma empresa Scribd logo
1 de 27
Agile
Development
Practices:
Coding &
Productivity
Alex Moore, HMB
Traditional Big „A‟ 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

     That is, while there is value in the items on
    the right, we value the items on the left more.
Traditional Big „A‟ Agile
   Agile Modeling
   Agile Unified Process (AUP)
   Dynamic Systems Development Method (DSDM)
   Essential Unified Process (EssUP)
   Extreme Programming (XP)
   Feature Driven Development (FDD)
   Open Unified Process (OpenUP)
   Scrum
   Velocity tracking
Little „a‟ agile
Little „a‟ agile
1.   Can you react immediately and without
     panic if external constraints on your
     project change?

2.   Do you review your process frequently
     and regularly to make sure the answer to
     the first question is always yes?
How can we do this in
waterfall or constrained
environments?
Subterfuge!
Agile Coding
SOLID Coding
 Single Responsibility Principle
 Open/closed Principle
 Liskov substitution principle
 Interface segregation principle
 Dependency inversion principle
Clean Coding
 PIE
 Baby   steps
 KISS
 YAGNI
 DRY
 BoyScout Rule
 Good Neighbor Rule
Using GIT for Great Good!
What Git is about
1.   Use CVS as an example of what NOT to
     do.
2.   Support a distributed workflow
3.   Strong safeguards against corruption,
     PEBKAC or malicious
4.   High Performance
Branching, Merging
Branching, Merging
 git branch NewBranch
 git checkout NewBranch


 <do  work>
 git commit –a –m „bug fix‟


 git checkout master
 git merge NewBranch
Decentralized Goodness
Git-tfs
 Treats   TFS as a remote repository

1.   Setup TFS “remote repository”
2.   <do work>
3.   Fetch latest
4.   Merge
5.   Use Checkintool.
Other Productivity Tips
Keep you hands where I can
see them!
Application Launchers
Visual
Studio
Shortcuts
ReSharper
Beyond Compare
Notepad++
Resources
domo arigato
anm@hmbnet.com

Mais conteúdo relacionado

Mais procurados

HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearBHOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
DevOpsDays Tel Aviv
 

Mais procurados (20)

YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
YOUR OPEN SOURCE PROJECT IS LIKE A STARTUP, TREAT IT LIKE ONE, EYAR ZILBERMAN...
 
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearBHOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
HOW TO OPTIMIZE NON-CODING TIME, ORI KEREN, LinearB
 
MERGE 2016 Opening Remarks
MERGE 2016 Opening RemarksMERGE 2016 Opening Remarks
MERGE 2016 Opening Remarks
 
Learn Fast, Fail Fast, Deliver Fast: The MOD Squad Way at MetLife
Learn Fast, Fail Fast, Deliver Fast: The MOD Squad Way at MetLifeLearn Fast, Fail Fast, Deliver Fast: The MOD Squad Way at MetLife
Learn Fast, Fail Fast, Deliver Fast: The MOD Squad Way at MetLife
 
SecOps Armageddon: A look into the future of security & operations
SecOps Armageddon: A look into the future of security & operationsSecOps Armageddon: A look into the future of security & operations
SecOps Armageddon: A look into the future of security & operations
 
DevOps and the Importance of Single Source Code Repos 
DevOps and the Importance of Single Source Code Repos DevOps and the Importance of Single Source Code Repos 
DevOps and the Importance of Single Source Code Repos 
 
CakePHP mistakes made 2015
CakePHP mistakes made 2015CakePHP mistakes made 2015
CakePHP mistakes made 2015
 
Software Supply Chain Automation Removes Roadblocks to Rugged DevOps
Software Supply Chain Automation Removes Roadblocks to Rugged DevOpsSoftware Supply Chain Automation Removes Roadblocks to Rugged DevOps
Software Supply Chain Automation Removes Roadblocks to Rugged DevOps
 
Rock Stars, Builders, and Janitors: You're Doing it Wrong
Rock Stars, Builders, and Janitors: You're Doing it WrongRock Stars, Builders, and Janitors: You're Doing it Wrong
Rock Stars, Builders, and Janitors: You're Doing it Wrong
 
Why agile?
Why agile?Why agile?
Why agile?
 
SLO DRIVEN DEVELOPMENT, ALON NATIV, Tomorrow.io
SLO DRIVEN DEVELOPMENT, ALON NATIV, Tomorrow.ioSLO DRIVEN DEVELOPMENT, ALON NATIV, Tomorrow.io
SLO DRIVEN DEVELOPMENT, ALON NATIV, Tomorrow.io
 
Gamification of Chaos Testing
Gamification of Chaos TestingGamification of Chaos Testing
Gamification of Chaos Testing
 
The left is not wrong, just not right; It's time to shift right!
The left is not wrong, just not right; It's time to shift right!The left is not wrong, just not right; It's time to shift right!
The left is not wrong, just not right; It's time to shift right!
 
Ops Happen: Improve Security Without Getting in the Way
Ops Happen: Improve Security Without Getting in the WayOps Happen: Improve Security Without Getting in the Way
Ops Happen: Improve Security Without Getting in the Way
 
Silver Lining for Miles: DevOps for Building Security Solutions
Silver Lining for Miles: DevOps for Building Security SolutionsSilver Lining for Miles: DevOps for Building Security Solutions
Silver Lining for Miles: DevOps for Building Security Solutions
 
Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?
 
Painless DevSecOps: Building Security Into Your DevOps Pipeline
Painless DevSecOps: Building Security Into Your DevOps PipelinePainless DevSecOps: Building Security Into Your DevOps Pipeline
Painless DevSecOps: Building Security Into Your DevOps Pipeline
 
Good project from scratch - from developer's point of view
Good project from scratch - from developer's point of viewGood project from scratch - from developer's point of view
Good project from scratch - from developer's point of view
 
Unbloat your SDLC
Unbloat your SDLCUnbloat your SDLC
Unbloat your SDLC
 
Building Robust Applications with Chaos Engineering
Building Robust Applications with Chaos EngineeringBuilding Robust Applications with Chaos Engineering
Building Robust Applications with Chaos Engineering
 

Destaque (6)

Sidra Fact Sheet
Sidra Fact SheetSidra Fact Sheet
Sidra Fact Sheet
 
Sidra Agile Software Process
Sidra Agile Software ProcessSidra Agile Software Process
Sidra Agile Software Process
 
EssUP - Essential Unified Process
EssUP - Essential Unified ProcessEssUP - Essential Unified Process
EssUP - Essential Unified Process
 
Agile Business Process Development: Why, When and How
Agile Business Process Development: Why, When and HowAgile Business Process Development: Why, When and How
Agile Business Process Development: Why, When and How
 
Agile projectdevelopment
Agile projectdevelopmentAgile projectdevelopment
Agile projectdevelopment
 
Agile Process
Agile ProcessAgile Process
Agile Process
 

Semelhante a Agile Development Practices - Productivity

Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineering
Zeeshan Masood S
 
Agile intro resources
Agile intro resourcesAgile intro resources
Agile intro resources
Anwar Sadat
 

Semelhante a Agile Development Practices - Productivity (20)

Don’t Let Process Hold You Back: Best Practices for Cross-Functional Collabor...
Don’t Let Process Hold You Back: Best Practices for Cross-Functional Collabor...Don’t Let Process Hold You Back: Best Practices for Cross-Functional Collabor...
Don’t Let Process Hold You Back: Best Practices for Cross-Functional Collabor...
 
Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineering
 
Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineering
 
How to Manage the Risk of your Polyglot Environments
How to Manage the Risk of your Polyglot EnvironmentsHow to Manage the Risk of your Polyglot Environments
How to Manage the Risk of your Polyglot Environments
 
Devops & Agility - Build the Culture, Get the Tools, Win the Day - Dundee Tec...
Devops & Agility - Build the Culture, Get the Tools, Win the Day - Dundee Tec...Devops & Agility - Build the Culture, Get the Tools, Win the Day - Dundee Tec...
Devops & Agility - Build the Culture, Get the Tools, Win the Day - Dundee Tec...
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Agile intro resources
Agile intro resourcesAgile intro resources
Agile intro resources
 
Desmistificando Tecnologias
Desmistificando TecnologiasDesmistificando Tecnologias
Desmistificando Tecnologias
 
Agile Science
Agile ScienceAgile Science
Agile Science
 
DevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsDevOps - Understanding Core Concepts
DevOps - Understanding Core Concepts
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)
 
30 days or less: New Features to Production
30 days or less: New Features to Production30 days or less: New Features to Production
30 days or less: New Features to Production
 
DevOps interview questions and answers
DevOps interview questions and answersDevOps interview questions and answers
DevOps interview questions and answers
 
Don't go Agile unless you know why
Don't go Agile unless you know whyDon't go Agile unless you know why
Don't go Agile unless you know why
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Critical Capabilities to Shifting Left the Right Way
Critical Capabilities to Shifting Left the Right WayCritical Capabilities to Shifting Left the Right Way
Critical Capabilities to Shifting Left the Right Way
 
Emerging Trends of Software Engineering
Emerging Trends of Software Engineering Emerging Trends of Software Engineering
Emerging Trends of Software Engineering
 
Lean Software Development & Kanban
Lean Software Development & KanbanLean Software Development & Kanban
Lean Software Development & Kanban
 
GMO'less Software Development Practices
GMO'less Software Development PracticesGMO'less Software Development Practices
GMO'less Software Development Practices
 
Agile Business Intelligence
Agile Business IntelligenceAgile Business Intelligence
Agile Business Intelligence
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Agile Development Practices - Productivity

Notas do Editor

  1. Short List from Wikipedia: http://en.wikipedia.org/wiki/Agile_software_development#Agile_methods
  2. Photo fromhttp://www.flickr.com/photos/dnorman/2172773143/Creative Commons Attribution-NonCommercial 2.0 Generic (CC BY-NC 2.0)
  3. Horse: http://www.flickr.com/photos/cristic/265149677/ CC Attribution 2.0 Generic (CC BY 2.0)Bunny: http://squeak.preeminent.org/orgBlog/C244531379/E20051003220643/Media/trojanBunny.jpg Fair Use
  4. http://lostechies.com/wp-content/uploads/2011/03/pablos_solid_ebook.pdfSingle responsibility principlethe notion that an object should have only a single responsibility.Open/closed principlethe notion that “software entities … should be open for extension, but closed for modification”.Liskov substitution principlethe notion that “objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program”. See also design by contract.Interface segregation principlethe notion that “many client specific interfaces are better than one general purpose interface.”Dependency inversion principlethe notion that one should “Depend upon Abstractions. Do not depend upon concretions.”Dependency injection is one method of following this principle.
  5. PIE – Program Intently and ExpressivelyBaby Steps – Don’t try to do the whole thing in once giant leap, cut off small pieces, work on them, test them, rinse, repeat. Keep this cycle tight so you know exactly when/where you messed something up.KISS – Don’t build a space shuttle, a bottle rocket would probably do.YAGNI – THROW AWAY CODE IF ITS COMMENTED OUT OR NOT IN USEDRY – Smack yourself if you copy paste code more than once. Move to method is great here, start with procedural then move to more genericized code.Boy Scout Rule – Leave it cleaner than you found it – renaming variables helps muchoGood Neighbor Rule – Cut your grass, make tests, automate things so you don’t leave a mess for your coworkers.
  6. http://en.wikipedia.org/wiki/Git_(software)
  7. Explain story with flaky VPN.Don’t have to be connected to the server to branch, merge, swap changes with coworkers.http://nvie.com/posts/a-successful-git-branching-model/- creative commons
  8. Two-way bridge between GIT and TFS.
  9. http://www.flickr.com/photos/tuxophil/54865095/sizes/l/in/photostream/
  10. Original:http://en.wikipedia.org/wiki/File:AT4_rocket_launcher.jpg
  11. http://www.geograph.org.uk/photo/1730107 -- CC Sharealike
  12. http://www.flickr.com/photos/thebusybrain/2492945625/