Author Archives: Finding-admin

Stress and Performance Testing

These tests are used to mitigate risks related to business continuity, enhance or ensure corporate image that could be dimmed due to malfunctioning of their systems, and lastly, to control costs derivate from correct management.

IT is responsible for providing solutions for customers in the form of performance testing, to ensure the behavior of their systems under hostile scenarios caused by unexpectedly high usage of resources, due to high amount of recurrent accesses.

Type of tests

Performance testing

Validates scalability, stability and speed (response times) of the system under evaluation. Also, the usage levels of the resources, ensuring it will be enough to fulfill performance levels required for the system.

Load testing

This subset of performance testing focuses on determining or validating the characteristics of the system’s performance when working under predicted work and volume loads.

Stress testing

Tests focused on validating the characteristics of the system’s performance under conditions that exceed predictions for the operations (high load volumes).

Tools

Performance testing depends on the type of tools used for this purpose. Licensed or open source tools can be used, according to each specific need. Some of them are:

• IBM® Rational ® Performance Tester (Licencia IBM).
• Apache JMeter™ (Open Source).

Most common software testing errors in the financial sector

Although software quality assurance should be faced as one singular challenge for each software development process, there are some common situations that tend to happen among several testing processes.

In this blog we will talk about 5 of the most common errors during software quality assurance processes in the financial industry.

If we take into account the following situations beforehand, we will probably be able plan more accurately and optimize both timing and team coordination.

  1. Accounting parametrization. In the best scenario, the testing environment should behave exactly as the production environment. However, there are not many companies that actually reach the stability needed for both environments to perfectly match, so when errors are found during testing, a full investigation must be put in motion to check how the accounting is being worked out in production, since the bugs could be caused by differences between both environments. Such review would probably delay the development release and block other requirements. Additionally, besides being a tedious process, the staff in charge of the software usually has no expertise in accounting matters, which makes the review even more difficult.
  2. Lack of updated customer information. When several apps house customer information, the integrity of the data might be compromised due to different inputs for the same variable of a single client. For example, a user may report changes in his address or salary in one system but forget to update the info in another. This situation will increase the difficulty of testing and development for major processes, since bank’s business core activities require many information queries. If an app validates a customer’s variable stored in several systems but with different information in each one, there will be major issues due to incongruity within the information sources. Therefore, many reprocesses involving different departments will be generated and the release will be delayed.
  3. Software that nobody knows how to modify. Complex and highly specialized core systems generate traumatic change or update processes. When developing or unifying new components, systems or updating to new technologies, large and highly specialized teams are needed since most traditional banking systems are quite old and not many suppliers are available to deliver on the client’s needs, which increases the cost. This also means there will be a need to integrate several teams involved in operating such large systems and with diverse knowledge and practices, which will probably end up in communication issues and difficulties to carry a smooth process and meet deadlines.
  4. Dependence on knowledge gathered by suppliers. Companies that outsource services like development and testing, usually don’t absorb as much knowledge as they should. Due to high complexity of the technologies used, IT departments are focused on managing communications between the outsourcing teams and their systems, so they don’t learn much from the processes being carried out. This becomes a problem when support requests start to rise, the IT doesn’t have all the information and contracts with suppliers are over.
  5. Fear to obsolescence. Many times, people that manage processes that are being automated, fear to lose their jobs to machines, so they intentionally provide wrong or incomplete information to those getting the process automated, with the clear intention of making the automation fail during production and have the company believe human input is still necessary. Although this issue could be easily fixed from the specification of the requirements, this behavior not only costs large amounts time of money to the company, but it also stops it from evolving and moving forward with market trends and new technologies.

To solve these issues for the most part, knowledge must be shared across all departments: IT, operations and providers. Getting to this point could be very challenging and even though some companies have a good knowledge base (being this the first step for the solution), there is nothing like practice. It is almost essential that knowledge is not only present in written documentation, but to have users that actually understand technical concepts of how the system works, so they are able to roughly predict the impact in different modules upon implementation of changes. It is also needed to have the IT department and suppliers clearly understand the needs of the company and it’s business rules.

At Finding we understand the great impact of the situations described above and the need to implement preventive and corrective actions to optimize processes. Our project management tool allows us to build, manage and share a wide base of knowledge, so all learnings from each project will not stay in our company but will be transferred to our clients. In the same way, our TestMetTM methodology guarantees an on-going communication and constant validation of the information between us and all the departments involved in each project, which is managed through Toolcase and allows everyone to see the bigger picture. It also allows us to learn and manage knowledge about our client’s business rules.

Although this article provides verified information, it is always necessary to bring experts on these subjects. Many years of Finding’s experience and it’s testing methodology specialized in preventing, finding and solving all issues found through the entire testing process, makes it an indispensable ally for companies that are about or currently specifying requirements, developing or releasing software products or updates.

To know more how we can help you flawlessly plan, build or release software products, contact us in https://findingtc.co.uk/contact.

Promedesoft 2013

PROMEDESOFT – 13, 14 y 15 DE AGOSTO

CONGRESO INTERNACIONAL

MEMORIAS DEL CONGRESO

El 1er. Congreso Internacional en Procesos y Metodologías de Desarrollo de Software, celebrado los días 13, 14 y 15 de agosto del 2013, en Bogotá, Pereira y Cali (Colombia), que tuvo como tema principal “Productividad, Competitividad y Mejoras de Proceso”.

