<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Gunnar Peipman's ASP.NET blog : Agile</title><link>http://weblogs.asp.net/gunnarpeipman/archive/tags/Agile/default.aspx</link><description>Tags: Agile</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Agile Principles, Patterns, and Practices in C# – book review</title><link>http://weblogs.asp.net/gunnarpeipman/archive/2009/07/28/agile-principles-patterns-and-practices-in-csharp.aspx</link><pubDate>Tue, 28 Jul 2009 20:24:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7156121</guid><dc:creator>DigiMortal</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/gunnarpeipman/rsscomments.aspx?PostID=7156121</wfw:commentRss><comments>http://weblogs.asp.net/gunnarpeipman/archive/2009/07/28/agile-principles-patterns-and-practices-in-csharp.aspx#comments</comments><description>&lt;p&gt;   &lt;table border="0" cellspacing="0" cellpadding="0" align="left"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td align="center"&gt;&lt;a title="Agile Principles, Patterns, and Practices in C# (Robert C. Martin Series)" href="http://www.amazon.com/gp/product/0131857258?ie=UTF8&amp;amp;tag=gupesasnebl-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0131857258"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Agile Principles, Patterns, and Practices in C# (Robert C. Martin Series)" border="0" alt="Agile Principles, Patterns, and Practices in C# (Robert C. Martin Series)" src="http://weblogs.asp.net/blogs/gunnarpeipman/agileprinciplespatternspracticescsharp_711A6AC5.png" width="171" height="229" /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;&lt;a href="http://www.amazon.com/gp/product/0131857258?ie=UTF8&amp;amp;tag=gupesasnebl-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0131857258"&gt;&lt;img title="Agile Principles, Patterns, and Practices in C# (Robert C. Martin Series)" border="0" alt="Agile Principles, Patterns, and Practices in C# (Robert C. Martin Series)" vspace="3" src="http://weblogs.asp.net/blogs/gunnarpeipman/bookshelf/buy-from-amazon.png" /&gt;&lt;/a&gt;&lt;img style="border-bottom-style: none !important; border-right-style: none !important; margin: 0px; border-top-style: none !important; border-left-style: none !important" border="0" alt="" src="http://www.assoc-amazon.com/e/ir?t=gupesasnebl-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0131857258" width="1" height="1" /&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt;   &lt;strong&gt;Agile Principles, Patterns, and Practices in C#&lt;/strong&gt; by Robert C. Martin and Micah Martin describes how to write software using C#. Book covers also most important design patterns and object-oriented development principles. There are very good, close to reality examples for every topic and that makes this book pretty easy to read and understand.&lt;/p&gt;  &lt;p&gt;Everything in this book is organized logically. Knowledge given and explained in one section is well used in real context during all following sections. I think it makes this book interesting as you develop your skills step-by-step without jumping from one context to another.&lt;/p&gt;  &lt;p&gt;Authors build couple of simple applications in this book to illustrate programming and testing practices. It is interesting process because they start with pretty simple code and then refactor it continuously, write tests and apply patterns to get well designed applications. &lt;/p&gt;  &lt;p&gt;You can find also examples about application packaging, packages analysis and different metrics that give you overview of parts of applications. Book contains all equations and gives you exampler of calculations based on code presented by authors.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;I think this book is a good starting material for everybody who wants to start serious software development. &lt;/p&gt; 

