Möchten Sie verkaufen? Hier verkaufen
Extreme Programming in Practice (XP)
 
Größeres Bild
 
Den Verlag informieren!
Ich möchte dieses Buch auf dem Kindle lesen.

Sie haben keinen Kindle? Hier kaufen oder eine gratis Kindle Lese-App herunterladen.

Extreme Programming in Practice (XP) [Englisch] [Taschenbuch]

James W. Newkirk , Robert C. Martin
3.5 von 5 Sternen  Alle Rezensionen anzeigen (2 Kundenrezensionen)

Erhältlich bei diesen Anbietern.



Hinweise und Aktionen

  • Studienbücher: Ob neu oder gebraucht, alle wichtigen Bücher für Ihr Studium finden Sie im großen Studium Special. Natürlich portofrei.


Produktinformation

  • Taschenbuch: 256 Seiten
  • Verlag: Addison-Wesley Longman, Amsterdam (Mai 2001)
  • Sprache: Englisch
  • ISBN-10: 0201709376
  • ISBN-13: 978-0201709377
  • Größe und/oder Gewicht: 23 x 18,8 x 1,4 cm
  • Durchschnittliche Kundenbewertung: 3.5 von 5 Sternen  Alle Rezensionen anzeigen (2 Kundenrezensionen)
  • Amazon Bestseller-Rang: Nr. 356.158 in Englische Bücher (Siehe Top 100 in Englische Bücher)
  • Komplettes Inhaltsverzeichnis ansehen

Mehr über den Autor

James Newkirk
Entdecken Sie Bücher, lesen Sie über Autoren und mehr

Besuchen Sie die Seite von James Newkirk auf Amazon

Produktbeschreibungen

Amazon.co.uk

Theory is fine but practice makes perfect. Extreme Programming in Practice is the story of the Object Mentor company's first foray into XP after the Web site it designed and implemented failed. It takes chutzpah to use your own incompetence as a lesson for others.

OK, the "customer" here is internal but the processes the team went through were intended to be identical to those it would use with an external customer. The project was the site-registration system--the part that had failed. There was no question of fixing it, instead the team sat down with its "customer" and started from scratch.

The resulting story as told in Extreme Programming In Practice is fascinating because it's real. By chapter six the authors have already come unstuck through not using automatic testing on code, allowing the "customer" to miss iteration meetings, creating overlong iterations and implementing infrastructure code before the tasks dependent on them. What's especially interesting is that the authors knew what XP said they should be doing yet, for various perceived reasons: internal politics, other work and existing practices among others, chose to do something different.

Almost all these choices caused problems. These ranged from poor time estimates and lots of infrastructure reworking to simply delivering the "wrong" features. Object Mentor learned a lot from its mistakes and if you're about to try XP, you could too, saving a lot of time, money and credibility. --Steve Patient

Amazon.com

For any organization or team considering adopting the Extreme Programming (XP) software methodology, Extreme Programming in Practice provides a downright fascinating glimpse of XP in action for a small real-world project. Short and to the point, yet filled with plenty of real details, this book can show you what works and what doesn't when it comes to using one of today's hottest approaches to successful programming.

Like today's reality TV shows, this title walks you through a real software project in real time. After introducing the reader to the basics of the XP software method (using such shibboleths as paired programming, lightweight documentation, continual refactoring, and the like), the book jumps right in with an actual project built with Java servlets and JDBC. First, the authors disclose their software design for retooling a Web site with login and security features. The scope of this project is necessarily really small, but the win is that the authors go into real detail as to how it is designed and implemented. (While most titles on software engineering hedge on the details, this book gives you the inside scoop on actual design decisions and even problems encountered along the way.)

