FREE ELECTRONIC LIBRARY - Dissertations, online materials

Pages:   || 2 | 3 | 4 | 5 |   ...   | 22 |

«Computational REST: A New Model for Decentralized, Internet-Scale Applications DISSERTATION submitted in partial satisfaction of the requirements for ...»

-- [ Page 1 ] --



Computational REST: A New Model for Decentralized, Internet-Scale Applications


submitted in partial satisfaction of the requirements

for the degree of


in Information and Computer Science


Justin Ryan Erenkrantz

Dissertation Committee:

Professor Richard N. Taylor, Chair Professor Debra J. Richardson Professor Walt Scacchi Portions of Chapters 2,3,4,5 adapted from “From Representations to Computations: The Evolution of Web Architectures,” in Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering (September, 2007) © ACM, 2007.

http://doi.acm.org/10.1145/1287624.1287660 Used with permission under Section 2.5 “Rights Retained by Authors” of the ACM Copyright Policy All other content © 2009 Justin Ryan Erenkrantz ii DEDICATION to Mom and Dad who always gave their unwavering love even when their son chose the hard road iii





INTRODUCTION 1 CHAPTER 1: Architectural Styles of Extensible RESTful Applications 8 Software Architecture and Frameworks 8 Software Architecture in the World Wide Web 9 Representational State Transfer 10 Selecting Appropriate REST-based Applications 14 Framework Constraint Prism 15 REST Constraints 18 Architectural Characteristic Matrix 19 Origin Servers 19 User Agents 40

–  –  –

their lasting influences, I would just be a sliver of who I am today and will be tomorrow.

Thanks to Tim for helping me to discover my true calling; thanks to Dan and Jerry for showing me that I could make a living doing this computer stuff; thanks to Andy for expanding my horizons.

Thanks to Steve and Domingos for introducing me to the joys of teaching.

Thanks to Roy for introducing me to the incredible world of open source and academia. Thanks to Aaron who was my fellow traveler in the early days of our collective Apache experiences. The rest of the gang at eBuilt - Josh, Phil, Mark, Seth, Steve, Neil, Bill, Joe, Eli - you set the standard by which I've measured all other teams.

Thanks to Greg, Ryan, Roy, Jeff, Jim, Bill, Sander, Cliff, Aaron, Brian, Manoj, Paul, Colm, Rudiger and all of the other Apache HTTP Server developers. There is simply no better collection of developers that will ever assemble together on a project.

Thanks to Aaron, Bill, Ben, Bertrand, Brian, Brett, Dirk, Doug, Geir, Greg, Hen, Henning, Jim, Ken, Sam, Shane, Stefano, Ken, Ben - you've made serving on Apache's Board of Directors a blast.

Thanks to Greg for so many late nights of conversation and being the better half of Serf.

Thanks to Karl, Jim, Fitz, Ben, C-Mike, Greg, Brane, Sander, Garrett, Hyrum, and the other Subversion developers. We set out to replace CVS and we've done so much more.

Thanks to Martijn, Sander, Garrett, Jens, Paul, Ben, Pier, Allan, Andy, Thom,

–  –  –

Let's do it again sometime.

Thanks to Ken, Neno, Peyman, Jim, Roy, and Rohit for setting the bar so ridiculously high before I even entered the halls of academia. Thanks to Eric, Girish, Jie, and John for the laughs and showing me how to survive the world of being a graduate student. Thanks to Scott for getting me through those early dog days when we were still trying to find our way. Thanks to Joe for being a constant source of sunshine through the years.

Thanks to Yuzo for always being a friend and a source of wisdom. Thanks to Kari who has probably forgotten that she helped out with my very first project in this group years ago. Thanks to Debi for all that you do behind the scenes. Thanks to Kiana, Nancy, Steve, Laura, Jessica and all of the folks who have kept ISR humming over the years.

Thanks to Debra who has shown me how to juggle a million tasks and keep everyone content. Thanks to Walt for helping me to take a step back and see the larger picture when I just couldn't find it.

Thanks to Michael - if our paths didn't cross, this dissertation and research wouldn't be half as interesting. All of our passionate discussions and conversations have resulted in something far better than either one of us could ever have dreamed.

Thanks to Dick for always knowing what buttons to push and when to push them.

In all my travels, I have never found anyone else who trusts another (let alone graduate students!) enough to let them find their own way even if we question what everyone else (including ourselves!) takes for granted. You have set an example that I will always strive to live up to every day.

–  –  –

the National Science Foundation under Grant Numbers 0438996 and 0820222. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author and do not necessarily reflect the views of the National Science Foundation.

–  –  –