&lt;h3&gt;Editorial review from Amazon&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;With the award-winning book Agile Software Development: Principles, Patterns, and Practices, Robert C. Martin helped bring Agile principles to tens of thousands of Java and C++ programmers. Now .NET programmers have a definitive guide to agile methods with this completely updated volume from Robert C. Martin and Micah Martin, Agile Principles, Patterns, and Practices in C#. This book presents a series of case studies illustrating the fundamentals of Agile development and Agile design, and moves quickly from UML models to real C# code. The introductory chapters lay out the basics of the agile movement, while the later chapters show proven techniques in action. The book includes many source code examples that are also available for download from the authors' Web site. Readers will come away from this book understanding *Agile principles, and the fourteen practices of Extreme Programming *Spiking, splitting, velocity, and planning iterations and releases *Test-driven development, test-first design, and acceptance testing *Refactoring with unit testing *Pair programming *Agile design and design smells *The five types of UML diagrams and how to use them effectively *Object-oriented package design and design patterns *How to put all of it together for a real-world project Whether you are a C# programmer or a Visual Basic or Java programmer learning C#, a software development manager, or a business analyst, Agile Principles, Patterns, and Practices in C# is the first book you should read to understand agile software and how it applies to programming in the .NET Framework. &lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;Table of contents&lt;/h3&gt;  &lt;p&gt;Foreword    &lt;br /&gt;Preface     &lt;br /&gt;Acknowledgments     &lt;br /&gt;About the Authors&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Section: I Agile Development&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Chapter 1. Agile Practices    &lt;br /&gt;Chapter 2. Overview of Extreme Programming     &lt;br /&gt;Chapter 3. Planning     &lt;br /&gt;Chapter 4. Testing     &lt;br /&gt;Chapter 5. Refactoring     &lt;br /&gt;Chapter 6. A Programming Episode&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Section: II Agile Design&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Chapter 7. What Is Agile Design?    &lt;br /&gt;Chapter 8. The Single-Responsibility Principle (SRP)     &lt;br /&gt;Chapter 9. The Open/Closed Principle (OCP)     &lt;br /&gt;Chapter 10. The Liskov Substitution Principle (LSP)     &lt;br /&gt;Chapter 11. The Dependency-Inversion Principle (DIP)     &lt;br /&gt;Chapter 12. The Interface Segregation Principle (ISP)     &lt;br /&gt;Chapter 13. Overview of UML for C# Programmers     &lt;br /&gt;Chapter 14. Working with Diagrams     &lt;br /&gt;Chapter 15. State Diagrams     &lt;br /&gt;Chapter 16. Object Diagrams     &lt;br /&gt;Chapter 17. Use Cases     &lt;br /&gt;Chapter 18. Sequence Diagrams     &lt;br /&gt;Chapter 19. Class Diagrams     &lt;br /&gt;Chapter 20. Heuristics and Coffee &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Section: III The Payroll Case Study&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Chapter 21. COMMAND and ACTIVE OBJECT: Versatility and Multitasking    &lt;br /&gt;Chapter 22. TEMPLATE METHOD and STRATEGY: Inheritance versus Delegation     &lt;br /&gt;Chapter 23. Facade and Mediator     &lt;br /&gt;Chapter 24. Singleton and Monostate     &lt;br /&gt;Chapter 25. Null Object     &lt;br /&gt;Chapter 26. The Payroll Case Study: Iteration 1     &lt;br /&gt;Chapter 27. The Payroll Case Study: Implementation &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Section: IV Packaging the Payroll System&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Chapter 28. Principles of Package and Component Design    &lt;br /&gt;Chapter 29. Factory     &lt;br /&gt;Chapter 30. The Payroll Case Study: Package Analysis     &lt;br /&gt;Chapter 31. Composite     &lt;br /&gt;Chapter 32. Observer: Evolving into a Pattern     &lt;br /&gt;Chapter 33. Abstract Server, Adapter, and Bridge     &lt;br /&gt;Chapter 34. PROXY and GATEWAY: Managing Third-Party APIs     &lt;br /&gt;Chapter 35. Visitor     &lt;br /&gt;Chapter 36. State     &lt;br /&gt;Chapter 37. The Payroll Case Study: The Database     &lt;br /&gt;Chapter 38. The Payroll User Interface: MODEL VIEW PRESENTER &lt;/p&gt;  &lt;p&gt;Bibliography    &lt;br /&gt;Appendix A. A Satire of Two Companies     &lt;br /&gt;Appendix B. What Is Software?     &lt;br /&gt;Afterword&lt;/p&gt;

