Glosario KW | KW Glossary


Ontology Design | Diseño de Ontologías

Browse the glossary using this index

Special | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | ALL

Page: (Previous)   1  2  3  4  5  6  7  8  9  10  ...  22  (Next)
  ALL

A

Picture of System Administrator

A Strategic Timeline for Next-Generation ERP

by System Administrator - Tuesday, 14 February 2017, 10:42 PM
 

A Strategic Timeline for Next-Generation ERP

by Rimini Street

Today's rapidly changing technology landscape and the onset of the "Hybrid IT Era" are driving the vision for a next-generation ERP platform. CIOs have a golden opportunity to lead ongoing business transformation within IT - transformation with the potential to deliver new growth for the business as a whole.

Please read the attached whitepaper.

Picture of System Administrator

A Well-Orchestrated Trust Model

by System Administrator - Tuesday, 13 October 2015, 1:44 PM
 

A Well-Orchestrated Trust Model

 

by Tempered Networks

According to a recent IDG survey, 76% of companies would feel more confident in enterprise security if they were able to 'cloak' vital systems and endpoints--whitelisting trusted devices and making them invisible to the shared network. That kind of confidence comes to life when you flip your trust model. In this report, we explore how these strategic thinkers can do just that, applying trusted overlay networks to conceal sensitive networks, endpoints or applications.

Please read the attached whitepaper.

Picture of System Administrator

Active Directory

by System Administrator - Tuesday, 24 June 2014, 9:47 PM
 

Tutorial de Active Directory

Trabajar con Active Directory de Microsoft puede resultar complicado y confuso si no está preparado, pero con el asesoramiento adecuado cualquier administrador puede aprender a manejarlo con solvencia.

La Guía de Aprendizaje del Active Directory (AD) que le ofrecemos, por medio de nuestro sitio hermano SearchWindowsServer.com, le pondrá al día en muy poco tiempo sobre esta importante tecnología Windows y lo ayudará a superar cualquier aprehensión que pueda tener ante AD. Este tutorial aborda de forma integral la información que todo administrador debe conocer, desde los aspectos más básicos de Active Directory hasta consejos y explicaciones relativas al DNS, la replicación, la seguridad, la planificación de las migraciones y mucho más.

Aspectos básicos de Active Directory

En esta sección conocerá los aspectos básicos de Active Directory y los beneficios que aporta su implementación. Infórmese sobre los árboles, dominios, sitios y unidades organizativas de Active Directory, así como de las características básicas de LDAP (Lightweight Directory Access Protocol) y las Directivas de Grupo. Después de esto, analizaremos el Sistema de Nombres de Dominio (DNS).

Lo esencial de Active Directory

¿Qué es Active Directory? Active Directory es el servicio de directorios creado y registrado por Microsoft, un componente integral de la arquitectura Windows. Igual que otros servicios de directorios, como Novell Directory Services (NDS), Active Directory es un sistema centralizado y estandarizado que automatiza la gestión en red de los datos de usuario, la seguridad y los recursos distribuidos, además de facilitar la interoperabilidad con otros directorios. Active Directory está especialmente diseñado para ambientes de red distribuidos.

Active Directory se presentó con Windows 2000 Server y fue mejorado para Windows 2003, donde cobró aún mayor importancia dentro del sistema operativo. Windows Server 2003 Active Directory proporciona una referencia única, llamada servicio de directorio, para todos los objetos que forman parte de una red, como usuarios, grupos, computadoras, impresoras, directivas y permisos.

Para los usuarios o el administrador, Active Directory proporciona una visión jerárquica única desde donde acceder y gestionar todos los recursos de la red.

¿Por qué implementar Active Directory?

Hay muchas razones para implementar Active Directory. En primer lugar, existe la perspectiva generalizada de que Microsoft Active Directory supone una mejora significativa respecto a los dominios o, incluso, las redes de servidores independientes de Windows NT Server 4.0. Active Directory tiene un mecanismo de administración centralizado para la red entera y ofrece tolerancia ante la redundancia y las fallas que se producen cuando se despliegan dos o más controladores dentro de un mismo dominio.

Active Directory gestiona automáticamente las comunicaciones entre los controladores de dominio para garantizar así la viabilidad de la red. Los usuarios pueden acceder a todos los recursos de la red  para la que tienen autorización siguiendo un único procedimiento de acceso. Todos los recursos de la red están protegidos por un sólido mecanismo de seguridad que verifica la identidad de los usuarios y las autorizaciones de recursos para cada acceso. 

Incluso contando con la mejor seguridad y control de la red que proporciona Active Directory, la mayoría de sus prestaciones son invisibles para el usuario final. Por tanto, si un usuario desea migrar a una red con Active Directory necesitará una cierta recapacitación. Active Directory ofrece un sistema sencillo para promover y degradar los controladores de dominio y servidores miembros. Los sistemas pueden administrarse y protegerse mediante Directivas de Grupo. Se trata de un modelo organizativo jerárquico y flexible que permite una gestión fácil y una delegación específica y detallada de las responsabilidades administrativas. Pero quizás lo más importante sea que Active Directory es capaz de manejar millones de objetos dentro de un único dominio.

Divisiones básicas de Active Directory

Las redes de Active Directory están organizadas en cuatro tipos de divisiones o estructuras de almacenamiento: bosques, dominios, unidades organizativas y sitios.

  1. Bosques: El conjunto de todos los objetos, sus atributos y sintaxis de atributos en Active Directory.
  2. Dominio: Una colección de computadoras que comparten un conjunto de directivas comunes, un nombre y una base de datos para sus miembros.
  3. Unidades organizativas: Contenedores en los que se agrupan los dominios. Establecen una jerarquía para el dominio y crean la estructura del Active Directory de la compañía en términos geográficos u organizativos.
  4. Sitios: Agrupamientos físicos independientes del dominio y la estructura de las unidades organizativas. Los sitios distinguen entre ubicaciones conectadas por conexiones de baja o de alta velocidad y están definidos por una o más subredes IP.

Los bosques no están limitados en cuanto a su geografía o topología de red. Un único bosque puede contener numerosos dominios y cada uno de ellos compartir un esquema común. Los dominios que son miembros del mismo bosque no necesitan siquiera tener una conexión LAN o WAN dedicada entre ellos. Una única red puede alojar también múltiples bosques independientes. En general, se debería utilizar un solo bosque para cada entidad corporativa. Sin embargo, puede ser deseable usar bosques adicionales para hacer pruebas e investigaciones fuera del bosque de producción.

Los dominios actúan de contenedores para las políticas de seguridad y las actividades administrativas. Todos los objetos dentro de un dominio están sujetos, por defecto, a las Directivas de Grupo aplicables a todo el dominio. De igual manera, cualquier administrador de dominio puede gestionar todos los objetos dentro del mismo. Es más, cada dominio tiene su propia y única base de datos para sus cuentas. Por tanto, cada dominio tiene su propio proceso de autenticación. Una vez que la cuenta de un usuario es autenticada para un dominio, esa cuenta tendrá acceso a los recursos contenidos en dicho dominio.

Active Directory necesita uno o más dominios en los que operar. Como se mencionó más arriba, cada dominio de Active Directory es una colección de computadoras que comparten un conjunto común de directivas, un nombre y una base de datos de sus miembros. El dominio debe tener uno o más servidores que actúan como controladores del dominio (DC) y almacenan la base de datos, mantienen las directivas y verifican la autenticación de los accesos al dominio.

Con Windows NT, los roles de controlador de dominio principal (PDC) y controlador adicional o secundario (BDC) podían asignarse a un servidor en una red de computadoras que usaba el sistema operativo Windows. Este OS utilizaba la idea del dominio para administrar el acceso a un conjunto de recursos en red (aplicaciones, impresoras y demás) para un grupo de usuarios. El usuario sólo necesita ingresar en el dominio para tener acceso a los recursos, los cuales pueden estar ubicados en una variedad de servidores dentro de la red. Un servidor, conocido como el controlador de dominio principal, administraba la base de datos maestra de usuarios para el dominio. Había uno o más servidores designados como controladores de dominio adicionales. El controlador principal enviaba periódicamente copias de la base de datos a los controladores secundarios. El controlador de dominio adicional podía entrar en juego si fallaba el servidor PDC y podía, también, ayudar a equilibrar la carga de trabajo si la red estaba demasiado cargada.

Con Windows 2000 Server, si bien se mantienen los controladores de dominio, los papeles de los servidores PDC y BDC básicamente fueron absorbidos por Active Directory. Ya no es necesario crear dominios separados para dividir los privilegios de administración. Dentro de Active Directory se pueden delegar privilegios administrativos en función de las unidades organizativas. Los dominios ya no están restringidos por un límite de 40,000 usuarios. Los dominios de Active Directory pueden gestionar millones de objetos. Como ya no existen PDCs ni BDCs, Active Directory usa replicación multimaestra y todos los controladores de dominio son parejos entre sí.

Las unidades organizativas (UO) son, en general, mucho más flexibles y sencillas de administrar que los dominios. Las UO brindan prácticamente una flexibilidad infinita, ya que se pueden mover, borrar y crear otras nuevas según se vaya necesitando. Sin embargo, los dominios son mucho más rígidos; se pueden borrar y crear otros nuevos, pero el proceso genera mayores distorsiones en el ambiente que en el caso de las UO y debería evitarse siempre que sea posible.

Por definición, los sitios son conjuntos de subredes IP con enlaces de comunicación rápidos y confiables entre todos los anfitriones. O, dicho de otra forma, el sitio contiene conexiones LAN pero no WAN, ya que se entiende que las conexiones WAN son mucho más lentas y menos confiables que las LAN. Al usar sitios, puedes controlar y reducir la cantidad de tráfico que fluye por tus enlaces WAN. Esto puede ayudar a mejorar la eficiencia del flujo en las tareas de productividad. Y también permite controlar los costos de los enlaces WAN en los servicios “pay-per-bit”

Maestro de Infraestructura y el Catálogo Global

Entre los demás elementos clave incluidos en Active Directory está el Maestro de Infraestructura (IM). El Maestro de Infraestructura es un FSMO (Flexible Single Master of Operations) que opera en todo el dominio y es responsable de un proceso no vigilado para “reparar” las referencias obsoletas, conocidas como phantoms, que se encuentran en la base de datos de Active Directory.

Los phantoms (fantasmas) se crean en DCs que requieren una referencia cruzada de bases de datos entre un objeto dentro de su propia base de datos y un objeto de otro dominio dentro del bosque. Esto sucede, por ejemplo, cuando se añade un usuario de un dominio a un grupo dentro de otro dominio en el mismo bosque. Se entiende que los phantoms están obsoletos cuando ya no contienen información actualizada. Esto suele producirse debido a cambios realizados al objeto extraño representado por el fantasma (por ejemplo, cuando el objeto en cuestión cambia de nombre, es trasladado o migrado de un dominio a otro o se borra). El Maestro de Infraestructura es responsable exclusivamente de ubicar y reparar los fantasmas obsoletos. Cualquier cambio introducido como resultado del proceso de “reparación” debe ser replicado en todos los DCs que permanecen en el dominio.

El Maestro de Infraestructura a veces se confunde con el Catálogo Global (GC), que mantiene una copia parcial, sólo de lectura, de todos los dominios de un bosque y se emplea para el almacenamiento universal de grupos y el procesamiento de accesos (log on), entre otras cosas. Dado que los GCs guardan una copia parcial de todos los objetos incluidos en el bosque, son capaces de crear referencias cruzadas entre dominios sin necesidad de fantasmas.

Active Directory y LDAP

Microsoft incluye LDAP (Lightweight Directory Access Protocol) dentro de Active Directory. LDAP es un protocolo de software que permite a cualquiera que lo desee localizar organizaciones, individuos y otros recursos, como archivos y dispositivos en red, tanto en Internet como en intranets privadas.

En una red, es el directorio quien informa de dónde está ubicado algo. En las redes TCP/IP (como internet), el sistema de nombres de dominio (DNS) es el sistema de directorio usado para conectar el nombre de un dominio con una dirección de red específica (una ubicación única en la red). Sin embargo, es posible que no conozcamos el nombre del dominio. En ese caso, LDAP te permite hacer una búsqueda de individuos sin saber dónde se encuentran (aunque cualquier información añadida facilitará la búsqueda).

Los directorios LDAP están organizados en una simple estructura de “árbol” consistente de los siguientes niveles:

  1. Directorio raíz (el punto de inicio o el origen del árbol) del que surgen los
  2. aíses, cada uno de los cuales se divide en
  3. Organizaciones, de las cuales nacen
  4. Unidades organizativas (divisiones, departamentos, etc.), las cuales derivan en (incluir una entrada para)
  5. Individuos (donde se incluyen personas, archivos y recursos compartidos, como impresoras)

El directorio LDAP puede estar distribuido entre muchos servidores. Cada uno de estos servidores puede tener una versión replicada del directorio total que se sincroniza periódicamente.

Es importante que todos y cada uno de los administradores comprendan claramente qué es LDAP a la hora de buscar información en Active Directory. Es especialmente útil saber crear consultas de LDAP cuando se busca información almacenada en la base de datos de Active Directory. Por esta razón, muchos administradores dedican grandes esfuerzos a saber manejar con soltura el filtro de búsqueda de LDAP.

Gestión de Directiva de Grupo y Active Directory

Es difícil hablar de Active Directory sin mencionar Directiva de Grupo. Los administradores pueden usar Directivas de Grupo en Active Directory de Microsoft a fin de definir ajustes para usuarios y computadoras en toda la red. Estos ajustes se configuran y almacenan en lo que se denomina Objetos de Directiva de Grupo (GPOs), los cuales son, posteriormente, asociados con objetos de Active Directory, incluidos dominios y sitios. Es el mecanismo principal para aplicar cambios a las computadoras y los usuarios que operan en el entorno Windows.

Con la gestión de Directiva de Grupo, entre otras funcionalidades, los administradores tienen la opción de ajustar globalmente la configuración del escritorio en las computadoras de los usuarios y de restringir/autorizar el acceso a ciertos archivos y carpetas dentro de una red.

Es importante entender cómo se usan y aplican los GPOs. Los Objetos de Directiva de Grupo se aplican en el siguiente orden: primero se aplican las directivas de la máquina local, seguidas de las políticas del sitio, de las del dominio, y de las directivas aplicadas a las unidades organizativas individuales. Un objeto de usuario o de computadora sólo puede pertenecer a un único sitio y un único dominio cada vez, por lo que solo recibirán GPOs conectados a ese sitio o dominio.

Las GPOs se dividen en dos partes bien diferenciadas: la Plantilla de Directiva de Grupo (GPT) y el Contenedor de Directiva de Grupo (GPC). La GPT es responsable de almacenar los ajustes específicos creados dentro del GPO y es esencial para su éxito. Guarda los ajustes en una gran estructura de carpetas y archivos. A fin de que los ajustes se apliquen correctamente a todos los objetos de usuario y de computadora, se debe replicar el GPT a todos los controladores de dominio que operen dentro del mismo. 

El Contenedor de Directiva de Grupo es la porción de un GPO almacenada en Active Directory que reside en cada controlador de dominio del dominio. El GPC tiene la responsabilidad de mantener las referencias a las Extensiones del Lado Cliente (CSEs), el camino a la GPT, los caminos a los paquetes de instalación de software y otros aspectos referenciales del GPO. El GPC no contiene gran cantidad de información relacionada con su correspondiente GPO, pero es fundamental para la funcionalidad de la Directiva de Grupo. Al configurar las directivas para la instalación de software, el GPC ayuda a mantener los enlaces asociados dentro del GPO. El GPC también mantiene otros enlaces relacionales y caminos almacenados dentro de los atributos del objeto. Conocer la estructura del GPC y la forma de llegar a la información oculta guardada en los atributos resultará muy útil cuando haya que examinar cualquier cuestión relacionada con la Directiva de Grupo.

Para Windows Server 2003, Microsoft lanzó una solución de gestión de la Directiva de Grupo al objeto de unificar la administración de ésta en torno a un snap-in conocido como Consola de Administración de Directiva de Grupo (GPMC). La GPMC ofrece una interfaz de administración centrada en los GPOs, lo que facilita enormemente la administración, gestión y localización de los GPOs. Por medio de la GPMC se pueden crear nuevos GPOs, modificarlos, editarlos, cortar/copiar/pegar GPOs, respaldarlos con copias de seguridad y efectuar simulaciones del Conjunto Resultante de Directivas.

Fuente: http://searchdatacenter.techtarget.com/es/tutorial/Tutorial-de-Active-Directory

Picture of System Administrator

Administración de la virtualización de última generación

by System Administrator - Friday, 27 February 2015, 2:39 PM
 

Administración de la virtualización de última generación

Presentación de Forrester Research

• ¿Cuál es el estado de la virtualización de servidores en las pequeñas y medianas empresas actuales?

• ¿Qué desafíos hacen que las empresas no expandan el uso de la virtualización?

• ¿Qué herramientas de monitoreo y administración se necesitan para expandir la virtualización con confianza y control?

Por favor lea el PDF adjunto.

Picture of System Administrator

Advanced Threat Hunting

by System Administrator - Friday, 11 September 2015, 12:21 AM
 

eGuide to Advanced Threat Hunting

By Bit9

With the number of advanced attacks increasing every day—most undiscovered through traditional detection and response solutions—truly hunting for threats within your environment can be a laborious task. To combat this, enterprises must focus on prioritizing endpoint data collection over detection, leveraging comprehensive threat intelligence, and expanding detection beyond the moment of compromise.

To combat this, enterprises must focus on:

  • Prioritizing endpoint data collection over detection: Businesses need to continuously record the critical data necessary while also maintaining the relationships of those data sets to fully scope an attack.
  • Leveraging comprehensive threat intelligence: Alongside continuous data collection, enterprises must possess the capability to layer threat intelligence and reputation over the data they collect to instantly classify and prioritize threats—accelerating threat discovery in the process.
  • Expanding detection beyond the moment of compromise: Businesses should deploy solutions that can hunt both past and present threats based off of a continuously recorded history—not just individual events.

