MSOCAF se enfoca en el análisis de manejo de memoria, vulnerabilidades de seguridad, manejo de excepciones, uso del Modelo de Objetos, control de calidad y reportaje de aplicaciones que se van a utilizar en SharePoint online (SharePoint 365 y originalmente BPOS). Si es necesario enviar algún tipo de aplicación a Microsoft para ser desplegada en un servidor de SharePoint 365 o BPOS, el código tiene que ser revisado y aprobado primero por MSOCAF.
La versión cliente de MSOCAF se puede descargar e instalar desde el sitio https://caf.sharepoint.microsoftonline.com/Default.aspx. Cada servidor de desarrollo o testeo desde donde se va a revisar el código debe tener una versión instalada de este cliente.
Después de la instalación del cliente, la aplicación permite analizar, desplegar código en un servidor de prueba, removerlo del servidor y enviar el código a Microsoft:
Los archivos físicos del código a enviar tiene que tener una estructura determinada como indica la siguiente tabla:
- Directorio de Raiz - contiene los subdirectorios que se mencionan luego. Puede tener un nombre propio. Los subdirectorios tienen que tener obligatoriamente los nombres indicados. No puede contener archivos sueltos, solo los subdirectorios que se indican a continuación
- Release documents - contiene todos los documentos relacionados con la aplicación. Acepta documentos con extensión .doc, .docx y .xml. Este folder es obligatorio, no puede contener subdirectorios, pero puede estar vacio
- Solutions artifacs - contiene uno o mas paquetes de Soluciones de SharePoint, y cualquier numero de archivos con extensión .dll, .exe, .pdb, .stp, .wsp y .xml. El directorio no puede contener subdirectorios y no es obligatorio
- Installation scripts - contiene los archivos necesarios para desplegar la aplicación y cualquier script necesario para pre- o post-despliegue. El directorio no es obligatorio, no puede contener subdirectorios y acepta archivos del tipo .bak, .bat, .cfg, .config, .cmd, .csv, .dll, .exe, .ini, .lic, .master, .msi, .pdb, .ps1, .rll, .sql, .udcx, .xml, .xsd, .xsl, .wsp y .xslt
- Test documents - contiene todos los documentos con casos de testeo. Si hay algún caso de teste que se debe ejecutar manualmente, su documentación tiene que estar en este directorio. El directorio no es obligatorio y puede contener archivos de cualquier tipo
- Source code - contiene todo el código fuente de la aplicación. El directorio no es obligatorio y puede contener cualquier tipo de subdirectorios y archivos
Cuando se tiene toda la estructura como indica la tabla, utilice el botón de "Analyze" en MOSCAF, indique la ruta al directorio de raíz y utilice el botón para analizar el código. El software analiza el código siguiendo las reglas indicadas en los casos de testeo (principalmente reglas de FxCop y SPDispose) y genera dos reportes, un resumen directamente en la aplicación:
Y otro con todos los detalles:
MOSCAF contiene una página de configuración en donde se puede indicar el servidor que se va a utilizar para la prueba de despliegue:
