You are on page 1of 5

Normas de Especificacin de Software Esta especificacin cubre las normas de software de estndares de software desde la perspectiva del desarrollador

de software y el director del proyecto. Esta especificacin de software de las normas establece los requisitos para la gestin de proyectos de software y requerimientos de diseo. Se trata de: Requisitos de software que especifica la funcionalidad y controles necesarios para mantener el seguro a las aplicaciones. Normas de codificacin para evitar errores en el cdigo y hacerlo ms seguro, incluyendo la estructura del cdigo, las variables de nombres, y aadir comentarios. Software de control y las revisiones de cdigo. Pruebas de software durante el desarrollo y antes de la produccin. Con el fin de crear software de calidad, un software de calidad metodologa del proyecto debe estar en su lugar. La metodologa del proyecto de software se asegurar de que una planificacin adecuada y la documentacin se ha completado en el momento apropiado. Por ejemplo, un software de calidad metodologa del proyecto se requieren los requerimientos del negocio debe definirse antes de requisitos de software se definen. Tambin ser necesario que los requisitos de software se definen antes de que el documento de diseo de software ha sido creado. Ms tarde se requieren pruebas y guas de usuario. Este documento no hace una en la cobertura en profundidad de la metodologa del proyecto de software, pruebas de cdigo, o en los documentos de software requeridos por los proyectos, tales como guas de usuario. Este documento analiza los estndares de software y las mejores prcticas que mejoran la calidad del cdigo y software de seguridad. Mejores Prcticas de Software vs Requisitos de software Estndares de software debe incluir tanto los requisitos de software y software de las mejores prcticas. Mejores prcticas de software se aplican a la calidad del software y no se disear dependiente. Las mejores prcticas de software son las prcticas de cdigo de estructuracin, las variables de denominacin, el cdigo de la documentacin y otras prcticas. Requisitos de software se aplica a las capacidades que el software debe apoyar y afectar el diseo del software. Algunas de estas capacidades puede incluir encriptacin de datos.

Requisitos de software Definicin El documento de requerimientos de software definicin debera ser una definicin de requerimientos funcionales del software. Debe basarse en el negocio funcional documento de definicin de requisitos. El negocio funcional documento de definicin de los requisitos debe ser formalmente documentado y firmado por los patrocinadores comerciales del proyecto. El documento de requerimientos de software definicin debe ser formalmente documentada y firmada por los participantes del proyecto. Ningn software de codificacin ms all de la codificacin conceptuales para fines de demostracin o para probar si un mtodo necesario

(determinar la factibilidad del proyecto) se debe permitir hasta que el documento de requisitos de software definicin se aprob formalmente. Sin un documento de definicin de requisitos de software aprobado, el riesgo del proyecto es extremadamente alto y los patrocinadores del proyecto y los interesados deben aceptar el riesgo y la responsabilidad cuando (no si) el software no realiza la funcin de espera. Los requisitos de software estn relacionados con la funcionalidad de negocio requerida. El primer paso para crear la definicin de requisitos de software es definir lo que el negocio requiere de la aplicacin o el sistema de hacer. Consulte el documento titulado Requerimientos del Proyecto Recopilacin de informacin sobre la determinacin de los requerimientos del negocio y funcional. Requisitos de software incluyen las siguientes categoras y especificaciones: Categorizaciones de datos de seguridad - Cuntos datos se clasifican de acuerdo a las necesidades de seguridad como la confidencialidad, integridad y disponibilidad. Cmo se clasifican los datos determina cmo debe ser almacenada y transmitida. El cifrado de datos para los datos sensibles almacenados deben ser implementadas. El cifrado de datos para la transmisin de datos sensibles deben ser implementadas. Los datos de cifrado / hash / truncamiento de informacin de la cuenta, como contraseas durante el almacenamiento debe ser implementado. Los datos de cifrado / hash de informacin de la cuenta, como contraseas durante la transmisin debe ser implementado. Para aplicaciones de Internet e intranet, los comandos de HTML se debe usar para decirle al navegador del usuario no hagan cach de pginas con datos confidenciales o contraseas utilizando el siguiente: El comando <META HTTP-EQUIV="Pragma" CONTENT="NO-CACHE"> para decirle al navegador que no hagan cach de la pgina. Utilice el cdigo HTML expira comando para indicar la pgina ya est vencido el que debe decirle al navegador para que borre la pgina. Los controles de acceso - Los usuarios no deben ser capaces de acceder a los datos o modificar los datos sin autorizacin. De acceso basada en roles - Los usuarios deben tener privilegios basados en roles o niveles, y slo el acceso a los datos requeridos. Los usuarios no pueden ver los datos en otras unidades de negocio, incluso si tienen el nivel de seguridad adecuado. Usuario grupo de apoyo - El software debe ser compatible con el uso de grupos de usuarios para ayudar a los permisos de control. Controles de contrasea, que incluye normas mnimas de complejidad de contraseas, la edad mxima de la contrasea, y la edad mnima de la contrasea debe ser implementado. Controles de bloqueo de cuentas debe existir para evitar ataques de fuerza bruta contra las cuentas. Privilegio CONTROL - El software debe tener en cuenta la parte de control de acceso frente a la capacidad del usuario para utilizar privilegios tales como la lectura, escritura y modificacin de archivos y directorios. Esto incluye los privilegios de los usuarios para modificar los