Fue un espacio para el encuentro de empresas de desarrollo de software y empresas de diferentes sectores con áreas de TI y/o compradoras de soluciones informáticas donde los Gerentes, Jefes, Directores, Líderes y/o Coordinadores de Proyectos pudieron compartir con expositores nacionales e internacionales las mejores prácticas en procesos y metodologías de desarrollo de software:

  • Desarrollo de las TICs como Estrategia de Política Pública: Fondos y Subsidios.
  • Calidad del producto + procesos software.
  • Mejora de procesos de desarrollo de organizaciones software mediante un modelo de madurez organizacional basado en norma ISO.
  • Productividad y Equipos de Desarrollo de Software de alto desempeño (Utilizando TSP)
  • Consorcio para la competitividad de la industria de tecnología de información para América Latina.
  • La normatividad internacional en materia de tecnologías de información.
  • Federación colombiana de la industria de software y tecnologías de la información.
  • 02co – Outsource to Colombia.
  • Métodos ágiles desde la perspectiva del cliente y la contratación.

Pudimos contar con la intervención de conferencistas nacionales e internacionales de alto reconocimiento en sus campos como lo son: Albeiro Cuesta (MINTIC), Ximena Duque (Fedesoft), Francisco José Pino Correa (Universidad del Cauca), Miguel Mendoza (Microsoft), Cesar de Jesús Pardo (Finding SQA), Andrés Perafan (Universidad Autónoma de Occidente), Gabriel García Vidaurrazaga (Kernel – Perú), Salvado Sánchez (NYCE – México) y Héctor J. González (Kernel – México).

El congreso tuvo una favorable aceptación por parte de los participantes debido a que estuvieron muy receptivos a las conferencias que se dictaron en las 3 ciudades:

En la ciudad de Bogotá donde se llevo a cabo el 1er día del congreso, con la colaboración de la Cámara de Comercio de Bogotá la cual nos brindo un espacio para llevar a cabo tan importante evento en esta ciudad. Y donde muchas personas tuvieron la oportunidad de participar y ampliar sus conocimientos sobre los temas expuestos.

En la ciudad de Pereira el evento se llevo a cabo en el auditorio de la sede Universidad Cooperativa de Colombia. Donde tuvimos una gran participación por parte de las empresas de la región mostrando muy buena aceptación al congreso.

El último día del congreso se realizo en la ciudad de Cali, el día 15 de agosto del 2013 donde hubo una gran afluencia de personas, las cuales pudieron interactuar con los conferencistas y poder aclarar dudas que surgieran de las ponencias, debido a que en la ciudad de Cali se pudo manejar un horario más amplio. Este último día del congreso se llevo a cabo en la Universidad de Autónoma de Occidente.

Todas las personas que pudieron participar en el congreso dieron muy buenas observaciones acerca de los conferencistas y de la organización del congreso en general. Dando a resaltar que este tipo de eventos se debe llevar más a cabo y fue muy certero tener presente a 3 ciudades para el congreso.

Gracias a todos nuestros patrocinadores y colaboradores que nos brindaron todo su apoyo y conocimiento para que el Congreso PROMEDESOFT fuera un éxito.

PROMEDESOFT tuvo como objetivo: Generar un espacio de conocimiento de las mejores prácticas a nivel internacional y nacional en procesos y metodologías de desarrollo de software, lo cual permitió aportar al fortalecimiento del Sector de Tecnologías de la Información y Comunicaciones en Colombia.

Promoviendo la unión de la empresa con la academia hemos logramos reunir a expertos en las áreas de: procesos de desarrollo de software, etodologías y calidad quienes están en la disposición de compartir sus experiencias en este 1er. Congreso Internacional en Procesos y Metodologías de Desarrollo de Software.

Si usted requiere mayor información, puede comunicarse al siguiente número telefónico (+57) (2) 405 22 32 y/o al correo electrónico comercial@findingtc.com

PANEL DE PONENTES

Dr. Albeiro Cuesta Mesa
Director de Políticas y Desarrollo de TI – MINTIC 
Colombia

Doctor en Ingeniería Informática con tesis laureada en Universidad Pontificia de Salamanca Campus Madrid, con la cual se sustenta la iniciativa del Plan Vive Digital “Fortalecimiento de la Industria de Tecnologías de Información – FITI”. Ingeniero de Sistemas, con especialización en Administración de Sistemas Informáticos de la Universidad Nacional, Diploma Estudios Avanzados –DEA- en Ingeniería de Software en Universidad Pontificia de Salamanca Campus Madrid

Experiencia profesional relacionada con la industria de tecnologías de información, desde los campos Empresariales, Académicos y Gubernamentales. Emprendedor y Empresario de la Industria TI, docente, consultor, Ex Presidente de la Junta Directiva de Parquesoft Manizales, Consejero Ad hoc del Consejo Profesional Nacional de Ingeniería COPNIA, Par Académico del Ministerio de Educación, Par Evaluador de Colciencias, Auditor de Sistemas de los Procesos Electorales del País, conferencista nacional e internacional en temáticas relacionados con Educación Virtual e Ingeniería de Software. Gerente de la Estrategia para el Fortalecimiento de la Industria TI de Colombia, como asesor del Ministerio de TIC.

Actualmente Director de Políticas y Desarrollo de TI, el cual institucionaliza la estrategia para el fortalecimiento de la industria TI de Colombia en el Ministerio de Tecnologías de Información y comunicaciones.

Titulo Ponencia: Desarrollo de las TICs como Estrategia de Política Pública: Fondos y Subsidios.

Dr. Héctor J. González Santos 
Kernel Corporativo
México

MS, Masters of Science in Information Technology de la Carnegie Mellon University. Certificado en PSP Developer, PSP Instructor, TSP Coach, TSP Mentor Coach. Ha entrenado equipos de  desarrollo elites reportando desviación cero en cronogramas y alta calidad en la liberación de los productos. Integrador de metodologías Agiles, TSP y CMMI. Ha entrenado en PSP/TSP a más de 1000 Ingenieros de Software y 25 equipos de desarrollo en la Republica Mexicana.

