Administración de Calidad en Software / Software Quality Management


Calidad
Quality

Todas las empresas de desarrollo de software deben tener un protocolo de calidad que consiste en entregar al cliente siempre un software con la menor cantidad de errores posibles. Para lograr esto se han creado normas internacionales que nos ayudan a organizar los procesos de calidad y generar resultados un ejemplo son las normas de calidad ISO.

En resumen las normas de calidad son una guía para ayudarnos a realizar todas las actividades de una forma ordenada, clara y documentada. Lo cual traerá como resultado un beneficio para todos: los empleados porque su trabajo será mejor, los empleadores porque entregarán los productos a tiempo y finalmente los clientes porque recibirán sus pedidos con la calidad y eficiencia que se merecen.

El único problema radica en organizar a toda la empresa para que trabajen unidos utilizando estas normas, debido a que normalmente se usa mucha documentación, los que deben llenarlos se quejan porque este paso les quita mucho tiempo que podrían emplear en su labor ordinaria. Falso, llenar un documento ya sea en papel o electrónico no tiene por que ser traumático, sabiendo que cuando se finalice el trabajo vamos a tener un seguimiento completo de las actividades que realizamos. Pero para sentir esto, se debe promover adecuadamente la aplicación de la norma, es decir, el equipo de calidad debe ser integrado por personas con mucho tacto profesional y personal para que estimulen adecuadamente a todo el personal que debe utilizar las normas de calidad. Si el primer acercamiento al uso de las normas se torna muy complejo y/o tedioso esto hará que falle la implementación de las normas. Toda la empresa debe hacerse participe cuando se desea implementar estos procesos, porque todos deben saber y hacer lo que implica trabajar con calidad.

Si quiere entender un poco más de las normas de calidad lea este documento de los 8 principios de administración de la calidad: Quality Management Principles

*************English

All software development companies should have a protocol to deliver quality software to their customer with the least amount of mistakes. To achieve this there are international standards that help us organize quality processes and generate results. An example are ISO quality standards .

In summary, the quality standards are a guide to help us perform all activities in an orderly , clear and documented way . Which will result in a benefit for all: employees because their work will be better, employers because they will deliver products on time and eventually customers will receive their orders with the best quality and efficiency they deserve.

The only problem is to organize the entire enterprise to work together using these standards , since a lot of documentation is normally used, those people which must fill them, will complain because this step takes them a long time that could be used in their ordinary work. Well this is false, fill out a form either on paper or electronically does not have to be traumatic , knowing that when the work is finished we will have a complete monitoring our activities . But to feel this, must be adequately promote the application of the rule , ie , the quality team should be composed of people with a lot of tact and professionalism to adequately encourage all staff to use quality standards . If the first approach to the use of standards becomes very complex and / or tedious this will fail to implement the rules . The whole company should be involved when you want to implement these processes , because everyone should know what it means and work with quality.

If you want to understand a little more about the quality rules, please read this document about the 8 principles of quality management: Quality Management Principles

¿Que es Big Data? / What is Big Data?


BigData
Big Data

Seguramente al menos una vez a la semana escucha hablar de Big Data, pero no logra entender que es, porque no lo explican, solo lo nombran y ya. He recopilado de la forma más sencilla posible lo que explican algunas páginas web y este es el resultado:

Big Data son datos de compleja manipulación debido a su inconsistencia y/o combinaciones impredecibles. Pueden o no ser de gran tamaño, es decir una base de datos gigante no necesariamente es Big Data y una base de datos pequeña pero muy compleja puede catalogarse como Big Data.

Ejemplo de datos pequeños considerados Big Data, un avión puede llegar a tener 100mil sensores que se activan durante el vuelo, cada uno de ellos genera información específica y diferente entre sí, las combinaciones de datos generada por estos sensores es increíblemente compleja y varían por la tolerancia de error y características de cada sensor. El total de datos generados por una hora de vuelo no sería mayor a 3Gigas por cada hora de vuelo. Esto es muy pequeño.