Professional Experience 1/2007- Senior Software Engineer, Joost, Leiden, The Netherlands 1/2006-1/2007 Engineering Intern, Google, Mountain View, California 9/2002-9/2009 Graduate Student Researcher, Institute for Software Research, University of California Irvine 4/2000-3/2002 Junior Software Engineer, eBuilt, Irvine, California 7/1998-9/1999 Seasonal Associate, Ingram Micro, Santa Ana, California 7/1996-5/1998 C++ Programmer, Renaissance Engineering, Dayton, Ohio Publications Refereed Journal Articles [1] "Architecting trust-enabled peer-to-peer file-sharing applications", by Girish Suryanarayana, Mamadou H. Diallo, Justin R. Erenkrantz, Richard N. Taylor.

ACM Crossroads, vol. 12, issue 4, August 2006.

[2] "An Architectural Approach for Decentralized Trust Management", by Girish Suryanarayana, Justin R. Erenkrantz, Richard N. Taylor. IEEE Internet Computing, vol. 9, no. 6, pp. 16-23, November/December, 2005.

Refereed Conference and Workshop Publications [3] "From Representations to Computations: The Evolution of Web Architectures", by Justin R. Erenkrantz, Michael Gorlick, Girish Suryanarayana, Richard N. Taylor.

xii Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, pp. 255-264, Dubrovnik, Croatia, September 2007.

[4] "Architectural support for trust models in decentralized applications", by Girish Suryanarayana, Mamadou H. Diallo, Justin R. Erenkrantz, Richard N. Taylor.

Proceedings of the 28th International Conference on Software Engineering, pp.

52-61, Shanghai, China, May 2006.

[5] "ArchEvol: Versioning Architectural-Implementation Relationships", by Eugen Nistor, Justin R. Erenkrantz, Scott A. Hendrickson, André van der Hoek.

Proceedings of the 12th International Workshop on Software Configuration Management, Lisbon, Portugal, September 5-6, 2005.

[6] "PACE: An Architectural Style for Trust Management in Decentralized Applications", by Girish Suryanarayana, Justin R. Erenkrantz, Scott A.

Hendrickson, Richard N. Taylor. Proceedings of the Fourth Working IEEE/IFIP Conference on Software Architecture, Oslo, Norway, June, 2004.

[7] "Supporting Distributed and Decentralized Projects: Drawing Lessons from the Open Source Community", by Justin R. Erenkrantz, Richard N. Taylor.

Proceedings of the 1st Workshop on Open Source in an Industrial Context, Anaheim, California, October, 2003.

[8] "Release Management Within Open Source Projects", by Justin R. Erenkrantz.

Proceedings of the 3rd Workshop on Open Source Software Engineering, Portland, Oregon, May 2003.

[9] "Beyond Code: Content Management and the Open Source Development Portal", by T.J. Halloran, William L. Scherlis, Justin R. Erenkrantz. Proceedings of the 3rd Workshop on Open Source Software Engineering, Portland, Oregon, May 2003.

Invited Publications [10] "Rethinking Web Services from First Principles", by Justin R. Erenkrantz, Michael Gorlick, Richard N. Taylor. Proceedings of the 2nd International Conference on Design Science Research in Information Systems and Technology, Extended Abstract, Pasadena, California, May 2007.

Non-Refereed Publications [11] "Architectural Styles of Extensible REST-based Applications", by Justin R.

Erenkrantz. Institute for Software Research, University of California, Irvine, Technical Report UCI-ISR-06-12, August 2006.

[12] "Web Services: SOAP, UDDI, and Semantic Web", by Justin R. Erenkrantz.

Institute for Software Research, University of California, Irvine, Technical Report UCI-ISR-04-3, May 2004.

xiii Service Program Committee, HyperText 2004 Program Committee, WoPDaSD 2008 Program Committee, OSS 2009 Webmaster, ICSE 2006 Internet Chair, ICSE 2011 Awards and Honors Member, Phi Beta Kappa Society Member, Golden Key National Honor Society UC Irvine Outstanding Service by an Undergraduate UC Irvine Campuswide Honors Program Julian Feldman Scholarship Recipient Dan and Jean Aldrich Scholarship Nominee Member, National Honor Society Associations and Activities Member, Association for Computing Machinery (1998-present) Member, IEEE Computer Society (2005-present) Member, The Apache Software Foundation Director, The Apache Software Foundation (2005-present) President, The Apache Software Foundation (2007-present) Treasurer, The Apache Software Foundation (2005-2007) Vice-President, ACM, UC Irvine student chapter (2000-2001) Contestant, ACM Programming Contest, UC Irvine student chapter (1998-2000) Member, Undergraduate Computing Facility (1998-2002) Representative, Associated Graduate Students, UC Irvine (2003-2004)

–  –  –

