New User Special Price Expires in

Let's log you in.

Sign in with Facebook


Don't have a StudySoup account? Create one here!


Create a StudySoup account

Be part of our community, it's free to join!

Sign up with Facebook


Create your account
By creating an account you agree to StudySoup's terms and conditions and privacy policy

Already have a StudySoup account? Login here


by: Michele Herzog
Michele Herzog
GPA 3.7


Almost Ready


These notes were just uploaded, and will be ready to view shortly.

Purchase these notes here, or revisit this page.

Either way, we'll remind you when they're ready :)

Preview These Notes for FREE

Get a free preview of these Notes, just enter your email below.

Unlock Preview
Unlock Preview

Preview these materials now for free

Why put in your email? Get access to more of this material and other relevant free materials for your school

View Preview

About this Document

Class Notes
25 ?




Popular in Course

Popular in ComputerScienence

This 24 page Class Notes was uploaded by Michele Herzog on Thursday October 29, 2015. The Class Notes belongs to CS 601 at University of San Francisco taught by Staff in Fall. Since its upload, it has received 8 views. For similar materials see /class/231247/cs-601-university-of-san-francisco in ComputerScienence at University of San Francisco.

Similar to CS 601 at USF

Popular in ComputerScienence


Reviews for Obj


Report this Material


What is Karma?


Karma is the currency of StudySoup.

You can buy or earn more Karma at anytime and redeem it for class notes, study guides, flashcards, and more!

Date Created: 10/29/15
NITPfr IAN McFARLAND PRINCIPAL PIVOTAL COMPUTER SYSTEMS COPYRIGHT 2006 HQ ARE we An agiie development consultancy Java Ruby on Rails AJAXWeb 20 ii COdeveiopment and Coaching 13 Fishing and teaching to fish WHO ARE YOU AGELE EVELQPMENT A family of development methodologiesquote with common goals E Short iterations Changefriendly Aligned with real customer needs Scrum XP Crystal ContextDriven Testing Lean Development RUP or anything else that fits the principles of agile Adi LE WANH Agile valued Individuals and interactions over processes and tools 6 Working software over comprehensive documentation 0 Customer collaboration over contract negotiation 0 Responding to Change over following a plan I httpwwwagilemanifestoorg EXTREME PRQGRAMMHNG 2 One of the if not 95 leading Agile methodologies A disciplined methodology with an unfortunate name A collection of industry best practices turned up a few notches and integrated into a single development methodology Not analogous to extreme sports KP WHAT IS HT CIear customer visibIe stories S TestDriven Development Continuous Integration ii Short Iterations 13 Pair Programming Extensive Customer Involvement CUSTQMERVESEELE STQRKES The focus on customerVisible stories keeps development concrete and fights over architecture 15 It reminds us why we39re doing the work in the rst place 4 It forces us to justify our design choices grounding them in the real customer need TH E PLANNENG GAM E AND TH E PSI NT SYSTEM 3 Stories are estimated each week during a meeting traditionally called T 95 Planning Game Stories are broken down into units of 1 2 or 5 points 15 Points measure complexity not duration Larger stories are broken down into smaller stories that are 5 points39 worth or smaller 3 The customer prioritizes the work informed by the complexity estimates l l ESTT M 8 People are better at estimating complexity than duration a Tasks have fractal complexity Small tasks are more predictable than large ones 3 Exposing the cost of features and giving control to the customer creates alignment between the developer and the customer can do it in half a day 49 One point Iknow exactly how to do this and will be some work i Two points I know exactly how to do this but it featurequot Three points quotSomehow we will implement this Three points almost always turns into more and is a big red flag that the story needs to be broken down into smaller stories WELQCHTV T A focused team gets about as much done each week as it did the week before The number of points completed in one week is an excellent predictor of the number of points completed in the next 5 Predictable results build trust between developer and customer TESTDREVEN DEVELGPM EMT You write the tests before you write the code 9 Separates requirements From implementation Produces an executable specification and documentation that stays in sync with the code No code without a test 3 101 test coverage well at least at the start WHY DO WE CARE SO MUCH ABOUT TESTS SThe obvious reasons but they re secondary WHY WE CARE SO MUCH ABQUT TESTS The obvious reasons but they re secondary The real reasons 3 Separating requirements from implementation frees you from the tyranny ofpreoptimization Driving from tests forces modular usable design 33 Complete test coverage lets you refactor with impunity REDQE EEENEREFACTQR Write a test that expresses what your code is supposed to do and that fails and often you39ll write several layers of failing test before you write a line of code Write code that makes the tests pass iiDRefactor the code to improve design reduce duplication improve code clarity Make sure the tests still pass when you39re done Check in CQNTl N UQUS lNTEGRATEQN SI Everyone runs the entire test suite before submitting The continuous build checks out the trunk builds it and runs all tests if Problems are caught early when they39re easy to x The entire application is kept in a deployable state from the first week 3 One week iterations make for easier course corrections and shorten the feedback cycle Requirements change as the customer has a chance to validate the design through play testing SE Complete test coverage and alignment between customer and developer make course corrections painless instead of arduous cheap instead of eXpensive PAquot R3 13939 i iag M I Probably the most controversial part of XP 3 How can it be faster for two developers to work on the same problem Surely it39s faster if they work on two separate problems in parallel Yes we actually work this way with two developers working on a single machine Di THEE NATURALLY 4 Developers will instinctively 39pair program39 when one introduces another to a new code base Developers will instinctively work together to solve hard design problems But Developers don t always want to be so closely scrutinized HQ N PAERENG WVQRKS 4 Pairing accelerates knowledge transfer aiiPairing makes deep problems shallow Your 8020 rule overlaps favorably with your partner39s 8020 rule if Pairing keeps you focused i Pairing keeps you honest D0 YQU WRMTE CQDE Ask yourself what percentage ofyour development time you spend t stuck on some difficult problem 1 stuck on some trivial problem trying to choose between two implementation choices reading email or news or blog posts LUSTQ EM E R HNVQLVEM ENT 93 The customer owns the priorities the developer owns the cost estimates SEA feature isn39t done until its deployed to the demo server an approved by the customer T 95 Invalid 1 Features are really done when they39re marked done The customer and developer are aligned in reaching their common goal THE AGELE RHYTHM if The Planning Game 3 The daily standup i RedGreenRefactor syncgreensubmit DeployInent to demo and customer approval