Ejemplo de datos grandes considerados Big Data, El gran colisionador de hadrones (Large Hadron Collider, LHC) genera unos 20 petabytes de datos útiles al año, datos complejos de manejar.

De cuanto estamos hablando? 1 MB = 1024KB, 1 Giga = 1024 MB (4Giga=1 DVD), 1 TB = 1024 Gigas (1 TB=1 disco duro grande) , 1 Petabyte= 1024 TB, 1 Exabyte= 1024 Petabyte. Entonces 20 petabytes = 20,480 TB = 20,971,520 Gigas = 21,474,836,480 MB serían 20,480 discos duros de 1TB

Ejemplo de datos grandes que no son Big Data, Google procesa más o menos 20 petabytes de datos cada día. Pero estos datos son bien estructurados, Google ha podido organizarlos de forma que pueden accesar a ellos de una forma extremadamente rápida, debido a esto no se puede considerar como Big Data.

Resumen, Big Data son almacenes de datos que son complejos para interpretar por su poca o ninguna estructuración y además pueden venir de múltiples fuentes no relacionadas inicialmente pero que al final si deben estarlo.

Actualización 2014-05-08, un ejemplo clásico de Big Data circunstancial: Una empresa de al menos unos 10 años de antigüedad tiene un software contable AAA, pero como distribuyen productos, ese software no le sirve para el control que necesitan, así que compran o hacen internamente un software BBB que no se relaciona en nada con el anterior, luego se crece la empresa y la nómina que la llevaban manualmente deciden “sistematizarla” entonces compran o realizan internamente un software CCC, luego la empresa tiene múltiples departamentos que se crecen y se convierten en pequeñas empresas dentro de la empresa y realizan nuevas actividades que deben ser controladas, entonces “tercerizan” la “sistematización” de sus transacciones y cada día personal ajeno a la empresa guarda su información en un software DDD fuera de la compañía. Un buen día el gerente quiere saber como va su empresa y le traen mil hojas de todos los diferentes sofware que se manejan en la compañía, él no se va a poner a revisar todo eso, sino que encarga a su segundo al mando que le haga un resumen consolidado de toda esa información, las diferentes actividades que esta persona hace para consolidar todos esos datos de diferentes software para poderle mostrar una información clara al gerente es lo que dá el surgimiento a la interpretación de Big Data, que más Big Data puede ser tener que entender todas esas fuentes de información no relacionadas entre sí directamente pero que indirectamente forman un todo.

Los datos proporcionados por el cuerpo humano es Big Data.

*************English

Summary, Big Data are data stores that are complex to interpret for their little or no structure and it can come from multiple sources unrelated initially but ultimately they need to be.

Google handles 20 Petabytes daily but well structured data, so this isn’t Big Data.

Large Hadron Collider LHC handles 20 Petabytes / year, but these data are so complex to handle that becomes Big Data.

Example of small data considered Big Data, a plane can have 100 thousand sensors that are activated during the flight, each generates specific and different information to each other, combinations of data generated by these sensors is incredibly complex and vary by error tolerance and characteristics of each sensor. The amount of data generated by an hour flight would not be greater than 3Gigas for every hour of flight. This is very small data.

Updated 05/08/2014 , a classic example of circumstantial Big Data: A company of at least 10 years old has the AAA accounting software, but they are distributing products, the software does not serve for the control they need, so they buy or create internally new software called BBB that is not related at all with the previous one, then the company decided to change the manual payroll process for an improved “systematized system” then they buy or create internally the software called CCC, then the company has multiple departments that are growing and become small business within the company and perform new activities to be controlled, then they hire “outsourcing companies” that “systematized” the activities of their staff and every day transactions keeping their information in software called DDD outside the company. One day the manager wants to know how is doing the company and all the departments bring thousand of sheets from all the different software that are being used in the company, he is not going to get to review all of that, but instructs his second in command that makes him a consolidated summary of all this data, the different activities which that person makes to consolidate all the data from different software so that he can show the manager clear information is what gives rise to the interpretation of Big data, Big data is all these sources of information unrelated directly but indirectly form a whole.

