sábado, 6 de julio de 2013

¿Como Verificar y Validar un Software?


Les Traigo un material recopilado de algunos aspectos importantes de lo que es Verificación y Validación de Software.

 Leer Mas...

miércoles, 29 de mayo de 2013

Lo que se espera del Diseño de Software

Nuevas Tendencias

            Toda empresa que desee tener de manera ordenada sus operaciones, procesos, la manera diaria en cómo se llevan los datos, como se administras los recursos y como factor principal la gestión adecuada de su información, aquí es donde se puede ver que llegan esos diseñadores o empresas encargadas del desarrollo de software, ya que no son más que diseñadores de sistemas personalizados para cada empresa diferente. El que una empresa cuente con un sistema personalizado para realizar sus tareas quiere decir que tendrá control total sobre el flujo de sus operaciones y recursos ya que para que esto se logre se deben analizar de manera detallada sus procesos.


            Hoy día se pueden percibir una gran variedad de metodologías para el desarrollo de software, un diseñador digno debe conocer esta gran variedad para resolver cualquier problema. Desde mi perspectiva la evolución de estos modelos a pesar que han evolucionado considerablemente aun no predominan por encima de algunos mas antiguos, le falta un poco mas de madurez y pruebas para su utilización como metodología en sí, para mi hacia dónde van los software es a una combinación de Técnicas de cuarta generación y programación extrema, aunque según una entrevista realizada al Dr. Ceballos S. Francisco Sierra en el 2009 dice que “La tendencia es unir el mundo de los lenguajes de programación de propósito con el mundo de las bases de datos”, asi para evolucionar esta herramienta tan poderosa como lo es la internet

martes, 28 de mayo de 2013

Para los que quieran conocer el Cambio Leerlo.!

Programación Extrema

            “La Programación Extrema, como proceso de creación de software diferente al convencional, nace de la mano de Kent Beckes, es una metodología de desarrollo ligera basada en una serie de valores y de prácticas de buenas maneras que persigue el objetivo de aumentar la productividad a la hora de desarrollar programas” Kent Beck 2002.

            Este modelo es como la revolución de la manera de diseñar software, es una recopilación de diversos métodos de diseño de sistemas es decir no es algo nuevo ni algo que se invento, simplemente es una recopilación de algunos métodos que se consideraron importantes y resaltantes, cabe destacar que los que se encargaran del modelado, diseño y creación del sistema deben ser personas especializadas para facilitar su implementación.


            El gran cambio y que se denota mucho mas desde mi punto de vista es que este modelo trabaja demasiado con el usuario final, es decir ya no lo colocan en ese lugar de usuario final si no como un colaborador más al momento del diseño del sistema, yo considero eso de gran ayuda ya que el usuario puede ir observando que le va gustando, que le puede gustar que llevara demás para quedar completamente satisfecho y obviamente poder detectar esos errores que solo los usuario finales podrán conseguirse, este modelo usa algo similar al portotipado pero en mayor escala ya que aquí se le entrega desde un principio una parte del sistema para ir adaptando al usuario y mediante sus experiencias, el sistema ira evolucionando. 

Una Mirada al Futuro del Diseño de Software

Técnicas de Cuarta Generación

            Las técnicas de cuarta generación “fueron primeramente usado para describir a los lenguajes de especificación, que son lenguajes de alto nivel no procedurales, el usuario define qué se debe hacer, no cómo debe hacerse, la denotación 4GL fue utilizada por primera vez por James Martín en 1982 para referirse a la falta de procedimientos de alto nivel lenguajes de especificación” Martin James 1981.

            Estas técnicas viene a revolucionar un poco ese mundo de los programadores acostumbrados al código puro, secuencias, bloques de código fuente y muchas cosas más, ya que este modelo simplemente requiere algunas especificaciones de que se desea y el de forma automática generara lo que se le está pidiendo, es decir nosotros le diremos lo que queremos pero no necesitaremos decirle cómo hacerlo y de qué manera estructurarlo para diseñarlo ya que el mismo tomara las decisiones pertinentes para entregarnos el resultado. Este tipo de lenguaje es de alto nivel ya que lo se busca es dejar un poco de lado ese mundo de cientos de líneas de código, simplemente ofrecerle al usuario una interfaz donde exponga lo que desea y las operaciones de realicen de manera automática. Algunos lenguajes de cuarta generación que existen hoy día son:

   v  SheerPower4GL
   v  PowerBuilder
   v  WinDev
   v  Focus
   v  Natural
   v  Progress4GL
   v  SQL  
   v  Oracle Reports
   v  PostScript
   v  Matemática
   v  MatLab
   v  Ramis

