For creating the shared assembly we follows the following steps:
Create your DLL/EXE source code
Generate unique assembly name using SN utility
Sign your DLL/EXE with the private key by modifying AssemblyInfo file
Compile your DLL/EXE
Place the resultant DLL/EXE in global assembly cache using AL utility.