&lt;hr size="1" /&gt;
&lt;table border="0" cellspacing="2"  cellpadding="0" width="100%"&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fweblogs.asp.net%2fgunnarpeipman%2farchive%2f2009%2f07%2f28%2fagile-principles-patterns-and-practices-in-csharp.aspx"&gt;&lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fweblogs.asp.net%2fgunnarpeipman%2farchive%2f2009%2f07%2f28%2fagile-principles-patterns-and-practices-in-csharp.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td align="center"&gt;
&lt;a rev="vote-for" href="http://pimpthisblog.com/Agile-Principles-Patterns-and-Practices-in-C-book-review-Gunnar-Peipmans-ASPNET-blog"&gt;&lt;img alt="pimp it" src="http://pimpthisblog.com/image.axd?url=http%3A%2F%2Fweblogs.asp.net%2Fgunnarpeipman%2Farchive%2F2009%2F07%2F28%2Fagile-principles-patterns-and-practices-in-csharp.aspx" style="border:0px"/&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td align="center"&gt;
&lt;a rev="vote-for" href="http://progg.ru/Agile-Principles-Patterns-and-Practices-in-C-book-review"&gt;&lt;img alt="Progg it" src="http://progg.ru/image.axd?url=http%3A%2F%2Fweblogs.asp.net%2Fgunnarpeipman%2Farchive%2F2009%2F07%2F28%2Fagile-principles-patterns-and-practices-in-csharp.aspx" style="border:0px"/&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td align="center"&gt;
&lt;a rev="vote-for" href="http://www.9efish.com/Agile-Principles-Patterns-and-Practices-in-C-book-review-Gunnar-Peipmans-ASPNET-blog"&gt;&lt;img alt="顶" src="http://www.9efish.com/image.axd?url=http%3A%2F%2Fweblogs.asp.net%2Fgunnarpeipman%2Farchive%2F2009%2F07%2F28%2Fagile-principles-patterns-and-practices-in-csharp.aspx" style="border:0px"/&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;td align="right"&gt;
&lt;a rev="vote-for" href="http://dotnetshoutout.com/Agile-Principles-Patterns-and-Practices-in-C-book-review-Gunnar-Peipmans-ASPNET-blog"&gt;&lt;img alt="Shout it" src="http://dotnetshoutout.com/image.axd?url=http%3A%2F%2Fweblogs.asp.net%2Fgunnarpeipman%2Farchive%2F2009%2F07%2F28%2Fagile-principles-patterns-and-practices-in-csharp.aspx" style="border:0px"/&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td align="right"&gt;
&lt;a rev="vote-for" href="http://www.fairfeeds.com//Agile-Principles-Patterns-and-Practices-in-C-book-review"&gt;&lt;img alt="Vote it" src="http://www.fairfeeds.com//image.axd?url=http%3A%2F%2Fweblogs.asp.net%2Fgunnarpeipman%2Farchive%2F2009%2F07%2F28%2Fagile-principles-patterns-and-practices-in-csharp.aspx" style="border:0px"/&gt;&lt;/a&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7156121" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/General+Software+Development/default.aspx">General Software Development</category><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/Books/default.aspx">Books</category><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/Design+Patterns/default.aspx">Design Patterns</category><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/Architecture+_2600_amp_3B00_+Design/default.aspx">Architecture &amp;amp; Design</category><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/Agile/default.aspx">Agile</category></item><item><title>Extreme Programming Explained</title><link>http://weblogs.asp.net/gunnarpeipman/archive/2009/01/19/extreme-programming-explained.aspx</link><pubDate>Mon, 19 Jan 2009 21:56:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6845066</guid><dc:creator>DigiMortal</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/gunnarpeipman/rsscomments.aspx?PostID=6845066</wfw:commentRss><comments>http://weblogs.asp.net/gunnarpeipman/archive/2009/01/19/extreme-programming-explained.aspx#comments</comments><description>&lt;p&gt;&lt;table border="0" cellpadding="0" cellspacing="0" align="left"&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 5px 0px 0px; display: inline; border-top: 0px; border-right: 0px" title="Extreme Programmind Explained" border="0" alt="Extreme Programmind Explained" src="http://weblogs.asp.net/blogs/gunnarpeipman/extremeprogrammingexplained_37373CE7.png" width="160" height="201" /&gt;&lt;br&gt;
&lt;a href="http://www.amazon.com/gp/product/0321278658?ie=UTF8&amp;tag=gupesasnebl-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0321278658"&gt;&lt;img src="http://weblogs.asp.net/blogs/gunnarpeipman/bookshelf/buy-from-amazon.png" border="0" vspace="3" alt="Extreme Programming Explained: Embrace Change (2nd Edition) (XP Series)" /&gt;&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=gupesasnebl-20&amp;l=as2&amp;o=1&amp;a=0321278658" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;strong&gt;Extreme Programming Explained&lt;/strong&gt; is overview and guide to extreme programming (XP). The author of this book – &lt;a title="Kent Beck @ Three Rivers Institute" href="http://www.threeriversinstitute.org/Kent%20Beck.htm"&gt;Kent Beck&lt;/a&gt; – is well known XP evangelist with great experiences on the field. XP is not very simple thing to start with when one has worked some years on “classic” way. Kent shows us the way to XP and gives great explanations and suggestion about how to get started with XP.&lt;/p&gt;  &lt;p&gt;Extreme Programming Explained is easy to read for everyone. The book is not very hard work to deal with as there is about 160 pages to read. Reader can also find good references to other books to read when this one is finished.&lt;/p&gt;  &lt;p&gt;The target audiences of Extreme Programming Explained include software project managers, information system managers and developers who are interested in getting better results than before. Managers can find good information about how to create XP teams. Developers may find very useful advices about how to participate in XP teams. Of course, new working methods are also very interested reading for all readers who want to use XP.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Cite from Amazon&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;“Generally speaking, XP changes the way programmers work. The book is good at delineating new roles for programmers and managers who Beck calls &amp;quot;coaches.&amp;quot; The most striking characteristic of XP is that programmers work in pairs, and that testing is an intrinsic part of the coding process. In a later section, the author even shows where XP works and where it doesn't and offers suggestions for migrating teams and organizations over to the XP process.”&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Table of contents&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Foreword. &lt;/li&gt;    &lt;li&gt;Preface. &lt;/li&gt;    &lt;li&gt;1. What is XP? &lt;/li&gt;    &lt;li&gt;2. Learning to Drive. &lt;/li&gt;    &lt;li&gt;3. Values, Principles, and Practices. &lt;/li&gt;    &lt;li&gt;4. Values. &lt;/li&gt;    &lt;li&gt;5. Principles. &lt;/li&gt;    &lt;li&gt;6. Practices. &lt;/li&gt;    &lt;li&gt;7. Primary Practices. &lt;/li&gt;    &lt;li&gt;8. Getting Started. &lt;/li&gt;    &lt;li&gt;9. Corollary Practices. &lt;/li&gt;    &lt;li&gt;10. The Whole XP Team. &lt;/li&gt;    &lt;li&gt;11. The Theory of Constraints. &lt;/li&gt;    &lt;li&gt;12. Planning: Managing Scope. &lt;/li&gt;    &lt;li&gt;13. Testing: Early, Often, and Automated. &lt;/li&gt;    &lt;li&gt;14. Designing: The Value of Time. &lt;/li&gt;    &lt;li&gt;15. Scaling XP. &lt;/li&gt;    &lt;li&gt;16. Interview. &lt;/li&gt;    &lt;li&gt;17. Creation Story. &lt;/li&gt;    &lt;li&gt;18. Taylorism and Software. &lt;/li&gt;    &lt;li&gt;19. Toyota Production System. &lt;/li&gt;    &lt;li&gt;20. Applying XP. &lt;/li&gt;    &lt;li&gt;21. Purity. &lt;/li&gt;    &lt;li&gt;22. Offshore Development. &lt;/li&gt;    &lt;li&gt;23. The Timeless Way of Programming. &lt;/li&gt;    &lt;li&gt;24. Community and XP. &lt;/li&gt;    &lt;li&gt;25. Conclusion. &lt;/li&gt;    &lt;li&gt;Annotated Bibliography. &lt;/li&gt;    &lt;li&gt;Index.&lt;/li&gt; &lt;/ul&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6845066" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/General+Software+Development/default.aspx">General Software Development</category><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/Books/default.aspx">Books</category><category domain="http://weblogs.asp.net/gunnarpeipman/archive/tags/Agile/default.aspx">Agile</category></item></channel></rss>