La competencia y el deseo de incrementar la calidad, utilidad y la satisfacción del cliente son los elementos que motivan a las empresas a buscar el camino de la mejora continua. Datos compilados por el  Software Engineering Institute muestran cómo el Team Software Processsm (TSPsm) es una de las formas más efectivas para desarrollar equipos “elite” de desarrollo de software que permiten mejorar los costos de un proyecto, entregar en mejores tiempos y con una mejor calidad. En esta presentación Kernel nos mostrara los beneficios del modelo, la estrategia de implementación y el posible boom en Sudamérica para los próximos años.

Título Ponencia: Tendencias de la Industria: Productividad y Equipos de Alto Desempeño (utilizando TSP)

Dr. Cesar de Jesus Pardo Calvache
Universidad Autónoma de Occidente
Colombia

Doctor en Informática, Universidad de Castilla-La Mancha, España. Mención de Doctorado Internacional. Con una Maestría en Ingeniería Informática y máster oficial en Tecnologías Informáticas Avanzadas de la Universidad de Castilla–La Mancha, Vicepresidente de la red Iberoamericana y del Caribe para calidad del software, Scrum Master, ha publicado más de 45 rtículos, tiene 2 patentes y ha colaborado con capítulos para 7 libros publicados. Su larga trayectoria le ha permitido ser erecedor de varios premios entre ellos, el premio de investigación en el Departamento del Cauca. Ponente y miembro de omités de distintos eventos nacionales e internacionales. Actualmente es profesor, investigador y director del Programa de Ingeniería Informática de la niversidad de Occidente, Cali. Asimismo, se desempeña en Finding SQA SAS como Consultor de Investigación y Desarrollo. Sus intereses de investigación y profesionales se enfocan en el área de calidad, mejora de procesos de desarrollo de software

Título Ponencia: Incremento de la Calidad de los Productos de Software a partir de la Integración de Características de Calidad en los de Procesos Software Utilizados.

Actualmente, por las condiciones de tiempo, costo y recursos que involucran la implementación de los marcos de SPI en las organizaciones desarrolladoras de software, es necesario identificar y establecer las características basadas en la mejora no sólo de los procesos sino también desde el contexto de la alidad de producto que motiven a las empresas a adoptar el enfoque más adecuado a sus necesidades. Con el fin de presentar una forma de seleccionar los arcos para la mejora de los procesos de las organizaciones basada en los requisitos de calidad de producto de una organización, en esta conferencia se presenta la importancia de incorporar procesos que soporten el cumplimiento de las características de calidad de producto en el proceso de desarrollo de software. omo ejemplo, se analizarán cómo los estándares ISO 90003 y CMMI-DEV v1.2 apoyan la consecución de las características y subcaracterísticas de calidad del producto software descritas en la norma.

Lic.Gabriel García Vidaurrázaga
Kernel Corporativo
Perú

Es Licenciado en Administración de Empresas por la Universidad del Pacífico y tiene un MBA por la EGADE Business School del Tecnológico de Monterrey. Además, ha realizado estudios de Liderazgo en Competitividad en Wharton Business School. Ha recibido diferentes cursos y seminarios sobre Management de Calidad de Software y Gobierno Corporativo, y se ha especializado en el entendimiento del entorno empresarial de las PYMES del sector de Tecnología de Información. En los últimos 15 años ha trabajado en empresas de Telecomunicaciones y Tecnología de Información, desempeñando puestos como Gerente de Relacionamiento con Clientes, Gerente de Servicio al Cliente, Gerente Comercial, y actualmente desempeña el puesto de Director de Desarrollo de Negocio en Kernel Corporativo, donde ha puesto en marcha la estrategia comercial para implementar el Modelo de Calidad MoProSoft en alrededor de 400 empresas en 13 Estados la República Mexicana, y entrenar y certificar a más de 1,500 ingenieros de software en la Metodología TSP/PSP. Es responsable en Kernel de administrar la gestión de fondos federales para acelerar la incorporación de empresas PYMES mexicanas en la adopción de Modelos de Calidad, y desde inicios del año 2013 tiene como responsabilidad promover alianzas estratégicas comerciales en América Latina para desarrollar socios de negocio territoriales que permitan incrementar el nivel de competitividad de las empresas de desarrollo de software de la región.

Título Ponencia: Competitividad e Institucionalización de las empresas de Desarrollo de Software: Desafíos, estrategias y propuestas de mejora.

El propósito de un modelo es el de fomentar la estandarización de la operación de una organización de TI a través de la incorporación de las mejores prácticas en gestión e ingeniería de software.
La adopción del modelo permitirá elevar la capacidad de las organizaciones para ofrecer servicios con calidad y alcanzar niveles internacionales de competitividad.

Dr. José Salvador Sánchez Abarca
NYCE S.C.
México

Es Licenciado en Informática y tiene estudios de Ingeniería en Electrónica en la Universidad Autónoma Metropolitana y tiene un diplomado en Nueva Generación de Redes & e-Business por la Alcatel University. Ha recibido diferentes cursos y seminarios sobre Management Empresarial y Gubernamental, así como de temas selectos relacionados con Sistemas de Gestión de TI, Seguridad de la Información, Juegos y Sorteos y Modelos de Procesos. Después de laborar en diferentes empresas de servicios de TI, de capacitación y dedicarse a la docencia, en Marzo de 1997 ocupa el cargo de Subdirector de Informática de la Dirección General de Normas, en donde a mediados del año 2006 es nombrado Director de Metrología hasta el año 2008. En Julio del 2008 se incorpora a las filas de Normalización y Certificación Electrónica, A.C. (NYCE) como Gerente de Certificación de Juegos y Sorteos, ocupando después el cargo de Subdirector de Operaciones de Servicios de Tecnologías de la Información hasta convertirse en Director de Operaciones de Tecnologías de Información, puesto que ocupa a la fecha, teniendo a su cargo los servicios de Capacitación, Certificación de Sistemas de Gestión de TI, de Juegos y Sorteos y la Verificación de Procesos de Desarrollo de Software. Actualmente es parte de la delegación mexicana que participa en el comité JTC 1 (Joint Technical Commitee) de la ISO / IEC que desarrolla la norma 29110, así como del Subcomité de Normalización de Tecnologías de la Información de NYCE, que entre otros revisa los temas de las normas NMX-I-25000 de calidad de software.  

