Results 1 - 10
of
531
Architectural Styles and the Design of Network-based Software Architectures
, 2000
"...
The World Wide Web has succeeded in large part because its software architecture has been designed to meet the needs of an Internet-scale distributed hypermedia system. The Web has been iteratively developed over the past ten years through a series of modifications to the standards that define its ..."
Abstract
-
Cited by 1119 (1 self)
- Add to MetaCart
The World Wide Web has succeeded in large part because its software architecture has been designed to meet the needs of an Internet-scale distributed hypermedia system. The Web has been iteratively developed over the past ten years through a series of modifications to the standards that define its architecture. In order to identify those aspects of the Web that needed improvement and avoid undesirable modifications, a model for the modern Web architecture was needed to guide its design, definition, and deployment.
Software architecture research investigates methods for determining how best to partition a system, how components identify and communicate with each other, how information is communicated, how elements of a system can evolve independently, and how all of the above can be described using formal and informal notations. My work is motivated by the desire to understand and evaluate the architectural design of network-based application software through principled use of architectural constraints, thereby obtaining the functional, performance, and social properties desired of an architecture. An architectural style is a named, coordinated set of architectural constraints.
This dissertation defines a framework for understanding software architecture via architectural styles and demonstrates how styles can be used to guide the architectural design of network-based application software. A survey of architectural styles for network-based applications is used to classify styles according to the architectural properties they induce on an architecture for distributed hypermedia. I then introduce the Representational State Transfer (REST) architectural style and describe how REST has been used to guide the design and development of the architecture for the modern Web.
REST emphasizes scalability of component interactions, generality of interfaces, independent deployment of components, and intermediary components to reduce interaction latency, enforce security, and encapsulate legacy systems. I describe the software engineering principles guiding REST and the interaction constraints chosen to retain those principles, contrasting them to the constraints of other architectural styles. Finally, I describe the lessons learned from applying REST to the design of the Hypertext Transfer Protocol and Uniform Resource Identifier standards, and from their subsequent deployment in Web client and server software.
Towards the web of things: Web mashups for embedded devices
- In MEM 2009 in Proceedings of WWW 2009. ACM
, 2009
"... In the “Internet of Things ” vision, the physical world becomes integrable with computer networks. Embedded computers or visual markers on everyday objects allow things and information about them to be accessible in the digital world. However, this integration is based on competing standards and req ..."
Abstract
-
Cited by 68 (9 self)
- Add to MetaCart
(Show Context)
In the “Internet of Things ” vision, the physical world becomes integrable with computer networks. Embedded computers or visual markers on everyday objects allow things and information about them to be accessible in the digital world. However, this integration is based on competing standards and requires custom solutions, thus requires extensive time and technical expertise. Based on the success of Web 2.0 mashup applications, we propose a similar approach for integrating real-world devices to the Web, allowing for them to be easily combined with other virtual and physical resources. In this paper we discuss possible integration method, in particular how the REST principles can be applied to embedded devices. Then we illustrate these principles with two concrete implementations: on the Sun SPOT platform and on the Ploggs wireless energy monitors. Finally, we show how RESTful interactions can be leveraged to quickly create new prototypes and mashups that combine the physical and virtual world.
Cloudstone: Multi-platform, multi-language benchmark and measurement tools for web 2.0
, 2008
"... Web 2.0 applications place new and different demands on servers compared to their Web 1.0 counterparts. Simultaneously, the definitive arrival of pay-as-you-go “cloud computing ” and the proliferation of application development stacks present new and different degrees of freedom in deploying and tun ..."
Abstract
-
Cited by 65 (5 self)
- Add to MetaCart
Web 2.0 applications place new and different demands on servers compared to their Web 1.0 counterparts. Simultaneously, the definitive arrival of pay-as-you-go “cloud computing ” and the proliferation of application development stacks present new and different degrees of freedom in deploying and tuning software-as-a-service. We first identify non-obvious challenges and caveats to performing “apples-to-apples” comparisons of Web 2.0 application deployments. We then offer Cloudstone, a toolkit consisting of an open-source Web 2.0 social application (Olio), a set of automation tools for generating load and measuring its performance in different deployment environments, and a recommended set of constraints for computing a metric we believe makes more sense, dollars per user per month. By way of example we present preliminary measurements of both Rails and PHP versions of Cloudstone on a variety of Amazon Elastic Compute Cloud (EC2) configurations, discussing the challenges of comparing platforms or software stacks and how Cloudstone can help quantify the differences. 1. Why We Need New Workloads Existing Web benchmarking tools (ab,
Interacting with the SOA-Based Internet of Things: Discovery, Query, Selection, and On-Demand Provisioning of Web Services
"... Abstract—The increasing usage of smart embedded devices in business blurs the line between the virtual and real worlds. This creates new opportunities to build applications that better integrate real-time state of the physical world, and hence, provides enterprise services that are highly dynamic, m ..."
Abstract
-
Cited by 65 (7 self)
- Add to MetaCart
(Show Context)
Abstract—The increasing usage of smart embedded devices in business blurs the line between the virtual and real worlds. This creates new opportunities to build applications that better integrate real-time state of the physical world, and hence, provides enterprise services that are highly dynamic, more diverse, and efficient. Service-Oriented Architecture (SOA) approaches traditionally used to couple functionality of heavyweight corporate IT systems, are becoming applicable to embedded real-world devices, i.e., objects of the physical world that feature embedded processing and communication. In such infrastructures, composed of large numbers of networked, resource-limited devices, the discovery of services and on-demand provisioning of missing functionality is a significant challenge. We propose a process and a suitable system architecture that enables developers and business process designers to dynamically query, select, and use running instances of real-world services (i.e., services running on physical devices) or even deploy new ones on-demand, all in the context of composite, real-world business applications.
Deursen, “Crawling Ajax by Inferring User Interface State Changes
- Proc. Eighth Int’l Conf. Web Eng
, 2008
"... AJAX is a very promising approach for improving rich interactivity and responsiveness of web applications. At the same time, AJAX techniques shatter the metaphor of a web ‘page ’ upon which general search crawlers are based. This paper describes a novel technique for crawling AJAX ap-plications thro ..."
Abstract
-
Cited by 61 (10 self)
- Add to MetaCart
(Show Context)
AJAX is a very promising approach for improving rich interactivity and responsiveness of web applications. At the same time, AJAX techniques shatter the metaphor of a web ‘page ’ upon which general search crawlers are based. This paper describes a novel technique for crawling AJAX ap-plications through dynamic analysis and reconstruction of user interface state changes. Our method dynamically in-fers a ‘state-flow graph ’ modeling the various navigation paths and states within an AJAX application. This recon-structed model can be used to generate linked static pages. These pages could be used to expose AJAX sites to gen-eral search engines. Moreover, we believe that the crawling techniques that are part of our solution have other appli-cations, such as within general search engines, accessibil-
Triple-space computing: Semantic Web Services based on persistent publication of information
- In IFIP Int’l Conf. on Intelligence in Communication Systems
, 2004
"... Abstract. This paper discusses possible routes to moving the web from a collection of human readable pieces of information connecting humans, to a web that connects computing devices based on machine-processable semantics of data and distributed computing. The current shortcomings of web service tec ..."
Abstract
-
Cited by 59 (14 self)
- Add to MetaCart
Abstract. This paper discusses possible routes to moving the web from a collection of human readable pieces of information connecting humans, to a web that connects computing devices based on machine-processable semantics of data and distributed computing. The current shortcomings of web service technology are analyzed and a new paradigm for fully enabled semantic web services is proposed which is called triple-based or triple-space computing. 1
Why is the web loosely coupled? a multi-faceted metric for service design
- IN: PROC. OF THE 18TH WORLD WIDE WEB CONFERENCE
, 2009
"... Loose coupling is often quoted as a desirable property of systems architectures. One of the main goals of building systems using Web technologies is to achieve loose coupling. However, given the lack of a widely accepted definition of this term, it becomes hard to use coupling as a criterion to eval ..."
Abstract
-
Cited by 58 (17 self)
- Add to MetaCart
(Show Context)
Loose coupling is often quoted as a desirable property of systems architectures. One of the main goals of building systems using Web technologies is to achieve loose coupling. However, given the lack of a widely accepted definition of this term, it becomes hard to use coupling as a criterion to evaluate alternative Web technology choices, as all options may exhibit, and claim to provide, some kind of “loose ” coupling effects. This paper presents a systematic study of the degree of coupling found in service-oriented systems based on a multi-faceted approach. Thanks to the metric introduced in this paper, coupling is no longer a one-dimensional concept with loose coupling found somewhere in between tight coupling and no coupling. The paper shows how the metric can be applied to real-world examples in order to support and improve the design process of service-oriented systems.
Towards a Zero-Configuration Wireless Sensor Network Architecture for Smart Buildings
- BUILDSYS'09
"... Today’s buildings account for a large fraction of our energy consumption. In an effort to economize scarce fossil fuels on earth, sensor networks are a valuable tool to increase the energy efficiency of buildings without severely reducing our quality of life. Within a smart building many sensors and ..."
Abstract
-
Cited by 42 (1 self)
- Add to MetaCart
(Show Context)
Today’s buildings account for a large fraction of our energy consumption. In an effort to economize scarce fossil fuels on earth, sensor networks are a valuable tool to increase the energy efficiency of buildings without severely reducing our quality of life. Within a smart building many sensors and actuators are interconnected to form a control system. Nowadays, the deployment of a building control system is complicated because of different communication standards. In this paper, we present a web services-based approach to integrate resource constrained sensor and actuator nodes into IP-based networks. A key feature of our approach is its capability for automatic service discovery. For this purpose, we implemented an API to access services on sensor nodes following the architectural style of representational state transfer (REST). We implemented a prototype application based on TinyOS 2.1 on a custom sensor node platform with 8 Kbytes of RAM and an IEEE 802.15.4 compliant radio transceiver.
A comparative study of cost estimation models for web hypermedia applications
- Empirical Software Engineering
"... Abstract. Software cost models and effort estimates help project managers allocate resources, control costs and schedule and improve current practices, leading to projects finished on time and within budget. In the context of Web development, these issues are also crucial, and very challenging given ..."
Abstract
-
Cited by 40 (6 self)
- Add to MetaCart
(Show Context)
Abstract. Software cost models and effort estimates help project managers allocate resources, control costs and schedule and improve current practices, leading to projects finished on time and within budget. In the context of Web development, these issues are also crucial, and very challenging given that Web projects have short schedules and very fluidic scope. In the context of Web engineering, few studies have compared the accuracy of different types of cost estimation techniques with emphasis placed on linear and stepwise regressions, and case-based reasoning (CBR). To date only one type of CBR technique has been employed in Web engineering. We believe results obtained from that study may have been biased, given that other CBR techniques can also be used for effort prediction. Consequently, the first objective of this study is to compare the prediction accuracy of three CBR techniques to estimate the effort to develop Web hypermedia applications and to choose the one with the best estimates. The second objective is to compare the prediction accuracy of the best CBR technique against two commonly used prediction models, namely stepwise regression and regression trees. One dataset was used in the estimation process and the results showed that the best predictions were obtained for stepwise regression.
Extending the REpresentational State Transfer (REST) Architectural Style for Decentralized Systems
- in 26th International Conference on Software Engineering (ICSE
, 2003
"... Because it takes time and trust to establish agreement, traditional consensus-based architectural styles cannot safely accommodate resources that change faster than it takes to transmit notification of that change, nor resources that must be shared across independent agencies. ..."
Abstract
-
Cited by 37 (2 self)
- Add to MetaCart
(Show Context)
Because it takes time and trust to establish agreement, traditional consensus-based architectural styles cannot safely accommodate resources that change faster than it takes to transmit notification of that change, nor resources that must be shared across independent agencies.