estándar de codificación para el desarrollo de software.docx

12
Estándar de Codificación para el desarrollo de software COORDINACIÓN DE INFORMÁTICA Y ESTADÍSTICA

Upload: juan-carlos-acosta

Post on 09-Aug-2015

247 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Estándar de Codificación para el desarrollo de software.docx
Page 2: Estándar de Codificación para el desarrollo de software.docx

1

|

Objetivo del Documento

Este documento describe el estándar de desarrollo que debe ser utilizado para la construcción de software en MALLAMAS EPS INDIGENA.

Dirigido a:

Este documento está dirigido a todas las personas que intervienen en el proceso de desarrollo de Software de MALLAMAS EPS INDIGENA.

Page 3: Estándar de Codificación para el desarrollo de software.docx

2

|

INTRODUCCIÓN

El estándar de codificación es un documento que permite al personal de desarrollo de MALLAMAS EPS INDIGENA escribir o codificar programas de igual manera. Los beneficios de seguir el estándar redundan en la agilidad de codificación, seguimiento y mejoramiento de programas. Cada Ingeniero de MALLAMAS EPS INDIGENA debe seguir este estándar y la coordinación de informática y estadística, realizará inspecciones periódicas para garantizar su cumplimiento

El estándar ha sido escrito pensando en la utilización del lenguaje C# que a la fecha de creación del documento es el lenguaje estándar de desarrollo en MALLAMAS EPS INDIGENA.

Si usted se encuentra involucrado en alguno de los procesos de creación o revisión de código en la entidad lo invitamos a interiorizar este estándar y a volverlo parte de su estilo profesional dentro de la organización.

Bienvenido.

Page 4: Estándar de Codificación para el desarrollo de software.docx

3

|

1.Objetivos

El objetivo del Estándar de Desarrollo de Software (EDS) es proporcionar:

Un mejor entendimiento del Software para todos los integrantes del equipo de desarrollo.

La facilidad de adicionar nuevos componentes y funcionalidades.

La facilidad de hacer modificaciones al Software.

La facilidad de corregir errores.

Facilitar el seguimiento y ejecución de inspecciones al código.

Liberar la dependencia personal del código fuente.

2.Alcance

Esta versión contiene reglas y prácticas de desarrollo para el lenguaje C# de .NET

3.Convenciones

3.1. Bases de Datos

La identificación de Bases de Datos y los elementos que las componen (tablas, vistas, procedimientos, etc.) deben encontrarse debidamente estandarizados y formalizados con el fin de que los ingenieros de desarrollo identifiquen de manera correcta y fácil la lógica de los nombres y facilite la codificación y mantenimiento de los aplicativos de base de datos.

La convención utilizada para las bases de datos es:

MLM_DB: MALLAMAS EPS INDIGENA DATABASE

Nombre de la base de datos: Es una cadena alfanumérica compuesta del prefijo MLM_DB seguida de “_” (guion bajo) más una descripción de máximo 15 caracteres alfanumérico. Ejemplo: MLM_DB_DESCRIPCION

Page 5: Estándar de Codificación para el desarrollo de software.docx

4

|

A continuación se presenta las convenciones y estándares para la denominación de los elementos de Base de Datos.

3.1.1. Tablas

La convención utilizada para las Tablas es:

NOMBREBASEDEDATOS_TB: MALLAMAS EPS INDIGENA TABLA

Tipos Tabla:

TIPOS TABLA

Código DescripciónACC Para tablas accesoriosGLO Para tablas globalesPRO Para tablas de producciónTMP Tablas temporalesCFG Tablas de configuración

Nombre de la tabla: Es una cadena alfanumérica compuesta del prefijo NOMBREBASEDEDATOS_TB seguida del tipo de tabla seguida de “_” (guion bajo) mas una descripción de máximo 15 caracteres alfanumérico. Ejemplo: NOMBREBASEDEDATOS_TBTIPOTABLA_DESCRIPCION

3.1.2. Procedimientos Almacenados

La convención utilizada para los procedimientos almacenados es:

USP_TIPOPROCEDIMIENTO_NOMBRETABLA: MALLAMAS EPS INDIGENA PROCEDIMIENTOS ALMACENADOS

Tipos Procedimiento:

TIPOS PROCEDIMIENTO ALMACENADO

Código DescripciónINSERTUPDATE

Page 6: Estándar de Codificación para el desarrollo de software.docx

5

|

GETGETALLDELETEGETDYNAMICINSERTUPDATEDELETEDYNAMIC

Nombre del Procedimiento Almacenado: Es una cadena alfanumérica compuesta del prefijo USP_ seguido del tipo de procedimiento almacenado seguido de “_” (guion bajo) seguido del nombre de la tabla. Ejemplo: USP_TIPOPROCEDIMIENTO_NOMBRETABLA

