viernes, 21 de mayo de 2010

Implementación

1. Disciplina : Implementación



La Implementación es la parte del ciclo de vida del software donde se desarrolla el producto software final. Para ello se deben seguir ciertos patrones de programación que aseguren la correcta escritura y futuro mantenimiento del mismo. Por ello, se han propuesto estándares de implementación que faciliten el objetivo de esta fase:

IEEE 1012

Software Verification and Validation

http://standards.ieee.org/reading/ieee/std_public/description/se/1012-1998_desc.html

AECL CE-1001-STD REV.2

Standard for Software Engineering of Safety Critical Software

http://www.techstreet.com/cgi-bin/detail?doc_no=AECL|CE_1001_STD_Revision_2&product_id=229149

IEEE 16085

Software Life Cycle Processes - Risk Management

http://electronics.ihs.com/document/abstract/FAWLIBAAAAAAAAAA

Análisis y Diseño





Disciplina : Análisis y Diseño

La ingeniería de software requiere de una serie de pasos y métodos para que el desarrollo de un software se lleve con éxito durante todo el ciclo de vida. Por ello, antes de empezar el desarrollo del software es necesaria la correcta planificación y estrucutra del mismo. Con este objetivo, aparece el diseño de software, que lo que busca es que el software a producir se pueda mantener, reusar y entender. Para ello, se han definido algunos patrones que describen el análisis y diseño de un software_

IEEE 1016

Recommended Practice for Software Design Descriptions

http://ieeexplore.ieee.org/Xplore/login.jsp?reload=true&url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel4%2F5985%2F16019%2F00741934.pdf&authDecision=-203

ISO/IEC TR 14759

Mockup and Prototype

http://www.iso.org/iso/catalogue_detail.htm?csnumber=25495

Requerimientos

Disciplina : Requerimientos



La obtención de requerimientos es un paso muy importante para el posterior desarrollo de las siguientes etapas de desarrollo, pues un error en estas fases iniciales puede dar al traste con un sistema que no cumpla las expectativas de los usuarios y difícilmente aporte valor agregado al negocio para el que debe ser concebido.

Los requerimientos de software son una descripción completa del comportamiento del sistema de desarrollar. Está formado por casos de uso los cuales son llamados requerimientos funcionales. Asimismo, también existen, dentro del software, requerimientos no funcionales los cuales imponen limitaciones en diseño del software. Dentro de sus estándares tenemos:


IEEE 830

Software Requirements Specifications – 1998

http://www.ctr.unican.es/asignaturas/is1/IEEE830_esp.pdf

ESA PSS-05-03

Guide to the Software Requirements Definition Phase

ftp://ftp.estec.esa.nl/pub/wm/wme/bssc/PSS0503.pdf

IEEE 1233

Guide for Developing System Requirements Specifications

http://iteso.mx/~pgutierrez/calidad/Estandares/IEEE%201233.pdf

Modelado de Negocio

Disciplina: Modelado de Negocio

uml_logopatterns.jpg (461×356)

Modelado de Negocio

Es un proceso complejo que depende de la comunicación entre clientes y especialistas y de la relación dentro de los grupos de trabajo, entre otros factores. Un sistema que no responda a las necesidades de los clientes no cumple los requerimientos mínimos de calidad. Por todo esto se hace necesario contar con herramientas que ayuden a los analistas a obtener un Modelo del Negocio y Modelo conceptual que se ajuste a las necesidades de los clientes y que utilice la experiencia acumulada hasta el momento en sistemas con características similares.

Existen estándares que ayuda han optimizar el modelado de negocio, para un mejor desarrollo de la disciplina:

ISO / IEC 15504-2:2003

Software engineering - Process assessment - Part 2: Performing an assessment

International Organization for Standardization/International Electrotechnical Commission / 01-Oct-2003 /

Descripción:

Establece los requisitos para la evaluación del proceso que realiza como base para su uso en mejora de procesos y determinación de la capacidad.