Título Ponencia: Escenario Internacional de las Normas de Calidad: ¿Para qué buscar una certificación en tecnologías de información?
La presentación hará un recorrido por las razones que han detonado el desarrollo de la normalización en materia de Tecnologías de Información, tanto en México como en el mundo, presentará cuáles son los modelos que han sido más adoptados por la industria de las TI, cuál es la tendencia para las VSE’s y cómo el ISO/IEC JTC1 ve hacia el futuro.

Dr. Francisco José Pino Correa 
Universidad del Cauca
Colombia

Doctor en Ingeniería Informática por la Universidad de Castilla-La Mancha (España). Ingeniero en Electrónica y Telecomunicaciones, y Especialista en Redes y Servicios Telemáticos de la Universidad del Cauca (Colombia). Profesor titular adscrito a la Facultad de Ingeniería Electrónica y Telecomunicaciones de la Universidad del Cauca. Miembro del Grupo IDIS (Investigación y desarrollo en ingeniería del software) de la Universidad del Cauca. Socio fundador de Kybele Consulting Colombia S.A.S, empresa dedicada a la consultoría en calidad y mejora de procesos, productos y servicios software. Auditor Jefe por AENOR de ISO 15504-SPICE. Sus intereses de investigación y profesionales se enfocan en el área de calidad y mejora de procesos de desarrollo de software en pequeñas empresas y en entornos multimodelos.

Titulo ponencia: Mejorando proceso de desarrollo de organizaciones software mediante un modelo de madurez organizacional basado en norma ISO

Modelos de madurez específicos para la industria del software son necesarios con el fin de apoyar la calidad de los procesos y productos de las empresas de esta industria. Actualmente se dispone de un nuevo esquema de certificación en madurez organizacional basado en un modelo de procesos del ciclo de vida del software de acuerdo con la Norma ISO/IEC 12207 y del método para evaluar la calidad y madurez de los mismos, ISO/IEC 15504 parte 2 y 7. La Certificación del Modelo de Madurez de la Ingeniería del Software es una eficaz herramienta que contribuye a mejorar la calidad del desarrollo del software en todo tipo de organizaciones. Este modelo se ha comenzado a aplicar desde 2009 en la evaluación de diferentes pequeñas empresas desarrolladoras de software y actualmente existen alrededor de 50 empresas certificadas.

Dra. Ximena Duque 
Fedesoft
Colombia

Economista de la Universidad Icesi de Cali, con Especialización en Negocios Internacionales de la Universidad de Pforzheim, Alemania y candidato a Maestría en Asuntos Internacionales de la Universidad Externado de Colombia en Convenio con La Universidad de Sciences Po en París y la Universidad de Columbia en Nueva York.  Trabaja actualmente en Fedesoft como Directora de Innovación, Nuevos Negocios e Internacionalización, y se encuentra a cargo de la dirección y creación de los estudios sectoriales que anualmente lidera la federación.

Titulo Ponencia: La industria del software y servicios asociados en Colombia: Situación actual, retos y oportunidades.

La Industria de Software en Colombia está contemplada como uno de los pilares de la economía por el efecto transversal y potenciador que tiene en otros sectores. Los resultados de los últimos estudios de cifras y salarios del sector, al igual que la identificación de necesidades, oportunidades y tendencias en el sector han dado un panorama claro sobre las acciones que deben tomarse para posicionar el sector a nivel nacional e internacional. Esta presentación busca mostrar el panorama actual de las empresas del sector en Colombia, así como los esfuerzos que se están dando para mejorar su competitividad.

Dra. Paola Restrepo Ospina
Fedesoft
Colombia

Arquitecta con especialización en Administración de Empresas y especialista en Alta Gerencia, es actualmente la Presidente Ejecutiva de la Federación Colombiana de la Industria del Software y Tecnologías Relacionadas – FEDESOFT. Así mismo, es Representante por Colombia y Miembro de la Junta Directiva (Tesorera) de la Federación de Asociaciones de Latinoamérica, el Caribe y España de Entidades de Tecnologías de la Información – ALETI; Presidente de la Mesa de Teleinformática del SENA y Presidente de la Coalición Regional de Servicios de Bogotá y Cundinamarca de la Cámara de Comercio de Bogotá, Sector Tecnologías de la Información.

Como presidente de Fedesoft ha realizado asesorías internacionales para el fortalecimiento institucional y financiero de la Cámara Panameña de Tecnologías de la Información y Comunicaciones (CAPATEC), Comisión de Software de Guatemala (SOFEX) y asociación Hondureña de Tecnologías de la Información (AHTI), basado en el modelo de gestión llevado en FEDESOFT.

En su trayectoria profesional ha desempeñado cargos como Gerente de Servicios del Fondo de Desarrollo de la Educación Superior – FODESEP, Asesora Ministro de Educación Nacional, docente de la Universidad Católica, Universidad Fundación Universitaria del Área Andina y Universidad de San Buenaventura Cali.

Titulo Ponencia: La industria del software y servicios asociados en Colombia: Situación actual, retos y oportunidades.