Tags: advanced threat hunting, traditional detection, endpoint data collection, threat intelligence, threat detection, networking, security, it management

Please read the attached whitepaper.

Picture of System Administrator

Agente de Monitoreo de Microsoft

by System Administrator - Monday, 20 March 2017, 12:56 PM
 

Agente de Monitoreo de Microsoft (Microsoft Monitoring Agent)

Publicado por: Margaret Rouse

El Agente de Monitoreo de Microsoft es un servicio utilizado para ver e informar sobre la aplicación y la salud del sistema en una computadora con Windows. El Agente de Monitoreo de Microsoft recopila y reporta una variedad de datos, incluyendo métricas de rendimiento, registros de eventos e información de seguimiento. Los desarrolladores de software utilizan el Agente de Monitoreo de Microsoft para comprobar el rendimiento de las nuevas construcciones, y los administradores de sistemas lo utilizan para supervisar el rendimiento de las aplicaciones para las cargas de trabajo empresariales.

Los administradores utilizan el Agente de Monitoreo de Microsoft para la supervisión de la infraestructura a través de System Center Operations Manager (SCOM). El agente supervisa y determina el estado de los sistemas supervisados, ​​y envía un informe al servidor de gestión. Los paquetes de administración SCOM pueden dictar los datos recopilados, ejecutar tareas y otros flujos de trabajo para el agente. El Agente de Monitoreo de Microsoft también puede proporcionar monitoreo del rendimiento de las aplicaciones (APM) a través de SCOM, lo que permite a los desarrolladores y administradores supervisar las aplicaciones web y los servicios de Windows escritos con el marco .NET. Del mismo modo, el Agente de Monitoreo de Microsoft puede operar en modo autónomo y realizar APM básico utilizando registros IntelliTrace a través de una plataforma de desarrollo, como Microsoft Visual Studio.

El Agente de Monitoreo de Microsoft funciona en modo monitor, de rastreo o personalizado. El modo monitor recopila métricas y eventos, como excepciones críticas. El modo de seguimiento utiliza el Agente de Monitoreo de Microsoft para recopilar datos de IntelliTrace para Microsoft Visual Studio. El modo personalizado permite a los administradores realizar cambios en el plan de recopilación de datos para personalizar la supervisión.

El Agente de Monitoreo de Microsoft puede realizar un monitoreo continuo de aplicaciones, proporcionando información sobre el rendimiento de aplicaciones del marco .NET y posibles interrupciones que podrían afectar la disponibilidad de aplicaciones o la experiencia del usuario.Cuando se implementa SCOM, el Agente de Monitoreo de Microsoft admite el monitoreo continuo con APM de System Center, utilizando la plantilla de supervisión de rendimiento de aplicaciones .NET. SCOM recibirá las alertas sobre los problemas y fallos de rendimiento de la aplicación, o traducirá las alertas APM en archivos IntelliTrace que se pueden utilizar a través de Visual Studio. Al ejecutarse en modo independiente, los administradores pueden controlar el Agente de Monitoreo de Microsoft para la recopilación de datos y el monitoreo continuo con los cmdlets de PowerShell.

Las versiones de 32 bits y 64 bits del Agente de Monitoreo de Microsoft se pueden descargar desde el centro de descargas de Microsoft, o se pueden implementar a través del panel Administración de la consola SCOM.

 
Términos relacionados
Picture of System Administrator

Agile Operations

by System Administrator - Tuesday, 13 October 2015, 1:56 PM
 

eGuide: Agile Operations

by CA Technologies

In the application economy, constant application updates are table stakes. To gain a competitive advantage, you must deliver the very best user experience by ensuring those improvements are based on real user feedback and application and infrastructure performance - from mobile to mainframe, on-premise or in the cloud. End-to-end monitoring solutions from CA can give your enterprise the holistic monitoring and in-depth management capabilities it needs to turn this feedback into valuable functions and reduce mean-time-to-recover.
Read this eGuide to learn how you can enhance user experience by leveraging real-time insights from your entire application and infrastructure to drive improvements.

Please read the attached whitepaper.

Picture of System Administrator

Agile Planning

by System Administrator - Thursday, 25 June 2015, 9:36 PM
 

Learn the Top Five Challenges to Agile Planning

LET’S START AN AGILE TEAM

To set the stage, let’s visualize an Agile team getting started. Your senior team has heard all about Agile and wants to gain from all the benefits – better products, shorter development cycles, happy customers and bigger returns. You, as the Agile evangelist, have been selected to lead this effort. You also have a new project just getting started. The project is going to be a new home monitoring system that will cut down electric usage in the average home by 93%. You can picture building your Agile development process and sharing your success with the rest of the company until everyone is bathing in Agile goodness. Not only will you demonstrate the power of Agile, but solve most of the world’s problems in one fell swoop. We’ll further assume that your team is already using a collaborative... 

Please read the attached whitepaper.

Picture of System Administrator

Agricultura de Precisión

by System Administrator - Thursday, 2 February 2017, 7:09 PM
 

Agricultura de Precisión

La agricultura de precisión es un término agronómico que define la gestión de parcelas agrícolas sobre la base de la observación, la medida y la actuación frente a la variabilidad inter e intra-cultivo. Requiere un conjunto de tecnologías formado por el Sistema Global de Navegación por Satélite (GNSS), sensores e imagen tanto satelital como aerotransportada, junto con Sistemas de Información Geográfica (SIG) para estimar, evaluar y entender dichas variaciones. La información recolectada puede ser empleada para evaluar con mayor precisión la densidad óptima de siembra, estimar la cantidad adecuada de fertilizantes o de otros insumos necesarios, y predecir con más exactitud el rendimiento y la producción de los cultivos.

 

Agricultura de Precisión con Drones

Importancia de la agricultura de precisión

La agricultura de precisión tiene como objeto optimizar la gestión de una parcela desde el punto de vista

  • Agronómica: ajuste de las prácticas de cultivo a las necesidades de la planta (ej: satisfacción de las necesidades de nitrógeno).
  • Medioambiental: reducción del impacto vinculado a la actividad agrícola (ej: limitaciones de la dispersión del nitrógeno).
  • Económico: aumento de la competitividad a través de una mayor eficacia de las prácticas (ej: mejora de la gestión del coste del estiércol nitrogenado).

Además, la agricultura de precisión pone a disposición del agricultor numerosas informaciones que pueden:

  • Constituir una memoria real del campo.
  • Ayudar a la toma de decisiones.
  • Ir en la dirección de las necesidades de trazabilidad.
  • Mejorar la calidad intrínseca de los productos agrícolas (ejemplo: índice de proteínas en el caso de los trigos panificables).

Las etapas y los instrumentos

Podemos distinguir cuatro etapas en la implementación de técnicas de agricultura de precisión que tome en consideración la heterogeneidad espacial:

Geolocalización de la información

La geolocalización de la parcela permite superponer sobre esta última las informaciones disponibles: análisis del suelo, análisis de los restos nitrogenados, cultivos anteriores, resistividad de los suelos. La geolocalización se efectúa de dos formas:

  • delimitación física con ayuda de un GPS a bordo, lo que requiere el desplazamiento del operador hasta la parcela,
  • delimitación cartográfica tomando como base una imagen aérea o satelital. Para garantizar la precisión de la geolocalización, estas imágenes de fondo deben adaptarse en términos de resolución y de calidad geométrica.
La caracterización de la heterogeneidad

Los orígenes de la variabilidad son diversos: el clima (granizo, sequía, lluvia, etc.), el suelo (textura, profundidad, contenido de nitrógeno fósforo y potasio), prácticas de cultivo (siembra sin labranza), malas hierbas, enfermedades. Varios indicadores permanentes (principalmente relacionados con el suelo) permiten al agricultor mantenerse informado sobre las principales constantes del entorno. Otros indicadores puntuales lo mantienen informado sobre el estado actual del cultivo (desarrollo de enfermedades, estrés hídrico, estrés nitrogenado, encamado, daños provocados por las heladas, etc.). Las informaciones pueden proceder de estaciones meteorológicas, de sensores (resistividad eléctrica del suelo, detección a simple vista, imágenes satelitales, etc.). La medición de la resistividad, completada mediante análisis pedológicos, desemboca en mapas agropedológicos precisos que permiten tomar en cuenta el entorno.

La toma de decisiones: dos estrategias que se pueden adoptar frente a esta heterogeneidad

A partir de los mapas agropedológicos, la decisión sobre la modulación de los insumos en la parcela se efectúa en función de dos estrategias:

  • el enfoque preventivo: se basa en un análisis de los indicadores estáticos durante la campaña (el suelo, la resistividad, el historial de la parcela, etc.),
  • el enfoque de gestión: el enfoque preventivo se actualiza gracias a mediciones periódicas durante la campaña. Estas mediciones se efectúan:
    • mediante muestras físicas: peso de la biomasa, contenido en clorofila de las hojas, peso de las frutas, etc.,
    • mediante proxy-detección: sensores a bordo de las máquinas para medir el estado del follaje pero que requieren la agrimensura total de la parcela,
    • mediante teledetección aérea o satelital: se adquieren imágenes multiespectrales y se tratan de forma que se puedan elaborar mapas que representen diferentes parámetros biofísicos de los cultivos.

La decisión puede basarse en modelos de ayuda a la decisión (modelos agronómicos de simulación de los cultivos y modelos de preconización), pero depende ante todo del agricultor, en función del interés económico y del impacto sobre el medioambiente.

 

Implementación de prácticas para compensar estas variabilidades

Las nuevas tecnologías de la información y la comunicación (NTIC) permiten que la modulación de las operaciones de cultivo dentro de una misma parcela sea más operativa y facilitan el uso por parte del agricultor. La aplicación técnica de las decisiones de modulación requiere la disponibilidad del material agrícola adecuado. Se habla en este caso de VRT o de tecnología de índices variables (ejemplo de modulación: siembra con densidad variable, aplicación de nitrógeno, aplicación de productos fitosanitarios). La implementación de la agricultura de precisión es más sencilla gracias a los equipos instalados en los tractores:

La agricultura de precisión en el mundo

El concepto de agricultura de precisión, en su forma actual, apareció en Estados Unidos a principios de los años 80. En 1985, investigadores de la Universidad de Minnesota, hicieron variar las aportaciones de abonos cálcicos en parcelas agrícolas. Fue en esta época cuando apareció la práctica del grid-sampling (recogida de muestras sobre una red fija de un punto por hectárea). Hacia finales de los años 80 y gracias a las extracciones realizadas mediante muestras, aparecieron los primeros mapas de preconización para las aportaciones moduladas de elementos fertilizados y para las correcciones de pH. La evolución de las tecnologías permitió el desarrollo de sensores de rendimiento y su uso, unido a la aparición del GPS, no ha dejado de crecer hasta alcanzar en la actualidad varios millones de hectáreas cubiertos por estos sistemas. A través del mundo, la agricultura de precisión se desarrolla a ritmos diferentes en función de los países. Entre los países pioneros encontramos por supuesto a los Estados Unidos, a Canadá y Australia. El país de América latina más involucrado con esta metodología de manejo de cultivos, tanto en tasa de adopción, como en desarrollo de agro-componentes de alta complejidad es sin lugar a dudas la República Argentina, país que gracias a los esfuerzos del sector privado y de instituciones de investigación de dependencia oficial, cuenta hoy con una gran cantidad de superficie sembrada bajo esta modalidad y con una importante cantidad de profesionales muy bien entrenados para este nuevo paradigma de la agricultura moderna; otro país de América latina que se perfila como un gran demandante de este tipo de tecnologías es Brasil. El escenario actual de la agricultura en Brasil camina hacia una producción eficiente con la protección del medio ambiente por lo tanto, Embrapa estableció la Red Brasileña de Investigación en Agricultura de Precisión, con el objetivo de generación de conocimientos, herramientas y tecnologías para la agricultura de precisión aplicada a los cultivos de soja, maíz, trigo, arroz, algodón, pastos , eucaliptos, pinos, uva, melocotón, naranja y caña de azúcar. En Europa, los precursores fueron los ingleses, seguidos de cerca por los franceses. En Francia, la agricultura de precisión apareció en 1997-1998. El desarrollo del GPS y de las técnicas de esparcimiento modular contribuyó a arraigar estas prácticas. En la actualidad, menos del 10% de la población agrícola francesa está equipada con herramientas de modulación de este tipo. El GPS está más extendido. Pero esto no impide que utilicen servicios, que suministra mapas de recomendaciones por parcelas, considerando su heterogeneidad.1

Impacto económico y medioambiental

La reducción de las cantidades de nitrógeno aportadas es significativa, lo que acostumbra a generar un mejor rendimiento. Por tanto, el retorno de la inversión se alcanza en varios niveles: ahorro en la compra de los productos fitosanitarios y de los abonos, y mejor valorización de las cosechas. El segundo efecto positivo, a mayor escala, de estas aportaciones dirigidas, de forma geográfica, temporal y cuantitativa, hace referencia al medio ambiente. En efecto, aportar la dosis correcta en el lugar idóneo y en el momento óptimo sólo puede beneficiar al cultivo, al suelo y a las capas freáticas, y, de este modo, a todo el ciclo agrícola. Por tanto, la agricultura de precisión se ha convertido en uno de los pilares de la agricultura sostenible, ya que es respetuosa con los cultivos, las tierras y los agricultores. Se entiende por agricultura sostenible un dispositivo de producción agrícola que pretende garantizar una producción perenne de alimentación, respetando los límites ecológicos, económicos y sociales que garantizan el mantenimiento en el tiempo de esta producción. Por tanto, la agricultura de precisión no hace más que poner la alta tecnología al servicio de esta ambición respetable y loable.

Notas

Enlaces externos

Fuente: https://es.wikipedia.org

Precision Agriculture (Precision Farming)

Posted by: Margaret Rouse

Precision agriculture (PA) is an approach to farm management that uses information technology (IT) to ensure that the crops and soil receive exactly what they need for optimum health and productivity. The goal of PA is to ensure profitability, sustainability and protection of the environment. PA is also known as satellite agriculture, as-needed farming and site-specific crop management (SSCM).

Precision agriculture relies upon specialized equipment, software and IT services. The approach includes accessing real-time data about the conditions of the crops, soil and ambient air, along with other relevant information such as hyper-local weather predictions, labor costs and equipment availability. Predictive analytics software uses the data to provide farmers with guidance about crop rotation, optimal planting times, harvesting times and soil management.

Sensors in fields measure the moisture content and temperature of the soil and surrounding air. Satellites and robotic drones provide farmers with real-time images of individual plants. Information from those images can be processed and integrated with sensor and other data to yield guidance for immediate and future decisions, such as precisely what fields to water and when or where to plant a particular crop.
Agricultural control centers integrate sensor data and imaging input with other data, providing farmers with the ability to identify fields that require treatment and determine the optimum amount of water, fertilizers and pesticides to apply. This helps the farmer avoid wasting resources and prevent run-off, ensuring that the soil has just the right amount of additives for optimum health, while also reducing costs and controlling the farm's environmental impact.

In the past, precision agriculture was limited to larger operations which could support the IT infrastructure and other technology resources required to fully implement and benefit from the benefits of precision agriculture. Today, however, mobile apps, smart sensors, drones and cloud computing makes precision agriculture possible for farming cooperatives and even small family farms.

 

"The farming industry would be quick to embrace precision agriculture with assistance from the IoT, using sensor networks and automation to improve productivity and reduce waste in both crop and livestock farming." - Therese Cory

Link: http://whatis.techtarget.com

Picture of System Administrator

Air Gapping (Air Gap Attack)

by System Administrator - Friday, 8 September 2017, 5:33 PM
 

Air Gapping (Air Gap Attack)

Posted by: Margaret Rouse

Air gapping is a security measure that involves isolating a computer or network and preventing it from establishing an external connection. For example, an air gapped computer is one that is physically segregated and incapable of connecting wirelessly or physically with other computers or network devices.

Air-gapped networks are used to protect many types of critical systems, including those that support the stock market, the military, the government and industrial power industries. The U.S. National Security Agency TEMPEST project provides recommendations for using air gapping as a security measure. To prevent unauthorized data extrusion through electromagnetic or electronic exploits, there is often a specified amount of space between the air gapped system and outside walls and between its wires and the wires for other technical equipment. For a system with extremely sensitive data, a Faraday cage can be used to prevent electromagnetic radiation (EMR) escaping from the air-gapped equipment.

Although these measures seem extreme, van Eck phreaking can be used to intercept data such as key strokes or screen images from demodulated EMR waves, using special equipment from some distance away. Other proof-of-concept (POC) attacks for air gapped systems have shown that electromagnetic emanations from infected sound cards on isolated computers can be exploited and continuous wave irradiation can be used to reflect and gather information from isolated screens, keyboards and other computer components.

Perhaps the most important way to protect a computing device or network from an air gap attack is through end user security awareness training. The infamous Stuxnet worm, which was designed to attack air gapped industrial control systems, is thought to have been introduced by infected thumb drives found by employees or obtained as free giveaways.

Editor's note: The software-defined perimeter (SDP) framework is sometimes referred to as a method of virtual air gapping. SDP requires authentication of all external endpoints attempting to access internal infrastructure and ensures that only authenticated systems can see internal IP addresses.

Link: http://whatis.techtarget.com

Picture of System Administrator

Almacenamiento Orientado a Objetos

by System Administrator - Wednesday, 26 November 2014, 4:16 PM
 

¿Cuáles son los casos de uso más obvios de almacenamiento orientado a objetos?

por Marc Staimer

El almacenamiento orientado a objetos es realmente software. Es una capa de software que se encuentra en un servidor x86, por lo que una gran cantidad de proveedores lo llaman almacenamiento definido por software. Pero se asienta sobre un servidor x86, aprovecha el almacenamiento incorporado dentro de ese servidor y crea un nodo.

Y luego ese software interconecta varios nodos para crear un sistema de almacenamiento orientado a objetos a través de Ethernet. Ahora, el almacenamiento orientado a objetos añade un montón de metadatos para cada objeto. De hecho, usted tiene mucha flexibilidad en lo que se puede describir acerca de cada objeto. Y los metadatos se almacenan realmente con los datos frente a, digamos, un sistema de archivos donde los metadatos se separan de los datos y por lo general se ponen en una especie de base de datos.