permisos o los atributos de otros objetos tales como dar acceso a un usuario a otros archivos, el cambio de su grupo, borrarlos, o la adicin de los usuarios. Inicio de sesin - Los ands del sistema o de software debe proporcionar el registro de los registros y los cambios incluidos (ayuda a garantizar la integridad de los datos): Cambio de nivel de seguridad de datos. Cambio de datos de un rea funcional a otro. Cambio de nivel de acceso de seguridad de usuario. Cambio de acceso al rea funcional para el usuario o bien eliminado o agregado. Adicin de un usuario a un grupo o quitar un usuario de un grupo. Acceso de los usuarios de los datos sensibles. Usuario modificacin a los datos. Las listas debern contener una fecha y hora. Los registros del sistema deben estar protegidos de los usuarios que no tienen privilegios para verlos El diseo no debe depender de uso compartido de archivos de Windows o la asignacin de unidades para el acceso a la informacin del cliente o para los clientes para proporcionar informacin. La garanta de calidad debe ser parte en el proyecto, incluyendo: Comprueba si hay errores de desbordamiento de bfer. Control de entrada del usuario para asegurarse de que no contiene contenido hostil, como un intento de realizar una inyeccin SQL o un ataque de inyeccin de correo electrnico. Comprobacin de la produccin para el usuario para asegurarse de que no contiene informacin que podra ser utilizado para atacar a un usuario (en el caso de que su base de datos ha sido modificado por un tercero no autorizado) para evitar la responsabilidad. Los archivos de configuracin y los archivos de la biblioteca se debe comprobar cuando se carga por el programa para asegurarse de que son legtimos y no fueron modificados por un tercero. El programa debe garantizar que la modificacin de las variables de entorno o los nombres de archivo no har que los archivos de sustitucin para ser cargado por error por el programa. La garanta de que el programa est preparado para los siguientes errores: Presentar el fracaso del acceso. Falta de acceso al registro. Base de datos de error de acceso. Uno o ms archivos de configuracin no estn disponibles. Un archivo de la biblioteca no est disponible. Codificacin de las aplicaciones de Internet para evitar el acceso no autorizado, incluyendo galletas: El uso de los atributos de dominio y la ruta para restringir el acceso de cookies. El uso del atributo HttpOnly para aumentar la seguridad de Internet Explorer y otros navegadores en el futuro - Indica que la cookie slo puede ser enviada al servidor que se origin. Ajuste adecuado de los parmetros de la cookie puede ayudar a prevenir cross site scripting, donde un atacante mensajes JavaScript incrustado en algn otro sitio y utiliza el javascript en ese sitio para enviar cookies de usuario de inicio de sesin a su sitio. Todo el cdigo debe cumplir con la especificacin de software estndares.