La Industria de Software en Colombia está contemplada como uno de los pilares de la economía por el efecto transversal y potenciador que tiene en otros sectores. Los resultados de los últimos estudios de cifras y salarios del sector, al igual que la identificación de necesidades, oportunidades y tendencias en el sector han dado un panorama claro sobre las acciones que deben tomarse para posicionar el sector a nivel nacional e internacional. Esta presentación busca mostrar el panorama actual de las empresas del sector en Colombia, así como los esfuerzos que se están dando para mejorar su competitividad.

Dr. Miguel Mendoza
Microsoft Socio de Negocio
Colombia

Consultor Senior en Arquitectura y Desarrollo de Software en Synergy TPC. Msc Arqutectura de TI. Por décimo primer año consecutivo obtuvo el reconocimiento de Microsoft como Most Valuable Professional en Visual C#, e igualmente posee diferentes certificaciones en diversas tecnologías (MCP, MCAD, MCTS). Ha colaborado con diferentes firmas en el área de desarrollo entre las cuales se destacan empresas del grupo alemán en Colombia como Siemens, Leitner Gmbh, Friedrich Ebert Stiftung, Goethe Inst. EDV entre otras. Igualmente ha trabajado con diversas firmas Colombianas apoyándolas en actividades de desarrollo y en general de IT. De manera independientemente así como a través de Microsoft Colombia, ha estado vinculado en diferentes actividades de apoyo a clientes y la comunidad de desarrolladores en Colombia. Entre otras ha participado en los lanzamientos de Visual Studio .Net 2002, 2003 y 2005, 2008, 2010 los Developer Days, MSDN Shows, y varias charlas y proyectos con clientes. Igualmente ha estado vinculado con la academía, especialmente a través de conferencias y la docencia en especializaciones en diversas universidades de Colombia. Sus áreas de interés incluyen: Dispositivos Móviles, Inteligencia Artificial y Robótica, Arquitectura de Software, y Procesos de Desarrollo.

Título de la Ponencia: Métodos ágiles desde la perspectiva del cliente y la contratación. 

Con la popularización de los métodos ágiles, las organizaciones se enfrentan a un modelo totalmente diferente de interacción con los proveedores.  Esta sesión revisa el impacto de la interacción cliente/proveedor al establecer un proyecto basado en métodos ágiles.

Organizado por:

Promedesoft 2015

PROMEDESOFT

CONGRESO INTERNACIONAL

"EVALUACIÓN Y CERTIFICACIÓN DE LA CALIDAD DE SOFWARE CON NORMAS ISO"

Conferencistas de Europa y latinoamerica
21 de abril en la ciudad de Cali, Colombia

PROMEDESOFT, El 2do. Congreso Internacional en Procesos y Metodologías de Desarrollo de Software, realizado exitosamente el día martes 21 de abril de 2015 en el Auditorio Gerardo Molina de la Universidad Libre, Seccional Cali, el evento inició a las 8:30 de la mañana y finalizó a las 4:30 de la tarde con asistencia masiva en las dos jornadas del evento, teniendo como tema principal “Evaluación y Certificación de la Calidad de Software con Normas ISO”. Fue un espacio para el encuentro de empresas de desarrollo de software y empresas de diferente sectores con áreas de TI y/o compradoras de soluciones informáticas; donde los Gerentes, Jefes, Directores, Líderes y/o Coordinadores de Proyectos pueden conocer y compartir con expositores internacionales en temas como:

  • La industria del software de Colombia pisa fuerte en la calidad.
  • La Importancia de la industria del software y la calidad del mismo.
  • Los problemas con la homogenización y uso de estándares en la industria del software.
  • Mejora y Certificación de Procesos Software con ISO/IEC 15504 –12207.
  • Evaluación y Certificación de la calidad del producto software con ISO/IEC 25000.
  • Proceso de consultoría para la mejora de la calidad del software.
  • La Mesa Sectorial como estrategia para el Fortalecimiento del Capital Humano del Sector Software y TI.

Pudimos contar con la intervención de conferencistas nacionales e internacionales de alto reconocimiento en sus campos como lo son: Moisés Rodriguez (Alarcos Quality Center – España), Paola Restrepo (Fedesoft), Francisco José Pino Correa (Universidad del Cauca), Jaime Garcia Di Motoli (SENA), Diana Arteaga (Finding SQA) y Fabián Castillo Peña (Universidad Libre Cali).

Quienes abordaron temas como la importancia de la industria del software y la calidad, estrategias para el fortalecimiento de la industria, la consultoría para mejorar la calidad del software, la importancia de la relación de la academia con el sector productivo y los procesos de evaluación y certificación de la calidad de software con normas ISO.

PROMEDESOFT tuvo como objetivo: Generar un espacio de conocimiento de las mejores prácticas a nivel internacional y nacional en procesos y metodologías de desarrollo de software, lo cual permita aportar al fortalecimiento del Sector de Tecnologías de la Información y Comunicaciones en Colombia.

Promoviendo la unión de la empresa con la academia hemos logrado reunir expertos en las áreas de: procesos de desarrollo de software, metodologías y calidad quienes están en la disposición de compartir sus experiencias en este 2do. Congreso Internacional en Procesos y Metodologías de Desarrollo de Software.

Si usted requiere mayor información, puede comunicarse al siguiente número telefónico (+57) (2) 405 22 32  y/o al correo electrónico comercial@findingtc.com

PANEL DE PONENTES

Dr. Moisés Rodríguez Monje
CEO de Alarcos Quality Center
España

Ingeniero Superior en Informática y Máster en Tecnologías Informáticas Avanzadas por la Universidad de Castilla-La Mancha. CISA (Certified Information System Auditor) por ISACA y Auditor Jefe por AENOR (ISO 15504 – ISO 12207). Formación oficial del SEI CMMI 1.2 Y CMMI-ACQ, ScrumManager Certified y TMAP Next Certified.