REpresentational State Transfer (REST) guided the creation and expansion of the modern web. The reformations introduced with REST permitted the web to achieve its goal as an internet-scale distributed hypermedia system. Yet, the web has now seen the introduction of a vast sea of shared and interdependent services. Despite the expressive power of REST, these new services have not consistently realized the anticipated benefits from REST.

In order to better understand the unwritten axioms necessary to realize these anticipated benefits, we survey the history and evolution of the web's infrastructure - including Apache HTTP Server, Firefox, and Squid. We also recount our experiences developing such systems and the challenges we faced due to the lack of thorough design guidance.

We then critically examine these new services from the vast sea - including Serviceoriented architectures, RESTful Web Services, and AJAX - to glean previously undocumented lessons about how these services are constructed and why they do not consistently realize the benefits expected from REST.

Based on this, this dissertation presents a new architectural style called Computational

–  –  –

fundamental measure of exchange to a model where computational exchange is the primary mechanism. This crucial observation keys a number of new axioms and constraints that provide new ways of thinking about the construction of web applications.

We show that this new style pinpoints, in many cases, the root cause of the apparent dissonance between style and implementation in critical portions of the web's infrastructure. CREST also explains emerging web architectures (such as mashups) and points to novel computational structure. Furthermore, CREST provides the necessary design guidance to create new web applications which have not been seen before. These applications are characterized by the presence of recombinant services which rely upon fine-grained computational exchange to permit rapid evolution.

–  –  –

clear set of principles to guide the decisions being made by developers and architects. In those early days, the web evolved chaotically and, to the extent there was any guidance at all, it was weakly focused on client/server communications, the mechanics of content transfer, and user interfaces. However, within a space of just a few years, exponential growth and numerous design flaws threatened the future of the early Web - leading to the introduction of the Representational State Transfer architectural style (REST) [Fielding, 2000].

As a software architectural style, REST introduces a set of principal design decisions that ideally governs the Web. In return for following these architectural decisions, certain properties are expected. The introduction of REST, by way of the HTTP/1.1 protocol, restored comparative order to the Web by articulating the necessary axioms that must be present to permit the continued growth of the web. Yet, as we illustrate in this dissertation, dissonance with any architectural style inevitably occurs in the real-world as certain design decisions dictated by the style are violated either knowingly or unknowingly. The impact of the violations may range from relatively minor to severe. In the presence of such violations, it is rational to expect that specific advantages that should be derived from the style can be lost.

It is our view that the software designer’s proper role is to be able to articulate the drawbacks of such dissonance and to be able to knowingly choose which tradeoffs are acceptable against the ideal set forth by the style. This dissertation is our attempt to catalog the continued evolution of the web with two aims: identifying how real systems have strayed from REST and articulating what specific tradeoffs were made along the way even if the original designers did not consciously realize which tradeoffs were being made. From these observations, we are able to identify a recurring theme in the dissonance: REST was primarily focused on the exchange of content and does not provide suitable guidance to designers participating in today’s Web. Again, this is unsurprising as REST was intended to serve as an architectural style for distributed hypermedia systems. However, as we discuss throughout this thesis, today’s Web has evolved far beyond the mere exchange of content. We believe that this calls for a new architectural style which better addresses the exchanges we see and shall continue to see on the Web.

Pages:   || 2 | 3 | 4 | 5 |   ...   | 22 |

Similar works:

«Real-time Human Interaction with Supervised Learning Algorithms for Music Composition and Performance Rebecca Anne Fiebrink A Dissertation Presented to the Faculty of Princeton University in Candidacy for the Degree of Doctor of Philosophy Recommended for Acceptance by the Department of Computer Science Adviser: Perry R. Cook January 2011 c Copyright by Rebecca Anne Fiebrink, 2011. All rights reserved. Abstract This thesis examines machine learning through the lens of human-computer interaction...»

«GABRIEL VACARIU    EPISTEMOLOGICALLY DIFFERENT WORLDS  To Ilie Parvu Gabriel Vacariu                   EPISTEMOLOGICALLY DIFFERENT  WORLDS    Referenţi ştiinţifici: Prof. univ. dr. ILIE PÂRVU Conf. univ. dr. CONSTANTIN STOENESCU On the first cover: “Anaïs in the hyperverse” by Magda Vacariu Şos. Panduri, 90–92, Bucureşti – 050663; Telefon/Fax: 410.23.84 E-mail: editura@unibuc.ro Internet: www.editura.unibuc.ro Tehnoredactare computerizată: Victoria Iacob...»

