A scrum team can very well be composed of more-or-less specialized members. This is the situation of almost every team and this can be a good thing IMO, as long as the team can self-organize itself to take advantage of its specialized members.

Please read these two articles for more information:

- [Specialization and Generalization in Teams](http://www.scrumalliance.org/articles/324-specialization-and-generalization-in-teams)

> **Balancing specialization**

> The need for balancing specialization occurs when a team takes shared responsibility of all the work in a Sprint. As a result, team members need to learn a little bit of each other's specialization. This does not mean that all team members must be generalists, but that members move away from the other extreme -- being a specialist in exactly one area. Team members will learn multiple-specializations but probably not all of them.

- [Well-Formed Teams](http://www.scrumalliance.org/articles/92-wellformed-teams)