Ha trabajado como consultor para más de 20 empresas y administraciones, especializándose en la mejora de procesos software y la evaluación de la calidad del producto. Desde 2012 es CEO de Alarcos Quality Center, spin-off de la Universidad de Castilla-La Mancha orientada a prestar servicios de consultoría para la mejora de la calidad del software. Además, dirige el laboratorio acreditado AQC Lab, para la evaluación de la calidad del producto software según ISO/IEC 25000.

En el ámbito investigador, ha participado en más de 10 proyectos de I+D, dirigido varios Proyectos Fin de Carrera y escrito múltiples artículos para revistas y congresos sobre calidad software. Desde 2008 es miembro del SC7/GT26 de AENOR, para la elaboración de la ISO/IEC 29119.

Dr. Francisco José Pino Correa 
Universidad del Cauca
Colombia

Doctor en Ingeniería Informática por la Universidad de Castilla-La Mancha (España). Ingeniero en Electrónica y Telecomunicaciones, y Especialista en Redes y Servicios Telemáticos de la Universidad del Cauca (Colombia). Profesor titular adscrito a la Facultad de Ingeniería Electrónica y Telecomunicaciones de la Universidad del Cauca. Miembro del Grupo IDIS (Investigación y desarrollo en ingeniería del software) de la Universidad del Cauca. Socio fundador de Kybele Consulting Colombia S.A.S, empresa dedicada a la consultoría en calidad y mejora de procesos, productos y servicios software. Auditor Jefe por AENOR de ISO 15504-SPICE. Foundation Certificate in Test Management (TMap NEXT® Foundation) por la empresa holandesa EXIN. Consultor para la valoración y mejora de los procesos software de un conjunto de empresas iberoamericanas bajo diferentes modelos de referencia de procesos (SPICE-AENOR, COMPETISOFT, CMMI-DEV).

Ing. Diana Arteaga Gil
Finding SQA
Colombia

Consultor Especialista en Aseguramiento de Calidad de Software (SQA), Pruebas de Software (Testing), Metodologías de Desarrollo de Software y Certificación de Productos de Software en Mantenibilidad y Adecuación Funcional bajo la norma ISO/IEC 25000. Ingeniero de Sistemas con experiencia de 16 años en la industria del software, es actualmente Gerente General de FINDING SQA, Miembro del Consejo de la Mesa de Teleinformática del SENA y primer representante en Colombia como consultor certificado por AQC (Alarcos Quality Center) para la evaluación de la calidad de software bajo la norma ISO/IEC 25000.

Dra. Paola Restrepo Ospina
Fedesoft
Colombia

Arquitecta con especialización en Administración de Empresas y especialista en Alta Gerencia, es actualmente la Presidente Ejecutiva de la Federación Colombiana de la Industria del Software y Tecnologías Relacionadas – FEDESOFT. Así mismo, es Representante por Colombia y Miembro de la Junta Directiva (Tesorera) de la Federación de Asociaciones de Latinoamérica, el Caribe y España de Entidades de Tecnologías de la Información – ALETI; Presidente de la Mesa de Teleinformática del SENA y Presidente de la Coalición Regional de Servicios de Bogotá y Cundinamarca de la Cámara de Comercio de Bogotá, Sector Tecnologías de la Información.

Como presidente de Fedesoft ha realizado asesorías internacionales para el fortalecimiento institucional y financiero de la Cámara Panameña de Tecnologías de la Información y Comunicaciones (CAPATEC), Comisión de Software de Guatemala (SOFEX) y asociación Hondureña de Tecnologías de la Información (AHTI), basado en el modelo de gestión llevado en FEDESOFT.

Jaime Garcia Di Motoli
Mesa Sectorial de Teleinformatica del SENA
Colombia

Profesional en Ciencias de la Educación, con especialización en Gerencia estratégica Competitiva, formado en Ofimática, Gestión del Recurso humano por Competencias Laborales, Planeación, Presupuesto y Formulación de Proyectos. Funcionario del SENA Regional Distrito Capital, durante 23 años , se ha desempeña como director encargado de la regional y Subdirector de varios centros de formación entre ellos el de Gestión de Mercados, Logística y Tecnologías de la Información y como secretario Técnico de las mesas sectoriales de Teleinformática y Business Process Outsourcing BPO, KPO, ITO.

Ing. Fabián Castillo Peña
Universidad Libre, Seccional Cali
Colombia

Doctor en Educación (c), Magister en Educación. Ingeniero de Sistemas, y Especialista en Auditoría de Sistemas. Decano de la Facultad de Ingeniería de la Universidad Libre, Seccional Cali. Líder de los grupos de Investigación SINERGIA UNO (Desarrollo de Software, Didáctica en la enseñanza de la Ingeniería e Informática Educativa) y GITEL (Seguridad en las tecnologías de la información, Auditoría y Telemática) de la misma Universidad. Coordinador académico de la Red Universitaria de Alta Velocidad del Valle del Cauca – RUAV y de la Asociación de Usuarios de Oracle de Colombia – ASUOC. Miembro del Comité Académico de la Red Nacional Académica de Tecnología Avanzada – RENATA y de la Red Iberoamericana de Informática Educativa – RIBIE. Auditor Líder (ISO 27001:2013), Auditor Interno en Sistemas de Gestión Integral QHSE (ISO 9001: 2008, ISO 14001: 2004, OHSAS 18001: 2007 e ISO 19011:2012), Auditor Interno (ISO 9001:2008). Ha escrito diversas ponencias y adelantado proyectos de investigación en las áreas de Arquitectura de Redes, Software, Teleinformática y Educación.

Organizado por:

SQA (Aseguramiento de la Calidad del Software)

