Stephen Yau - Academia.edu (original) (raw)

Papers by Stephen Yau

Research paper thumbnail of Reference Architectures for Privacy Preservation in Cloud-based IoT Applications

Services Transactions on Services Computing, 2014

As the promise of the Internet of Things (IoT) materializes in our everyday lives, we are often c... more As the promise of the Internet of Things (IoT) materializes in our everyday lives, we are often challenged with a number of concerns regarding the efficacy of the current data privacy solutions that support the pervasive components at play in IoT. The privacy and security concerns surrounding IoT applications often manifests themselves as a threat to end-user adoption and negatively impacts trust among end-users. In this paper, we present a reference software architectures for building cloud-enabled IoT applications in support of collaborative pervasive systems aimed at achieving trustworthiness among end-users in IoT scenarios. We describe a case study that leverages this reference architecture to protect sensitive user data in IoT application implementation. We then evaluate the response data from our end-user survey. In addition we present a Secure, Private and Trustworthy protocol (named SPTP) that was prototyped for addressing critical security, privacy and trust concerns surrounding mobile, pervasive and cloud services in Collective Intelligence (CI) scenarios. We present our evaluation criteria for the proposed protocol, our results and future work.

Research paper thumbnail of A Situation-aware Access Control based Privacy-Preserving Service Matchmaking Approach for Service-Oriented Architecture

IEEE International Conference on Web Services (ICWS 2007), 2007

Service matchmaking is an important process in the operation of Service-Oriented Architecture (SO... more Service matchmaking is an important process in the operation of Service-Oriented Architecture (SOA) based systems. In this process, information from both service providers and requestors are used. How to protect the privacy of participating parties during the matchmaking process imposes a challenge. In this paper, a privacypreserving service matchmaking approach is presented to support semantic-based service matchmaking and avoid privacy leakages to untrusted parties. The approach uses situation-aware access control (SA-AC) mechanism to ensure the appropriate disclosure and use of private information by modeling, specifying and enforcing SA-AC policies. It provides an owner-centric mechanism for both service providers and requestors in SOA-based systems to protect their private information during service matchmaking.

Research paper thumbnail of Speci.cation, Analysis and Implementation of Architectural Patterns for Dependable Software Systems

10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems

Ensuring dependability of distributed applications is a difficult problem since developers must c... more Ensuring dependability of distributed applications is a difficult problem since developers must carefully consider issues such as network and node failures, deadlocks, livelocks, starvation, distributed coordination, and synchronization. The creation of architectural patterns for dependable software systems can provide effective guidelines, similar to design patterns, to system architects. In this paper, we present an agent specification language, associated tools, and agent-based middleware for specifying, analyzing and implementing architectural patterns for dependable software systems. The language we present is an extension of the Secure Operations Language (SOL), which supports the behavioral specification of agents in addition to specification of agent interfaces, agent composition, and inter-agent interactions. Extended SOL can be used in the design of architectural patterns that will implement the security, real-time, and fault-tolerance requirements of a given application. SOL also supports early and automated analyses of an application's functional requirements with respect to performance critical properties. Further, the language has a precisely defined semantics for composition, which enables the automated analysis of architectural designs and the impact of design choices on dependability requirements. The agent-based middleware Secure Infrastructure for Networked Systems (SINS), being developed at the Naval Research Laboratory, enables the rapid development and deployment of dependable distributed applications. Architectural patterns specified in extended SOL can be used to automatically derive an implementation, and to assign SINS agents to processors that constitute the distributed execution environment.

Research paper thumbnail of Testing context-sensitive middleware-based software applications

Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004.

During the testing of context-sensitive middleware-based software, the middleware checks the curr... more During the testing of context-sensitive middleware-based software, the middleware checks the current situation to invoke the appropriate functions of the applications. Since the middleware remains active and the situation may continue to evolve, however, the conclusion of some test cases may not easily be identified. Moreover, failures appearing in one situation may be superseded by subsequent correct outcomes and, therefore, be hidden. We alleviate the above problems by making use of a special kind of situation, which we call checkpoints, such that the middleware will not activate the functions under test. We recommend testers to generate test cases that start at a checkpoint and end at another. Testers may identify relations that associate different execution sequences of a test case. They then check the results of each test case to detect any contravention of such relations. We illustrate our technique with an example that shows how hidden failures can be detected. We also report the experimentation carried out on an RFID-based location-sensing application on top of a context-sensitive middleware.

Research paper thumbnail of Situation-aware access control for service-oriented autonomous decentralized systems

Proceedings Autonomous Decentralized Systems, 2005. ISADS 2005.

Research paper thumbnail of Situation-aware contract specification language for middleware for ubiquitous computing

The Ninth IEEE Workshop on Future Trends of Distributed Computing Systems, 2003. FTDCS 2003. Proceedings.

Research paper thumbnail of Incorporating Situation Awareness in Service Specifications

Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06), 2006

