I’m thinking about how to improve communication within an organization and across the professional eco-system. For example, let’s say you are an engineer in an average-sized organization of 1000 to 2000 people and you work with a few dozen suppliers. Let’s assume that you have a particular design issue and would like the advice of relevant people, and want to involve them in a discussion.
Now, picture the situation: You write your query or request, attach or associate all the relevant documents, and then press…. <Send>. What is missing from this sequence? Yes, the list of people with whom you want to collaborate. In a typical organization, sometimes it is not that simple to identify relevant peers. Also, your memory might not be as good as you want it to be in this situation, especially when your professional eco-system is large. Also, don’t forget that our lives are very dynamic. So, here is my point – a system can identify to whom this message needs to be delivered.
Then let’s think how we can make this implementation happen. There are a few available technologies that can help us:
1. Natural Language Processing.
NLP, or a special sub-set of NLP called Information Extraction, can be used to retrieve key information from the message that you composed that will help the system create an initial set of criteria for searching relevant parties in order to deliver the message.
The broad meaning of annotation is adding of information to resources. There are different ways of annotation in real life and over the Web. For example, you can annotate Web pages to help the search crawlers index them according to particular needs and/or meaning. In our case, we can annotate people (contacts) in our corporate system or global addresses / contact books. This information can be generated based on analyzing corporate organizational information as well as by the contribution of the people themselves.
3. Search Engines.
You need some way of indexing all possible annotations to make them available and accessible. Afterwards, based on key information retrieved from the message, you will be able to get all relevant people to deliver the original message. Depending on how deep you want to go into indexing and information dependencies, you can use multiple options here. If you are in an organization that has Microsoft Office SharePoint Server, you can try leveraging the Enterprise Search from MOSS or any other Microsoft Search product. If you use Google Fun, you can think about Google custom searches or try Yahoo BOSS for Yahoo.
If you just want to match strings, you can put this information into a relational database and it will work for you. If you want to be purely simple – use MS Excel services 🙂… of course, some people tell me that everything in this world can be done with Excel.
Actually, I didn’t plan to implement this system as part of this blog post, but only figure out some core issues about how to make collaboration smarter and save a few minutes in searching for the relevant people with whom to communicate… So, if you like this idea, let me know – maybe some of you already have something similar in place within your organization?