«CHIRAL BISAMIDINE CATALYSIS: ENANTIOSELECTIVE ALKYLATIONS AND HALOLACTONIZATIONS WITH APPLICATIONS TO SMALL MOLECULE THERAPEUTICS By Mark Christopher Dobish Dissertation Submitted to the Faculty of the Graduate School of Vanderbilt University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY in CHEMISTRY May 2013 Nashville, Tennessee Approved: Professor Jeffrey N. Johnston (Chair) Professor Timothy P. Hanusa Professor Ned A. Porter Professor Michael R. Waterman...»

«Christy Keele Todd McCready Dec. 14, 2006 Automated Schenkerian Analysis Abstract SchenkeR is a project written in R that performs limited musical analysis using reductive techniques based on the theories of Heinrich Schenker. It attempts to identify notes belonging to the Urlinie by scoring the importance of each note across a number of different categories, as well as denoting other features that would be relevant to include in a Schenkerian graph, such as consonant skips. It has been tested...»

«Single Cell Analysis and Tissue Imaging by Laser Ablation and Mass Spectrometry by Bindesh Shrestha B.S. in Chemistry, Moravian College, Bethlehem, PA M.Phil. in Chemistry, The George Washington University, Washington DC a Dissertation submitted to the Faculty of Columbian College of Arts and Sciences of The George Washington University in partial satisfaction of the requirements for the degree of Doctor of Philosophy January 31, 2010 Dissertation directed by Akos Vertes Professor of Chemistry...»

«Natural Language Processing Tools for Reading Level Assessment and Text Simplification for Bilingual Education Sarah E. Petersen A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy University of Washington 2007 Program Authorized to Offer Degree: Computer Science & Engineering University of Washington Graduate School This is to certify that I have examined this copy of a doctoral dissertation by Sarah E. Petersen and have found that it...»


«JACK L. SKINNER, PH.D., P.E. ASSOCIATE PROFESSOR OF MECHANICAL ENGINEERING DEPARTMENT OF GENERAL ENGINEERING MONTANA TECH OF THE UNIVERSITY OF MONTANA 1300 WEST PARK ST. BUTTE, MT 59701 (406) 496-4460 JSKINNER@MTECH.EDU EDUCATION & LICENSING Doctor of Philosophy in Mechanical Engineering (September 2004-December 2007) Dissertation Title: Diffractive Optical MEMS Technology for Tunable Filters and Modulators Advisor: David A. Horsley Major: Dynamics and Control Systems / Microelectromechanical...»

«NEEDLESS TO SAY MY PROPOSAL WAS TURNED DOWN” THE EARLY DAYS OF COMMERCIAL CITATION INDEXING, AN „ERRORMAKING“(POPPER) ACTIVITY AND ITS REPERCUSSIONS TILL TODAY Terje Tüür-Fröhlich terje.tuur@jku.at Author address: Department of Philosophy and Philosophy of Science, Johannes Kepler University Linz/Austria Abstract: In today’s neoliberal audit cultures university rankings, quantitative evaluation of publications by JIF (Journal Impact Factor) or researchers by h-index (Hirsch-Index)...»

«Pediatric Nurses‘ Grief Experience: Its Relationship with Burnout and Job Satisfaction A DISSERTATION SUBMITTED TO THE FACULTY OF THE GRADUATE SCHOOL OF THE UNIVERSITY OF MINNESOTA BY Jehad Zaki Adwan IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY Dr. Barbara J. Leonard, Advisor July, 2010 © Jehad Zaki Adwan, July 2010 ACKNOWLEDGEMENTS I owe my deepest gratitude to my advisor and mentor, Dr. Barbara Leonard, for her unwavering support and guidance...»

«OPTIMAL CALIBRATION AND TRANSIENT CONTROL OF HIGH DEGREE OF FREEDOM INTERNAL COMBUSTION ENGINES by Tae-Kyung Lee A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy (Mechanical Engineering) in The University of Michigan 2009 Doctoral Committee: Research Professor Zoran S. Filipi, Chair Professor Dionissios N. Assanis Professor Panos Y. Papalambros Professor Jing Sun Denise M. Kramer, US ARMY TACOM Tae Kyung Lee © 2009 All Rights Reserved...»

«Telesonography Adoption and Use to Improve the Standard of Patient Care Within a Dominican Community James Eric Sutherland, DO Dissertation submitted to the faculty of the Virginia Polytechnic Institute and State University in partial fulfillment of the requirements for the degree of Doctor of Philosophy In Education Dean H. Sutphin, Chair John Burton Kerry Redican Fredrick Rawlins 1/30/09 Blacksburg, Virginia Keywords: telemedicine, teleradiology, teleultrasound, telesonography,...»

<<  HOME   |    CONTACTS
2016 www.dissertation.xlibx.info - Dissertations, online materials

Materials of this site are available for review, all rights belong to their respective owners.
If you do not agree with the fact that your material is placed on this site, please, email us, we will within 1-2 business days delete him.