The problems of finding values of the chromatic number and the chromatic index of a graph are NP-hard even when restricted to planar graphs. Every outerplanar graph has an associated tree structure which facilitates algorithmic treatment. Using that structure, we give an efficient algorithm to color vertices of an outerplanar graph with the minimum number of colors. We also establish algorithmically the value of the chromatic index of outerplanar graphs. The algorithms is based on an edge-coloring procedure preserving a property of a partial coloring by a systematic edge-coloring of adjacent faces.