Buy Material

Are you sure you want to buy this material for

25 Karma

Buy Material

BOOM! Enjoy Your Free Notes!

We've added these Notes to your profile, click here to view them now.


You're already Subscribed!

Looks like you've already subscribed to StudySoup, you won't need to purchase another subscription to get this material. To access this material simply click 'View Full Document'

Why people love StudySoup

Steve Martinelli UC Los Angeles

"There's no way I would have passed my Organic Chemistry class this semester without the notes and study guides I got from StudySoup."

Anthony Lee UC Santa Barbara

"I bought an awesome study guide, which helped me get an A in my Math 34B class this quarter!"

Jim McGreen Ohio University

"Knowing I can count on the Elite Notetaker in my class allows me to focus on what the professor is saying instead of just scribbling notes the whole time and falling behind."

Parker Thompson 500 Startups

"It's a great way for students to improve their educational experience and it seemed like a product that everybody wants, so all the people participating are winning."

Become an Elite Notetaker and start selling your notes online!

Refund Policy


All subscriptions to StudySoup are paid in full at the time of subscribing. To change your credit card information or to cancel your subscription, go to "Edit Settings". All credit card information will be available there. If you should decide to cancel your subscription, it will continue to be valid until the next payment period, as all payments for the current period were made in advance. For special circumstances, please email


StudySoup has more than 1 million course-specific study resources to help students study smarter. If you’re having trouble finding what you’re looking for, our customer support team can help you find what you need! Feel free to contact them here:

Recurring Subscriptions: If you have canceled your recurring subscription on the day of renewal and have not downloaded any documents, you may request a refund by submitting an email to

Satisfaction Guarantee: If you’re not satisfied with your subscription, you can contact us for further help. Contact must be made within 3 business days of your subscription purchase and your refund request will be subject for review.

Please Note: Refunds can never be provided more than 30 days after the initial purchase date regardless of your activity on the site.