Although there are already several C implementations of pairwise sequence alignment in the EMBOSS library for bioinformatics, all of them are quite independent of each other. The main purpose of this project is to develop a generic application to unify the different implementations and to provide the developer with the capability to develop a pairwise alignment algorithm with little effort. C++ template technology provides high levels of performance and reusability project to achieve generic algorithm. An alignment algorithm is defined as a function object, which will be passed as a parameter to a generic implementation of dynamic programming. In this report, the local alignment algorithm of Smith-Waterman is instantiated. This application provides two kinds of reusability: generic algorithm reusability and function objects reusability.