Ahora, debido a esa capa adicional de procesamiento –más metadatos– usted está añadiendo latencia. Usted está procesando entre la aplicación y los medios reales sobre los que está escribiendo. Eso significa que está añadiendo latencia, y cada vez que hace eso, no es tan rápido como otros tipos de almacenamiento.

De hecho, tiende a ser un poco más lento que, digamos, el almacenamiento de archivos, por lo que es sin duda más lento que el almacenamiento SAN. Hay formas de acelerar ese proceso, pero en términos generales, los mejores casos de uso del almacenamiento orientado a objetos incluyen el archivado de datos, los respaldos de datos y las aplicaciones de datos secundarios, pero no las aplicaciones a las que va a acceder con frecuencia o cualquier tipo de aplicación interactiva o transaccional.

Sustituir grandes arreglos de almacenamiento secundario o matrices de almacenamiento basadas en archivos también son casos de uso del almacenamiento orientado a objetos. Puede reemplazar las bibliotecas de cintas, ya que ofrece una muy buena tecnología altamente resiliente, de alta duración, tanto para archivos activos como para, incluso, un archivo pasivo frío.

Estas son las cuatro cosas principales que el almacenamiento orientado a objetos puede proporcionar:

1. Bajo costo por GB de almacenamiento.

2. Escalabilidad excepcional (hasta los zetabytes).

3. Alta resiliencia de los datos y durabilidad frente a fallas de disco, nodo o del sitio, así como corrupción de bit.

4. Fácil mejora de la tecnología.

Picture of System Administrator

Análisis de Impacto al Negocio (BIA)

by System Administrator - Monday, 26 January 2015, 1:16 PM
 

Guía y plantilla gratuitas de análisis de impacto al negocio (BIA)

por Paul Kirvan

Un análisis de impacto en el negocio (BIA) es una parte clave del proceso de continuidad del negocio, que analiza funciones de negocio de misión crítica, e identifica y cuantifica el impacto que podría tener en la organización la pérdida de esas funciones (operativas o financieras, por ejemplo).

SearchDataCenter en Español le ofrece una plantilla gratuita de análisis de impacto al negocio que puede descargar, para asistirlo en su planeación continua del negocio. Descargue e imprima su plantilla, y luego lea la guía paso a paso que  aquí le ofrecemos para crear un análisis exitoso de impacto al negocio.

Tabla de contenido: Cómo usar una plantilla de BIA

Preparar un análisis de impacto al negocio

Una vez que los riesgos para una organización han sido identificados –usualmente a través de un análisis de riesgo– el siguiente paso en un análisis de impacto al negocio es determinar cómo esos riesgos afectan a operaciones específicas del negocio. Asumamos que si todas las funciones del negocio están llevándose a cabo normalmente, la organización será totalmente viable, competitiva y financieramente sólida. Si un incidente –interno o externo– afecta negativamente las operaciones del negocio, la organización podría verse comprometida.

Los análisis de impacto al negocio ayudan a los profesionales encargados de la continuidad del negocio y la recuperación de desastres a identificar las prioridades del negocio, y a validarlas o modificarlas para el desarrollo del plan. Se debe formular cuestionarios para recolectar datos previo a las entrevistas, y/o realizar entrevistas personales. La gente con un profundo conocimiento y experiencia con las funciones de negocios que son analizadas son candidatos ideales para las entrevistas del BIA. En algunos casos, podría ser posible organizar preguntas en una encuesta automatizada (ejemplo de lo cual es BIA Professional, de SunGard Availability Services), en la que los resultados pueden ser capturados y resumidos.

Generalmente es útil incluir una descripción de incidentes para que los entrevistados puedan utilizarla cuando responden las preguntas. Un ejemplo de tal situación es: 

  • La porción del edificio de la unidad de negocios está totalmente destruida;

  • Todos los registros, archivos de datos, tecnología, suministros y otros sistemas de soporte están perdidos;

  • Algún personal clave podría no estar disponible;

  • Los procesos primarios de negocios serán afectados inmediatamente y al menos durante 30 días;

  • El desastre ocurre durante un período de procesamiento pico para la unidad de negocios.

Las descripciones de incidentes ayudan a darle contexto a la respuesta del entrevistado, para que estar alineada con riesgos y amenazas específicas.

En última instancia, el propósito del BIA es identificar, priorizar y documentar la importancia relativa de los diversos procesos de negocios llevados a cabo por las unidades de negocios.

Consejos para realizar un análisis de impacto de negocios

Tenga en mente los siguientes consejos clave al realizar un análisis de impacto al negocio:

  1. Obtenga el apoyo de la alta dirección. Dada la naturaleza de los BIA, y el tiempo necesario para la investigación, asegúrese de obtener el apoyo de la alta dirección de modo que pueda lograr los objetivos de su proyecto.

  2. Tome seriamente el proceso del análisis de impacto al negocio. Aunque el BIA puede tomar mucho tiempo para la recopilación y análisis de datos, su valor puede ser esencial a medida que desarrolle planes. Los BIA no tienen que tener docenas de páginas. Simplemente necesitan la información correcta, y esa información debe ser actual y precisa.

  3. No hay estándares formales de BIA. A pesar de los muchos estándares de continuidad de negocios disponibles en los Estados Unidos, no existe un estándar formal para el BIA.

  4. Manténganlo sencillo. Recolectar la información correcta es fundamental; la plantilla asociada provee una línea de base para recoger la información. Si el resumen de una página de un análisis de impacto al negocio proporciona la información relevante, comparado con uno de docenas de páginas, ése puede ser perfectamente aceptable.

  5. Revise los resultados con las unidades de negocio. Una vez que el plan está completo, revise los hallazgos con los líderes de las unidades de negocio para asegurarse que sus supuestos son correctos.

  6. Sea flexible. La plantilla sugerida en este artículo podría ser demasiado compleja para algunas organizaciones; siéntase libre de modificarla según sus necesidades para lograr sus objetivos.

Cómo utilizar nuestra plantilla de análisis de impacto al negocio

A continuación, examinaremos la estructura y contenido de la plantilla, indicando las cuestiones clave que se debe abordar y las actividades a realizar. Esto puede ser fácilmente organizado y gestionado con hojas de cálculo estándar.

  1. Nombre de la unidad de negocios: Ingrese el nombre de la unidad de negocios.

  2. Recuento: Ingrese el número de personal a tiempo completo que tiene la unidad de negocios; de manera opcional, si aplica, ingrese el número de personal a tiempo parcial y los contratistas.

  3. Proceso padre (parent process): Describa las principales actividades que realiza la unidad, tales como ventas, interfaz de contratista o gestión de la relación con los inversionistas.

  4. Ranking de prioridades: Ingrese aquí un número para la clasificación subjetiva de la importancia de los procesos. 

  5. Objetivo de tiempo para la recuperación: Ingrese un período de tiempo en esta sección, por ejemplo una hora o una semana; describe el tiempo en que un proceso padre debe regresar a “funcionar casi como siempre” después de una interrupción.

  6. Objetivo de punto de recuperación: Ingrese un período de tiempo en esta sección, por ejemplo una hora o un día; este es un punto en el tiempo hasta el cual debe ser restaurado el proceso padre después de una interrupción.

  7. De qué depende el proceso padre: Ingrese los nombres de organizaciones y/o procesos de los cuales depende el proceso padre para su normal operación.

  8. Quién requiere del proceso padre: Ingrese los nombres de organizaciones y/o procesos que dependen del proceso padre para sus operaciones normales.

  9. (Opcional) Sub-procesos: Ingrese una descripción de las actividades de apoyo que realiza la unidad, tales como análisis de ventas o análisis financiero.

  10. (Opcional) Orden de prioridades: Ingrese aquí un número para la clasificación subjetiva de los sub-procesos y su importancia para la unidad de negocios.
  11. (Opcional) Objetivo de tiempo de recuperación: Ingrese un período de tiempo; describe el tiempo en que un subproceso debe regresar a “funcionar casi como siempre” después de una interrupción.

  12. (Opcional) Objetivo de punto de recuperación: Ingrese un período de tiempo; este es un punto en el tiempo al cual debe ser restaurado el trabajo del subproceso después de una interrupción.

  13. (Opcional) De qué depende el sub-proceso: Ingrese los nombres de las organizaciones y/o procesos de los cuales depende el subproceso para sus operaciones normales.

  14. (Opcional) Quién requiere del sub-proceso: Ingrese nombres de organizaciones y/o procesos que dependen del subproceso para sus operaciones normales.

  15. Impacto cuantitativo: Ingrese una cantidad financiera asociada con el proceso padre, por ejemplo, los ingresos anuales generados por el proceso.

  16. Impacto cualitativo: Ingrese el impacto no financiero para la compañía, tal como la pérdida de reputación o la pérdida de clientes asociadas con el proceso padre.

  17. Tiempo necesario para recuperar personal: Ingrese el número de personal necesario para regresar a “funcionar casi como siempre” dentro de un período de tiempo específico.

  18. Estrategia de recuperación: Ingrese acciones específicas que la unidad de negocio puede realizar para recuperarse a un estado “casi como siempre”, tales como trabajar desde casa, reubicarse a un área alternativa, o recuperar un sitio web secundario (hot site).

  19. Tiempo de recuperación de tecnología/servicios: Ingrese el sistema y los servicios en cada período de tiempo que debe ser recuperado dentro del marco de tiempo específico.

  20. Comentarios: Se explica por sí mismo.

Una excelente forma de aprender sobre un negocio es realizar un análisis de impacto al negocio. Además de identificar prioridades y plazos de recuperación, llevar a cabo un BIA también puede identificar las oportunidades para una mejora de procesos.

Sobre el autor: Paul F. Kirvan, FBCI, CBCP, CISSP, tiene más de veinte años de experiencia como consultor, autor y educador en gestión de continuidad de negocios. También es secretario del Capítulo de Estados Unidos del Instituto de Continuidad de Negocios.

 

Picture of System Administrator

Android Wear (ICT/TIC)

by System Administrator - Thursday, 19 June 2014, 10:31 PM
 

 

Android Wear es el sistema operativo para Dispositivos Corporales (Wearables) basado en Android que Google presentó a la sociedad el 18 de marzo de 2014. El sistema en sí, está pensado para ser utilizado en Relojes Inteligentes (SmartWatches), Pulseras Inteligentes (WristBand), Anillos Inteligentes (SmartRings), y cualquier otro dispositivo Wearable que pueda ir surgiendo en está nueva era de la Internet de las Cosas.

Picture of System Administrator

Apache Spark

by System Administrator - Thursday, 6 November 2014, 7:05 PM
 

Apache Spark

Posted by Margaret Rouse

Apache Spark is an open-source parallel processing framework that enables users to run large-scale data analytics applications across clustered systems.

Apache Spark is an open source parallel processing framework that enables users to run large-scale data analytics applications across clustered computers. 

Apache Spark can process data from a variety of data repositories, including the Hadoop Distributed File System (HDFS), NoSQLdatabases and relational data stores such as Apache Hive. Spark supports in-memory processing to boost the performance of big data analytics applications, but it can also do conventional disk-based processing when data sets are too large to fit into the available system memory.

Spark became a top-level project of the Apache Software Foundation in February 2014, and Version 1.0 of Apache Spark was released in May 2014. The technology was initially designed in 2009 by researchers at the University of California, Berkeley, as a way to speed up processing jobs inHadoop systems. Spark provides programmers with a potentially faster and more flexible alternative to MapReduce, the software framework that early versions of Hadoop were tied to. Spark's developers say it can run jobs 100 times faster than MapReduce when processed in memory and 10 times faster on disk.

 

In addition, Spark can handle more than the batch processing applications that MapReduce is limited to running. The core Spark engine functions partly as an application programming interface (API) layer and underpins a set of related tools for managing and analyzing data, including a SQL query engine, a library of machine learning algorithms, a graph processing system and streaming data processing software.

Apache Spark can run in Hadoop 2 clusters on top of the YARN resource manager; it can also be deployed standalone or in the cloud on the Amazon Elastic Compute Cloud (EC2) service. Its speed, combined with its ability to tie together multiple types of databases and run different kinds of analytics applications, has prompted some proponents to claim that Spark has the potential to become a unifying technology for big data applications.

Link: http://searchbusinessanalytics.techtarget.com

Picture of System Administrator

Apache Spark and MongoDB

by System Administrator - Thursday, 16 July 2015, 8:29 PM
 

Apache Spark and MongoDB

Turning Analytics into Real-Time Action

We live in a world of "big data". But it isn't only the data itself that is valuable – it is the insight it can generate. That insight can help designers better predict new products that customers will love. It can help manufacturing companies model failures in critical components, before costly recalls. It can help financial institutions detect fraud. It can help retailers better forecast supply and demand. Marketing departments can deliver more relevant recommendations to its customers. The list goes on.

How quickly an organization can unlock and act on that insight is becoming a major source of competitive advantage. Collecting data in operational systems and then relying on nightly batch ETL (Extract Transform Load) processes to update the Enterprise Data Warehouse (EDW) is no longer sufficient. Speed-to-insight is critical, and so analytics against live operational data to drive real-time action is fast becoming a necessity, enabled by technologies like MongoDB and Apache Spark.

Please read the attached whitepaper.

Picture of System Administrator

Apple HealthKit

by System Administrator - Thursday, 19 June 2014, 10:28 PM
 

 

HealthKit allows apps that provide health and fitness services to share their data with the new Health app and with each other. A user’s health information is stored in a centralized and secure location and the user decides which data should be shared with your app.

Fuente: https://developer.apple.com/healthkit/

Picture of System Administrator

Application lifecycle management tools

by System Administrator - Friday, 9 October 2015, 11:20 PM
 

Application lifecycle management tools finesse app development

by SearchSoftwareQuality

Software development teams in highly competitive marketplaces are constantly under pressure from their companies to be the first to market with the latest and greatest application. That's easier said than done. To streamline the product development process, businesses of all sizes are turning to the latest generation of application lifecycle management tools.

Offering features such as traceability, visibility, collaboration and virtualization testing, application lifecycle management tools help development teams reverse the "forest for the trees" mentality and narrow their focus on the parts instead of the whole project. By zeroing in on the individual tasks, developers are better able to track their progress, make adjustments as necessary and, ultimately, speed up the development cycle.

Table Of Contents

  • Service testing goes virtual
  • The right ALM software for your organization
  • Wall-to-wall Web-based ALM

Please read the attached whitepaper.

Picture of System Administrator

Application Modernization

by System Administrator - Friday, 12 September 2014, 12:03 AM
 

Application Modernization

Picture of System Administrator

Aseguramiento (CALIDAD)

by System Administrator - Thursday, 9 May 2013, 1:12 AM
 

CONCEPTOS RELATIVOS AL ASEGURAMIENTO DE LA CALIDAD PARA LOS PROCESOS DE MEDICIÓN

Proceso de medición; Conjunto de operaciones que permiten determinar el valor de una magnitud.

Confirmación metrológica: Conjunto de operaciones necesarias para asegurar que el equipo de medición cumple con los requisitos para su uso previsto.

Función metrológica: Función con responsabilidad en la organización para definir e implementar el sistema de control de las mediciones.

Sistema de control de las mediciones: Conjunto de elementos interrelacionados o que interactúan , necesarios para lograr la confirmación metrológica y el control continuo de los procesos de medición.

Equipo de medición: Instrumento de medición, software, patrón de medición , material d referencia o equipos auxiliares o combinación de ellos necesarios para llevar a cabo un proceso de medición.

Característica metrológica: Rasgo distintivo que puede influir sobre los resultados de la medición.

Picture of System Administrator

Asegurar los datos empresariales

by System Administrator - Wednesday, 18 February 2015, 7:58 PM
 

Cinco pasos para asegurar los datos empresariales

por Warwick Ashford

Las investigaciones han revelado que la pérdida de datos es una de las principales preocupaciones de los ejecutivos de TI, según la firma de gestión de datos Iron Mountain, que ha compilado cinco pasos para asegurar los datos para conmemorar el Día de la Protección de Datos.

La iniciativa internacional, ahora en su noveno año, tiene como objetivo sensibilizar a los consumidores y las empresas de la importancia de salvaguardar los datos, respetando la privacidad y creando confianza.

El 28 de enero fue elegido porque ese día, en 1981, el Consejo de Europa aprobó el Convenio 108 sobre la protección de los datos personales de los individuos, la raíz de toda la legislación sobre privacidad y protección de datos.

La gerente senior de marketing de producto y soluciones de Iron Mountain, Jennifer Burl, dijo que las empresas de todos los tamaños pueden beneficiarse con los consejos sobre cómo mejorar la seguridad de sus datos.

"De acuerdo con la Alianza Nacional para la Ciberseguridad, el 50% de los ataques cibernéticos dirigidos están apuntados a empresas con menos de 2,500 empleados", agregó.

Burl dijo que hay cinco pasos que las empresas pueden tomar para mantener los datos seguros y protegidos para evitar problemas legales y reglamentarios.

Paso 1: Conozca dónde residen su datos

"No puede completar su plan de seguridad hasta que usted sepa exactamente lo que está protegiendo y dónde se almacena", dijo Burl.

La mayoría de las empresas almacenan datos en múltiples tipos de medios: discos locales, sistemas de respaldo basados en disco, en cintas fuera de las instalaciones y en la nube. Cada tecnología y formato requiere su propio tipo de protección.

Paso 2: Ponga en práctica una política de “conocimiento según necesidad”

Para minimizar el riesgo del error humano (o curiosidad), cree políticas que limiten el acceso a los conjuntos de datos particulares.

Designe el acceso basado en descripciones herméticas de puestos. También asegúrese de automatizar las entradas de acceso al registro para que nadie que ha tenido acceso a un conjunto de datos en particular pase inadvertido.

Paso 3: Refuerce la seguridad de su red

"Su red está casi seguramente protegida por un firewall y un software antivirus. Pero es necesario asegurarse de que esas herramientas están actualizadas y son lo suficientemente amplias como para hacer el trabajo", dijo Burl.