SQA (Sofware Quality Assurance o Aseguramiento de la Calidad del Software) implica revisar y auditar los productos y actividades de software para verificar que se cumplen los procedimientos y los estándares, además de proveer a las gerencias apropiadas (incluyendo a la de proyectos) con los resultados de estas revisiones. Por lo tanto, SQA envuelve al PROCESO de desarrollo de software completo: monitoreando y mejorando el proceso; asegurándose que cualquier estándar y procedimientos adoptados sean seguidos; y, asegurándose que los problemas sean encontrados y tratados.

Definición

SQA es un set de actividades sistemáticas que aseguran que el proceso del software y productos conformados por requerimientos, estándares, y procedimientos. Los procesos incluyen todas las actividades involucradas en el diseño, codificación, pruebas y mantenimiento; Los productos incluyen software, datos asociados, documentación, y toda la documentación para soporte y reportes.

Propósito

Proporcionar visibilidad sobre los procesos utilizados por el proyecto de software y sobre los productos que genera.

Objetivos

  1. Planificar las actividades de aseguramiento de la calidad.
  2. Revisar y auditar objetivamente los productos y las actividades para verificar que están conformes con los procedimientos y estándares aplicables.
  3. Proporcionar los resultados de estas revisiones o auditorías informando a la dirección cuando sea necesaria su mediación.

Metas

  • Planificar las actividades de SQA
  • Verificar la adherencia de los productos y actividades de software a los estándares, a los procedimientos y a los requisitos aplicables.
  • Los grupos y los individuos afectados son informados de las actividades y de los resultados de la SQA.
  • Las tareas que no cumplen con los estándares o procedimientos y que no se pueden resolver dentro del proyecto del software son tratadas por la gerencia general.

Actividades Principales

  • Un plan de SQA es preparado para el proyecto de software de acuerdo a procedimientos documentados.
  • Las actividades del grupo de SQA son realizadas de acuerdo a los planes de SQA
  • El grupo de SQA participa en la preparación y revisión de los planes de desarrollo, estándares y procedimientos del proyecto.
  • El grupo de SQA revisa las actividades de Ingeniería de Software para verificar el cumplimiento de lo anterior
  • El grupo de SQA audita los productos del trabajo designado para verificar el cumplimiento de lo anterior.
  • El grupo de SQA periódicamente reporta los resultados de sus actividades al grupo de ingeniería de software.
  • Las desviaciones detectadas en las actividades del software y en los productos del trabajo de software son documentadas y manejadas de acuerdo a procedimientos previamente documentados.
  • El grupo de SQA conduce periódicamente revisiones de sus actividades y reuniones con el personal de SQA del cliente, según sea necesario.

Rol de SQA

El rol para SQA es brindar a Metodología de Desarrollo de Software la administración la seguranza de que procesos oficialmente establecidos están siendo implementados. Y asegura que:

  1. Una  apropiada este establecida
  2. Que los proyectos utilicen estándares y procedimientos en su trabajo
  3. Que la documentación sea creada para mantenimiento y mejoramiento
  4. La administración de configuración de software este adecuada para controlar cambios
  5. Se realicen pruebas y que se aprueben
  6. Cualquier deficiencia y desviaciones sean identificadas y llevadas con atención a la administración.

Calidad Software

La calidad de software va a depender en su totalidad de la concordancia entre los requisitos planteados respecto a los obtenidos. Ambos conceptos resaltan la necesidad de que un software de calidad debe satisfacer los requisitos dados por el usuario. La obtención de un software con calidad implica la utilización de metodologías o procedimientos estándares para el análisis, diseño, programación y prueba del software que permitan uniformar la filosofía de trabajo, en aras de lograr una mayor confiabilidad, mantenibilidad y facilidad de prueba, a la vez que eleven la productividad, tanto para la labor de desarrollo como para el control de la calidad del software.

Son varios los autores que coinciden en que el software posee determinados índices medibles que son las bases para la calidad, el control y el perfeccionamiento de la productividad. Una vez seleccionados los índices de calidad, se debe establecer el proceso de control, que requiere los siguientes pasos:

  • Definir el software que va a ser controlado: clasificación por tipo, esfera de aplicación, complejidad, etc., de acuerdo con los estándares establecidos para el desarrollo del software.
  • Seleccionar una medida que pueda ser aplicada al objeto de control. Para cada clase de software es necesario definir los indicadores y sus magnitudes.
  • Crear o determinar los métodos de valoración de los indicadores: métodos manuales como cuestionarios o encuestas estándares para la medición de criterios periciales y herramientas automatizadas para medir los criterios de cálculo.
  • Definir las regulaciones organizativas para realizar el control: quiénes participan en el control de la calidad, cuándo se realiza, qué documentos deben ser revisados y elaborados, etc.

No se puede medir la calidad del software de forma correcta debido a su naturaleza,la certificación se da a los procesos, la correcta consecución de los mismos garantizaría un buen software. No se puede medir al software como tal, sino los atributos que la conforman, tales métodos de medida deben ser exactos. El usuario final mide la calidad del software según lo que tenga o no, es en ese sentido de que la calidad del software depende de quien la juzgue. El hecho de que una empresa tenga certificación en calidad de software no garantiza que su software sea de calidad.

La calidad del software puede medirse después de elaborado el producto. Pero esto puede resultar muy costoso si se detectan problemas derivados de imperfecciones en el diseño, por lo que es imprescindible tener en cuenta tanto la obtención de la calidad como su control durante todas las etapas del ciclo de vida del software.

Referencias

AUTOMATIZACIÓN DE PRUEBAS FUNCIONALES

Test de Regresión

Las pruebas de regresión son un subconjunto de las pruebas planificadas que se seleccionan para ejecutar periódicamente, por ejemplo ante cada nueva liberación del producto. Tienen el objetivo de verificar que el producto no ha sufrido regresiones.