The authors cover the design process where customer "stories" are partitioned off into deliverables (small ones are called "iterations," which are combined into larger "releases"). The authors give you sample project estimation for how long it will take for each step. They provide the details of the code that does the work for each step, along with sample automated tests. (In XP, code is not "accepted" by clients until it can be verified with tests.) The authors also show off how their initial estimates sometimes went wrong. (Most readers will be struck that almost in all cases, initial estimates for programming time are overestimated by the authors.) However, they do share a significant snag in the process of a typical miscommunication with their client about promised functionality, which is sure to resonate with many readers. By the end of the book, they share their final thoughts on what works and what doesn't in XP, along with some advice for "scaling" XP onto larger projects and teams.

Candid, concise, (and a very interesting read), Extreme Programming in Practice gives valuable insight into today's XP. Whether or not you are evaluating XP for your shop or just want to see what all the fuss is about, this text provides an excellent glimpse into the advantages of XP for creating robust software within budget and on time. --Richard Dragan

Topics covered:

  • Quick overview of Extreme Programming (XP)
  • The XP process: planning, iterations, and releases
  • Developing "stories" with stakeholders
  • Case study for a Web application (including logon and security features)
  • Prioritizing stories and features
  • Team velocity defined
  • Iterations and tasks (staffing and planning)
  • Writing tests (including using proxies to simulate database activity)
  • XP and refactoring
  • "Working backwards"
  • Infrastructure versus code that works right now
  • Communication between customers and developers
  • Steering
  • Scaling small projects with XP to larger projects
  • Sample stories, code, tests, and project-planning documents
  • Hints for successful adoption of XP in real projects

Tags, die Kunden mit diesem Produkt verbinden

 (Was ist das?)
Klicken Sie zum Suchen verwandter Artikel, Diskussionen oder Personen auf ein Tag.
 

 

Eine digitale Version dieses Buchs im Kindle-Shop verkaufen

Wenn Sie ein Verleger oder Autor sind und die digitalen Rechte an einem Buch haben, können Sie die digitale Version des Buchs in unserem Kindle-Shop verkaufen. Weitere Informationen

Kundenrezensionen

4 Sterne
0
3 Sterne
0
1 Sterne
0
Die hilfreichsten Kundenrezensionen
9 von 10 Kunden fanden die folgende Rezension hilfreich
Extrem praxisnah 31. Juli 2001
Format:Taschenbuch
Die Autoren beschreiben den gesamten Entwicklungsprozess eines real durchgeführten Projektes (Anmeldeprozedur einer Web-Page). Trotz der Kürze des Buches lassen sich die einzelnen Schritte auch im Source Code (Java) sehr gut nachvollziehen. Kurze Kapitel beschreiben jeweils einen Entwicklungsschritt, z.B. Planung, schreiben von Stories, Verteilung der Tasks, die Implementation des ersten Tasks, Refactoring usw. Man fühlt die Spannung im Projekt und kann nicht mit Lesen aufhören, bis das Buch zu Ende ist. XP Neulinge sollten als Einführung ein anderes Buch lesen, eingefleischte XP'ler finden darin wertvolle Tipps. Obschon das Projekt nur 3 Wochen dauerte, kam einiges an Funktionaliät zusammen und die sich ändernden (!) Kundenforderungen wurden fast vollständig erfüllt. Auftretende Probleme werden gnadenlos aufgedeckt und der Prozess dauernd verbessert, so wie man sich das bei jedem Projekt wünschen würde. Man darf allerdings nicht vergessen, dass es sich bei den Programmieren um zwei absolute OO-Cracks handelt.
War diese Rezension für Sie hilfreich?
2 von 2 Kunden fanden die folgende Rezension hilfreich
Etwas mager 19. März 2002
Von R.W.
Format:Taschenbuch
Der Umfang des Buches hat mich enttäuscht. Nicht nur, dass ca. 50% der insgesamt 200 Seiten sich auf die Darstellung von Java Source Code beschränken, auch der textuelle Anteil bringt nicht so viele Aha Effekte wie ich mir gewünscht hätte. Meines Erachtens hätte die Dokumentation eines etwas größeren Projektes (nicht nur drei Wochen) zusammen mit einem größeren Team (nicht nur zwei Entwickler parallel) mehr Erkenntnisse für die Praxis liefern können.

