scispace - formally typeset
Search or ask a question
Author

Yongjie Zheng

Bio: Yongjie Zheng is an academic researcher from California State University San Marcos. The author has contributed to research in topics: Reference architecture & Applications architecture. The author has an hindex of 6, co-authored 20 publications receiving 127 citations. Previous affiliations of Yongjie Zheng include University of Missouri–Kansas City & University of California, Irvine.

Papers
More filters
Proceedings ArticleDOI
02 Jun 2012
TL;DR: A new approach called 1.x-way architecture-implementation mapping is presented, which includes deep separation of generated and non-generated code, an architecture change model, architecture-based code regeneration, and architecture change notification.
Abstract: It is essential for software architecture to be consistent with implementation during software development. Existing architecture-implementation mapping approaches are not sufficient due to a variety of reasons, including lack of support for change management and mapping of behavioral architecture specification. A new approach called 1.x-way architecture-implementation mapping is presented in this paper to address these issues. Its contribution includes deep separation of generated and non-generated code, an architecture change model, architecture-based code regeneration, and architecture change notification. The approach is implemented in ArchStudio 4, an Eclipse-based architecture development environment. To evaluate its utility, we refactored the code of ArchStudio, and replayed changes that had been made to ArchStudio in two research projects by redoing them with the developed tool.

30 citations

Proceedings ArticleDOI
15 Aug 2004
TL;DR: A Mobile GATEway for the active deployment of transport entities or MobiGATE is presented, which delineates a clear separation of interdependency parts from the service-specific computational codes of those service entities by using a separate coordination language to describe the coordination among streamlet service entities.
Abstract: Using gateway proxies is one important approach to facilitating adaptation across wireless and mobile environments. Importantly, augmented service entities deployed within the gateway proxy residing on the wired network can be composed and deployed to shield mobile clients from the effects of poor network characteristics. The usual approach to the static composition of service entities on the gateway proxy is to have these service entities interact with each other by explicitly invoking procedures on the named interface. The tight coupling of interfaces inhibits the flexible composition and adaptation of the service entities to the dynamic operating characteristics of wireless networks. We present a Mobile GATEway for the active deployment of transport entities or MobiGATE (pronounced as MobiGate) for short. MobiGATE is a mobile middleware framework that supports the robust and flexible composition of transport entities, known as streamlets. The flow of data traffic is subjected to processing by a chain of streamlets. Each streamlet encapsulates a service entity that serves to adapt the flow of traffic across the wireless network. To facilitate the dynamic reconfiguration of the streamlets, we advocate applying the concept of coordination as the unifying approach to composing these transport service entities. Importantly, MobiGATE delineates a clear separation of interdependency parts from the service-specific computational codes of those service entities by using a separate coordination language to describe the coordination among streamlet service entities. To this end, we have defined a compositional language called MobiGATE coordination language (MCL) that provides rich constructs to support the definition of compositions, with constrained type validation and checking.

20 citations

Journal ArticleDOI
TL;DR: It is opine that architecture-centric development and domain-specific model-driven development are the two most promising branches of model-based software development.
Abstract: The use of model-based software development is increasingly popular due to recent advancements in modeling technology. Numerous approaches exist; this paper seeks to organize and characterize them. In particular, important terminological confusion, challenges, and recurring techniques of model-based software development are identified and rationalized. New perspectives are provided on some fundamental issues, such as the distinctions between model-driven development and architecture-centric development, code generation, and metamodeling. On the basis of this discussion, we opine that architecture-centric development and domain-specific model-driven development are the two most promising branches of model-based software development. Achieving a positive future will require, however, specific advances in software modeling, code generation, and model-code consistency management.

14 citations

Journal ArticleDOI
TL;DR: Initial experimental results validate the flexibility of the coordination approach in promoting separation-of-concern in the reconfiguration of services, while achieving low computation and delay overheads.
Abstract: The use of gateway proxies is one important approach to facilitating adaptation across wireless and mobile environments. Importantly, augmented service entities deployed within the gateway proxy residing on the wired network can be composed and deployed to shield mobile clients from the effects of poor network characteristics. The usual approach to the static composition of service entities on the gateway proxy is to have these service entities interact with each other by explicitly invoking procedures on the named interface, but such a tight coupling of interfaces inhibits the flexible composition and adaptation of the service entities to the dynamic operating characteristics of wireless networks. In this paper, we present a mobile gateway for the active deployment of transport entities or, for short, MobiGATE (pronounced Mobi-Gate). MobiGATE is a mobile middleware framework that supports the robust and flexible composition of transport entities, known as streamlets. The flow of data traffic is subjected to processing by a chain of streamlets. Each streamlet encapsulates a service entity that adapts the flow of traffic across the wireless network. To facilitate the dynamic reconfiguration of the streamlets, we advocate applying the concept of coordination as the unifying approach to composing these transport service entities. Importantly, MobiGATE delineates a clear separation of interdependent parts from the service-specific computational codes of those service entities. It does this by using a separate coordination language, called MobiGATE coordination language (MCL), to describe the coordination among streamlet service entities. The complete design, implementation, and evaluation of the MobiGATE system are presented in this paper. Initial experimental results validate the flexibility of the coordination approach in promoting separation-of-concern in the reconfiguration of services, while achieving low computation and delay overheads.

