Current and emerging scientific and industrial applications require a significant com puting power provided by parallel platforms such as multicore, clusters, cloud compu ting, and GPGPU (General-Purpose Computing on Graphics Processing Units). Modern software development tools for such platforms are quite complex and require the use of new programming models, as well as knowledge of software and hardware details. One of the promising areas in the modern parallel programming is the development of abstract models and formal methods of design, analysis, and implementation of algorithms and programs. Such models and methods are constructed, particularly, in the framework of the algebraic programming and algorithmics. Algebraic programming is based on the term rewriting theory [1] and describes the processes of program design, algebraic transfor mations, proving mathematical theorems and the development of intelligent agents. The algorithmics is the direction of computer science being developed within the Ukrainian algebraic-cybernetic school [2, 3]. It is based on the Glushkov system of algorithmic algebras (SAA) focused on solving the problems of formalization and design of sequential and parallel algorithms. The objects of research in algorithmics are models of algorithms and programs represented in the form of high-level specifications-schemes. This paper proposes formal methods and software tools for designing parallel programs based on the algebra of algorithms. The ap