You can follow two ways:
1. Develop your own custom standard portlets using one of the APIs provided by Alfresco (CMIS, Web Services, JCR);
2. Develop your own custom Alfresco WebScripts and you can expose these with the WebScriptPortlet class provided by Alfresco.
You can follow one of my posts in this forum here for the solution number 2:
Hope this helps.
It would be nice if someone could detail what he means when talking about integration with Alfresco since it can have many different aspects and from my experience those vary a lot (Editing ? Authoring ? WCM aspect ?...) all the nasty differences are in the details