Para finalizar quisiera decir que simplemente este modelo lo que busca es convertir el lenguaje de programación al lenguaje humano.


lunes, 27 de mayo de 2013

Modelo de Diseño de Software mas Secuencial que Flexible

Métodos Formales

      "Un método formal es una técnica basada en matemáticas, usada para describir sistemas de hardware o software", Wing, Jeannette M. (1990), en la década de los 80 investigadores del desarrollo del software propusieron que era método formal para el siglo XXI, la gran mayoría de los sistemas estarían basados en este modelo, pero estaba muy equivocado, mencionare 4 razones por las cuales esos científicos se equivocaron:

1.    Una ingeniería del software exitosa:  a medida del avance del mundo y esta sociedad ya rodeada de grandes tecnologías, el desarrollo de los sistemas se ha vuelto un poco más flexible, más ajustado a nuestras fortaleza que simplemente basados a matemáticas y datos cuantificables.

2.    Cambios en el mercado: obviamente al evolucionar la tecnología las exigencias para las empresas surgieron de la noche a la mañana y con ella más problemas que resolver, este método formal por su estricto orden no permitía el desarrollo del sistema con rapidez, a pesar de que un sistema quedara con algunas fallas, las empresas tomaron ese riesgo a cambio de ganar tiempo y no frenar su producción.

3.    Ámbito limitado de los métodos formales: este método no era la mejor opción en cuanto a interfaz de usuario y eso se ha convertido en un punto sumamente clave a la hora de crear un sistema.

4.    Escalabilidad limitada: a pesar de ser muy fiable este método aun no es reconocido por grandes trabajos, los que han tenido éxito son los relacionados con sistemas críticos relativamente pequeños.

Modelo de Actualización de Software

Modelos Evolutivos

            Para empezar quisiera definir lo que significa modelo informático “representación de la realidad por medio de abstracciones que enfocan ciertas partes importantes de un sistema, restándoles importancia a otras” David Rodríguez. Los modelos más resaltantes en que se pueden dividir son:

   v  Modelo en Cascada
   v  Desarrollo Evolutivo
   v  Ingeniería del Software basada en Componentes

Estos modelos básicamente se basan es en la evolución a medida que los cambios, mejoras y circunstancias se los exijan, que se quiere decir, cuando se crea un software siempre se tiene que pensar de qué manera se puede ir mejorando no solamente dejarlo hasta el punto donde se creó si no ya tener una visión mas ambiciosa de que lo que se podría llegar a convertir nuestro sistema. En este modelo se le entrega a los usuarios finales un sistema para su pruebas iniciales  con esto ya al ir probándolo se irán encontrando los inconvenientes o satisfacción total por parte de los usuarios (rara vez un sistema nuevo satisface todas las necesidades), otro aspecto importante de estos modelos es que no se entrega el sistema en su totalidad como tenemos planeado, si no que a medida de su receptividad y funcionamiento se le irán agregando poco a poco todas esas mejoras y actualizaciones que deseamos. Estos 2 métodos evolutivos del diseño de sistemas son el desarrollo exploratorio y el de prototipos desechables.

Para finalizar este modelo simplemente busca mejorar o actualizar un software ya viejo para así aumentar su eficiencia y productividad.

Modelo de Desarrollo Rápido de Aplicaciones

Modelo RAD

            Sus siglas en ingles significan Rapid Application Development esta manera de diseñar software fue iniciada por James Martin en 1980, este método usa el desarrollo repetitivo, algunos prototipos y herramientas CASE, mayormente para empresas donde necesitan solucionar un problema lo antes posible ya que no cuentan con tiempo y así poner a funcionar un sistema en un tiempo corto de tiempo.

            Este modelo consta de 4 fases principales que son:

  Ø  Planificación  de los requisitos
  Ø  Diseño
  Ø  Construcción   
  Ø  Implementación