Data provided by the human body is Big Data.

Fuentes: http://mike2.openmethodology.org/wiki/Big_Data_Definitionhttp://es.wikipedia.org/wiki/Big_datahttp://es.wikipedia.org/wiki/Petabyte

Extraer nombre de la página de un URL vb.net / get page name from url


Muchas veces necesitamos extraer el nombre de una página de una dirección URL, normalmente obtenida por:

Dim sPagina = Request.RawUrl  ‘sPagina queda con http://192.168.0.1/cuentas/admin.aspx

Para extraer el nombre admin.aspx podemos usar una función:

sPagina = ObtenerNombrePagina(sPagina) ‘sPagina queda como admin.aspx

Y esta es la función:

Public Shared Function ObtenerNombrePagina(ByVal PageUrl As String) As String

Dim index As Integer, endindex As Integer

Dim NombrePagina As String = “”

index = PageUrl.LastIndexOf(“/”) ‘Encontrar el ultimo / para determinar donde inicia el nombre

index += 1

endindex = PageUrl.LastIndexOf(“?”)

If (endindex = -1) Then ‘No hay parametros se toma todo el tamaño de la cadena

endindex = PageUrl.Length

End If

NombrePagina = PageUrl.Substring(index, (endindex – index))

Return NombrePagina

End Function

SQL Server mejores teclas rápidas / SQL Server short cuts


Esta es un lista de teclas rápidas más usadas en SQL Server Management Studio y que pueden ahorrar tiempo y su desempeño, esto es en la ventana de comandos o editando un archivo .sql:

ALT+F1 desplegar la estructura de la tabla (primero seleccionar el nombre de la tabla escrito en la ventana comandos ej: select * from tabla1 )
CTRL+R Ocultar o mostrar la ventana de resultados, por ejemplo un select * from tabla1 retorna unos resultados y los despliega en una ventana, presionando CTRL+R oculta dicha ventana o la vuelve a mostrar.
SHIFT+CTRL+U Convertir a mayúsculas un texto seleccionado.
SHIFT+CTRL+L Convertir a minúsculas un texto seleccionado.
F4 Abrir la ventana lateral de propiedades si está oculta.
F6 Cambiar el foco entre ventanas abiertas.
CTRL+I Búsqueda incremental, es bastante interesante para recorrer un conjunto de instrucciones bastante largo.
CTRL+K, CTRL+C Convertir en comentario el texto seleccionado, mantener presionada la tecla control.
CTRL+K, CTRL+U Quitar la marca de comentario del texto seleccionado.
CTRL+F Búsqueda rápida.
CTRL+H Reemplazo rápido.
CTRL+Shift+H Remplazo rápido en múltiples archivos.
CTRL+ALT+R Abrir ventana interna para explorar internet.
F8 Abrir ventana lateral explorador de objetos en caso de que esté oculta.

****************************English

This is a list of most used shortcuts in SQL Server Management Studio, this can save us time while writing code or editing .sql files:

ALT+F1 display table structure, name of table must be selected. (Example: select * from table1)
CTRL+R hide/show results window, after an instruction like select * from table1 a new window is opened, this will hide or show that window.
SHIFT+CTRL+U Uppercase selected text.
SHIFT+CTRL+L lowercase selected text.
F4 display properties window if hidden.
F6 move between opened Windows.
CTRL+I incremental search, excelent when searching in long texts.
CTRL+K, CTRL+C comment selected text (keep CTRL pressed between K and C)
CTRL+K, CTRL+U uncomment selected text.
CTRL+F quick search window.
CTRL+H quick replace window.
CTRL+Shift+H quick replace in multiple files.
CTRL+ALT+R internal web browser inside sql server.
F8 Object explorer if hidden.