Identifica el marco de medición de la capacidad del proceso y los requisitos para:

Realizar una evaluación.

Modelos de procesos de referencia.

Modelos de procesos de evaluación.

Control de conformidad de la evaluación de proceso.


UML

Unified Modeling Language

Descripción:

Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema. UML ofrece un estándar para describir un "plano" del sistema (modelo), incluyendo aspectos conceptuales tales como procesos de negocio y funciones del sistema, y aspectos concretos como expresiones de lenguajes de programación, esquemas de bases de datos y componentes reutilizables.

Link:

http://www.uml.org/

Entorno

Disciplina: Entorno

Entorno

Es un proceso de soporte dedicado a:

· Se enfoca en las actividades necesarias para configurar el proceso al proyecto.

· Describe las actividades requeridas para desarrollar las líneas guías de apoyo al proyecto.

· El propósito de las actividades de ambiente es proveer a las organizaciones de desarrollo de software del ambiente necesario (herramientas y procesos) que den soporte al equipo de desarrollo.

Herramientas CASE (Computer Aided Software Engineering, Ingeniería de Software Asistida por Ordenador)

Son diversas aplicaciones informáticas destinadas a aumentar la productividad en el desarrollo de software reduciendo el coste de las mismas en términos de tiempo y de dinero. Estas herramientas nos pueden ayudar en todos los aspectos del ciclo de vida de desarrollo del software en tareas como el proceso de realizar un diseño del proyecto, calculo de costes, implementación de parte del código automáticamente con el diseño dado, compilación automática, documentación o detección de errores entre otras.

Sistema de software que intenta proporcionar ayuda automatizada a las actividades del proceso de software. Los sistemas CASE a menudo se utilizan como apoyo al método.

Existen estándares para esta herramienta:

- ISO / IEC 14102:1995


Tecnología de la información - Directrices para la evaluación y selección de herramientas CASE

Organización Internacional de Normalización / Comisión Electrotécnica Internacional / 01-Nov-1995 / 55 páginas

Descripción:

Proporciona orientación sobre la identificación de los requisitos organizativos de las herramientas CASE, en la cartografía los requisitos a las características de la herramienta CASE para ser evaluados y describe un proceso de selección de las herramientas CASE más apropiado de varias herramientas, basadas en mediciones de las características definidas.

Gestión del Proyecto

Disciplina: Gestión del proyecto



Gestión del proyecto

Es la disciplina de organizar y administrar los recursos de manera tal que se pueda culminar todo el trabajo requerido en el proyecto software dentro del alcance, el tiempo, y costos definidos. Un proyecto es un esfuerzo temporal, único y progresivo, emprendido para crear un producto software o un servicio también único.

El propósito de la Administración de Proyectos es:

· Proveer un marco de trabajo para administrar los proyectos intensivos de software.

· Proveer guías prácticas para la planeación, soporte, ejecución y monitoreo de proyectos.

· Proveer un marco de trabajo para la administración del riesgo.

A continuación, les presento algunos estándares:


AS/NZS 4360:2004

Risk management

Australian/New Zealand Standards / 01-Jan-2004 /


Descripción:

Proporciona una guía genérica para manejar el riesgo. Se puede aplicar a una amplia gama de actividades u operaciones de cualquier entidad pública, privada o de la empresa de la comunidad, o grupo.


Link:

http://www.cqurire.com/htm/paper/risk/Aust_Standards_4360-2004.pdf


IEEE 1045-1992

IEEE Standard for Software Productivity Metrics

Institute of Electrical and Electronics Engineers / 01-May-1992 /

ISBN: 0738104086


Descripción:

El objetivo de esta norma es para una mejor comprensión del proceso de software, que puede prestar para mejorar la visión.


Link:

http://ieeexplore.ieee.org/Xplore/login.jsp?url=http://ieeexplore.ieee.org/iel1/2858/5527/00211732.pdf%3Farnumber%3D211732&authDecision=-203