Para la recolección de los requisitos algunas personas expertas en todos los aspectos de la empresa y que conocen sus procesos facilitaran la información que tendrá el sistema para solucionar el problema existente. Se analizan los datos recogidos para plantear una posible solución, cabe destacar que los usuarios participan activamente en estos procesos, ya se decidió lo que se hará ahora solo queda empezar la construcción del sistema, los programadores tendrán la ventaja de contar con la opinión de los usuarios finales en el momento de la construcción así poder evaluar los procesos y ver cómo van fluyendo los resultados, ya como último paso es la implantación del sistema, obviamente se tiene que preparar a los usuarios para que lo puedan manejar.

            Algunas características importantes de este tipo de diseño es que los encargados del diseño deben programar, analizar y diseñar es decir tienen que ser personas con trayectoria en la materia del desarrollo de software, cada repetición tiende a durar de 1 día a tres semanas

domingo, 19 de mayo de 2013

El Plagio y el Dilema del Conocimiento


El Plagio: el Antes y el Ahora

            Para empezar mi título es porque quiero englobar un poco sobre lo ya mencionado, tratar de entrelazar ese mundo del plagio como era antes de esta nuevo mundo tecnológico y las repercusiones que para algunos a traído.

            Cada día las sociedades van evolucionando creciendo mas y mas , obviamente gracias a esto el flujo de información circulando por las redes es súper altísimo comparado a 2 o 3 años atrás, como yo lo veo siempre las sociedades tienen que ir adaptándose a las situaciones que se le van presentando, con esto no quiero decir que tienen que cambiar de manera radical, pero gradualmente se tiene que ir cambiando un poco de lo viejo para ver un poco de lo nuevo que la humanidad crea día a día, a pesar que el plagio para muchos se vea como una desventaja, para muchos profesores su lema en los trabajos de investigación es su “copie y pege”, pero si se mira bien y desde otra perspectiva solo es esa primera fase del cambio, el primer escalón que estamos tocando para ir al siguiente nivel en cuanto al manejo e interacción de información, se ve desde una perspectiva mala hoy día porque estábamos acostumbrados a simplemente lo que decía el profesor era verdad y los alumnos no tenían esa oportunidad de interactuar para expresar sus ideas. Cuál es mi punto; simplemente no enfrentar el plagio si no diseñar nuevas maneras para valorar el conocimiento de los estudiantes.

¿Quieres Evitar el Plagio?


El Plagio, como se reconoce y algunas pautas para evitarlo.

            El plagio simplemente es tomar ideas, frases o pensamientos de otras personas, no dar a saber que la información que estamos usando es de otro, es decir no le damos el crédito al dueño de la información que estamos usando, cuando tratamos de usar alguna frase o párrafo de algún autor que pueda de ser ayuda a nuestro trabajo. En muchas universidades respetables el plagio es una grave falta aunque no sepas que lo haces, pueden incurrir en el avance de los estudios de una persona o incluso la expulsión del mismo, aunque en los primeros niveles del estudio tal vez no se vea que afecte mucho para mi opinión crea repercusiones sobre cómo se va desarrollando el lado investigativo de los estudiantes (a mi criterio).

            Para reconocer lo que es el plagio prácticamente habría que saberse de memoria miles de cosas, libros y frases, con el desarrollo del software, programas y aplicaciones han aparecido algunos software:

  v  The Plagiarism Checker
  v  Articlechecker
  v  Viper
  v  Plagium

Las maneras más efectivas para no cometer plagio no es simplemente copiar, pegar y cambiarle el lugar a las palabras ya que el parafraseo aunque no se vea igual si no se hace de manera correcta no puede dejar en el mismo lugar estancados, así que para mi parecer simplemente lee detenidamente lo que quieras usar analízalo y escribe lo que entendiste, no está demás un citar a quien pertenece la idea original.

sábado, 18 de mayo de 2013

El Plagio Vs el Futuro