11 citations

Proceedings ArticleDOI
01 Apr 2017
TL;DR: A novel approach using the architecture as a pivot to address the relationship and conformance between product line features, architecture, and source code independently, which is both applicable and capable to support the development and evolution of real-world variations of a software system.
Abstract: Existing software product line approaches often develop and evolve product line features, architecture, and source code independently, which makes it difficult to manage the relationship and conformance between these artifacts. This paper presents a novel approach using the architecture as a pivot to address this problem. It consists of a modeling mechanism that integrates features specification into an architectural model, and an architecture-implementation mapping mechanism that combines code generation with annotation processing. The approach can trace a product line feature to the architecture and source code, and automatically update the architecture and source code to maintain their conformance when feature changes occur. We implemented an Eclipse-based toolset to support the approach, and conducted a case study with the Apache Solr open-source system. The result shows that our approach is both applicable and capable to support the development and evolution of real-world variations of a software system.

10 citations


Cited by
More filters
Journal Article
TL;DR: AspectJ as mentioned in this paper is a simple and practical aspect-oriented extension to Java with just a few new constructs, AspectJ provides support for modular implementation of a range of crosscutting concerns.
Abstract: Aspect] is a simple and practical aspect-oriented extension to Java With just a few new constructs, AspectJ provides support for modular implementation of a range of crosscutting concerns. In AspectJ's dynamic join point model, join points are well-defined points in the execution of the program; pointcuts are collections of join points; advice are special method-like constructs that can be attached to pointcuts; and aspects are modular units of crosscutting implementation, comprising pointcuts, advice, and ordinary Java member declarations. AspectJ code is compiled into standard Java bytecode. Simple extensions to existing Java development environments make it possible to browse the crosscutting structure of aspects in the same kind of way as one browses the inheritance structure of classes. Several examples show that AspectJ is powerful, and that programs written using it are easy to understand.

2,947 citations

Patent
Jeffrey L. Robbin1, Steve Jobs1, Timothy Wasko1, Greg Christie1, Imran Chaudhri1 
07 Dec 2006
TL;DR: In this article, a hierarchically ordered graphical user interface is presented for a portable multimedia device, and a method, apparatus, and system for providing user supplied configuration data are described, where a first order, or home, interface provides a highest order of user selectable items each of which, when selected, results in a lower order user interface associated with the selected item.
Abstract: In a portable multimedia device, a method, apparatus, and system for providing user supplied configuration data are described. In one embodiment, a hierarchically ordered graphical user interface are provided. A first order, or home, interface provides a highest order of user selectable items each of which, when selected, results in an automatic transition to a lower order user interface associated with the selected item. In one of the described embodiments, the lower order interface includes other user selectable items associated with the previously selected item from the higher order user interface.

444 citations

01 Jan 2016
TL;DR: This software product line engineering foundations principles and techniques will help people facing with some infectious bugs inside their desktop computer to overcome these challenges.
Abstract: Thank you for reading software product line engineering foundations principles and techniques. Maybe you have knowledge that, people have look numerous times for their favorite books like this software product line engineering foundations principles and techniques, but end up in malicious downloads. Rather than reading a good book with a cup of coffee in the afternoon, instead they are facing with some infectious bugs inside their desktop computer.

435 citations

Journal Article
TL;DR: A framework for variability modeling—COVAMOF—that provides support for all four requirements and uniformly represent variation points as first-class entities in all abstraction layers.
Abstract: A key aspect of variability management in software product families is the explicit representation of the variability. Experiences at several industrial software development companies have shown that a software variability model should do four things: (1) uniformly represent variation points as first-class entities in all abstraction layers (ranging from features to code), (2) allow for the hierarchical organization of the variability, (3) allow for the first-class representation of simple (i.e., one-to-one) and complex (i.e., n-to-m) dependencies, and (4) allow for modeling the relations between dependencies. Existing variability modeling approaches support the first two requirements, but lack support for the latter two. The contribution of this paper is a framework for variability modeling-COVAMOF-that provides support for all four requirements.

264 citations

Patent
27 Apr 2004
TL;DR: In this paper, the authors present techniques for repeatedly selecting and presenting media items at a media device and demonstrate that the selected media items can be continuously selected and presented in an automated manner.
Abstract: Techniques for repeatedly selecting and presenting media items at a media device are disclosed. In one embodiment, media items are automatically (or dynamically) selected from a media source (e.g., list of media items) and then presented at a media device. As a result, the selected media items can be continuously selected and presented in an automated manner. In one embodiment, the automatic selection of the media items can be performed in accordance with at least one criterion. The at least one criterion can be user-specified and/or rules-based. In one embodiment, a display screen can display information pertaining to recently presented media items, media item being presented, and upcoming media items to be presented.

197 citations