4.6 Conclusions
In this chapter, we have addressed the problem of professional Grid software development and presented an agile Grid Software Process based on Extreme Programming. The software lifecycle model has been fully evaluated in the context of both small to medium-sized academic research and commercial projects. We have discussed the XP practices we follow, the ones we have slightly adapted and why, and also the practices we do not recommend. We have also discussed the abstractions and the design patterns on which our Grid software is based.
Finally, we have highlighted a number of risky areas that must be taken into account when developing grid applications and discussed possible solutions. Grid computing is a major new paradigm, and we expect a whole set of theories, middleware, tools, etc., to be developed in the near future. At the same time we will monitor and adjust as needed for our Grid Software Process to make it resilient to the unavoidable changes dictated by the Grid.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
C. Catlett, L. Smarr, Metacomputing, Communications of the ACM, 35, 44–52 (1992)
W. Benger, I. Foster, J. Novotny, E. Seidel, J. Shalf, W. Smith, P. Walker, Numerical relativity in a distributed environment, in Ninth SIAM Conference on Parallel Processing for Scientific Computing (1999)
G. Von Laszewski, M. Su, J.A. Insley, I. Foster, J. Bresnahan, C. Kesselman, M. Thiebaux, M.L. Rivers, S. Wang, B. Tieman, I. McNulty, Real-time analysis, visualization, and steering of microtomography experiments at photon sources, in Ninth SIAM Conference on Parallel Processing for Scientific Computing (1999)
S. Brunett, D. Davis, T. Gottshalk, P. Messina, C. Kesselman, Implementing distributed synthetic forces simulations in metacomputing environments, in Proceedings of the Heterogeneous Computing Workshop (1998)
I. Foster, C. Kesselman, (eds.), The Grid: Blueprint for a New Computing Infrastructure (Morgan Kaufmann, 1998)
I. Foster, C. Kesselmann, S. Tuecke, The anatomy of the grid: enabling scalable virtual organizations, International Journal of Supercomputer Applications, 15(3), 200–222 (2001)
I. Foster, C. Kesselmann, J. Nick, S. Tuecke, Grid services for distributed system integration, Computer, 35(6), 37–46 (2002)
I. Foster, C. Kesselmann, J. Nick, S. Tuecke, The physiology of the grid: An open grid services architecture for distributed system integration, in Technical Report for the Globus project (2002) http://www.globus.org/research/papers/ogsa.pdf
W. Smith, I. Foster, V. Taylor, Predicting application run times using historical information, in Proceedings of IPPS/SPDP’ 98Workshop on Job Scheduling Strategies for Parallel Processing (1998)
F.P. Brooks, No silver bullet, in Information Processing’ 86, ed. by Kugler, H.J. (Elsevier, North Holland; reprinted (1987)) IEEE Computer 20, 10–19 (1986)
B.J. Cox, There is a silver bullet, Byte, (15): 209–218 (1990)
D. Harel, Biting the silver bullet, IEEE Computer, 25, 8–24 (1992)
W. Royce, Managing the development of large software systems: Concepts and techniques, in 1970 WESCON Technical Papers, Western Electronic Show and Convention, Los Angeles, pp. A/1-1–A/1-9; reprinted (1989) in Proceedings of the 11th International Conference on Software Engineering, Pittsburgh, pp. 328–338 (1970)
B. W. Boehm, A spiral model of software development and enhancement, IEEE Computer 21, 61–72 (1988)
J.L, Connel, L. Shafer, Structured rapid prototyping: an Evolutionary Approach to Software Development (Yourdon Press, Englewood Cliffs, NJ, 1989)
C. Gane, Rapid System Development: Using Structured Techniques and Relational Technology (Prentice Hall, Englewood Cliffs, NJ, 1989)
T. Gilb, Principles of Software Engineering Management (Addison-Wesley, Wokingham, UK, 1988)
M. Aoyama, Concurrent-development process model, IEEE Computer, 10, 46–55 (1993)
M.A. Cusumano, R.W. Selby, Microsoft Secrets: How the World’s Most Powerful Software Company Creates Technology, Shapes Markets, and Manages People, (The Free Press/Simon and Schuster, New York, 1995)
M.A. Cusumano, R.W. Selby, How Microsoft builds software, communications of the ACM, 40,53–61 (1997)
K. Beck, Embracing change with extreme programming, IEEE Computer, 32, 70–77 (1999)
K. Beck, Extreme Programming Explained: Embrace Change (Addison-Wesley, Longman, Reading, MA, 2002)
P. Kruchten, The Rational Unified Process: An Introduction, (Addison-Wesley, Longman, Reading, MA, 2000)
B. Henderson-Sellers, J.M. Edwards, The object-oriented systems life cycle, Communications of the ACM, 33, 142–159 (1990)
A. Helal, B. Haskell, J.L. Carter, R. Brice, D. Woelk, M. Rusinkiewicz, Any Time, Anywhere Computing (Kluver, Boston, Dordrecht, London, 2002)
H. Takeuchi, I. Nonaka, The new product development game, Harvard Business Review, Jan/Feb: pp. 137–146, (1986)
K. Schwaber, Scrum development process, in OOPSLA’95 Workshop on Business Object Design and Implementation (Springer-Verlag, 1995)
K. Schwaber, M. Beedle, Agile Software Development with Scrum (Prentice Hall, Upper Saddle River, NJ, 2002)
J.A Highsmith, Adaptive Software Development: A Collaborative Approach to Managing Complex Systems (Dorset, New York, 2002)
A. Cockburn, Agile Software Development (Addison-Wesley, Longman, Reading, MA, 2002)
J. Stapleton, Dynamic Systems Development method—The Method in Practice (Addison-Wesley, Longman, Reading, MA, 1997)
G.S. Blair, R. Lea, The impact of distribution on the object-oriented approach to software development, IEEE Software Engineering Journal, 7(2), 130–138 (1992)
E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley, Longman, Reading, MA, 1995)
O.F. Rana, D.W. Walker, Service design patterns for computational grids, in Patterns and Skeletons for Parallel and Distributed Computing, ed. by Rabhi, F.A. and Gorlatch, S. (Springer-Verlag, London, UK, 2003)
S. Cannon, S. Chan, D. Olson, C. Tull, V. Welch, L. Pearlman, Using CAS to manage role-based VO subgroups, in Electronic proceedings of CHEP03, (2003) (available as DVD and at http://www.slac.stanford.edu/econf/C0303241/proceedings.html)
F. Schneider, Implementing fault-tolerant services using the state machine approach: A tutorial, ACM Computing Surveys, 22(4), 1990
M. Castro, B. Liskov, Practical byzantine fault tolerance, in Proceedings of Third Symp, Operating Systems Design and Implementation (1999)
A. Shamir, How to share a secret, Communications of the ACM, 22, 612–613 (1979)
A. Herzberg, S. Jarecki, H. Krawczyk, M. Yung, Proactive secret sharing, in Proceedings of Advances in Cryptology, Crypto’ 95 (1995)
A. Chervenak, E. Deelman, I. Foster, L. Guy, W. Hoschek, A. Iamnitchi, C. Kesselman, P. Kunszt, M. Ripenu, B. Schwartzkop, H. Stocking, K. Stockinger, B. Tierney, Giggle: A framework for constructing scalable replica location services, in Electronic Proceedings of Super Computing, 2002 Conference (2002)
A. Genoud, D. Caromel, Non-functional exceptions for distributed and mobile objects, in Proceedings of EHOOS’03 workshop of ECOOP 2003, Darmstadt, Germany (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag London Limited
About this chapter
Cite this chapter
Aloisio, G., Caffaro, M., Epicoco, I. (2006). A Grid Software Process. In: Cunha, J.C., Rana, O.F. (eds) Grid Computing: Software Environments and Tools. Springer, London. https://doi.org/10.1007/1-84628-339-6_4
Download citation
DOI: https://doi.org/10.1007/1-84628-339-6_4
Publisher Name: Springer, London
Print ISBN: 978-1-85233-998-2
Online ISBN: 978-1-84628-339-0
eBook Packages: Computer ScienceComputer Science (R0)