El Plagio Vs  Ciber-Cultura

            En mis resúmenes pasados ya hable un poco lo que es el plagio y ese fenómeno que se ve hoy por hoy sobre el manejo masivo de la información a través de internet. Estas dos posturas son bien apoyadas ambas por sus propias razones, citare algunos personajes para ver como defienden ellos cada una:

 v  "El plagio es un fraude doloso contra la producción literaria, artística o científica de un        autor, en la que basándose en una creación precedente, una persona se adjudica como propios trabajos de otros", según Virgilo Balbuena1.

 v  “El plagio abraza la frase de un autor, utiliza sus expresiones, borra una falsa idea y la sustituye por otra correcta”, según Critical Art Asemble 1994.

Cada una de estas dos posturas del plagio son validas claro eso dependiendo del punto de vista y el sentido que cada persona le quiera dar a este, por ejemplo el plagio en épocas pasadas era algo totalmente ilegal no se permitía de ninguna manera, de ahí es donde sale los fulanos derechos de autor, más que fines económicos eran para resguardar quien era el dueño de todo esas palabras o ideas que habían plasmadas, hoy día ya la humanidad se encuentra en otro tipo de proceso de aprendizaje debido a la aparición de las redes informáticas y de comunicación digitales, ahí es donde se afirma la segunda postura que simplemente de lo que habla es de la cooperación de información para el desarrollo de tecnológico y cultural.

Plagio en la Internet


Ciber-Plagio


            La aparición del internet en la sociedad como en el mundo ha sido una gran ventaja para los investigadores, estudiantes u otra persona que le interese saber algo desde la red, este gran desarrollo a traído como consecuencia lo que hoy se conoce como ciber-plagio es tomara cosas de los demás y hacerlas nuestras, gracias a la facilidad con la que contamos para obtener información que es el uso del internet, también han surgido algunos problemas, de los cuales algunas personas se han ido beneficiado de estas mismas, no como investigadores si no como mas “copias y pegar”, este término es muy escuchado hoy día en distintos niveles de educación

            Con la masificación y relevancia que tiene hoy día el internet para algunas personas ya se han sustituido casi todos los metedos de búsqueda dejando primordialmente solo el internet por la facilidad del mismo (copiar y pegar), a esto se le suma el intento por obtener mejores calificaciones, pereza y apatía a la hora de investigar y analizar alguna información distintivamente de lo que sea. Existen 2 tipos de plagios:

    Ø   El plagio intencional.

    Ø  El plagio accidental.

Debido a la aparición de este fenómeno los educadores se han visto en la necesidad de hacerse uso de la tecnología para tratar de detectar este tipo de irregularidad en sus actividades puntuadas, de alguna manera si no manejan la tecnología tratar de comparar, leer y analizar muy bien lo que le entregan para tratar de localizar algún intento de plagio.

viernes, 17 de mayo de 2013

Herramienta de Trabajo Digital


Portafolio Digital


            Antes de empezar a desarrollar sobre este tema quisiera desarrollar el concepto de lo que es un portafolio digital es la “selección deliberada de los trabajos de un alumno que en cierta forma nos cuenta la historia de sus esfuerzos, su progreso, y sus logros”, como ya hoy en día se logra apreciar en nuestra sociedad vivimos rodeados de nuevas tecnologías y artefactos que cada día van en ascenso, de esa forma una herramienta muy útil que ha tomado cierto grado de importancia en el mundo educativo (por esos profesores que toman en cuenta la tecnología) y es el portafolio digital, es una manera de dejar un poco esa monotonía vieja de enseñar solo de manera de ordenanza por parte de terceros, crear una conciencia mas allá de lo que queremos, sembrar esa semilla de la inquietud, la curiosidad por el conocimiento.

            Algunas de las características que posee el portafolio digital es que es de fácil manipulación, fácil de modificarlo ya que lo tenemos de manera digital, nos deja ver como se evoluciona en ese proceso de enseñanza, claro sin dejar de lado la ayuda o orientación por parte del profesor y así permitirle al mismo poder apreciar, valorar la manera en que el alumno va desarrollando las actividades pautadas por él. Para culminar quisiera mencionar algunos tipos de portafolio según Jones, 2008 se pueden distinguir distintos tipos:

    Ø  Portafolio de Evaluación
    Ø  Portafolio de Aprendizaje
    Ø  Portafolio de Demostración de las Mejores Practicas
    Ø  Portafolio de Transición