Jifeng He
East China Normal University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Jifeng He.
european symposium on programming | 1986
Jifeng He; C. A. R. Hoare; Jeff W. Sanders
We consider the original work of Hoare and Jones on data refinement in the light of Dijkstra and Smyths treatment of nondeterminism and of Milner and Parks definition of the simulation of Communicating Systems. Two proof methods are suggested which we hope are simpler and more general than those in current use. They are proved to be individually sufficient for the correctness of refinement and together necessary for it. The proof methods can be employed to derive the weakest specification of an implementation from its abstract specification.
computer software and applications conference | 2001
Xiaoshan Li; Zhiming Liu; Jifeng He
We have recently proposed a formalization of the use of UML in requirement analysis. This paper applies that formalization to a library system as a case study. We intend to show how the approach supports a use case-driven, step-wised and incremental development in building models for requirement analysis. The actual process of building the models shows the importance and feasibility of the formalization itself.
Electronic Notes in Theoretical Computer Science | 2006
Jifeng He; Xiaoshan Li; Zhiming Liu
We present a theory of reactive components. We identify a component by its provided services, and specify the individual services by a guarded-design, which enables one to separate the responsibility of clients from the commitment made by the component, and model the behaviour of a component by a set of failures and divergences. Protocols are introduced to coordinate the interactions between a component and its environment. We adopt the notion of process refinement to formalise the substitutivity of components, and provide a complete proof method based on the notion of simulations. We also study the algebraic properties of component combinators.
annual software engineering workshop | 2007
Jing Li; Jifeng He; Huibiao Zhu; Geguang Pu
The Web Services Choreography Description Language (WS-CDL) is a newly developed specification for Web services composition to describe the observable behavior across multiple participants from a global perspective. However, this specification does not provide a formal semantics, whose informal description can lead to ambiguous understanding and different implementations. Hence, it causes difficulties for the engineering community to analyze the business behavior and ensure the correctness. In this paper, we present the semantics of WS-CDL in terms of process algebra CSP which has great advantages in designing and verifying concurrent processes. Therefore, all the properties we want to check within a WS-CDL document can be verified automatically in the CSP framework correspondingly. In addition, the exception and compensation handling mechanism, an important concept of long running transactions, is demonstrated clearly through our formalization work.
asian symposium on programming languages and systems | 2004
Jifeng He; Zhiming Liu; Xiaoshan Li; Shengchao Qin
This paper develops a mathematical characterisation of object-oriented concepts by defining an observation-oriented semantics for an object-oriented language (OOL) with a rich variety of features including subtypes, visibility, inheritance, dynamic binding and polymorphism. The language is expressive enough for the specification of object-oriented designs and programs. We also propose a calculus based on this model to support both structural and behavioural refinement of object-oriented designs. We take the approach of the development of the design calculus based on the standard predicate logic in Hoare and He’s Unifying Theories of Programming (UTP). We also consider object reference in terms of object identity as values and mutually dependent methods.
international conference on formal engineering methods | 2006
Jing Li; Jifeng He; Geguang Pu; Huibiao Zhu
A choreography is a multi-part contract which describes peer to peer collaboration of services regardless of any specific programming language or supporting platform. WS-CDL, issued from W3C, is the first language for describing choreography. In this paper, we propose a language CDL0 to capture the important features of WS-CDL, including choreography composition, compensation and exception handling. An adjunctive concept role reference is introduced with the aim of distinguishing multiple participants which provide the same kind of service within a choreography model. The semantics is given by an operational approach to provide a formal base for the choreography language. We believe this formalism work helps to clear ambiguous points in the WS-CDL specification and promote the usage of choreography languages.
international conference on engineering of complex computer systems | 2005
Xiaoshan Li; Zhiming Liu; Jifeng He
This paper discusses how to check consistency of UML requirements model which consists of a use case model and a conceptual class model with system constraints. Based on a given semantics, the requirements consistency can be defined and checked formally. The consistency among use cases and constraints are classified into five types. A system operation of interaction between actor and system is formally defined as a pair of pre and post conditions. An atomic use case is described as one system operation, and a composed use case may be defined as several system operations described by an activity diagram. Thus, each use case can also be modelled as a pair of pre and post conditions by composing the pre and post conditions of system operations by introducing a sequence composition operation. Requirement consistency can be logically checked based on the semantics. A simple library system is used as a case study to illustrate the feasibility of the method.
australian software engineering conference | 2004
Jing Liu; Zhiming Liu; Jifeng He; Xiaoshan Li
Both a UML model of requirement and a UML model of a design are defined as a pair of class diagram and a family of sequence diagrams. We then give an unified semantics for models of requirements and designs. We define the consistency between a design class diagram and the interaction diagrams and show how the removal of inconsistency can be treated as a model refinement. We then formally define the correctness of UML model of design with respect to the model of requirement.
Electronic Notes in Theoretical Computer Science | 2004
Zhiming Liu; Jifeng He; Jing Liu; Xiaoshan Li
We present an approach to embedding a formal method into the Rational Unified Process (RUP). The purposes are: (a) to unify different views of UML, (b) to enhance RUP and UML with the formal method to improve the quality of software systems; and (c) to support effective use of the formal method for system specification and reasoning with the iterative and incremental approach in RUP. Our overall aim is to base RUP and UML on the formal method and to scale up the use of the formal method in software system development. The model is based on Hoare and He’s Unifying Theories of Programming (UTP).
formal techniques for networked and distributed systems | 2008
Jing Li; Huibiao Zhu; Jifeng He
New evolving internet technologies are extending the role of the World Wide Web from a platform of information exhibition to a new environment for service interactions. While new business opportunities are brought in under this new era of internet, novel challenges are coming out at the same time. Current technologies have been found lacking efficient support for web transactions. Because transactions in the context of web services have distinct features, such as autonomous and interactive, the traditional automatic mechanisms of resource locking and rollback are proved to be inappropriate. For this reason, we suggest that web transactions are constructed through a series of compensable transactions, using the concept of compensation to ensure a relatively relaxed atomicity. This paper formally expresses the composition structures and behavioral dependencies of compensable transactions. Based on the formal description for a transaction model, we are able to further verify its transactional behavior according to the specified requirement of relaxed atomicity and more precise behavioral properties with temporal constraints.