Diariamente se lanzan nuevas definiciones de malware, y el software antivirus tiene que seguirles el ritmo.

La filosofía de traiga su propio dispositivo está aquí para quedarse, y su equipo de TI debe extender su paraguas de seguridad sobre los teléfonos inteligentes y las tabletas que los empleados utilizan para fines de negocios.

Paso 4: Monitoree e informe sobre el ciclo de vida de sus datos

Cree un plan de gestión del ciclo de vida de los datos para garantizar la destrucción segura de los datos datos antiguos y obsoletos de la empresa.

Como parte de este proceso, las empresas deben:

Paso 5: Educar a todo el mundo

"La seguridad de los datos se trata, en última instancia, de la gente", dijo Burl. “Cada empleado debe entender los riesgos y consecuencias de las violaciones de datos y saber cómo prevenirlas, especialmente con el aumento de los ataques de ingeniería social”.

"Hable con sus empleados acerca de las vulnerabilidades, como enlaces web de malwarehábilmente disfrazados en mensajes de correo electrónico no solicitados. Anímelos a hablar si sus computadoras empiezan a funcionar de forma extraña".

Construya una cultura de seguridad en la cual todo el mundo entienda el valor crítico de sus datos de negocio y la necesidad de su protección. "Porque cuando se piensa en ello, todos los días son días de protección de datos", dijo Burl.

Educar a los usuarios para proteger la economía

La firma de gestión de contenido Intralinks dijo que muchas personas traen malos hábitos de seguridad de su casa al negocio, por lo que la educación de los usuarios no se trata solo de protegerlos, sino también sobre la protección de la economía.

El director de tecnología para Europa de Intralinks, Richard Anstey, dijo que puede ser contraproducente decirle a la gente que utilice contraseñas seguras, ya que crea una falsa sensación de seguridad que la gente luego lleva al trabajo.

"Cuando se trata de información muy sensible, como el protocolo de Internet, la gente necesita saber acerca de medidas muy seguras, como la gestión de los derechos de información", dijo.

Según Anstey, la seguridad se trata de saber cuál es el peligro y cómo implementar el nivel adecuado de protección.

"Si queremos una sociedad con datos verdaderamente seguros tenemos que empezar por asegurar que las personas saben qué valor tienen sus datos, entonces pueden tomar una decisión informada sobre cómo asegurarlos", dijo.

Demasiado énfasis en las amenazas externas

La firma de cifrado Egress ha advertido que muchos negocios se están centrando en las amenazas externas.

Una solicitud de libertad de la Información (FOI) de Egress a la Oficina del Comisionado de Información del Reino Unido reveló que el 93% de las brechas de datos se producen como consecuencia de un error humano.

El directores general de Egress, Tony Pepper, dijo que las empresas deberían empezar a mirar más cerca de casa para evitar las violaciones de datos.

"Los errores tales como la pérdida de un dispositivo sin cifrar en el correo o enviar un correo electrónico a la persona equivocada están hiriendo a las organizaciones", dijo.

Pepper añadió que los datos del FOI muestran que se ha gastado un total de 7.7 millones de dólares por errores cometidos al manejar información sensible, mientras que hasta la fecha no se han aplicado multas debido a fallos técnicos que exponen datos confidenciales.

"El error humano nunca será erradicado, ya que la gente siempre comete errores. Por lo tanto, las organizaciones necesitan encontrar formas de limitar el daño causado por estos errores", dijo.

Según Egress, la política debe ser soportada por tecnología de fácil uso que permita formas seguras de trabajar sin afectar la productividad, al tiempo que proporciona una red de seguridad para cuando los usuarios cometen errores.

Las empresas necesitan un enfoque proactivo para la seguridad de los datos

La firma de gobernabilidad de datos Axway dijo que los negocios necesitan tomar un enfoque proactivo hacia la seguridad de los datos frente a los hackers maliciosos y las brechas de datos.

El vicepresidente del Programa de Salida al Mercado de Axway, Antoine Rizk, dijo que en un mundo cada vez más conectado, las empresas necesitan monitorear proactivamente sus flujos de datos para prevenir las brechas de datos costosos.

"Sin embargo, muchas organizaciones grandes siguen esperando a que algo salga mal antes de abordar las fallas en sus estrategias de seguridad –un movimiento que fracasó en algunas de las brechas de seguridad más famosas de 2014", dijo.

Axway predice que en 2015, traer tu propio dispositivo va a evolucionar rápidamente en traer tu propio Internet de las cosas, con los empleados trayendo dispositivos vestibles al lugar de trabajo.

“Para que esa mayor movilidad empresarial abra las ventanas de oportunidades para las empresas, sin allanar el camino para que los hackers accedan a los datos privados, la seguridad debe evolucionar a la misma velocidad que los propios dispositivos", dijo Rizk.

"Las organizaciones también necesitan saber qué datos están trayendo a la oficina los empleados y qué datos están sacando de ella para asegurarse de que los ataques maliciosos y la actividad conspicua están bloqueados", dijo.

Es importante destacar los riesgos en las plataformas móviles

La empresa de protección de aplicaciones Arxan dijo que, en el Día de la Protección de Datos, es importante destacar el aumento de los riesgos en las plataformas móviles, especialmente en el sector bancario y de pagos.

El director de ventas para Europa de Arxan, Marcos Noctor, dijo que la firma predice que los riesgos de seguridad en el sector financiero serán un área clave de amenazas para el 2015.

"Con esto en mente, es vital que la seguridad de las aplicaciones móviles tome prioridadconforme los bancos, proveedores de pago y los clientes busquen hacer más en los dispositivos móviles", dijo.

Una investigación de Arxan reveló que 95% de las 100 mejores aplicaciones financieras de Android y 70% de las aplicaciones de iOS han sido hackeadas el año pasado.

La compañía dijo: "Nos gustaría recomendar a los clientes bancarios y de pago que están considerando el uso de una aplicación financiera móvil que tomen las siguientes medidas para aumentar la seguridad:

  • Descargue aplicaciones bancarias y de pago solo de las tiendas de aplicaciones certificadas;

  • Pregunte a su institución financiera o proveedor de pago si su aplicación está protegida contra la ingeniería inversa;

  • No se conecte a un correo electrónico, banco u otra cuenta sensible a través de WiFi público. Si eso es inevitable –porque usted pasa mucho tiempo en cafés, hoteles o aeropuertos, por ejemplo– pague por el acceso a una red privada virtual, que mejorará considerablemente su privacidad en las redes públicas;

  • Pregunte en su banco o proveedor de pago móvil si han desplegado protecciones automáticas para las aplicaciones que han lanzado en las tiendas de aplicaciones. No confíe solo en antivirus móviles, antispam o sus soluciones de seguridad de dispositivos para toda la empresa para proteger aplicaciones que residen en su dispositivo móvil contra los hackeos o ataques de malware”.

Más noticias y tutoriales

 

Picture of System Administrator

ASP.Net - Intro, Life Cycle & Hello World Program

by System Administrator - Thursday, 7 September 2017, 3:57 PM
 

ASP.Net - Intro, Life Cycle & Hello World Program

 

ASP.Net is a web development platform provided by Microsoft. It is used for creating web-based applications. ASP.Net was first released in the year 2002.

The first version of ASP.Net deployed was 1.0. The most recent version of ASP.Net is version 4.6. ASP.Net is designed to work with the HTTP protocol. This is the standard protocol used across all web applications.

ASP.Net applications can also be written in a variety of .Net languages. These include C#, VB.Net and J#. In this chapter, you will see some basic fundamental of the.Net framework.

In this tutorial, you will learn-

What is ASP.Net?

ASP.Net is a framework which is used to develop a Web-based application. The basic architecture of the ASP.Net framework is as shown below.

ASP.Net - Intro, Life Cycle & Hello World Program

The architecture of the.Net framework is based on the following key components

  1. Language – A variety of languages exists for .net framework. They are VB.net and C#. These can be used to develop web applications.
  2. Library - The .NET Framework includes a set of standard class libraries. The most common library used for web applications in .net is the Web library. The web library has all the necessary components used to develop.Net web based applications.
  3. Common Language Runtime - The Common Language Infrastructure or CLI is a platform. .Net programs are executed on this platform. The CLR is used for performing key activities. Activities include Exception handling and Garbage collection.

Below are some of the key characteristics of the ASP.Net framework

  1. Code Behind Mode – This is the concept of separation of design and code. By making this separation, it becomes easier to maintain the ASP.Net application. The general file type of an ASP.Net file is aspx. Assume we have a web page called MyPage.aspx. There will be another file called MyPage.aspx.cs which would denote the code part of the page. So Visual Studio creates separate files for each web page, one for the design part and the other for the code.
  2. State Management – ASP.Net has the facility to control state management. HTTP is known as a stateless protocol. Let's take an example of a shopping cart application. Now, when a user decides what he wants to buy from the site, he will press the submit button.

    The application needs to remember the items the user choose for the purchase. This is known as remembering the state of an application at a current point in time. HTTP is a stateless protocol. When the user goes to the purchase page, HTTP will not store the information on the cart items. Additional coding needs to be done to ensure that the cart items can be carried forward to the purchase page. Such an implementation can become complex at times. But ASP.Net has the ability to do state management on your behalf. So ASP.Net has the ability to remember the cart items and pass it over to the purchase page.

  3. Caching – ASP.Net can implement the concept of Caching. This improve's the performance of the application. By caching those pages which are often requested by the user can be stored in a temporary location. These pages can be retrieved faster and better responses can be sent to the user. So caching can greatly improve the performance of an application.

ASP.Net Life cycle

When an ASP.Net application is launched, there are series of steps which are carried out. These series of steps makes up the lifecycle of the application.

Let's look at the various stages of a typical page lifecycle of an ASP.Net web Application.

ASP.Net - Intro, Life Cycle & Hello World Program

1) Application Start - The life cycle of an ASP.NET application starts when a request is made by a user. This request is to the Web server for the ASP.Net Application. This happens when the first user normally goes to the home page for the application for the first time. During this time, there is a method called Application_start which is executed by the web server. Usually in this method, all global variables are set to their default values.

2) Object creation - The next stage is the creation of the HttpContext , HttpRequest & HttpResponse by the web server. The HttpContext is just the container for the HttpRequest and HttpResponse objects. The HttpRequest object contains information about the current request, including cookies and browser information. The HttpResponse object contains the response that is sent to the client.

3) HttpApplication creation - This object is created by the web server. It is this object that is used to process each subsequent request sent to the application. For example, let's assume we have 2 web applications. One is a shopping cart application, and the other is a news website. For each application, we would have 2 HttpApplication objects created. Any further requests to each website would be processed by each HttpApplication respectively.

4) Dispose - This event is called before the application instance is destroyed. During this time, one can use this method to manually release any unmanaged resources.

5) Application End - This is the final part of the application. In this part, the application is finally unloaded from memory.

ASP.Net Page Life cycle

When an ASP.Net page is called, it goes through a particular lifecycle. This is done before the response is sent to the user. There are series of steps which are followed for the processing of an ASP.Net page.

Let's look at the various stages of the lifecycle of an ASP.Net web page.

ASP.Net - Intro, Life Cycle & Hello World Program

  1. Page Request- This is when the page is first requested from the server. When the page is requested, the server checks if it is requested for the first time. If so, then it needs to compile the page, parse the response and send it across to the user. If it is not the first time the page is requested, the cache is checked to see if the page output exists. If so, that response is sent to the user.
  2. Page Start – During this time, 2 objects, known as the Request and Response object are created. The Request object is used to hold all the information which was sent when the page was requested. The Response object is used to hold the information which is sent back to the user.
  3. Page Initialization – During this time, all the controls on a web page is initialized. So if you have any label, textbox or any other controls on the web form, they are all initialized.
  4. Page Load – This is when the page is actually loaded with all the default values. So if a textbox is supposed to have a default value, that value is loaded during the page load time.
  5. Validation – Sometimes there can be some validation set on the form. For example, there can be a validation which says that a listbox should have a certain set of values. If the condition is false, then there should be an error in loading the page.
  6. Postback event handling – This event is triggered if the same page is being loaded again. This happens in response to an earlier event. Sometimes there can be a situation that a user clicks on a submit button on the page. In this case, the same page is displayed again. In such a case, the Postback event handle is called.
  7. Page Rendering – This happens just before all the response information is sent to the user. All the information on the form is saved, and the result is sent to the user as a complete web page.
  8. Unload – Once the page output is sent to the user, there is no need to keep the ASP.net web form objects in memory. So the unloading process involves removing all unwanted objects from memory.

Hello World in ASP.Net

Let's look at an example of how we can implement a simple "hello world" application. For this, we would need to implement the below-mentioned steps.

Step 1) The first step involves the creation of a new project in Visual Studio. After launching Visual Studio, you need to choose the menu option New->Project.

ASP.Net - Intro, Life Cycle & Hello World Program

Step 2) The next step is to choose the project type as an ASP.Net Web application. Here we also need to mention the name and location of our project.

  1. In the project dialog box, you can see various options for creating different types of projects. Click the Web option on the left-hand side.
  2. When we click the Web option in the previous step, we will be able to see an option for ASP.Net Web Application. Click this option.
  3. We then give a name for the application, which in our case is DemoApplication. We also need to provide a location to store our application.
  4. Finally, we click the 'OK' button to let Visual Studio to create our project.

ASP.Net - Intro, Life Cycle & Hello World Program

Step 3) In the next screen, you have to choose the type of ASP.net web application that needs to be created. In our case, we are going to create a simple Web Form application.

  1. First, choose the project type as 'Empty'. This will ensure that we start with a basic application which is simple to understand.
  2. We choose the option "web Forms". This adds the basic folders. These are required for a basic Web Forms Application.
  3. Finally, we click the 'OK' button to allow Visual Studio to create our application.

ASP.Net - Intro, Life Cycle & Hello World Program

If the above steps are followed, you will get the below output in Visual Studio.

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

In the Solution explorer, you will be able to see the DemoApplication Solution. This solution will contain 2 project files as shown above. At the moment, one of the key files in the project is the 'Global.asax.cs'. This file contains application specific information. In this file, you would initialize all application specific variables to their default values.

Step 4) Now, it's time to add a Web Form file to the project. This is the file which will contain all the web-specific code for our project.

ASP.Net - Intro, Life Cycle & Hello World Program

Step 5) In the next screen we are going to be prompted to provide a name for the web form.

  1. Give a name for the Web Form. In our case, we are giving it a name of Demo.
  2. Click the Ok button.

ASP.Net - Intro, Life Cycle & Hello World Program

Automatically Visual Studio will create the Demo Web Form and will open it in Visual Studio.

Step 6) The next step is to add the code, which will do the work of displaying "Hello World." This can be done by just adding one line of code to the Demo.aspx file.

ASP.Net - Intro, Life Cycle & Hello World Program

Code Explanation:-

  • The Response object in ASP.Net is used to send information back to the user. So in our case, we are using the method "Write" of the Response object to write the text "Hello World." The <% and %> markers are used to add ASP.net specific code.

If you follow all of the above steps and run your program in Visual Studio, you will get the following output.

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

From the output, you can clearly see that 'Hello World' was displayed in the browser.

Adding ASP.Net Controls to Web Forms

ASP.Net has the ability to add controls to a form such as textboxes and labels.

Let's look at the other controls available for Web forms and see some of their common properties.

In our example, we will create one form which will have the following functionality.

  1. The ability for the user to enter his name.
  2. An option to choose the city in which the user resides in
  3. The ability for the user to enter an option for the gender.
  4. An option to choose a course which the user wants to learn. There will be choices for both C# and ASP.Net

Let's look at each control in detail. Let's add them to build the form with the above mentioned functionality.

Step 1) The first step is to open the Forms Designer for the Demo web form. Once you do this, you will be able to drag controls from the toolbox to the Web form.

To open the Designer web form,

  • Right click the Demo.aspx file in the Solution Explorer and
  • Choose the menu option View Designer.

ASP.Net - Intro, Life Cycle & Hello World Program

Once you perform the above step, you will be able to see your Form Designer as shown below.

ASP.Net - Intro, Life Cycle & Hello World Program

Now let's start adding our controls one by one

Label Control

The label control is used to display a text or a message to the user on the form. The label control is normally used along with other controls. Common examples is wherein a label is added along with the textbox control. The label gives an indication to the user on what is expected to fill up in the textbox. Let's see how we can implement this with an example shown below. We will use a label called 'name.' This will be used in conjunction with the textbox controls, which will be added in the later section.

Step 1) The first step is to drag the 'label' control on to the Web Form from the toolbox as shown below.

ASP.Net - Intro, Life Cycle & Hello World Program

Step 2) Once the label has been added, follow the following steps.

  1. Go to the properties window by right clicking on the label control
  2. Choose the Properties menu option

ASP.Net - Intro, Life Cycle & Hello World Program

Step 3) From the properties window, change the name of the Text property to Name

ASP.Net - Intro, Life Cycle & Hello World Program

Similarly, also change the ID property value of the control to lblName. By specifying a meaningful ID to controls, it becomes easier to access them during the coding phase. This is shown below.

ASP.Net - Intro, Life Cycle & Hello World Program

One you make the above changes, you will see the following output

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

You will see that the Name label appears on the Web Form.

Textbox

A textbox is used for allowing a user to enter some text on the Web form application. Let's see how we can implement this with an example shown below. We will add one textbox to the form in which the user can enter his name.

Step 1) The first step is to drag the textbox control onto the Web Form from the toolbox as shown below

ASP.Net - Intro, Life Cycle & Hello World Program

Below is how this would look in the forms designer once the Textbox control is on the form

ASP.Net - Intro, Life Cycle & Hello World Program

Step 2) Once the Textbox has been added, you have to change the ID property.

  • Go to the properties window by right clicking on the Textbox control and
  • Choose properties then
  • Change the id property of the textbox to txtName.

ASP.Net - Intro, Life Cycle & Hello World Program

One you make the above changes, you see the following output.

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

List box

A Listbox is used to showcase a list of items on the Web form. Let's see how we can implement this with an example shown below. We will add a list box to the form to store some city locations.

