Cross functionality is not a natural skillset for scrum teams and lets accept it

Its in scrum basics that scrum teams are cross functional. However, its not that as soon as scrum teams are formed the team members lose their identities of core competencies and take the badge of scrum team member.
Its one of the pep talks which any scrum master gives to the scrum team and its that scrum team is cross functional. However, ever wondered why would a .net developer be ready to start doing testing? Why would an ABAP developer start learning CQ? Why would a documentation expert share his / her bread and butter skill with someone else?

Even to start with scrum isn’t a cake walk and you should be more than willing to open a can of worms and clean it up. To properly make a scrum team cross functional and empower them too in this process, it requires a kind of patience for the ‘slave leader scrum master’.

Reality 1 : You will face resistance from team to become cross functional and actually start delivering. A supportive organization culture and grooming period to learn and to make mistakes is a pre-requisite.
Reality 2 : Not every one is going to be onboarded on day 1 and some might never be onboarded. You will have to actually make them win to get their commitment on cross functional tasks.
Reality 3 : Plan for smaller battles. For eg : you might not be able to make a dot net developer start writing code in java. However, they could start writing documentations. Similarly, giving opportunity for doc expert to share his knowledge with team is going to get you better support than to share tasks.

Reality 4 : Reward the cross functional team members rather than punish the ones not ready for the same as it might scare them away.