Die in dem Buch enthaltenen Erkenntnisse kann man in komprimierter Form auch in Kent Beck's Buch finden - in Extreme Programming in Practice wird nur gezeigt, dass die bei Beck beschriebenen Effekte auch eintreten.

War diese Rezension für Sie hilfreich?
Die hilfreichsten Kundenrezensionen auf Amazon.com (beta)
Amazon.com:  18 Rezensionen
8 von 8 Kunden fanden die folgende Rezension hilfreich
I expected better 22. August 2001
Von Ein Kunde - Veröffentlicht auf Amazon.com
Format:Taschenbuch|Von Amazon bestätigter Kauf
My biggest disappointment is that the authors did not write automated acceptance tests, which is one of the XP practices that people who are seriously trying to adopt XP have the most questions about. The fact that their development work was sporadic also did not help present the 'normal' usage of XP.

Otherwise it is not a bad book, but I would buy all the other XP books first before buying this one -- particularly "Extreme Programming Installed", "Planning Extreme Programming", and "Extreme Programming Explained".

40 von 53 Kunden fanden die folgende Rezension hilfreich
Don't buy it (my newer review) 22. Juli 2001
Von Jake Well - Veröffentlicht auf Amazon.com
Format:Taschenbuch
I've read 100 pages into the book so far, and I would have to say it is not that amazing. The book basically runs through a project that they did using XP and they share their stories and experiences. The project they talk about is very typical to most websites (a way to register, login, get a forgotten password, etc.)

I was very surprised to see that the project was estimated at 25 days. Even some functions like creating one table was estimated to take 4 hours. It seemed that the developers were not very capable individuals, or perhaps they simply expected an incompetent crowd to be reading the book. There is actual proof of my claim too since even taking their 4 hours to make the table, they had still forgetton to create the 'password' attribute within the table. They realized this when they tested their code. Leaving out those architectural details are we?

I also did not agree with the book's statements in not considering architectural details - in fact none were considered at all, even when it came down to iteration planning. I know this is an element of the XP methodology, but some of their reasons for not doing a model indicated that they didn't understand the problem enough. The only valid reason I found for not planning for future change was that the customer may not request the features required by the more robust architecture. That is valid, but let's think about repeat business. Let's assume they come back in a year's time to make those changes and you'll probably be thanking yourself you did make it scalable. It's less time for you and your staff and less you have to charge your client. Everyone is much happier.

Another instance of terrible design is on page 103. They used an Adapter pattern (found in the GoF book) to adapt a method from their database class to another class with the identical name for the method. Well, as far as I know, that is NOT why you use the Adapter pattern. Adapter is used when you have an API that doesn't follow an interface used throughout the application. Programmer's use the Adapter to make an interface conform to a new one. Well, in using the Adapter in the book's example, they are merely delegating a task, not adapting an unfamiliar interface. Even worse - What was the method called? - findUserByEmail() found inside the Database connection object (connecting and closing the DBMS). Why is it there? No architecture thinking done at all! It should have been placed in a UserFactory or User Data Access Object class in the first place (the book refers to it as its User class). They would have avoided this problem (and misuse of a pattern) altogether.

One more thing about architecture. There was a case where they had made 2 servlets, both containing almost identical code. With XP's refactoring, they had created a base class and inherited appropriately. After restructuring their test cases and refactoring several times, they finally got it right. Wouldn't a solid design have been better? The book states that up-front design is bad. Well, I know the point of XP is to not follow a hardcore design document for the entire project because you realize that customer requirements are voltatile. But, shouldn't we at least come up with a smaller design document for each iteration? I mean, it's not practical for a customer to interrupt an interation - in fact it's a rule the customer cannot do according to this book. I still say, if you are not going to plan your system, at least plan the architecture for a 'subset' of the system - i.e. in each iteration plan.