Step 1) The first step is to drag the listbox control on to the Web Form from the toolbox as shown below

ASP.Net - Intro, Life Cycle & Hello World Program

Step 2) Once you drag the listbox to the form, a separate side menu will appear. In this menu choose the 'Edit Items' menu.

ASP.Net - Intro, Life Cycle & Hello World Program

Step 3) You will now be presented with a dialog box in which you can add the list items to the listbox.

  1. Click on the Add button to add a list item.
  2. Give a name for the text value of the list item – In our case Mumbai. Repeat steps 1 and 2 to add list items for Mangalore and Hyderabad.
  3. Click on the OK button

ASP.Net - Intro, Life Cycle & Hello World Program

Step 4) Go to the properties window and change the ID property value of the control to lstLocation.

ASP.Net - Intro, Life Cycle & Hello World Program

One you make the above changes, you will see the following output

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

From the output, you can clearly see that the Listboxes was added to the form.

RadioButton

A Radio button is used to showcase a list of items out of which the user can choose one. Let's see how we can implement this with an example shown below. We will add a radio button for a male/female option.

Step 1) The first step is to drag the 'radiobutton' control onto the Web Form from the toolbox. ( see image below). Make sure to add 2 radio buttons , one for the option of 'Male' and the other for 'Female.'

ASP.Net - Intro, Life Cycle & Hello World Program

Step 2) Once the Radiobutton has been added, change the 'text' property.

  • Go to the properties window by clicking on the 'Radiobutton control'.
  • Change the text property of the Radio button to 'Male'.
  • Repeat the same step to change it to 'Female.'
  • Also, change the ID properties of the respective controls to rdMale and rdFemale.

ASP.Net - Intro, Life Cycle & Hello World Program

Once you make the above changes, you will see the following output

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

From the output, you can clearly see that the radio button was added to the form

Checkbox - A checkbox is used to provide a list of options in which the user can choose multiple choices. Let's see how we can implement this with an example shown below. We will add 2 checkboxes to our Web forms. These checkboxes will provide an option to the user on whether they want to learn C# or ASP.Net.

Step 1) The first step is to drag the checkbox control onto the Web Form from the toolbox as shown below

ASP.Net - Intro, Life Cycle & Hello World Program

Step 2) Once the Checkboxes have been added, change the checkbox id property to 'chkASP'.

  • Go to the properties window by clicking on the Checkbox control.
  • Change the ID properties of the respective controls to 'chkC' and 'chkASP'.

Also, change the text property of the Checkbox control to 'C#'. Do the same for the other Checkbox control and change it to 'ASP.Net'.

  1. Change the ID property of the checkbox to 'chkASP'

ASP.Net - Intro, Life Cycle & Hello World Program

  1. Change the ID property of the checkbox to chkC

ASP.Net - Intro, Life Cycle & Hello World Program

ASP.Net - Intro, Life Cycle & Hello World Program

Once you make the above changes, you will see the following output

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

From the output, you can clearly see that the Checkboxes was added to the form.

Button

A button is used to allow the user to click on a button which would then start the processing of the form. Let's see how we can implement this with our current example as shown below. We will add a simple button called 'Submit' button. This will be used to submit all the information on the form.

Step 1) The first step is to drag the button control onto the Web Form from the toolbox as shown below

ASP.Net - Intro, Life Cycle & Hello World Program

Step 2) Once the button has been added, go to the properties window by clicking on the button control. Change the text property of the button control to Submit. Also, change the ID property of the button to 'btnSubmit'.

ASP.Net - Intro, Life Cycle & Hello World Program

One you make the above changes, you will see the following output

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

From the output, you can clearly see that the button was added to the form.

Event Handler in ASP.Net

When working with a web form, you can add events to controls. An event is something that happens when an action is performed. Probably the most common action is the clicking of a button on a form.

In web forms, you can add code to the corresponding aspx.cd file. This code can be used to perform certain actions when a button is pressed on the form. This is generally the most common event in Web Forms. Let's see how we can achieve this.

We are going to make this simple. Just add an event to the button control to display the name which was entered by the user. Let's follow the below steps to achieve this.

Step 1) First you have to double click the Button on the Web Form. This will bring up the event code for the button in Visual Studio.

ASP.Net - Intro, Life Cycle & Hello World Program

The btnSubmit_Click event is automatically added by Visual Studio, when you double click the button in the web forms designer.

Step 2) Let's now add code to the submit event to display the name textbox value and the location chosen by the user.

ASP.Net - Intro, Life Cycle & Hello World Program

Code Explanation:-

  1. The above line of code does the most simplest thing. It takes the value of the Name textbox control and sends it to the client via the Response object. So if you want to enter the string "Guru99" in the name text box , the value of txtName.Text would be 'Guru99'.
  2. The next line of code takes the selected value of the listbox via the property 'lstLocation.SelectedItem.text'. It then writes this value via the Response.Write method back to the client.
  3. Finally, we make all the controls on the form as invisible. If we don't do this , all the controls plus our response values will be displayed together.

    Normally, when a person enters all the information on the form such as the Name , location , Gender, etc. The next page shown to the user should only have the information which was not entered. The user does not want to see the Name , Gender , location controls again. But ASP.Net does not know this , and hence, by default, it will again show all the controls when the user clicks the Submit button. Hence, we need to write code to ensure all the controls are hidden so that the user just sees the desired output.

One you make the above changes, you will see the following output

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

In the Output screen, carry out the following steps

  1. Give a name of Guru99 in the name textbox
  2. Choose a location in the listbox of Bangalore
  3. Click on the Submit button

ASP.Net - Intro, Life Cycle & Hello World Program

Once you do this , you will see 'Guru99' and the location 'Bangalore' is displayed on the page.

ASP Net Session Management

The HTTP protocol on which all web applications work is a stateless protocol. By stateless, it just means that information is not retained from one request to another.

For instance, if you had a login page which has 2 textboxes, one for the name and the other for the password. When you click the Login button on that page, the application needs to ensure that the user name and password gets passed onto the next page.

In ASP.Net, this is done in a variety of ways. The first way is via a concept called ViewState. This is wherein ASP.Net automatically stores the contents of all the controls. It also ensures this is passed onto the next page. This is done via a property called the Viewstate.

It is not ideal for a developer to change anything in the view state. This is because it should be handled by ASP.Net only.

The other way is to use an object called a "Session Object." The Session object is available throughout the lifecycle of the application. You can store any number of key-value pairs in the Session object. So on any page, you can store a value in the Session object via the below line of code.

Session["Key"]=value

This stores the value in a Session object and the 'key' part is used to give the value a name. This allows the value to be retrieved at a later point in time. To retrieve a value, you can simply issue the below statement.

Session["Key"]

In our example, we are going to use the Session object to store the name entered in the name textbox field in the page. We are then going to retrieve that value and display it on the page accordingly. Let's add the below code to the Demo.aspx.cs file.

ASP.Net - Intro, Life Cycle & Hello World Program

Code Explanation:-

  1. The first line of code takes the value of the Name textbox control and stores it in the Session object. By specifying the code of Session["Name"] , we are giving the property a name called "Name." By specifying a name for the property , it becomes easier to retrieve it at a later point in time.
  2. The next line of code retrieves the stored value from the Session object. It then writes this value via the 'Response.Write' method back to the client.
  3. Finally, we make all the controls on the form as invisible. If we don't do this , all the controls plus our response values will be displayed together.

One you make the above changes, you will see the following output

Output:-

ASP.Net - Intro, Life Cycle & Hello World Program

From the output, you can see that the Session value of name was retrieved and displayed in the browser.

Summary:

  • ASP.Net is a development language used for constructing web-based applications. ASP.Net is designed to work with the standard HTTP protocol.
  • In ASP.Net, you can add the standard controls to a form such as labels, textboxes, listboxes, etc.
  • Each control can have an event associated with it. The most common event is the button click event. This is used when information needs to be submitted to the web server.
  • Session management is a way in ASP.net to ensure that information is passed over from one page to the other.
  • The view state property of a page is used to automatically pass the information of controls from one page to the other.
  • The 'Session' object is used to store and retrieve specific values within a web page.

Creating Asp.net Controls, Webforms and Web config file

In ASP.Net, it is possible to create re-usable code. The re-usable code can be used in many places without having the need to write the code again.

The re-usable code helps in reducing the amount of time spent by the developer after writing the code. It can be done once and reused at multiple places.

In this tutorial, you will learn-

Creating Asp.Net Controls

ASP.Net has the ability to create Web controls. These controls contain code which can be re-used. It can be used across application as per the requirement.

Let's take a look at an example of how we can create a web user control in ASP.Net

In our example,

  • We are going to create a web control.
  • It will be used to create a header component.
  • It will contain the below mentioned text.

    "Guru99 Tutorials

    "This Tutorial is for ASP.Net"

Let's work with our current web application created in the earlier sections. Let's follow the below steps to create a Web user control.

Step 1) The first step is to create a web user control and add it to our Visual Studio Solution.

Creating Asp.net Controls, Webforms and Web config file

  1. Go to the Solution Explorer in Visual Studio and right click the DemoApplication Solution
  2. Choose the menu item Add->New Item

Step 2) In the next step, we need to choose the option of creating a web user control

Creating Asp.net Controls, Webforms and Web config file

  1. In the project dialog box, we can see various options for creating different types of components. Click the "Web" option on the left-hand side.
  2. When we click the "Web" option, you see an option for "Web Forms User control." Click this option.
  3. We then give a name for the Web Control "Guru99Control".
  4. Finally, click the 'Add' button to let Visual Studio add the web user control to our solution.

You will the see the "Guru99Control" added to the solution.

Creating Asp.net Controls, Webforms and Web config file

Step 4) Now it's time to add the custom code to the Web user control. Our code will be based on pure HTML syntax. Add the following code to the 'Guru99Control.ascx' file

Creating Asp.net Controls, Webforms and Web config file

Code Explanation:-

  1. In our Web Control file, we are first creating a table element. This will be used to hold 2 rows of text which will be used to display
  • "Guru99 Tutorials" and
  • "This Tutorial is for ASP.Net."
  1. Next, we define our first table row and put the text as "Guru99 Tutorials."
  2. We then define our second table row and put the text as "This Tutorial is for ASP.Net."

NOTE: Now we cannot execute this code and show the output. The only way to see if this works is to include it in our application (aspx file). We will see this in the sub-sequent topic.

Registering a User Controls on a ASP.NET web forms

In the earlier section, we saw how we can create a custom web control. This can be used to display the following two lines in a web form

  • "Guru99 Tutorials"
  • "This Tutorial is for ASP.Net."

Once the custom 'control' is created, we need to use it in our web application. The first step is to register the component in our application (Demo.aspx). This is the pre-requisite to use in any custom web control in an ASP.Net application.

Creating Asp.net Controls, Webforms and Web config file

Let's look at how we can achieve this. The below steps are a continuation to the previous section. In the previous section, we have created our custom control. In this section, we will use the control in our Demo.aspx web form.

First, we will register our custom 'control' into the Demo.aspx file.

Step 1) Ensure that you are working on the demo.aspx file. It is in this file that the web user control will be registered. This can be done by double-clicking the demo.aspx file in the Solution explorer of your .Net solution.

Creating Asp.net Controls, Webforms and Web config file

Once you double click the form, you will probably see the below code in the form. This is the default code added by Visual Studio when a web form is added to an ASP.Net project.

The default code consists of steps, which are required to ensure that the form can run as an ASP.Net web form in the browser.

Creating Asp.net Controls, Webforms and Web config file

Step 2) Now let's add our code to register the user control. The screenshot below shows registration of the user control to the above basic code.

Creating Asp.net Controls, Webforms and Web config file

Code Explanation:-

  1. The first step is to register the web user control. This comprises of the below basic parameters
    1. The 'Register' keyword is used to register the web user control.
    2. The src parameter is used to define the name of the control, which in our case is Guru99Control.ascx.
    3. The tagname and Tagprefix are individual names given to the control. This is done so that they can references in HTML pages as a normal HTML control.
  2. Next, we reference our Web user control via the TagPrefix:TagName which was assigned earlier. The TagPrefix:TagName is an indicator that we want to use our custom web control. When the page is processed by the web server, you can see we have used the TWebControl:WebControl tag. It will then process the 'Guru99Control' accordingly.

    In our example, it is TWebControl:WebControl.

    1. An optional ID is given to the control of "Header". It's generally a good practice to give an ID to an HTML control.
    2. Finally, the runat=server attribute so that the control will run on the web server. For all ASP.Net controls, this is the default attribute. All ASP.Net controls (including custom controls) have to be run on the server. Their output is then sent from the server to the client and displayed in the browser accordingly.

When the above code is set, and the project is executed using Visual Studio. You will get the below output.

Output:-

 

Creating Asp.net Controls, Webforms and Web config file

The output message displayed in the browser shows that the web user control was successfully executed.

Registering asp.net controls globally in the web config configuration file asp

Sometimes one might want to use user controls in multiple pages in a .Net application. At this point, you don't want to keep on registering user controls on each and every ASP.Net page.

  • In .Net you can carry out the registration in the 'web.config' file.
  • The web.config file is a common configuration file used by all web pages in .Net project.
  • It contains necessary configuration details for the ASP.Net web project. For example, one common configuration in the web.config file is the target framework parameter.
  • This parameter is used to identify the .Net framework version used by the application.

Below is a snapshot of the default code in the web.config file. The highlighted part is the target framework part.

Creating Asp.net Controls, Webforms and Web config file

Let's see how we can register our Guru99Control in the web.config file.

Step 1) Open the web.config file from solution explorer by double clicking the file.

Creating Asp.net Controls, Webforms and Web config file

When you open the web.config file, you might see the below configuration. The 'web.config' is added automatically by Visual Studio when the project is created. This is the basic configuration required to make the ASP.Net project work properly.

Creating Asp.net Controls, Webforms and Web config file

Step 2) Now let's register our component in the web.config file. We need to add the below lines for that.

Creating Asp.net Controls, Webforms and Web config file

The registration comprises of the below sub steps

  1. Add a tag called <pages>. It means all the configuration for the controls will be applicable to all the ASP.Net pages in the solution.
  2. The <controls> tag means that you are adding a configuration for the user control.
  3. Then we register the user control with the add tag. The remaining parameters of tagPrefix, tagName and src remain the same as before.

Step 3) Remember to go the 'demo.aspx' page and remove the lines for control, which had the registration of the Guru99 component. If you don't perform this step, then the 'Guru99Control.ascx' file will be executed from the 'demo.aspx' file instead of 'web.config' file.

Creating Asp.net Controls, Webforms and Web config file

The above code is set, and the project is executed using Visual Studio. You will get the below output.

Output:-

Creating Asp.net Controls, Webforms and Web config file

The output message shows that the web user control was successfully executed.

 

Adding public properties to a web control

A property is a key-value pair associated with any control. Let's take an example of the simple <div> HTML tag. A screenshot of how the tag looks like is shown below.

Creating Asp.net Controls, Webforms and Web config file

The 'div' tag is used to create a section in any HTML document. The 'div' tag has a property called a style property. This can be used to give a different style to the text displayed in the div tag. Normally you would see the code for the div tag as shown below.

<div style="color:#0000FF">

So the color attribute is nothing but a key value pair which gives more information on the tag itself. In the above case, the key name is 'style' and the key value is 'color:#0000FF'.

Similarly, for user controls, you can create your own properties that describe the control.

Let's take a simple example and build upon our 'Guru99Control' created in the earlier sections.

In our example, we are going to add a simple integer property called MinValue. This value would represent the minimum number of characters in the text displayed in the user control.

Let's carry out the below-mentioned steps to get this in place.

Step 1) Open the Guru99Control.ascx file. Add the code for adding the MinValue property.

Creating Asp.net Controls, Webforms and Web config file

Code Explanation:-

The script runat=server attribute is used to indicate that we are adding some .Net specific code and that it needs to be run on the web server.

This is required for processing any property added to the user control. We then add our property MinValue, and give it a default value of 0.

Step 2) Now let's reference this property in our demo.aspx file. All we are doing now is just referencing the MinValue property and assigning a new value of 100.

Creating Asp.net Controls, Webforms and Web config file

NOTE: - When you run this code, it will not show any output. This is because the output falls under 100 character limit.

Summary

  • ASP.Net has the ability to create user controls. User controls are used to have code which is used multiple times across an application. The user control can then be reused across the application.
  • The user control needs to be registered on the ASP.Net page before it can be used.
  • To use user control across all pages in an application, register it into the web.config file.
  • Properties can also be added to a web user control.

Insert, Update and Delete database records in Asp.Net

Accessing Data from a database is an important aspect of any programming language. It is necessary for any programming language to have the ability to work with databases.

ASP.Net has the ability to work with different types of databases. It can work with the most common databases such as Oracle and Microsoft SQL Server.

It also has the ability to work with new forms of databases such as MongoDB and MySQL.

In this tutorial, you will learn-

Fundamentals of Database connectivity

ASP.Net has the ability to work with a majority of databases. The most common being Oracle and Microsoft SQL Server. But with every database, the logic behind working with all of them is mostly the same.

In our examples, we will look at working with the Microsoft SQL Server as our database. For learning purposes, one can download and use the Microsoft SQL Server Express Edition. This is a free database software provided by Microsoft.

While working with databases, the following concepts which are common across all databases.

  1. Connection – To work with the data in a database, the first obvious step is the connection. The connection to a database normally consists of the below-mentioned parameters.
    1. Database name or Data Source – The first important parameter is the database name. Each connection can only work with one database at a time.
    2. Credentials – The next important aspect is the 'username' and 'password'. This is used to establish a connection to the database.
    3. Optional parameters - You can specify optional parameters on how .net should handle the connection to the database. For example, one can specify a parameter for how long the connection should stay active.
  2. Selecting data from the database – Once the connection is established, data is fetched from the database. ASP.Net has the ability to execute 'sql' select command against the database. The 'sql' statement can be used to fetch data from a specific table in the database.
  3. Inserting data into the database – ASP.Net is used to insert records into the database. Values for each row that needs to be inserted in the database are specified in ASP.Net.
  4. Updating data into the database – ASP.Net can also be used to update existing records into the database. New values can be specified in ASP.Net for each row that needs to be updated into the database.
  5. Deleting data from a database – ASP.Net can also be used to delete records from the database. The code is written to delete a particular row from the database.

