TY - JOUR
T1 - Breeze graph grammar
T2 - a graph grammar approach for modeling the software architecture of big data-oriented software systems
AU - Li, Chen
AU - Huang, Linpeng
AU - Chen, Luxi
PY - 2015/1/1
Y1 - 2015/1/1
N2 - Summary Various technologies have been proposed to support the processing of big data. However, such technologies require software architectures not only to adapt to the changes and achieve dynamic evolution but also to be reliable. Most of the architecture description techniques are not able to directly capture the dynamic changes in the definition of the software architecture and cannot analyze or evaluate the system reliability. In this paper, we provide a breeze graph grammar (BGG) to model the software architecture in both static and dynamic aspects and give a BGG reliability model to help supporting software system reliability modeling and evaluation. Our work expands this idea in three directions. We first present the definition of BGG to specify the software architecture and map the system dynamic evolution to BGG transformation rules. Second, a BGG reliability model is proposed in which we add error attributes to the BGG graph for capturing the system error information, and the system error state transition is performed through BGG graph rewriting rules. Then, we study the rules to map the BGG reliability model to a generalized stochastic Petri net (GSPN) model, which can be used for reliability evaluation. Throughout this paper, we use a big data-based centralized system to demonstrate our approach. The BGG graph rewriting characteristic supports the dynamic change requirements, and the architecture is statically checked through the BGG productions. Moreover, system reliability modeling and evaluation can be achieved through the BGG reliability model by combining GSPN.
AB - Summary Various technologies have been proposed to support the processing of big data. However, such technologies require software architectures not only to adapt to the changes and achieve dynamic evolution but also to be reliable. Most of the architecture description techniques are not able to directly capture the dynamic changes in the definition of the software architecture and cannot analyze or evaluate the system reliability. In this paper, we provide a breeze graph grammar (BGG) to model the software architecture in both static and dynamic aspects and give a BGG reliability model to help supporting software system reliability modeling and evaluation. Our work expands this idea in three directions. We first present the definition of BGG to specify the software architecture and map the system dynamic evolution to BGG transformation rules. Second, a BGG reliability model is proposed in which we add error attributes to the BGG graph for capturing the system error information, and the system error state transition is performed through BGG graph rewriting rules. Then, we study the rules to map the BGG reliability model to a generalized stochastic Petri net (GSPN) model, which can be used for reliability evaluation. Throughout this paper, we use a big data-based centralized system to demonstrate our approach. The BGG graph rewriting characteristic supports the dynamic change requirements, and the architecture is statically checked through the BGG productions. Moreover, system reliability modeling and evaluation can be achieved through the BGG reliability model by combining GSPN.
KW - BGG
KW - big data
KW - graph grammar
KW - GSPN
KW - reliability
KW - software architecture
UR - http://www.scopus.com/inward/record.url?scp=84936846970&partnerID=8YFLogxK
U2 - 10.1002/spe.2271
DO - 10.1002/spe.2271
M3 - Journal article
AN - SCOPUS:84936846970
SN - 0038-0644
VL - 45
SP - 1023
EP - 1050
JO - Software - Practice and Experience
JF - Software - Practice and Experience
IS - 8
ER -