Recent advances in distributed systems and multicore architectures, and the emerging interest in Cloud Computing has unleashed significant pressures upon the programming language community to research and develop better general purpose parallel and distributed programming languages. Among the many interesting approaches of this revitalized field of study, one promising approach is Join Pattern. Based on Join Calculus, Join Pattern is a distributed and parallel programming construct that provides a high-level concurrency abstraction, allowing programmers to define complex synchronization behavior between concurrent processes. Join Pattern has been implemented in many main-stream programming languages like C#, Java, Scala, Haskell. Even though such implementations are very efficient, they lack essential features like guard conditions, making programming in many situations tenuous to achieve correctness or to optimize. We propose to develop an extension of Join Pattern with guards and propagation, two features which we argue would make Join Pattern more robust and effective, and seek to develop more powerful features. We intend provide a detailed study to prove the capability of such a programming construct, and develop an industrial strength implementation of this extended Join Pattern system.