Ok, now that we have seen the theory part of each operation. Now, let's see how to perform database operations in ASP.Net.

Database Connections in .Net

Let's now look at the code, which needs to be kept in place to create a connection to a database. In our example, we will connect to a database which has the name of Demodb. The credentials used to connect to the database are given below

  • User name – sa
  • Password – demo123

Let's work with our current web application created in the earlier sections.

  • Start adding database operations to it.
  • Our example look's at establishing a simple connection. This connection is made to the Demodb database. This is done when the page is first launched.
  • When the connection is established, a message will be sent to the user. The message will indicate that the connection has been established.

Let's follow the below-mentioned steps to achieve this.

Step 1) Let's first ensure that you have your web application (DemoApplication) opened in Visual Studio. Double click the 'demo.aspx.cs' file to enter the code for the database connection.

Insert, Update and Delete database records in Asp.Net

 

Step 2) Add the below code which will be used to establish a connection to the database.

Insert, Update and Delete database records in Asp.Net

Code Explanation:-

  1. The first step is to create variables. It will be used to create the connection string and the connection to the SQL Server database.
  2. The next step is to actually create the connection string. The connection string consists of the following parts
  • Data Source – This is the name of the server on which the database resides. In our case, it resides on a machine called WIN- 50GP30FGO75.
  • The Initial Catalog is used to specify the name of the database
  • The UserID and Password are the credentials required to connect to the database.
  1. Next, we assign the connecting string to the variable 'cnn'.
  • The variable cnn is of type SqlConnection. This is used to establish a connection to the database.
  • SqlConnection is a class in ASP.Net, which is used to create a connection to a database.
  • To use this class, you have to first create an object of this class. Hence, here we create a variable called 'cnn' which is of the type SqlConnection.
  1. Next, we use the open method of the cnn variable to open a connection to the database. We display a message to the user that the connection is established. This is done via the 'response.write' method. We then close the connection to the database.

When the above code is set, and the project is executed using Visual Studio. You will get the below output. Once the form is displayed, click the Connect button.

Output:-

Insert, Update and Delete database records in Asp.Net

The output message displayed in the browser will show that the connection to the database is made.

Asp .net access database

To show data accessed using Asp.Net, let us assume the following artifacts in our database.

  1. A table called demotb. This table will be used to store the ID and names of various Tutorials.
  2. The table will have two columns, one called "TutorialID" and the other called "TutorialName."
  3. For the moment, the table will have two rows as shown below.

TutorialID

TutorialName

1

C#

2

ASP.Net

Let's change the code, so that we can query for this data and display the information on the web page itself. Note that the code entered is in continuation to that written for the data connection module.

Step 1) Let's split the code into two parts,

  • The first part will be to construct our "select" statement. It will be used to read the data from the database.
  • We will then execute the "select" statement against the database. This will fetch all the table rows accordingly.

Insert, Update and Delete database records in Asp.Net

Code Explanation:-

  1. The first step is to create the following variables
  • SQLCommand – The 'SQLCommand' is a class defined within C#. This class is used to perform operations of reading and writing into the database. Hence, the first step is to make sure that we create a variable type of this class. This variable will then be used in subsequent steps of reading data from our database.
  • The DataReader object is used to get all the data specified by the SQL query. We can then read all the table rows one by one using the data reader.
  • We then define two string variables. One is "SQL" to hold our SQL command string. The next is the "Output" which will contain all the table values.
  1. The next step is to actually define the SQL statement. This will be used against our database. In our case, it is "Select TutorialID, TutorialName from demotb". This will fetch all the rows from the table demotb.
  2. Next, we create the command object which is used to execute the SQL statement against the database. In the SQL command, you have to pass the connection object and the SQL string.
  3. Next, we will execute the data reader command, which will fetch all the rows from the demotb table.
  4. Now that we have all the rows of the table with us, we need a mechanism to access the row one by one.
  • For this, we will use the 'while' statement.
  • The 'while' statement will be used to access the rows from the data reader one at a time.
  • We then use the 'GetValue' method to get the value of TutorialID and TutorialName.

Step 2) In the final step, we will just display the output to the user. Then we will close all the objects related to the database operation.

 

Insert, Update and Delete database records in Asp.Net

Code Explanation:-

  1. We will continue our code by displaying the value of the Output variable. This is done using the Response.Write method.
  2. We finally close all the objects related to our database operation. Remember this is always a good practice.

When the above code is set, and the project is run using Visual Studio, you will get the below output.

Output:-

Insert, Update and Delete database records in Asp.Net

From the output, you can clearly see that the program was able to get the values from the database. The data is then displayed in the browser to the user.

Insert Database Record

Just like Accessing data, ASP.Net has the ability to insert records into the database as well. Let's take the same table structure used for inserting records.

TutorialID TutorialName
1 C#
2 ASP.Net

Let's change the code in our form, so that we can insert the following row into the table

TutorialID TutorialName
3 VB.Net

Step 1) As the first step let's add the following code to our program. The below code snippet will be used to insert an existing record in our database.

Insert, Update and Delete database records in Asp.Net

Code Explanation:-

  1. The first step is to create the following variables
    1. SQLCommand – This data type is used to define objects. These objects perform SQL operations against a database. This object will hold the SQL command which will run against our SQL Server database.
    2. The DataAdapter object is used to perform insert, delete and update SQL commands
    3. We then define a string variable, which is "SQL" to hold our SQL command string.
  2. The next step is actually to define the SQL statement, which will be used against our database. In our case, we are issuing an insert statement. This will insert the record of TutorialID=1 and TutorialName=VB.Net
  3. Next, we create the command object which is used to execute the SQL statement against the database. In the SQL command, you have to pass the connection object and the SQL string
  4. In our data adapter command,
  • Associate the insert SQL command to the adapter.
  • Then issue the 'ExecuteNonQuery' method. This is used to execute the Insert statement against our database.
  • The 'ExecuteNonQuery' method is used in C# to issue any DML statements (insert, delete and update operation) against the database.
  • To issue any table statements in ASP.Net, one need's to use the 'ExecuteNonQuery' method.
  1. We finally close all the objects related to our database operation. Remember this is always a good practice.

Step 2) As a second step, let's add the same code as in the Accessing data section. This is to display the recent table data in the browser. For that, we will add the below code to the demo.aspx.cs file.

Insert, Update and Delete database records in Asp.Net

When the above code is set, and the project is executed in Visual Studio, you will get the below output.

Output:-

Insert, Update and Delete database records in Asp.Net

In the browser window, you will see that the rows was successfully inserted in the database.

Update Database Record

ASP.Net has the ability to update existing records from a database. Let's take the same table structure which was used above for the example to insert records.

TutorialID

 

TutorialName

1

C#

2

ASP.Net

3

VB.Net

Let's change the code in our form, so that we can update the following row. The old row value is TutorialID as "3" and Tutorial Name as "VB.Net". Which we will update it to "VB.Net complete" while the row value for Tutorial ID will remain same. Old row

TutorialID TutorialName
3 VB.Net

New row

TutorialID TutorialName
3 VB.Net complete

Step 1) As the first step let's add the following code to our program. The below code snippet will be used to update an existing record in our database.

Insert, Update and Delete database records in Asp.Net

Code Explanation:-

  1. The first step is to create the following variables
    1. SQLCommand – his data type is used to define objects to perform SQL operations against a database. This object will hold the SQL command which will run against our SQL Server database.
    2. The dataadapter object is used to perform insert, delete and update SQL commands
    3. We then define a string variable, which is SQL to hold our SQL command string.
  2. The next step is actually to define the SQL statement which will be used against our database. In our case, we are issuing an 'update' statement. This will update the Tutorial name to "VB.Net Complete". The TutorialID will remain unchanged, and the value will be 3.
  3. Next, we will create the command object. This is used to execute the SQL statement against the database. In the SQL command, you have passed the connection object and the SQL string
  4. In our data adapter command, we now associate the insert SQL command to our adapter. We then issue the ExecuteNonQuery method. This is used to execute the Update statement against our database.
  5. We finally close all the objects related to our database operation. Remember this is always a good practice.

Step 2) As a second step, let's add the same code as in the Accessing data section. This is to display the recent table data in the browser. For that, we will add the below code

Insert, Update and Delete database records in Asp.Net

When the above code is set, and the project is executed using Visual Studio, you will get the below output.

Output:-

Insert, Update and Delete database records in Asp.Net

In the browser window, you will see that the rows were successfully updated in the database.

Delete Database Record

ASP.Net can delete existing records from a database. Let's take the same table structure which was used above for the example to delete records.

TutorialID

TutorialName

1

C#

2

ASP.Net

3

VB.Net complete

Let's change the code in our form, so that we can delete the following row

TutorialID

TutorialName

3

VB.Net complete

So let's add the following code to our program. The below code snippet will be used to delete an existing record in our database.

Step 1) As the first step let's add the following code to our program. The below code snippet will be used to delete an existing record in our database.

Insert, Update and Delete database records in Asp.Net

Code Explanation:-

  1. The Key difference in this code is that we are now issuing the delete SQL statement. The delete statement is used to delete the row in the demotb table in which the TutorialID has a value of 3.
  2. In our data adapter command, we now associate the insert SQL command to our adapter. We also issue the 'ExecuteNonQuery' method which is used to execute the delete statement against our database.

Step 2) As a second step, let's add the same code as in the Accessing data section. This is to display the recent table data in the browser. For that, we will add the below code.

Insert, Update and Delete database records in Asp.Net

When the above code is set, and the project is executed using Visual Studio, you will get the below output.

Output:-

Insert, Update and Delete database records in Asp.Net

Connecting Asp.net Controls to Data

We have seen how we can use ASP.Net commands such as SQLCommand and SQLReader to fetch data from a database. We also saw how we can read each row of the table display it on the web page.

There are methods available to link controls directly to different fields in the table. At the moment, only the below controls can be bound to an ASP.Net application

  1. CheckboxList
  2. RadioButtonList
  3. DropDownlist
  4. Listbox

So let's see an example of how we can use control binding in ASP.Net. Here we will take a listbox example. Let's say we have the following data in our database.

TutorialID

TutorialName

1

C#

2

ASP.Net

3

VB.Net complete

Let's use the Listbox control and see how it can automatically pick up the data from our Demotb table.

Let's follow the below-mentioned steps to achieve this.

Step 1) Construct the basic web form. From the toolbox in Visual Studio, drag and drop 2 components- labels and Listboxes. Then carry out the following substeps;

  1. Put the text value of the first label as TutorialID
  2. Put the text value of the second label as TutorialName

Below is how the form would look like once the above-mentioned steps are performed.

Insert, Update and Delete database records in Asp.Net

Step 2) The next step is to start connecting each listbox to the database table.

  1. First, click on the Listbox for Tutorial ID. This will bring up another dialog box to the side of the control.
  2. From the dialog box, we need to click on the option of Choose Data source.

Insert, Update and Delete database records in Asp.Net

Step 3) You will then be presented with a dialog box. This can be used to create a new data source. The data source will represent a connection to the database. Choose the option of 'New data source'.

Insert, Update and Delete database records in Asp.Net

Step 4) The below screen will be prompted after choosing the new data source in the last step. Here we need to mention the type of data source we want to create.

  1. Choose the database option to work with an SQL Server database.
  2. Now we need to give a name to our data source. Here we are giving it a name of DemoDataSource.
  3. Finally, we click the 'OK' button to proceed to the next screen.

Insert, Update and Delete database records in Asp.Net

Step 5) Now we need to create a connection to our database. In the next screen, click on the New Connection button

Insert, Update and Delete database records in Asp.Net

Step 6) Next you need to add the credentials to connect to the database.

  1. Choose the server name on which the SQL Server resides
  2. Enter the user id and password to connect to the database
  3. Choose the database as 'demotb'
  4. Click the 'OK' button.

Insert, Update and Delete database records in Asp.Net

Step 7) In the next screen, you will be able to see the Demotb table. Just click on the Next button to accept the default setting.

Insert, Update and Delete database records in Asp.Net

Step 8) You will now be able to test the connection on the next screen.

  1. Click on the Test Query button to just see if you are able to get the values from the table
  2. Click the Finish button to complete the wizard.

Insert, Update and Delete database records in Asp.Net

Step 9) Now in the final screen, you can click the 'OK' button. This will now bind the TutorialID listbox to the TutorialID field name in the 'demotb' table.

Insert, Update and Delete database records in Asp.Net

Step 10) Now it's time to bind the Tutorial Name listbox to the Tutorial Name field.

  1. First, click on the Tutorial Name Listbox.
  2. Next, Choose on Data Source in the dialog box which appears at the side of the Listbox.

Insert, Update and Delete database records in Asp.Net

Step 11) You will already see the DemoDataSource when choosing the Data Source in the next screen.

  1. Choose the DemoData Source
  2. Click on the OK button.

Insert, Update and Delete database records in Asp.Net

If all the above steps are executed as shown, you will get the below-mentioned output.

Output:-

Insert, Update and Delete database records in Asp.Net

From the output, you can see that the listboxes display the Tutorial ID and Tutorial Names respectively

Summary

  • ASP.Net can work with databases such as Oracle and Microsoft SQL Server.
  • ASP.Net has all the commands which are required to work with databases. This involves establishing a connection to the database. You can perform operations such as select, update, insert and delete.
  • The datareader object in ASP.Net is used to hold all the data returned by the database. The While loop in ASP.net can be used to read the data rows one at a time.
  • The data adapter object is used to perform SQL operations such as insert, delete, and update.
  • ASP.Net can bind controls to the various fields in a table. They are bound by defining a data source in ASP.Net. The data source is used to pull the data from the database and populate them in the controls.

Asp.Net - Tracing, Debugging, Error Handling

In any application, errors are bound to occur during the development process. It is important to be able to discover errors at an early stage.

In Visual Studio, it is possible to do this for ASP.Net applications. Visual Studio is used for Debugging and has error handling techniques for ASP.Net. We will look into all of these aspects in detail further.

In this tutorial, you will learn-

ASP.NET Debugging

Debugging is the process of adding breakpoints to an application. These breakpoints are used to pause the execution of a running program. This allows the developer to understand what is happening in a program at particular point of time.

Let's take an example of a program. The program displays a string "We are debugging" to the user. Suppose when we run the application, for some reason, the string is not displayed. To identify the problem we need to add a breakpoint. We can add a breakpoint to the code line which displays the string. This breakpoint will pause the execution of the program. At this point, the programmer can see what is possibly going wrong. The programmer rectifies the program accordingly.

Here in the example, we will use our 'DemoApplication' that was created in earlier chapters. In the following example, we will see

  • How to make the demo application display a string.
  • How to add breakpoints to an application.
  • How to debug the application using this breakpoint.

Step 1) Let's first ensure we have our web application open in Visual Studio. Ensure the DemoApplication is open in Visual Studio.

Asp.Net - Tracing, Debugging, Error Handling

Step 2) Now open the Demo.aspx.cs file and add the below code line.

  • We are just adding the code line Repsonse.Write to display a string.
  • So when the application executes, it should display the string "We are debugging" in the web browser.

Asp.Net - Tracing, Debugging, Error Handling

Step 3) Now let's add a breakpoint. A breakpoint is a point in Visual Studio where you want the execution of the program to stop.

Asp.Net - Tracing, Debugging, Error Handling

  1. To add a breakpoint, you need to click the column where you want the breakpoint to be inserted. So in our case, we want our program to stop at the code line "Response.Write". You don't need to add any command to add a breakpoint. You just need to click on the line on which you want to add a breakpoint.
  2. Once this is done, you will notice that the code gets marked in red. Also, a red bubble comes up in the column next to the code line.

Note: - You can add multiple breakpoints in an application

Step 4) Now you need to run your application using Debugging Mode. In Visual Studio, choose the menu option Debug->Start Debugging.

 

Asp.Net - Tracing, Debugging, Error Handling

Output:-

Asp.Net - Tracing, Debugging, Error Handling

When you perform all the steps correctly, the execution of the program will break. Visual Studio will go to the breakpoint and mark the line of code in yellow.

Now, if the programmer feels that the code is incorrect, the execution can be stopped. The code can then be modified accordingly. To continue proceeding the program, the programmer needs to click the F5 button on the keyboard.

Application Tracing

In Application tracing, we can see how web pages work within an application. This is a feature available in Visual Studio.

Application tracing allows one to see if any pages requested results in an error. When tracing is enabled, an extra page called trace.axd is added to the application. (See image below). This page is attached to the application. This page will show all the requests and their status.

Asp.Net - Tracing, Debugging, Error Handling

Let's look at how to enable tracing for an application.

Step 1) Let's work on our 'DemoApplication'. Open the web.config file from the Solution Explorer.

Asp.Net - Tracing, Debugging, Error Handling

Step 2) Add the below line of code to the Web.config file.

The trace statement is used to enable tracing for the application.

  • The 'requestLimit' in trace statement is used. It specifies the number of page requests that has to be traced.
  • In our example, we are giving a limit of 40. We give limit because a higher value will degrade the performance of the application.

Asp.Net - Tracing, Debugging, Error Handling

Run the "demoapplication" in Visual Studio.

Output:-

Asp.Net - Tracing, Debugging, Error Handling

If you now browse to the URL – http://localhost:53003/trace.axd , you will see the information for each request. Here you can see if any errors occur in an application. The following types of information are shown in the above page

  1. The time of the request for the web page.
  2. The Name of the web page being requested.
  3. The status code of the web request. (status code of 200 means that the request is successful).
  4. The View details which you allows to view more details about the web request. An example of this is shown below. One important detailed information provided is the header information. This information shows what is the information sent in the header of each web request.

Asp.Net - Tracing, Debugging, Error Handling

 

Page Tracing

Page tracing shows all the general information about a web page when it is being processed. This is useful in debugging if a page does not work for any reason.

Visual Studio will provide detailed information about various aspects of the page. Information such as the time for each method that is called in the web request. For example, if your web application is having a performance issue, this information can help in debugging the problem. This information is displayed when the application run's in Visual Studio.