Even after reviewing the code, I thought some elementary coders were at work. There was a part in the book where they either had to convert some pages from ASP to JSP if they wanted the banner to be the same, but they could have simply encapsulated the banner into a file and included it in both the ASP and JSP versions, saving their estimated implementation time of 5 days.

The book has it's morals, but the project is by far too small to be a true testiment to the success of XP. This kind of project could have easily been done by one competent person sitting at their machine for 2 days, and I do believe it would have been done much better architecturally as well. There is no design pattern work, no architecture and clearly reading their programming flaws and decision making failures, no wonder they estimated a completion date of 25 days.

I gather that XP is still good for projects with much greater complexity than this registration system, but the book does a bad job explaining that. It seems XP is good for programmers that need other support to compensate for their lack of ability to be a good programmer - I know that is not true when it comes to pair programming, but this book isn't doing a good job of convincing me otherwise.

I haven't read any of the other XP books - but stay away from this one unless you want to read bad software designs and coding examples, non-realistic programming errors, and poorly made decisions. It's not XP that would have helped this team, a new set of programmers and architects would have done better.

If you simply want to learn about XP, stay away from this book.

If you want to learn about failures on projects and actually learn something, read the Mythical Man Month.

If you want to spend [price], throw it into lottery tickets, you'll learn about 'wasting money' and how to better spend it.

If you need to learn XP.... try another XP book in the series.

6 von 7 Kunden fanden die folgende Rezension hilfreich
Well below expectations based on the authors' names 9. August 2001
Von Sasha Ketko - Veröffentlicht auf Amazon.com
Format:Taschenbuch
I fully agree with points of Ken Egervary's review - and would like to add a few more points (related to technical as well as other issues) in no particular order of importance:

- while it is OK to use a new terminology to describe old concepts, I don't think it is a good idea to make readers believe that these very concepts are new and unique to XP. I refer to "spikes" and "spoofing" - which are concepts as old as programming itself;

- of course diagrams are easier to understand than code unless the there is very little of very simple code. Should we forget about UML? What about leaving clients a bit more documentation than source code and API docs?;

- concept of refactoring seem to be used only in relation to coding - what about refactoring of analysis and design models (not that there are any in the book)? In fact, there seem to be no analysis and design anywhere in the book - although "backing into the code" concept does sound like a poor-man version of analysis to me;

- arguable concepts such as use of return codes versus exceptions are introduced in by-the-by manner without any argumentation. One could strongly argue that using exceptions for error-handling is a better option because: 1) unlike return code, they cannot be ignored and must be handled or at least consciously ignored; 2) generic error handling and logging mechanisms can be easily implemented especially considering that exceptions - unlike return codes - are automatically propagated and therefore can be handled at different levels as desired; Etc.

- the most appalling mistake of having instance-level variables in the servlets that do NOT implement SingleThreadModel interface (such as, for example, use of private variables request, response, email and url in ForgotPassword servlet). This is NOT thread-safe - and a 5 min "spike" would convince you that this is so. Good thing it was not a project where data more sensitive than somebody's password are mailed to the users who happened to access the same servlet at the same time!

Etc., etc.

Kundenrezensionen suchen
Nur in den Rezensionen zu diesem Produkt suchen

Kunden diskutieren

Das Forum zu diesem Produkt
Diskussion Antworten Jüngster Beitrag
Noch keine Diskussionen

Fragen stellen, Meinungen austauschen, Einblicke gewinnen
Neue Diskussion starten
Thema:
Erster Beitrag:
Eingabe des Log-ins
 


Aktive Diskussionen in ähnlichen Foren
Kundendiskussionen durchsuchen
Alle Amazon-Diskussionen durchsuchen
   
Ähnliche Foren


Lieblingslisten


Ähnliche Artikel finden


Anhand des Sachgebietes nach ähnlichen Produkten suchen:


Ihr Kommentar