Service-Oriented Architecture has the major advantage of enabling rapid composition of distribute... more Service-Oriented Architecture has the major advantage of enabling rapid composition of distributed applications from various services, and has become increasingly popular for many large-scale servicebased systems in various application areas, including scientific collaboration, e-business, health care, military, and homeland security. Situation awareness (SAW) is the capability of the entities in a servicebased system to be aware of the situation changes and automatically adapt themselves to such changes to satisfy user requirements, including security and privacy. The continuing evolutions of the entities and environment makes SAW one of the most desired features to support dynamic adaptive computing in service-based systems. In this paper, the relationship between contexts/situations and services in situationaware service-based systems is identified and an extension of OWLS with situation ontology, called SAW-OWLS , incorporates SAW in service specifications is presented. An approach to generating service specifications for situation-aware servicebased systems using SAW-OWLS and the system diagram of situation-aware service-based systems using SAW-OWLS are presented.

Research paper thumbnail of Functionality-Based Service Matchmaking for Service-Oriented Architecture

Eighth International Symposium on Autonomous Decentralized Systems (ISADS'07), 2007

Service matchmaking is a basic feature of Service-Oriented Architecture (SOA). In this paper, a s... more Service matchmaking is a basic feature of Service-Oriented Architecture (SOA). In this paper, a semantic-based flexible service matchmaking approach is presented to efficiently identifying functionalitycompatible services. This approach utilizes SAW-OWLS to specify the service advertisements and service discovery requests. The functionalitycompatibility of a service to a request is defined on their parameters and conditions. This approach uses functionality filtering to prune out incompatible services, and then select services based on the aggregated similarities of input/output parameters, precondition/result situations and other service attributes. Experimental results are given to illustrate that this approach can efficiently generate precise service matchmaking results.

Research paper thumbnail of Rapid Development of Adaptable Situation-Aware Service-based Systems

Discoveries and Trends

Service-based systems have many applications, such as collaborative research and development, e-b... more Service-based systems have many applications, such as collaborative research and development, e-business, health care, military applications and homeland security. In these systems, it is necessary to provide users the capability of composing appropriate services into workflows offering higher-level functionality based on declaratively specified goals. In a large-scale and dynamic service-oriented computing environment, it is desirable that the service composition is automated and situation-aware so that robust and adaptive workflows can be generated. However, existing languages for web services are not expressive enough to model services with situation awareness (SAW) and side effects. This chapter presents an approach to rapid development of adaptable situation-aware service-based systems. This approach is based on the a-logic and a-calculus, and a declarative model for SAW. This approach consists of four major components: (1) analyzing SAW requirements using our declarative model...

Research paper thumbnail of Integration Testing of Context-Sensitive Middleware-Based Applications: A Metamorphic Approach

International Journal of Software Engineering and Knowledge Engineering, 2006

During the testing of context-sensitive middleware-based software, the middleware checks the curr... more During the testing of context-sensitive middleware-based software, the middleware checks the current situation to invoke the appropriate functions of the applications. Since the middleware remains active and the situation may continue to evolve, however, the conclusion of some test cases may not easily be identified. Moreover, failures appearing in one situation may be superseded by subsequent correct outcomes and, therefore, be hidden. We alleviate the above problems by making use of a special kind of situation, which we call checkpoints, such that the middleware will not activate the functions under test. We recommend testers to generate test cases that start at a checkpoint and end at another. Testers may identify relations that associate different execution sequences of a test case. They then check the results of each test case to detect any contravention of such relations. We illustrate our technique with an example that shows how hidden failures can be detected. We also report...

Research paper thumbnail of Meeting the crisis in computer science

Communications of the ACM, 1983

Participants in the 1982 Snowbird Conference reassessed the problems in computer science educatio... more Participants in the 1982 Snowbird Conference reassessed the problems in computer science education and recommended steps for improvement.

Research paper thumbnail of Smart classroom: Enhancing collaborative learning using pervasive computing technology

Smart Classroom facilitates collaborative learning among college students. Students in such an en... more Smart Classroom facilitates collaborative learning among college students. Students in such an environment form small groups to solve a specific problem or develop a group project. In a Smart Classroom, each student has a situation-aware PDA. Students' PDAs dynamically form mobile ad hoc networks for group meetings. Each PDA monitors its situation (locations of PDAs, noise, light, and mobility) and uses situation to trigger communication activity among the students and the instructor for group discussion and automatic distribution of presentation materials. Middleware can effectively address the Situation-awareness and ad hoc group communication for pervasive computing by providing development and runtime support to the application software. We have developed a Reconfigurable Context-Sensitive Middleware (RCSM) for such purposes. In this paper, we will present the characteristics of Smart Classroom, how we can use RCSM to develop such an environment, and how to use it to greatly enhance collaborative learning. We will use the senior group software engineering project course as an illustrative example.

Research paper thumbnail of Automated Agent Synthesis for Situation Awareness in Service-Based Systems

30th Annual International Computer Software and Applications Conference (COMPSAC'06)

Service-based systems have many applications, such as collaborative research and development, e-b... more Service-based systems have many applications, such as collaborative research and development, e-business, health care, military applications, and homeland security. In dynamic service-oriented computing environment, situation awareness (SAW) is needed for system status monitoring, adaptive service coordination and flexible security policy enforcement. Furthermore, various application software systems in such environments often need to reuse situational information for providing better quality of service. Hence, to greatly reduce the effort of situation-aware application software development in service-based systems as well as supporting runtime system adaptation, it is necessary to automate the development of reusable and autonomous software components, referred to as SAW agents, for context acquisition, situation analysis and reactive behaviors of the systems. In this paper, an automated agent synthesis approach for SAW in service-based systems is presented. This approach is based on AS 3 calculus and logic, and our declarative model for SAW.

Research paper thumbnail of Meeting the crisis in computer science

Communications of the ACM, 1983

Research paper thumbnail of Reference Architectures for Privacy Preservation in Cloud-based IoT Applications

Services Transactions on Services Computing, 2014

As the promise of the Internet of Things (IoT) materializes in our everyday lives, we are often c... more As the promise of the Internet of Things (IoT) materializes in our everyday lives, we are often challenged with a number of concerns regarding the efficacy of the current data privacy solutions that support the pervasive components at play in IoT. The privacy and security concerns surrounding IoT applications often manifests themselves as a threat to end-user adoption and negatively impacts trust among end-users. In this paper, we present a reference software architectures for building cloud-enabled IoT applications in support of collaborative pervasive systems aimed at achieving trustworthiness among end-users in IoT scenarios. We describe a case study that leverages this reference architecture to protect sensitive user data in IoT application implementation. We then evaluate the response data from our end-user survey. In addition we present a Secure, Private and Trustworthy protocol (named SPTP) that was prototyped for addressing critical security, privacy and trust concerns surrounding mobile, pervasive and cloud services in Collective Intelligence (CI) scenarios. We present our evaluation criteria for the proposed protocol, our results and future work.

Research paper thumbnail of A Situation-aware Access Control based Privacy-Preserving Service Matchmaking Approach for Service-Oriented Architecture

IEEE International Conference on Web Services (ICWS 2007), 2007

Service matchmaking is an important process in the operation of Service-Oriented Architecture (SO... more Service matchmaking is an important process in the operation of Service-Oriented Architecture (SOA) based systems. In this process, information from both service providers and requestors are used. How to protect the privacy of participating parties during the matchmaking process imposes a challenge. In this paper, a privacypreserving service matchmaking approach is presented to support semantic-based service matchmaking and avoid privacy leakages to untrusted parties. The approach uses situation-aware access control (SA-AC) mechanism to ensure the appropriate disclosure and use of private information by modeling, specifying and enforcing SA-AC policies. It provides an owner-centric mechanism for both service providers and requestors in SOA-based systems to protect their private information during service matchmaking.

Research paper thumbnail of Speci.cation, Analysis and Implementation of Architectural Patterns for Dependable Software Systems

10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems

Ensuring dependability of distributed applications is a difficult problem since developers must c... more Ensuring dependability of distributed applications is a difficult problem since developers must carefully consider issues such as network and node failures, deadlocks, livelocks, starvation, distributed coordination, and synchronization. The creation of architectural patterns for dependable software systems can provide effective guidelines, similar to design patterns, to system architects. In this paper, we present an agent specification language, associated tools, and agent-based middleware for specifying, analyzing and implementing architectural patterns for dependable software systems. The language we present is an extension of the Secure Operations Language (SOL), which supports the behavioral specification of agents in addition to specification of agent interfaces, agent composition, and inter-agent interactions. Extended SOL can be used in the design of architectural patterns that will implement the security, real-time, and fault-tolerance requirements of a given application. SOL also supports early and automated analyses of an application's functional requirements with respect to performance critical properties. Further, the language has a precisely defined semantics for composition, which enables the automated analysis of architectural designs and the impact of design choices on dependability requirements. The agent-based middleware Secure Infrastructure for Networked Systems (SINS), being developed at the Naval Research Laboratory, enables the rapid development and deployment of dependable distributed applications. Architectural patterns specified in extended SOL can be used to automatically derive an implementation, and to assign SINS agents to processors that constitute the distributed execution environment.

Research paper thumbnail of Testing context-sensitive middleware-based software applications

Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004.

During the testing of context-sensitive middleware-based software, the middleware checks the curr... more During the testing of context-sensitive middleware-based software, the middleware checks the current situation to invoke the appropriate functions of the applications. Since the middleware remains active and the situation may continue to evolve, however, the conclusion of some test cases may not easily be identified. Moreover, failures appearing in one situation may be superseded by subsequent correct outcomes and, therefore, be hidden. We alleviate the above problems by making use of a special kind of situation, which we call checkpoints, such that the middleware will not activate the functions under test. We recommend testers to generate test cases that start at a checkpoint and end at another. Testers may identify relations that associate different execution sequences of a test case. They then check the results of each test case to detect any contravention of such relations. We illustrate our technique with an example that shows how hidden failures can be detected. We also report the experimentation carried out on an RFID-based location-sensing application on top of a context-sensitive middleware.

Research paper thumbnail of Situation-aware access control for service-oriented autonomous decentralized systems

Proceedings Autonomous Decentralized Systems, 2005. ISADS 2005.

Research paper thumbnail of Situation-aware contract specification language for middleware for ubiquitous computing

The Ninth IEEE Workshop on Future Trends of Distributed Computing Systems, 2003. FTDCS 2003. Proceedings.

Research paper thumbnail of Incorporating Situation Awareness in Service Specifications

Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06), 2006

Service-Oriented Architecture has the major advantage of enabling rapid composition of distribute... more Service-Oriented Architecture has the major advantage of enabling rapid composition of distributed applications from various services, and has become increasingly popular for many large-scale servicebased systems in various application areas, including scientific collaboration, e-business, health care, military, and homeland security. Situation awareness (SAW) is the capability of the entities in a servicebased system to be aware of the situation changes and automatically adapt themselves to such changes to satisfy user requirements, including security and privacy. The continuing evolutions of the entities and environment makes SAW one of the most desired features to support dynamic adaptive computing in service-based systems. In this paper, the relationship between contexts/situations and services in situationaware service-based systems is identified and an extension of OWLS with situation ontology, called SAW-OWLS , incorporates SAW in service specifications is presented. An approach to generating service specifications for situation-aware servicebased systems using SAW-OWLS and the system diagram of situation-aware service-based systems using SAW-OWLS are presented.

Research paper thumbnail of Functionality-Based Service Matchmaking for Service-Oriented Architecture

Eighth International Symposium on Autonomous Decentralized Systems (ISADS'07), 2007

Service matchmaking is a basic feature of Service-Oriented Architecture (SOA). In this paper, a s... more Service matchmaking is a basic feature of Service-Oriented Architecture (SOA). In this paper, a semantic-based flexible service matchmaking approach is presented to efficiently identifying functionalitycompatible services. This approach utilizes SAW-OWLS to specify the service advertisements and service discovery requests. The functionalitycompatibility of a service to a request is defined on their parameters and conditions. This approach uses functionality filtering to prune out incompatible services, and then select services based on the aggregated similarities of input/output parameters, precondition/result situations and other service attributes. Experimental results are given to illustrate that this approach can efficiently generate precise service matchmaking results.

Research paper thumbnail of Rapid Development of Adaptable Situation-Aware Service-based Systems

Discoveries and Trends

Service-based systems have many applications, such as collaborative research and development, e-b... more Service-based systems have many applications, such as collaborative research and development, e-business, health care, military applications and homeland security. In these systems, it is necessary to provide users the capability of composing appropriate services into workflows offering higher-level functionality based on declaratively specified goals. In a large-scale and dynamic service-oriented computing environment, it is desirable that the service composition is automated and situation-aware so that robust and adaptive workflows can be generated. However, existing languages for web services are not expressive enough to model services with situation awareness (SAW) and side effects. This chapter presents an approach to rapid development of adaptable situation-aware service-based systems. This approach is based on the a-logic and a-calculus, and a declarative model for SAW. This approach consists of four major components: (1) analyzing SAW requirements using our declarative model...

Research paper thumbnail of Integration Testing of Context-Sensitive Middleware-Based Applications: A Metamorphic Approach

International Journal of Software Engineering and Knowledge Engineering, 2006

During the testing of context-sensitive middleware-based software, the middleware checks the curr... more During the testing of context-sensitive middleware-based software, the middleware checks the current situation to invoke the appropriate functions of the applications. Since the middleware remains active and the situation may continue to evolve, however, the conclusion of some test cases may not easily be identified. Moreover, failures appearing in one situation may be superseded by subsequent correct outcomes and, therefore, be hidden. We alleviate the above problems by making use of a special kind of situation, which we call checkpoints, such that the middleware will not activate the functions under test. We recommend testers to generate test cases that start at a checkpoint and end at another. Testers may identify relations that associate different execution sequences of a test case. They then check the results of each test case to detect any contravention of such relations. We illustrate our technique with an example that shows how hidden failures can be detected. We also report...

Research paper thumbnail of Meeting the crisis in computer science

Communications of the ACM, 1983

Participants in the 1982 Snowbird Conference reassessed the problems in computer science educatio... more Participants in the 1982 Snowbird Conference reassessed the problems in computer science education and recommended steps for improvement.

Research paper thumbnail of Smart classroom: Enhancing collaborative learning using pervasive computing technology

Smart Classroom facilitates collaborative learning among college students. Students in such an en... more Smart Classroom facilitates collaborative learning among college students. Students in such an environment form small groups to solve a specific problem or develop a group project. In a Smart Classroom, each student has a situation-aware PDA. Students' PDAs dynamically form mobile ad hoc networks for group meetings. Each PDA monitors its situation (locations of PDAs, noise, light, and mobility) and uses situation to trigger communication activity among the students and the instructor for group discussion and automatic distribution of presentation materials. Middleware can effectively address the Situation-awareness and ad hoc group communication for pervasive computing by providing development and runtime support to the application software. We have developed a Reconfigurable Context-Sensitive Middleware (RCSM) for such purposes. In this paper, we will present the characteristics of Smart Classroom, how we can use RCSM to develop such an environment, and how to use it to greatly enhance collaborative learning. We will use the senior group software engineering project course as an illustrative example.

Research paper thumbnail of Automated Agent Synthesis for Situation Awareness in Service-Based Systems

30th Annual International Computer Software and Applications Conference (COMPSAC'06)

Service-based systems have many applications, such as collaborative research and development, e-b... more Service-based systems have many applications, such as collaborative research and development, e-business, health care, military applications, and homeland security. In dynamic service-oriented computing environment, situation awareness (SAW) is needed for system status monitoring, adaptive service coordination and flexible security policy enforcement. Furthermore, various application software systems in such environments often need to reuse situational information for providing better quality of service. Hence, to greatly reduce the effort of situation-aware application software development in service-based systems as well as supporting runtime system adaptation, it is necessary to automate the development of reusable and autonomous software components, referred to as SAW agents, for context acquisition, situation analysis and reactive behaviors of the systems. In this paper, an automated agent synthesis approach for SAW in service-based systems is presented. This approach is based on AS 3 calculus and logic, and our declarative model for SAW.

Research paper thumbnail of Meeting the crisis in computer science

Communications of the ACM, 1983