Let's look at how to enable tracing for an application at a page level.

Step 1) Let's work on our DemoApplication. Open the demo.aspx file from the Solution Explorer

Asp.Net - Tracing, Debugging, Error Handling

Step 2) Add the below line of code to enable page tracing. In the Page declaration, just append the line Trace="true". This code line will allow page level tracing.

Asp.Net - Tracing, Debugging, Error Handling

Run the application in Visual Studio.

Output:-

Asp.Net - Tracing, Debugging, Error Handling

Now when the web page Demo.aspx is displayed, you will get a whole lot of information about the page. Information such as the time for each aspect of the page lifecycle is displayed on this page.

ASP.NET Error Handling

In ASP.Net, you can have custom error pages displayed to the users. If an application contains any sort of error, a custom page will display this error to the user.

In our example, we are first going to add an HTML page. This page will display a string to the user "We are looking into the problem". We will then add some error code to our demo.aspx page so that the error page is shown.

Let's follow the below-mentioned steps

Step 1) Let's work on our DemoApplication. Let's add an HTML page to the application

  1. Right click on the DemoApplication in Solution Explorer
  2. Choose the menu option 'Add'->HTML Page

Asp.Net - Tracing, Debugging, Error Handling

Step 2) In the next step, we need to provide a name to the new HTML page.

  1. Provide the name as 'ErrorPage.'
  2. Click the 'OK' button to proceed.

Asp.Net - Tracing, Debugging, Error Handling

Step 3) The Errorpage will automatically open in Visual Studio. If you go to the Solution Explorer, you will see the file added.

 

Asp.Net - Tracing, Debugging, Error Handling

Add the code line "We are looking into the problem" to the HTML page. You don't need to close the HTML file before making the change to the web.config file.

Asp.Net - Tracing, Debugging, Error Handling

Step 4) Now you need to make a change in the web.config file. This change will notify that whenever an error occurs in the application, the custom error page needs to be displayed.

The 'customErrors' tag allows to define a custom error page. The defaultRedirect property is set to the name of our custom error's page created in the previous step.

Asp.Net - Tracing, Debugging, Error Handling

Step 5) Now let's add some faulty code to the demo.aspx.cs page. Open this page by double clicking the file in Solution Explorer

Asp.Net - Tracing, Debugging, Error Handling

Add the below code to the Demo.aspx.cs file.

  • These lines of code are designed to read the lines of a text from a file.
  • The file is supposed to be located in the D drive with the name 'Example.txt.'
  • But in our situation, this file does not really exist. So this code will result in an error when the application runs.

Asp.Net - Tracing, Debugging, Error Handling

Now execute the code in Visual Studio and you should get the below output.

Output:-

Asp.Net - Tracing, Debugging, Error Handling

The above page shows that an error was triggered in the application. As a result, the Error.html page is displayed to the user.

ASP.NET Unhandled Exception

Even in the best of scenarios, there can be cases of errors which are just not forseen.

Suppose if a user browses to the wrong page in the application. This is something that cannot be predicted. In such cases, ASP.Net can redirect the user to the errorpage.html.

Let's see an example on this.

  • We are going to use our same 'DemoApplication' which has the Errorpage.html.
  • And we will try to view a web page which does not exist in our application.
  • We should be redirected to our ErrorPage.html page in this case. Let's see the steps to achieve this.

Step 1) Let's work on our DemoApplication. Open the Global.asax.cs file from the Solution Explorer

Asp.Net - Tracing, Debugging, Error Handling

NOTE: The global.asax.cs file is used to add code that will be applicable throughout all pages in the application.

Step 2) Add the below line of code to the global.asax.cs. These lines will be used to check for errors and display the ErrorPage.html page accordingly.

Asp.Net - Tracing, Debugging, Error Handling

Code Explanation:-

  1. The first line is the Application_Error event handler. This event is called whenever an error occurs in an application. Note that the event name has to be 'Application_Error'. And the parameters should be as shown above.
  2. Next, we define an object of the class type HttpException. This is a standard object which will hold all the details of the error. We then use the Server.GetLastError method to get all the details of the last error which occurred in the application.
  3. We then check if the error code of the last error is 404. (The error code 404 is the standard code returned when a user browses to a page which is not found). We then transfer the user to the ErrorPage.html page if the error code matches.

Now run the code in Visual Studio and you should get the below output

Output:-

Browse the page http://localhost:53003/Demo1.aspx . Remember that Demo1.aspx does not exist in our application. You will then get the below output.

Asp.Net - Tracing, Debugging, Error Handling

The above page shows that an error was triggered in the application. As a result, the Error.html page is displayed to the user.

Logging Application Errors

By logging application errors, it helps the developer to debug and resolve the error at a later point of time. ASP.Net has the facility to log errors. This is done in the Global.asax.cs file when the error is captured. During the capturing process, the error message can be written into a log file.

Let's see an example on this.

  • We are going to use our same DemoApplication which has the Errorpage.html.
  • And we will try to view a web page which does not exist in our application.
  • We should be redirected to our ErrorPage.html page in this case.
  • And at the same time, we will write the error message to a log file. Let's see the steps to achieve this.

Step 1) Let's work on our DemoApplication. Open the Global.asax.cs file from the Solution Explorer

Asp.Net - Tracing, Debugging, Error Handling

Step 2) Add the below line of code to the global.asax.cs. It will check for errors and display the ErrorPage.html page accordingly. Also at the same time, we will log the error details in a file called 'AllErrors.txt.' For our example, we will write code to have this file created on the D drive.

Asp.Net - Tracing, Debugging, Error Handling

Code Explanation:-

  1. The first line is to get the error itself by using the 'Server.GetLastError' method. This is then assigned to the variable 'exc'.
  2. We then create an empty string variable called 'str'. We get the actual error message using the 'exc.Message' property. The exc.Message property will have the exact message for any error which occurs when running the application. This is then assigned to the string variable.
  3. Next, we define the file called 'AllErrrors.txt.' This is where all the error messages will be sent. We write the string 'str' which contains all the error messages to this file.
  4. Finally, we transfer the user to the ErrorPage.html file.

Output:-

Browse the page http://localhost:53003/Demo1.aspx . Remember that Demo1.aspx does not exist in our application. You will then get the below output.

Asp.Net - Tracing, Debugging, Error Handling

And at the same time, if you open the 'AllErrors.txt' file you will see the below information.

Asp.Net - Tracing, Debugging, Error Handling

The error message can then be passed on to the developer at a later point in time for debugging purposes.

Summary

  • ASP.Net has the facility to perform debugging and Error handling.
  • Debugging can be achieved by adding breakpoints to the code. One then runs the Start with Debugging option in Visual Studio to debug the code.
  • Tracing is the facility to provide more information while running the application. This can be done at the application or page level.
  • At the page level, the code Trace=true needs to be added to the page directive.
  • At the application level, an extra page called Trace.axd is created for the application. This provides all the necessary tracing information.

Deploying a website on IIS

For users to access a website, it is required that the website is hosted on some sort of web server. There are different web servers available for different technologies. In .Net, the web server available is called Internet Information Services or IIS.

Once the web application is developed, it is then deployed on an IIS Server. This web application can then be accessed by the end users. There are two ways to deploy an application to the server, you will see both over here.

  • Using the File Copy method.
  • Using the Web publish method.

In this tutorial, you will learn-

What is IIS and Install IIS

IIS or Internet Information Server is the server used to host .Net web applications. IIS is normally installed on a Window Server.

The below diagram shows the process flow for an IIS Server.

Deploying a website on IIS

  1. The first part is the request sent by the user. The request will normally be a web page. An example could be http://example.com/Default.aspx .
  • Here 'example.com' is a web site hosted on the IIS Server.
  • 'Default.aspx' is a web page on the example.com web site.
  • So the user will enter the URL http://example.com/Default.aspx in the web browser. The request will then go to the IIS Server, which has the example.com application.
  1. Once the request comes to the IIS server, it is processed. The IIS Server will perform all the required operations as per request.
  2. Finally, the IIS Server sends the output back to the user. The output will generally be HTML content sent back to the user. This HTML content will be displayed in the web browser.

Let's look how we can install IIS on a Window Server.

Deploying a website on IIS

  • Once installed, the following steps need to be carried out for installing IIS.

Step 1) On Windows Server 2012, the default dashboard is shown as below.

  • The first step is to click on the 'Add roles and features' on the dashboard.
  • This allows one to install additional features on a server.

Deploying a website on IIS

Step 2) In the next screen, you need to click the Next button to proceed.

Deploying a website on IIS

Step 3) In the next step, we need to perform two sub steps

  1. The first is to choose the Role based or feature installation. This will allow us to perform the IIS Installation.
  2. Click the 'Next' button to proceed.

Deploying a website on IIS

Step 4) In the next screen, you will see the name of the server on which the installation is taking place. Click the Next button to proceed.

Deploying a website on IIS

Step 5) In the next step, we need to perform two sub steps

 
  1. Choose the Web server option. This will ensure that IIS gets installed.
  2. Click the 'Next' button to proceed.

Deploying a website on IIS

Step 6) In the subsequent screen, click the next button to proceed.

Deploying a website on IIS

Step 7) In the final screen, click the Install button to begin the installation.

Deploying a website on IIS

Once IIS has been installed, you can launch it, by going to search in Windows 2012.

  1. Enter the string 'inetmgr' which is the command for IIS.
  2. Then Internet Information Services Manager will come up. Click on this.

Deploying a website on IIS

After you click on the above link, IIS will open, and you will be presented with the below screen.

Deploying a website on IIS

In IIS, you will have an initial site setup called Default Web Site.

If you open up your browser and go to the URL http://localhost. You will see the below output. This URL mainly goes to the Default Web site shown in the previous screen. This is the default page which indicates that the IIS Server is up and running.

Deploying a website on IIS

Deploying to IIS via File copy

After developing a web application, the next important step is to deploy the web application. The web application needs to be deployed so that it can be accessed by other users. The deployment is done to an IIS Web server.

There are various ways to deploy a web application. Let's look at the first method which is the File copy.

We use the web application created in the earlier sections. Let's follow the below-mentioned steps to achieve this.

Step 1) Let's first ensure we have our web application 'DemoApplication' open in Visual Studio.

Deploying a website on IIS

Step 2) Open the 'Demo.aspx' file and enter the string "Guru 99 ASP.Net."

Deploying a website on IIS

 

Now just run the application in Visual Studio to make sure it works.

Output:-

Deploying a website on IIS

The text 'Guru 99 ASP.Net' is displayed. You should get the above output in the browser.

Step 3) Now it's time to publish the solution.

  1. Right click the 'DemoApplication' in the Solution Explorer
  2. Choose the 'Publish' Option from the context menu.

Deploying a website on IIS

It will open another screen (see step below).

Step 4) In the next step, choose the 'New Profile' to create a new Publish profile. The publish profile will have the settings for publishing the web application via File copy.

Deploying a website on IIS

Step 5) In the next screen we have to provide the details of the profile.

  1. Give a name for the profile such as FileCopy
  2. Click the OK button to create the profile

Deploying a website on IIS

Step 6) In this step, we specifically mention that we are going to Publish website via File copy.

  1. Choose the Publish method as File System.
  2. Enter the target location as C:\inetpub\wwwroot – This is the standard file location for the Default Web site in IIS.
  3. Click 'Next' button to proceed.

Deploying a website on IIS

Step 7) In the next screen, click the Next button to proceed.

Deploying a website on IIS

Step 8) Click the 'Publish' button in the final screen

Deploying a website on IIS

When all of the above steps are executed, you will get the following output in Visual Studio

Output:-

 

Deploying a website on IIS

From the output, you will see that the Publish succeeded.

Now just open the browser and go to the URL – http://localhost/Demo.aspx

Deploying a website on IIS

You can see from the output that now when you browse to http://localhost/Demo.aspx , the page appears. It also displays the text 'Guru 99 ASP.Net'.

Publishing the website

Another method to deploy the web application is via publishing a website. The key difference in this method is that

  • You have more control over the deployment.
  • You can specify to which Web site you want to deploy your application to.
  • For example, suppose if you had two websites WebSiteA and WebSiteB. If you use the Web publish method, you can publish your application to any website. Also, you don't need to know the physical path of the Web site.
  • In the FileCopy method, you have to know the physical path of the website.

Let's use the same Demo Application and see how we can publish using the "website publish method."

Step 1) In this step,

  1. Right click the 'DemoApplication' in the Solution Explorer
  2. Choose the Publish Option from the context menu.

Deploying a website on IIS

Step 2) In the next screen, select the 'New Profile' option to create a new Publish profile. The publish profile will have the settings for publishing the web application via Web Deploy.

Deploying a website on IIS

Step 3) In the next screen we have to provide the details of the profile.

  1. Give a name for the profile such as 'WebPublish'
  2. Click the 'OK' button to create the profile

Deploying a website on IIS

Step 4) In the next screen, you need to give all the details for the publish process

  1. Choose the Publish method as Web Deploy
  2. Select the server as Localhost
  3. Enter the site name as Default Website – Remember that this is the name of the website in IIS
  4. Enter the destination URL as http://localhost
  5. Finally, click the Next button to proceed

Deploying a website on IIS

Step 5) Click the 'Next' button in the following screen to continue

Deploying a website on IIS

Step 6) Finally, click the Publish button to publish the Web site

Deploying a website on IIS

When all of the above steps are executed, you will get the following output in Visual Studio.

Output:-

Deploying a website on IIS

From the output, you will see that the Publish succeeded.

Now just open the browser and go to the URL – http://localhost/Demo.aspx

Deploying a website on IIS

You can see from the output that now when you browse to http://localhost/Demo.aspx , the page appears. It also displays the text Guru 99 ASP.Net.

Summary

  • After an ASP.Net application is developed, the next step is that it needs to be deployed.
  • In .Net, IIS is the default web server for ASP.Net applications.
  • ASP.Net web applications can be deployed using File copy method.
  • ASP.Net web applications can also be deployed using Web Publish method.

How to Create and Run Asp.Net Unit Testing Project

Testing is an important aspect of any programming language. Testing for ASP.Net applications is possible with the help of Visual Studio.

Visual Studio is used to create test code. It is also used to run the test code for an ASP.Net application. In this way, it becomes simple to check for any errors in an ASP.Net application. In Visual Studio, the testing module comes as an out of box functionality. One can straightaway perform a test for an ASP.Net project.

In this tutorial, you will learn-

Introduction to testing for ASP.Net

The first level of testing an ASP.Net project is unit level testing. This test's the functionality of an application. The testing is conducted to ensure that the application behaves as expected. In ASP.Net, the first task is to create a test project in Visual Studio. The test project will contain the necessary code to test the application.

Let's consider the below web page. In the page, we have the message "Guru99 – ASP.Net" displayed. Now how can we confirm that the correct message is displayed when an ASP.Net project runs. This is done by adding a test project to the ASP.Net solution (used to develop web-based applications). This test project would ensure that the right message is displayed to the user.

How to Create and Run Asp.Net Unit Testing Project

Let's look into more detail now and see how we can work on testing in ASP.Net

Creating a .net unit Testing Project

Before we create a test project, we need to perform the below high-level steps.

  1. Use our 'DemoApplication' used in the earlier sections. This will be our application which needs to be tested.
  2. We will add a new class to the DemoApplication. This class will contain a string called 'Guru99 – ASP.Net.' This string will be tested in our testing project.
  3. Finally, we will create a testing project. This is used to test the ASP.Net application.

So let's follow the above high-level steps and see how to implement testing.

Step 1) Ensure the DemoApplication is open in Visual Studio.

Step 2) Let's now add a new class to the DemoApplication. This class will contain a string called 'Guru99 – ASP.Net.' This string will be tested in our testing project.

Follow below step to add a new class.

How to Create and Run Asp.Net Unit Testing Project

  1. In Visual Studio, right-click the 'DemoApplication' in the Solution Explorer.
  2. Choose the option Add->Class from the context menu.

Step 3) In this step,

How to Create and Run Asp.Net Unit Testing Project

  1. Give a name 'Tutorial.cs' for the new class.
  2. Click the 'Add' button to add the file to the DemoApplication.

Now, a new class is added to file "DemoApplication."

Step 4) Open the new Tutorial.cs file from "DemoApplication". Add the string "Guru99 – ASP.Net."

 

To open the file, double click on the Tutorial.cs file in the Solution Explorer.

How to Create and Run Asp.Net Unit Testing Project

The file will have some default code already written. Do not bother about that code, just add the below line of code.

How to Create and Run Asp.Net Unit Testing Project

Code Explanation:-

  1. The Name variable is of type string.
  2. Finally in the constructor of the Tutorial class, assign the value of the Name variable. The value is assigned to "Guru99 – ASP.Net"

Step 5) Now go to the demo.aspx file and add the lines of code to display the text "Guru99 – ASP.Net."

How to Create and Run Asp.Net Unit Testing Project

Code Explanation:-

  1. The first line create's an object of the class 'Tutorial'. This is the first step when working with classes and objects. The name given to the object is 'tp'.
  2. Finally we call 'tutorial.cs' from demo.aspx file. It displays the value of the Name variable.

When you run the above program in Visual Studio, you will get the following output.

Output:-

How to Create and Run Asp.Net Unit Testing Project

From the output, you see the message "Guru99 – ASP.Net" displayed.

Step 6) Now let's add our test project to the Demo Application. This is done with the help of Visual Studio.

How to Create and Run Asp.Net Unit Testing Project

  1. Right click the Solution – DemoApplication.
  2. In the context menu, choose the option 'New Project'.

Step 7) The step involves the addition of the Unit Test project to the demo application.

How to Create and Run Asp.Net Unit Testing Project

  1. Click on item type as 'Test' from the left-hand panel.
  2. Choose the item as 'Unit Test Project' from the list, which appears in the center part of the dialog box.
  3. Give a name for the test project. In our case, the name given is 'DemoTest'.
  4. Finally, click the 'OK' button.

You will eventually see the DemoTest project added to the solution explorer. With this, you can also see other files like UnitTest1.cs, properties, etc. are generated by default.