Podemos decir que hay dos cosas a las que el test automatizado le agrega valor:

  • Business value: Da valor al negocio mejorando la calidad, evitando problemas de operativa, pérdida de imagen de clientes e incluso evitando problemas legales.
  • IT value: Mejora el trabajo del grupo de IT ya que le simplifica las tareas rutinarias, permitiendo que con el mismo costo hagan mucho más y mejor.

Ventajas:

  • Mejora la calidad, pues hay menos errores humanos.
  • Mejora la performance de producción, pues con las mismas personas se puede lograr mucho más trabajo, a mayor velocidad y escala, y en ese sentido mejoran el rendimiento de las personas.

Las aplicaciones en las que más conviene usar testing automatizado son las que en algún sentido tienen mucha repetitividad, ya que será necesario ejecutar muchas veces las pruebas (ya sea porque es un producto que tendrá muchas versiones, que se continúe con el mantenimiento haciendo fixes y parches, o porque se debe probar en distintas plataformas).

Principios Básicos de la Automatización de Pruebas

  • Paradigmas de automatización
  • SCRIPTING
  • RECORD AND PLAYBACK
  • MODEL BASED TESTING / MODEL DRIVEN TESTING
  • Diseño de pruebas según objetivos
  • Priorización: decidir qué y cuándo automatizar

Diseño de Suites de Prueba

Generalmente todas las herramientas nos permiten agrupar los casos de prueba, de manera de tenerlos organizados, y ejecutarlos en conjunto. La organización la podemos definir por distintos criterios, dentro de los cuales podemos considerar:

  • Módulo o Funcionalidad: agrupando todos los casos de prueba que actúan sobre una misma funcionalidad.
  • Criticidad: podríamos definir un grupo de pruebas que se debe ejecutar siempre (en cada build), ya que son las más críticas, otro de nivel medio, que lo ejecutamos con menos frecuencia (o tal vez que se seleccionan solo si hay cambios en determinadas funcionalidades), y uno de poca criticidad, que ejecutaríamos opcionalmente si  contamos con tiempo para hacerlo (o cuando cerramos un ciclo de desarrollo y queremos ejecutar todas las pruebas disponibles).

Nomenclatura

Es importante definir una nomenclatura de casos de prueba y carpetas (o lo que brinde la herramienta de automatización para organizar las pruebas).

Automatización

En cuanto a la automatización, algunas de las tareas a planificar son las que se ven a continuación:

  • Automatización
  • Mantenimiento
  • Ejecuciones
  • Verificación y reporte de bugs
  • Correcciones de bugs detectados

Probando en busca de falsos negativos

Si el software está sano y no queremos que se muestren errores, debemos asegurarnos que la prueba está probando lo que quiere probar, y esto implica verificar las condiciones iniciales tanto como las finales.

Probando en busca de falsos positivos

Si el software está enfermo, ¡la prueba debe fallar! Una posible forma de detectar los falsos negativos es insertar errores al software y verificar que el caso de prueba encuentre la falla.

Pruebas de sistemas que interactúan con sistemas externos

Las herramientas de automatización (al menos las que nos estamos enfocando aquí) tienen como objetivo reproducir la interacción del usuario con el sistema, por lo tanto estas complejidades de fondo son casi indiferentes. Una vez que el usuario presiona un botón, la lógica que se ejecuta a partir de esa acción pude ser simple o compleja, pero a la vista de la herramienta eso está oculto (tan oculto como lo está a la vista del usuario), lo que importa para automatizar es la interfaz de usuario en este caso.

Ejecución de Pruebas Automáticas

Tenemos que considerar muchos elementos que son parte del ambiente:

  • Los fuentes y ejecutables de la aplicación bajo pruebas.
  • Los artefactos de prueba y los datos que estos usan.
  • A su vez los datos están relacionados con la base de datos del sistema bajo pruebas, con lo que tendremos que gestionar el esquema y los datos de la base de datos que se corresponden con el entorno de pruebas

Si un reporte me dice que hubo un fallo, lo primero es determinar si el fallo se debió a los Test Cases. Hay que asegurarse que la culpa no es del test antes de reportar un bug (error) a un desarrollador.

ter Dictionary. Software Engineering Terms. 1990).

Pruebas de rendimiento (Performance Y Stress)

Se usan para mitigar riesgos relacionados con la continuidad del negocio, potenciar o asegurar la buena imagen corporativa, que podría verse afectada ante el mal funcionamiento de sus aplicaciones. Y en última instancia para controlar los costos derivados de la gestión correcta.

El Área de Tecnología e Innovación es la responsable de proveer soluciones para clientes en: Pruebas de Rendimiento que aborden la problemática de asegurar el comportamiento de las aplicaciones ante escenarios hostiles o adversos relativos a uso intensivo de los recursos o una carga de trabajo inesperada por un alto volumen de accesos concurrentes.

Tipos de Pruebas

Pruebas de rendimiento (Performance Testing)

Validan la escalabilidad, estabilidad y velocidad (tiempos de respuesta) del sistema bajo evaluación. Niveles de uso de los recursos que cumplan con los objetivos de desempeño para el sistema.

Pruebas de carga (Load Testing)

Esta sub-categoría de pruebas de rendimiento se centra en determinar o validar las características de rendimiento del sistema o la aplicación cuando es sometido a cargas de trabajo y los volúmenes de carga prevista para la operación normal en producción.

Pruebas de estrés (Stress Testing)

Pruebas centradas en validar características de rendimiento del sistema bajo condiciones superiores a lo previsto en las operaciones de producción (grandes volúmenes de carga).

Tipos de Herramientas utilizadas

Las Pruebas de Rendimiento son dependientes del tipo de herramientas que se utilice, se puede trabajar con herramientas licenciadas y Open Source, según las necesidades algunas conocidas son:

  • IBM® Rational ® Performance Tester (Licencia IBM).
  • Apache JMeter™ (Open Source).