3.1.3 Campos

La convención utilizada para los campos es:

NOMBREDELATABLA_DESCRIPCION: MALLAMAS EPS INDIGENA CAMPOS

Nombre del Campo: Es una cadena alfanumérica compuesta del prefijo NOMBREDELATABLA_DESCRIPCION

3.2. Soluciones

La identificación de las solución y los elementos que los componen (Proyectos de Clases, Proyectos de Aplicación (Winforms, Webforms) deben encontrarse debidamente estandarizados y formalizados con el fin de que los ingenieros de desarrollo identifiquen de manera correcta y fácil la lógica de los nombres y facilite la codificación y mantenimiento de los aplicativos.

La convención utilizada para la solución es:

MLM_SLN: MALLAMAS EPS INDIGENA SOLUCION

Nombre de la solución: Es una cadena alfanumérica compuesta del prefijo MLM_SLN seguida de “_” (guion bajo) más una descripción de máximo 15 caracteres alfanumérico. Ejemplo: MLM_SLN_DESCRIPCION

A continuación se presenta las convenciones y estándares para la denominación de los elementos de Solución.

Page 7: Estándar de Codificación para el desarrollo de software.docx

6

|

3.2.1. Proyectos

La convención utilizada para los proyectos:

NOMBRESOLUCION. : MALLAMAS EPS INDIGENA PROYECTO

Nombre del Proyecto: Es una cadena alfanumérica compuesta del nombre de la solución seguida de “.” (punto) más el tipo de proyecto Ejemplo: MLM_SLN_DESCRIPCION

Tipos Proyecto:

TIPOS DE PROYECTROS

Código DescripciónBusinessLogic Capa de lógica de NegociosDataLayer Capa de DatosEntity Capa Común o de definición de entidadesFunctions Capa de Funciones generales del proyectoSettings Capa de Configuración de la soluciónUIWeb Interfaz de usuario webUIWin Interfaz de usuario de windowsUIWPF Interfaz Windows Presentatation FoundationUISD Interfaz de usuario de Smart DeviceWebService Servicios Web

3.2.2 Clases

La convención utilizada para las clases:

TIPOPROYECTOCAPA_ : MALLAMAS EPS INDIGENA CLASES

Nombre de la Clase: Es una cadena alfanumérica compuesta del nombre del tipo de capa del proyecto seguida de “_” (guión bajo) más el nombre de la tabla según lo definido en los estándares de identificación de tablas Ejemplo: DL_MLM_DB_TBPRO_DESCRIPCIONTABLA

Page 8: Estándar de Codificación para el desarrollo de software.docx

7

|

TIPOS DE CAPA DE PROYECTOS

Código DescripciónDL Capa de DatosBL Capa de NegociosE Capa Común o de definición de entidadesFN Capa de Funciones generales del proyectoST Capa de Configuración de la soluciónfrm Interfaz de usuario (web, win, ….)

Nombre del Proyecto: Es una cadena alfanumérica compuesta del nombre de la solución seguida de “.” (punto) más el tipo de proyecto Ejemplo: MLM_SLN_DESCRIPCION

Tipos Proyecto:

TIPOS DE PROYECTROS

Código DescripciónBusinessLogic Capa de lógica de NegociosDataLayer Capa de DatosEntity Capa Común o de definición de entidadesFunctions Capa de Funciones generales del proyectoSettings Capa de Configuración de la soluciónUIWeb Interfaz de usuario webUIWin Interfaz de usuario de windowsUIWPF Interfaz Windows Presentatation FoundationUISD Interfaz de usuario de Smart DeviceWebService Servicios Web

Tabla de prefijos para los controles más comunes:

Prefijo Control

btn Button

Page 9: Estándar de Codificación para el desarrollo de software.docx

8

|

Prefijo Control

chk Check Box

cbx ComboBox

cbl Check BoxList

cld Calendar

cvl CompareValidator

cva CustomValidator

ddl DropDownList

dgv DataGrid View

dls DataList

frm Form

fra Frame

gbx GroupBox

hln Hiperlink

ibt ImageButton

img Image

lbl Label

lbt LinkButton

lbx ListBox

lvw ListView

mnu Menu

mni Menu Item

obl Option ButtonList

obt Option Button

pnl Panel

pbx PictureBox

pbr Progress Bar

Page 10: Estándar de Codificación para el desarrollo de software.docx

9

|

Prefijo Control

pct Picture

rep Repeater

rbl RadioButtonList

rbt RadioButton

rfv RequiredFieldValidator

rvl RangeValidator

rev RegularExpressionValidator

txt TextBox

tvw TreeView

tcn TabControl

tbr ToolBar

rpt Report

tmr Timer

ttt ToolTipText

err Error

ofd OpenFileDialog

fbd FolderBrowserDialog

dtp DateTimePicker

wbr WebBrowser