How to Create and Run Asp.Net Unit Testing Project

Running the Test Project

The test project created in the earlier section is used to test our ASP.Net application. In the following steps, we are going to see how to run the Test project.

  • The first step would be to add a reference to the ASP.Net project. This step is carried out so that the test project has access to the ASP.Net project.
  • Then we will write our test code.
  • Finally, we will run the test using Visual Studio.

Step 1) To test our Demo Application, first test project needs to reference the Demo Application. Add a reference to the Demo.aspx solution.

How to Create and Run Asp.Net Unit Testing Project

  1. Right click the Demo Test project
  2. From the menu choose the option of Add->Reference.

Step 2) The next step is to add a reference to the DemoApplication

How to Create and Run Asp.Net Unit Testing Project

  1. Select the Projects option from the left-hand side of the dialog box
  2. Click on the check box next to DemoApplication
  3. Click on the 'OK' button.

This will allow demotest project to test our DemoApplication.

Step 3) Now it's time to add the test code to our test project.

  • For this first double click on the UnitTest1 (UnitTest1 file is automatically added by Visual Studio when the Test project is created) file in the Solution Explorer.
  • This is the file which will be run to test the ASP.Net project.

How to Create and Run Asp.Net Unit Testing Project

You will see the below code added by Visual Studio in the UnitTest1.cs file. This is the basic code needed for the test project to run.

How to Create and Run Asp.Net Unit Testing Project

Step 4) The next step is to add the code which is used to test the string "Guru99 – ASP.Net."

 

How to Create and Run Asp.Net Unit Testing Project

  1. Create a new object called 'tp' of the type Tutorial
  2. The Assert.AreEqual method is used in .Net to test if a value is equal to something. So in our case, we are comparing the values of tp.Name to Guru99 – ASP.Net.

Step 5) Now let's run our test project. For this, we need to go to the menu option Test->Run->All Tests

How to Create and Run Asp.Net Unit Testing Project

Output:-

How to Create and Run Asp.Net Unit Testing Project

A test Explorer window will appear in Visual Studio. This will show the above result and display that a successful test was run in Visual Studio.

Summary

  • ASP.Net can add Unit Testing for applications.
  • To test an application, you need to add a Unit Test project to the ASP.Net solution.
  • All tests can be made to run in Visual Studio. A test explorer will show the results of all of the tests.

Link: https://www.guru99.com

Picture of System Administrator

AUACODE

by System Administrator - Saturday, 30 August 2014, 12:31 AM
 

 

 Por Dr. Mario Cabrera Avivar

¿Qué es AUACoDe y en qué se inspiró?

AUACoDe, Asociación Uruguayo Andaluza para la Cooperación y el Desarrollo, es una Asociación Civil sin fines de lucro; que se inspiró en un ser nacional con identidad y autoestima, respetuoso y orgulloso de su pasado, comprometido con su presente y proyectado hacia el futuro con una visión de un porvenir enmarcado en la ética de la vida.

¿Cuándo y quienes la gestaron y constituyeron?

Se   gestó en 1999, a iniciativa de su actual Presidente, Dr. Mario Cabrera Avivar, junto a un grupo de personas, provenientes de diversas actividades de vida, vinculadas a la cultura, el arte, las ciencias sociales y exactas, la educación y la tecnología; se constituyó formalmente en abril del 2000 y obtuvo su Personería Jurídica, por resolución del Sr. Ministro de Educación y Cultura, el 16 de enero del 2001, siendo registrada con el número 8593, en el folio 70 del libro 17.

¿Por qué y para qué la constituyeron?

Por nuestra condición de descendientes de españoles-andaluces, con orgullo y por mandato de sangre, con la conciencia y la convicción de la necesidad de trascender nuestros tiempos, desde el ámbito del estado uruguayo, caracterizado por tener una población, crisol de inmigrantes predominantemente españoles, en un contexto como el actual, en el que el fenómeno inmigratorio se ha revertido, por diversos motivos.

Para :

  • Reafirmar la contribución, de carácter abierta y universal, de los valores y el legado cultural andaluz a estas tierras, como parte del rico legado español, en base a los valores esenciales de España y sus Regiones, como los principales sustentos de nuestra Identidad, aún compartidos con otras corrientes migratorias (incluídas las autóctonas), como lo expresa el escudo de una de sus comunidades autónomas : "Andalucía por sí, para España y la Humanidad"
  • Potenciar nuestra Autoestima en base a actividades vinculantes intergeneracionales, interterritoriales interdisciplinarias e interorganizacionales.

¿Cuál es su Objeto Social?

"Fomentar, promover, realizar y apoyar, con independencia de cualquier corriente de pensamiento político, religioso o filosófico, actividades de cooperación y desarrollo, social, cultural, educativo, científico y tecnológico, a nivel nacional, regional e internacional...", entre Uruguay y España, prioritariamente con la Comunidad Andaluza y " fomentar la  inserción  de  jóvenes en las actividades proyectadas, como factor de cambio futuro, que promueva el desarrollo ambiental y humano saludables y reconozca a la cooperación, como prioridad estratégica para el fortalecimiento de las capacidades locales, nacionales, regionales e internacionales de Iberoamérica, a fin de poder contribuir con su desarrollo integral".

¿Cuándo y para qué se integró a la Federación de Instituciones Españolas o FIE?

Se integró, como miembro pleno de la FIE desde Junio/2001, para:

  • Compartir igualitaria y fraternalmente con todos sus miembros, el deseo y  la acción de pertenencia, desarrollo y grandeza para Uruguay y España. 
  • Complementar e interactuar sinérgicamente con todos los miembros y allegados afines a las instituciones de la FIE, sus actividades  principalmente culturales lúdicas.

¿Qué actividades ha desarrollado e impulsado, desde el año 2000?

  • Festejo del Día de Andalucía, el 28 de febrero.
  • Reuniones Ordinarias de Comisión Directiva(mensuales) y de Asamblea Ordinaria.
  • Actividades Profesionales de Proyectos, vinculado al quehacer de sus miembros socios, acordes con las siguientes  Áreas de Actividad.

¿Qué vínculos nacionales e internacionales ha generado?

Con personas e Instituciones Públicas y Privadas en Uruguay, la Región Iberoamericana, España, Italia, Alemania y con Organismos Transnacionales como OPS/OMS, Federación de Cruz Roja y Unión Europea.

¿Qué siente necesario apoyar?

La necesidad de información a la población general, en particular a los niños, jóvenes, madres y ancianos, para fortalecer su identidad, su autoestima y sus potencialidades para el desarrollo social sustentable, en base a una economía genuina, en pro de un bienestar general viviendo la vida con salud y alegría.

¿Cuál es la Sede Oficial, con quién y a dónde comunicarse ?

Su sede oficial está en el Ateneo de Montevideo, Plaza Cagancha 1157, donde se reune la Comisión Directiva,; pudiendo comunicarse también, con su Presidente, Dr. Mario Cabrera Avivar en la Dirección Postal: Cap.Videla 2891,CP 11600, Montevideo, Tel.709 4970, Cel.(096) 100 000 o al E-mail:auacode@gmail.com

¿Cómo y para qué asociarse?

Se puede asociar telefónicamente o por e-mail, brindando :Nombre completo, Nacionalidad, Tipo y Nº de Documento de Identidad, SIN MÁS COSTO, que aportar sus ideas y su tiempo, para hacer y desarrollar con nuestra Institución un punto de encuentro y proyección de nuestras ideas solidarias y de futuro, respetuosas de nuestro pasado y responsables con nuestro presente y futuro. 

 

Director de AUACODE: Dr. Mario Cabrera Avivar

Sitio Web/Campus Virtual: http://auacode.org

Picture of System Administrator

Auditoría (CALIDAD)

by System Administrator - Thursday, 9 May 2013, 1:10 AM
 

CONCEPTOS RELATIVOS A LA AUDITORÍA

Cliente de la auditoría: Organización o persona que solicita una auditoría.

Programa de la auditoría: Conjunto de una o más auditorías planificadas para un periodo de tiempo determinado y dirigidas hacia un propósito específico.

Auditado: Organización que es auditada.

Auditoría: Proceso sistemático, independiente y documentado para obtener evidencias de la auditoría y evaluarlas de manera objetiva con el fin de determinar la extensión en que se cumplen los criterios de auditoría.

Hallazgos de la auditoría: Resultados de la evaluación de la evidencia de la auditoría recopilada frente a los criterios de auditoría.

Criterios de auditoría: Conjunto de políticas, procedimientos o requisitos utilizados como referencia.

Equipo auditor: Uno o más auditores que llevan a cabo una auditoría.

Evidencia de la auditoría: Registros, declaraciones de hechos o cualquier otra información que son pertinentes para los criterios de auditoría y que son verificables.

Experto técnico: (Auditoría) persona que aporta experiencia o conocimientos específicos con respecto a la materia que se vaya a auditar.

Auditor: Persona con la competencia para llevar a cabo la auditoría.

Conclusiones de la auditoría: Resultado de una auditoría que proporciona el equipo auditor tras considerar los hallazgos de la auditoría.

Picture of System Administrator

Autenticación Multifactor de Usuarios

by System Administrator - Friday, 26 June 2015, 6:21 PM
 

Consejos para la Autenticación Multifactor de Usuarios

Más vieja que la propia web, la autenticación de múltiples factores es un método de tecnología de seguridad de TI que requiere que la gente proporcione múltiples formas de identificación o de información para confirmar la legitimidad de su identidad para una transacción en línea o con el fin de tener acceso a una aplicación corporativa. El objetivo de los métodos de autenticación multifactorial es aumentar la dificultad con la que un adversario puede explotar el proceso de inicio de sesión para vagar libremente por las redes personales o corporativas y así comprometer equipos de cómputo con el fin de robar información confidencial, o algo peor.

Please read the attached whitepaper.

Picture of System Administrator

Automated tests and continuous delivery

by System Administrator - Friday, 23 January 2015, 2:23 PM
 

CTO advocates automated tests and continuous delivery

by: James Denman

Automated testing and continuous development have become the driving force for CTO Andy Piper as Push Technologies evolves its middleware platform.

Andy Piper is CTO at London-based Push Technologies, which provides a Java-based middleware platform that helps U.K. developers working on applications that require a lot of messaging to a lot of users. Most of their clients publish statistical information for either financial entities (like stocks and bonds) or for online gambling. Piper has pushed his development team forward by espousing continuous delivery and automated testing.

 

When it comes to functional testing, Piper says everything has to be automated. "Manual tests are almost valueless," he said. Manual tests take too much time, and he said he needs tests that are quick, clear and repeatable. Those requirements naturally lead to automated tests. He also pointed out that there's practically zero user interface to a middleware platform, which removes a lot of the need for user experience testing.

Conducting performance tests is one area where Piper sees benefits to manual testing. He pointed to Gil Tene's research on latency at Azul and explained that for performance testing, he's not looking for average behavior; he's analyzing the effect of the outliers. He said that using tools like HdrHistogram and jHiccup and analyzing the results intuitively works better for his team than trying to set up reliable automated performance tests.

Piper said the important aspects of functional testing are maintaining quality and moving quickly. "It's about enabling the developers to make changes more confidently," he said, "so they work more efficiently." Automation is an important part of keeping up with the pace at which his developers are able to make changes and making sure they get the feedback they need as soon as possible. But managing a large battery of automated tests can be challenging. 

Some tests break bad

Most of the tests are very straightforward, according to Piper; they either pass or fail and the results are very accurate. However, some tests have a tendency to fail when they should pass -- or they fail for the wrong reason. He calls these tests Heisentests, after the Heisenberg uncertainty principle. These tests are "a bit of a bugbear" for Piper right now.

The Heisentests are tricky because they can't be trusted. A failed result may be accurate and require a developer to recheck the work and fix something. Or a failed result might mean that some detail is slightly different than expected and everything is actually working as it should. Developers don't appreciate being sent on a wild goose chase, especially when the supposed target is an imaginary flaw in their code.

The Heisentests are a problem that persists at Push Technologies for the same reason that technical debt persists at many organizations: There aren't enough staff hours to fix the misfiring tests and meet project deadlines. However, the problem has reached a point where it must be addressed, and Piper is starting by having his team sort out the good tests from the bad. He said he has some testers working to sort the tests using JUnit categories. This way his developers will know which tests to question right away, and the team will know which tests to overhaul when they have time to pay down the technical debt.

Continuously delivering value

The search for efficiency has led Push Technologies to adopt continuous delivery practices. Piper said they use Maven for source code and Jenkinsfor automation, which seems to be a popular combination. Right now, every change that his team commits is automatically merged into a new shippable version of the platform as soon as it passes the battery of automated tests.

Piper deliberately chose continuous delivery over continuous deploymentbecause "enterprise clients want to peg everything to particular releases." It's important for enterprise developers to update middleware at their own pace and to be able to rely on the platform to remain stable.

Push Technologies is working on a cloud release that will likely be aimed at midsize businesses. That version "will probably be more of a continuous deployment model," Piper said. He said that one of the challenges of moving to continuous development will be making sure all the code that goes into production is as hardened as it should be. "I love all my developers to death," he said, "But I'd still feel like I was being irresponsible if I don't keep a close eye on them."

Link: http://searchsoftwarequality.techtarget.com

Picture of System Administrator

Automating the accounts payable process

by System Administrator - Thursday, 4 September 2014, 1:09 PM
 

Automating the accounts payable process

The challenges of a paper-intensive AP process

A study carried out among people working in NHS Trusts to explore attitudes to the challenge to go paperless by 2018 shows very high awareness of the initiative. This awareness permeates all the groups surveyed—heads of Trust, healthcare professionals and IT decision-makers—all of whom are generally enthusiastic about it and recognise the broad range of benefits for their Trusts of going paperless, or at least paper light.

Please read the attached whitepaper

Picture of System Administrator

Automation Delay

by System Administrator - Wednesday, 22 February 2017, 1:54 PM
 

Automation Delay – And How To Prevent It

by Matt Heusser

Pretend for a moment you are a new development manager or director.

You hired a programmer to lead a test automation effort. Gave the programmer time, resources, and attention. The programmer has no responsibilities outside of the tooling. The automation has had time to mature. It was supposed to speed you up.

Now imagine this conversation, at 10:00AM.

Manager: “I’d like to go to production at noon. Can we do that?”

Programmer: “I don’t know, we need to run the automation.”

Manager: “Okay, sure, get to it.”

Programmer: “First we need to get the exact build we need to run on staging.”

Manager: “Fine, do that, then run the tests.”

Programmer: “Then I need to set up the test data.”

Manager: “Okay, fine, whatever, do it.”

Programmer: “Then I can run the tests.”

Manager: “Fine, so you’ll be done by noon?”

Programmer: “Probably. Then we’ll have failure results to check.”

Manager: “You always have failures?”

Programmer: “Not real failures. Sometimes the tests are flaky or there are environment problems. Sometimes the User Interface has changed but the tests haven’t kept up. So I need to do some maintenance work.”

Manager: “So you’ll know in the early afternoon?”

Programmer: “Sure.”

… time passes … 

2:00PM – Automation Delay

Manager: “Okay, what’s up?”

Programmer: “Bugs. Just a couple of showstoppers.”

Manager: “So, no ship today?”

Programmer: “The production programmer said he’ll have it fixed by 4:00PM.”

Manager: “That’s great! We can ship by end of day?”

Programmer: “No, I need to rerun the tests.”

Manager: “Okay, but you can do that overnight, right?”

Programmer: “No, we really need someone to baby-sit them. The screen could lock, that sort of thing. I’ll kick it off in the morning.”

The next morning, at 10:00AM, the new build is certified and can get to production.

Let me be clear:

When the director invested in test automation, that is not what he thought he was buying.

I call this process of fits and starts “automation delay.” It commonly happens when test groups, left to themselves, decide to automate the process, especially though the User Interface.

Interlude: Getting Started

 conference_session

A few years ago I attended training from a major tool vendor. The idea was that some of us independent consultants could learn the tool and support it. After learning how to use the tool, I started to ask questions about a command-line runner and the output the tool produced — so we could kick it off on a schedule, capture the output, then decide if the checks passed, ideally by a computer, that could then choose if the software should be promoted to the next level.

We spent a little time tracking down in the documentation that yes, a command-line runner did exist, and the output was predictable, so we could wrap it in something that produced output for a continuous integration (CI) server to parse.

Once we proved it in theory, the trainer moved on. “After all”, he said “Most of you will be called into companies just getting started. No need for this advanced stuff.”

Just getting started.

So set up the test server by hand, seed the test data by running an import or restore database of some type, then kick off the automation to run at your desk.

Better run it at lunch, or at least find something else to do while the driver runs.

Yuck.

Worse, this scenario sets us up for the problem I mentioned at the beginning – it sets up the customer for automation delay.

The Bottom Line

 The Pyramid by Mike Cohn prevents automation delay

Mike Cohn’s Test Automation Pyramid

Too many testers start out automating without support from anyone else. All they see is the GUI, so they begin automating the GUI. That leaves all the problems we mentioned before, and leads to automation delay.

Don’t do that.

Instead, start with the running the tests under continuous integration, which probably means extending CI to actually create a virtual machine and install the latest build, before running the automated checks. Good. Do that. That will probably be hard, and you might need the support of Dev or Operations. That is okay; that is sort of where the term DevOps comes from.

Of course, what I wrote above involves a great deal of sweeping generalizations. You could be anywhere on the spectrum; you might make batch applications that don’t really have a User Interface. For the time being, consider the impact of automation delay, if it could be happening to you — and what to do about it.

Link: http://itknowledgeexchange.techtarget.com

B

Picture of System Administrator

B (BUSINESS)

by System Administrator - Thursday, 2 May 2013, 9:35 PM
 
Picture of System Administrator

B (DATA CENTER)

by System Administrator - Thursday, 11 July 2013, 5:12 PM
 
Picture of System Administrator

B (ICT/TIC)

by System Administrator - Thursday, 2 May 2013, 7:23 PM
 

Page: (Previous)   1  2  3  4  5  6  7  8  9  10  ...  22  (Next)
  ALL