IEEE 1062-1998

IEEE Recommended Practice for Software Acquisition

Institute of Electrical and Electronics Engineers / 01-May-1998 /

ISBN: 0738103349


Descripción:

Un conjunto de prácticas de calidad útiles que pueden ser seleccionados y aplicados durante uno o más pasos en un proceso de adquisición de software se describe.


Link:

http://www.cs.tut.fi/kurssit/OHJ-3500/dokumentit/IEEE-STD-PDF/std1062-1998.pdf


IEEE 1074-2006

IEEE Standard for Developing a Software Project Life Cycle Process

Institute of Electrical and Electronics Engineers / 01-Jan-2006 /

ISBN: 073814957X


Descripción:

IEEE 1074 es un estándar para la generación del proceso que rige el desarrollo de software y mantenimiento de un proyecto. Esta norma describe las diferentes actividades que se van a asignar en el modelo seleccionado y proporciona ejemplos de la cartografía en SPLCMs típico.


Link:

http://www.csun.edu/~twang/380/References/IEEE1074.pdf


IEEE 1490-2003

IEEE Guide Adoption of PMI Standard A Guide to the Project Management Body of Knowledge

Institute of Electrical and Electronics Engineers / 01-Dec-1998 /

ISBN: 0738103446


Descripción:

Provee las bases para la gestión de proyectos, independientemente del tipo de proyecto, sea de construcción, de software, de ingeniería, industrial, etc.


Link:

http://standards.ieee.org/reading/ieee/std_public/description/se/1490-2003_desc.html

deptinfo.cnam.fr/new/spip.php?pdoc2015


IEEE 16085:2004 (1540-2001)

IEEE Standard for Software Life Cycle Processes - Risk Management

Institute of Electrical and Electronics Engineers / 17-Mar-2006 /

ISBN: 073814102X


Descripción:

Un procedimiento para la gestión del riesgo en el ciclo de vida del software se define. Puede ser agregado del conjunto actual del ciclo de vida del software procesos definidos por el IEEE / EIA 12207 serie de normas, o puede ser utilizado independientemente.


Link:

http://webstore.iec.ch/preview/info_isoiec16085{ed2.0}en.pdf


IEEE 16326-2009

Systems and software engineering -- Life cycle processes -- Project management

Edition: 1st
Institute of Electrical and Electronics Engineers / 15-Dec-2009 /

ISBN: 9780738161174


Descripción:

Esta Norma Internacional está destinada a ayudar a los gerentes de proyectos en la gestión de los proyectos relacionados con sistemas intensivos de software y productos de software. La presente norma especifica el contenido necesario del plan de gestión de proyectos (PMP).


Link:

http://webstore.iec.ch/preview/info_isoiec16326{ed1.0}en.pdf

http://shop.bsigroup.com/en/ProductDetail/?pid=000000000030169808


ISO/IEC 12207:2008

Systems and software engineering - Software life cycle processes

International Organization for Standardization/International Electrotechnical Commission /


Descripción:

ISO / IEC 12207:2008 establece un marco común para los procesos del ciclo de vida de software, con una terminología bien definida, que puede hacer referencia a la industria del software. Contiene procesos, actividades y tareas que se deben aplicar durante la adquisición de un producto de software o servicio y durante el suministro, desarrollo, operación, mantenimiento y eliminación de productos de software. El software incluye la parte de software del firmware.


Link:

http://www.bvindecopi.gob.pe/normas/isoiec12207.pdf


ISO/IEC 16326:2009

Systems and software engineering - Life cycle processes - Project management

International Organization for Standardization/International Electrotechnical Commission / 01-Jan-2009 /


Descripción:

ISO / IEC / IEEE 16326:2009 proporciona especificaciones contenido normativo de gestión de proyectos que cubren los planes de proyectos de software y proyectos de sistemas intensivos en software. También ofrece una discusión detallada y asesoramiento sobre la aplicación de un conjunto de procesos del proyecto que son comunes tanto para el software y el ciclo de vida de los sistemas regulados por la norma ISO / IEC 12207:2008 (IEEE Std 12207-2008) e ISO / IEC 15288:2008 (IEEE Std. 15288-2008), respectivamente. La discusión y asesoramiento destinado a facilitar la preparación del contenido normativo de los planes de gestión de proyectos. ISO / IEC / IEEE 16326:2009 es el resultado de la armonización de la norma ISO / IEC TR 16326:1999 y IEEE Std 1058-1998.

Gestión de la Configuración y Cambios

Disciplina : Gestión de la Configuración y Cambios


Gestión de la configuración

Es un proceso de apoyo clave para toda organización dedicada al desarrollo de software, ya que en el ciclo de vida de un software, los cambios son inevitables y pueden afectar al software, por ello se necesita tener una serie de actividades para el seguimiento y control de dichos cambios, que comienza desde el inicio del proyecto y termina sólo una vez que el software queda fuera de circulación.

Según la norma ISO-12207, el proceso de gestión de la configuración se define como:

“El proceso de aplicar conocimientos técnicos y administrativos a lo largo del ciclo de vida del software para: identificar, definir y establecer la línea base de los elementos software en un sistema; controlar modificaciones y releases de los elementos; registrar e informar del estado de los elementos y peticiones de modificación; asegurar la completitud, consistencia y corrección de los elementos; y controlar el almacenamiento, manipulación y entrega de los elementos.”

Hoy en día, existen estándares que pueden ser utilizadas para realizar las actividades que requieren este proceso:


ESA (Space) PSS-05-09

Guide to software configuration management

ESA Board for Software Standardisation and Control(BSSC) – March 1995

Link: http://cisas.unipd.it/didactics/STS_school/Software_development/Guide_to_the_SW_configuration_management-0509.pdf

IEEE 828-2005


Standard for Software Configuration Management Plans

Institute of Electrical and Electronics Engineers / 12-Aug-2005 / 27 pages

ISBN: 0738147648

Link:

http://standards.ieee.org/catalog/olis/arch_se.html

IEEE 1042-1987


IEEE Guide to Software Configuration Management

Institute of Electrical and Electronics Engineers / 10-Sep-1987 / 92 pages

ISBN: 1559376783

Link:

http://www.raminsoftworx.com/elec443/lectures/scm-ieee-guide.pdf

ISO/IEC TR 18018:2010


Information technology - Systems and software engineering - Guide for configuration management tool capabilities

Edition: 1st
International Org. for Standardization/International Electrotechnical Commission (Technical Report) / 15-Feb-2010 / 34 pages

Link:

http://webstore.iec.ch/preview/info_isoiec18018{ed1.0}en.pdf

Despliegue


Disciplina : Despliegue



Despliegue

Es un proceso importante que reúne una serie de actividades, como:

  • Lanzamiento
  • Instalación
  • Activación
  • Desactivación
  • Actualización
  • Desinstalación

Con el fin, de que el producto software esté disponible para el uso de los usuarios cumpliendo con todas las necesidades técnicas y funcionales.

Sin embargo, no se encontró un estándar que sirva de base para la realización de este proceso pero les dejo unos links de mucha ayuda:

Link:

Procedimiento para el despliegue de soluciones de software desarrolladas en la Universidad de Ciencias Informáticas basados en casos de Estudio.

http://www.monografias.com/trabajos-pdf/despliegue-soluciones-software/despliegue-soluciones-software.pdf

Plantilla de Despliegue:

http://webcache.googleusercontent.com/search?q=cache:np3NDPlCfN0J:svn2.assembla.com/svn/tdp2/tags/v3.3/Artefactos/Deployment/Plan%2520de%2520Despliegue.doc+que+es+despliegue+de+software&cd=15&hl=es&ct=clnk&gl=pe