Despus de que los requisitos de software se definen, un documento de diseo se debe crear que define el plan de cmo el software ser diseado para cumplir los requisitos. El documento de diseo deben ser revisados para determinar si cumple los requisitos y si el algoritmo de diseo (s) puede ser mejorado. Este documento no analiza la documentacin de diseo de software en profundidad.

Mejores Prcticas de Software Las mejores prcticas de software se incluyen varias categoras. Validacin de la entrada - Entrada de cheque de los usuarios del sistema para asegurarse de que no contiene ningn contenido perjudicial y estar seguro de la informacin introducida es slo la informacin de lo esperado. Reparacin de entrada incorrecta cuando sea posible o solicitud de reingreso de la informacin. Validacin de salida - Comprobar la informacin que se enva a los usuarios del sistema para asegurarse de que no los contenidos perjudiciales est siendo enviada. Si los contenidos nocivos se detecta, el administrador debe ser notificado. Verificacin de errores La falta de acceso - Asegrese de que el programa no realiza de una manera inesperada cuando el acceso al registro, ningn recurso externo, o un archivo falla. Desbordamiento de bfer - Cdigo deberan escribirse de manera que los datos se pone en un buffer, el buffer no se desbordar. Esto significa que debe haber control sea la informacin que ms de la memoria intermedia puede contener no sern escritos en ella. Compruebe los archivos cargados de legitimidad - Los archivos que se cargan deben ser evaluados para asegurarse de que estn en el archivo se esperaba. Esto evita que el desempeo del programa inesperado y posibles problemas de seguridad. Verifique para asegurarse de que la modificacin del entorno del sistema no pueden causar el mal de archivo para cargar. El manejo de errores - El manejo de errores determina lo que el programa va a hacer cuando hay un error. El error puede ser un error del operador o de un error interno. Todos los posibles errores debe tener una respuesta adecuada diseado e implementado dentro del programa. Estructura de cdigo - Cdigo debe exigir que se organizarn en mdulos que proporcionan o apoyan la puesta en prctica de una idea, el rea funcional, o un concepto. Cdigo debe ser escrito para cumplir con los estndares de documentacin y se coment de acuerdo a la norma. Es importante que la estructura se admite al requerir partes del programa para utilizar mdulos especficos para ejecutar una capacidad como la lectura o escritura en una base de datos. La interfaz de la base de datos debe ser apoyado por un mdulo (o grupo) y todas las partes del programa deben estar obligados a utilizar la interfaz en lugar de la prestacin directa de que se capacidad. Esto evitar que el programa sea ms fcil de mantener. Si la base de datos se cambia, slo el mdulo de interfaz con ella es necesario cambiar. Mdulos de software - Los mdulos se usan para encapsular las funciones relacionadas. Por ejemplo, un mdulo puede ser creada a la interfaz de la base de datos. Todas las partes del programa debe usar el mdulo de interfaz de base de datos para conectar a la base de datos.

Funciones del software - una funcin de software es un subprograma que realiza una accin. Un ejemplo sera la de enviar una cadena de texto a la pantalla del ordenador. Necesidades de las variables - Cmo variables locales y globales se utilizan, cmo se llaman y cmo se asigna la memoria. Software requisitos del cdigo de comentario y los requisitos de documentacin del usuario. Los requisitos de calidad de cdigo - Incluye la documentacin de cdigos, lmites sobre el uso de los datos globales, y el uso de cdigo compartido y probado. La garanta de calidad de software Software de revisin de cdigo Cdigo de ensayo Software de control de cambios Los mejores mtodos de prctica - las mejores prcticas de software tambin pueden incluir los mtodos adecuados para llevar a cabo ciertas capacidades, como la creacin de cuentas de forma segura, realizando el restablecimiento de contraseas de forma segura, contactar con un webmaster, y otras capacidades funcionales. Otras capacidades que requieren una consideracin de las mejores prcticas incluyen controles de aplicaciones Web, gestin de sesiones, el cifrado de datos, y la interaccin con otras aplicaciones.

You might also like