Originally Serbo-Croatian has roots in Old Church Slavonic, a liturgical language in origin, but one that gradually became used for vernacular purposes in the areas in which it was prominent. Throughout the centuries, Old Church Slavonic evolved into a variety of dialects that would come to represent the Serbo-Croatian group of languages.
In terms of Bosnian itself, it became more of a standard language in the 1990s as opposed to Serbian or Croatian, which codified a national language in the 19th century. This delay was due to a number of reasons. First, the Bosnian elite living under Ottoman rule, while speaking vernacular Bosnian, mostly produced literature and publications in Turkish, Arabic, or Persian. Actual Bosnian works of literature were not as widely available, and thus there was not necessarily a need to have standard conventions for it. Second, there was not a national Bosnian identity formed until much later, compared to the Serbian and Croatian ethnic groups.
As a result of the previously mentioned factors, modern Bosnian truly began to take shape quite recently. With the influence of Turkish, Arabic, and Persian, modern Bosnian has incorporated loanwords from these sources, as well as their grammatical and phonological, into the language. Moreover, Bosnian draws from the Bosniak Renaissance that took place at the beginning of the 20th century, using certain ideas to inform public language policy.
Even as it gained recognition as a language, there is still controversy surrounding the actual name. Bosnian refers to the language used by the Bosniak ethnic group and not to the language of all Bosnians that live in Bosnia, who may also be Croats and Serbs. These ethnic groups tend to call the language that they used either Croatian or Serbian, as a matter of ethnic and cultural affiliation. Bosnian Croats, for example, would say that they speak Croatian. Insisting on such a distinction is a matter that is very close to the communal heart of the three ethnic groups.
Such political, cultural, and linguistic uncertainty and tensions have made it difficult for academic linguists, other scholars, and international organizations to classify the language. However, overall, the standard variety spoken in Bosnia by Bosniaks is recognized as Bosnian. Even those who disagree concede it to being called the Bosniak language.
Regardless of the controversy, the Bosnian language has been overall recognized from an international standpoint, even in other Serbo-Croatian speaking countries. For example, the Bosnian language is included in some schools in Serbia as an elective subject. Montenegro, where the official language is Montenegrin, also another standard variety of Serbo-Croatian, also officially recognizes the Bosnian language.
With such a complex history and such heated debate behind Bosnian and other Serbo-Croatian varieties, an understanding of the differences between all the languages as well as the history underpinning these differences is quite helpful for those who wish to connect with the people in these speech communities, whether it be for business or for pleasure.