User interface design

User interface design is how humans interact with the computer, the goal is to make the life of the users as simple as possible.

The design is the process that is needed by creating webpages,  myself applications, by building assessment and by creating any interactive device.

There’s a lot that goes into creating a beautiful (and usable) interface. It’s a constant balance between creating something that looks amazing and still makes sense to your users.

Principles :

Clarity
Conserve attention at all costs
Keep users in control
Direct manipulation is best
Keep secondary actions secondary
Provide a natural next step
Consistency matters
Appearance follows behavior
Strong visual hierarchies work best
Smart organization reduces cognitive load
Highlight, don’t determine, with color
Progressive disclosure
Great design is invisible
Build on other design disciplines

 

fdsfsd.jpg


Software maintenance

Software maintenance is the activities perfomed to keep software operational. Those activities are code changes, configuration changes and environment changes

Code changes involves changes to the software of the source code of the software, this is done by developers. This is needed in order to debug de code.

Configuration changes are parameters that control the behavior of the software, this can be set of chains after the software has been built. This is done by tech support or operator.

Environment Changes is the modification of a softwareproduct after delivery to correct faults, to improve performance or other attributes. A common perception of maintenance is that it merely involves fixing defects.

 

ssdsd.jpg


Validación y verificacion de software

Los objetivos de las actividades de verificación y validación son valorar y mejorar la calidad de los productos del trabajo generados durante el desarrollo y modificación del software.

Los atributos de la calidad deben ser la corrección, la perfección, la consistencia, la confiabilidad, la utilidad, la eficacia, el apego a los estándares y la eficacia de los costos totales.

Hay dos tipos de verificación: formal y del ciclo de vida. Esta última consiste en el proceso de determinar el grado de los productos de trabajo de una fase dada del ciclo de desarrollo cumplen con las especificaciones establecidas durante las fases previas. La verificación formal es una rigurosa demostración matemática de la concordancia del código fuente con sus especificaciones.

La validación es la evaluación del software al final del proceso de desarrollo del software para determinar su conformidad con los requisitos IEEE.

La verificación y validación implican la valoración de los productos de trabajo para determinar el apego a las especificaciones, incluyen las especificaciones de requisitos, la documentación del diseño, diversos principios generales de estilo, estándares del lenguaje de instrumentación, estándares del proyecto, estándares organizacionales y expectativas del usuario, al igual que las meta especificaciones para los formatos y notaciones utilizadas en la especificación de productos diversos.

¿Qué es verificación?

La verificación se enfoca más al proceso de evaluación del sistema o componentes ya que permite determinar si los productos de una determinada fase del desarrollo satisfacen las condiciones impuestas en el inicio de la etapa.

¿Qué se debe tener en la verificación?

  • Consistencia: vigilar que la información sea coherente.
  • Precisión: corrección de la sintaxis.
  • Completitud: lagunas en capacidad deductiva.

Lo que se hace en la verificación:

Diseño de interfaz de usuario

El diseño de interfaz de usuario o ingeniería de la interfaz es el diseño de computadoras, aplicaciones, máquinas, dispositivos de comunicación móvil, aplicaciones de software, y sitios web enfocado en la experiencia de usuario y la interacción.

Normalmente es una actividad multidisciplinar que involucra a varias ramas es decir al diseño y el conocimiento como el diseño gráfico, industrial, web, de software y la ergonomía; y está implicado en un amplio rango de proyectos, desde sistemas para computadoras, vehículos hasta aviones comerciales.

Su objetivo es que las aplicaciones o los objetos sean más atractivos y además, hacer que la interacción con el usuario sea lo más intuitiva posible, conocido como el diseño centrado en el usuario. En este sentido las disciplinas del diseño industrial y gráfico se encargan de que la actividad a desarrollar se comunique y aprenda lo más rápidamente, a través de recursos como la gráfica, los pictogramas, los estereotipos y la simbología, todo sin afectar el funcionamiento técnico eficiente.

Imagen relacionada

 


User interface design

Es el diseño de software que se basa en la experiencia del usuario, es la parte del programa con la que el usuario interactúa, interfaz gráfica. Actualmente está presente en  los programas para hacer la comunicación con el programa más amigable y fácil.

El diseño de la interfaz gráfica está hecho de manera en que sea fácil la manipulación de este y el desenvolvimiento del  del usuario. La interfaz de usuario es el medio que comunica a la computadora y al usuario, de manera que la computadora responde a lo que el usuario quiera hacer con el programa. Si ésta no existiera el usuario necesitaría tener conocimientos más avanzados para lograr interacción con ésta, en cambio con la interfaz gráfica se simplifica mucho.

El software se convierte más popular si la interfaz gráfica es atractiva, intuitiva, simple, fácil de usar, agradable a la vista, responsiva y amigable con el usuario.

Las actividades del diseño de la interfaz de usuario son:

Revisión de los requerimientos de GUI

Análisis de usuario

Análisis de tarea

Diseño e implementación de GUI

Pruebas

Lo más importante a considerar al desarrollar una Interfaz de Usuario son:

Coherencia: secuencias de acciones serán requeridas en situaciones similares. Así como el diseño visual del programa debe seguir una patrón establecido, si no el programa deja ser atractivo.

Permitir al usuario poder usar atajos, entre más eficiente sea el programa, el usuario lo usará más, por eso es importante la creación de éstos. Además de que el usuario ahorra tiempo en la comunicación con el programa.

Dar comentarios informativos: Así cuando el usuario esté usando alguna parte del programa con la que no esté familiarizado estos pueden ser de gran utilidad. Pero en las partes del programa que el usuario utiliza con frecuencia estos mensajes pueden ser molestos, por esta

Continue reading "User interface design"

Software maintenance

El mantenimiento del  software es una parte importante del system development life cycle.

Es cuando modificamos el código después de la entrega de éste, ya sea para mejorarlo, haciéndolo más eficiente. Así vuelve a comenzar el ciclo, después de este paso. Se enfoca más en la corrección de los defectos del software.

Aunque la mayoría de las veces se mejora el programa añadiendo más funciones que el usuario necesite del software, así se pueden satisfacer las necesidades del cliente con el software.

Existen cuatro tipos de mantenimiento:

Mantenimiento correctivo:  Este incluye a las modificaciones y actualizaciones hechas para corregir los problemas que fueron detectados por el usuario.

Mantenimiento adaptativo: este se basa en las modificaciones y actualizaciones aplicadas para mantener al software congruente con las tendencias de tecnológicas que haya en el momento.

Mantenimiento perfeccionista: Cambios hechos para que el software sea usable por un largo tiempo.  Esto incluye nuevas características que responden a los requerimientos actuales del usuario, los cuales son para redefinir al programa y mejorarlo.

Mantenimiento preventivo: Este incluye las modificaciones para prevenir futuros problemas con el programa, se enfoca en atender a los problemas que nos son significativos en el momento de la modificación, pero sí lo pueden ser en el futuro.

Las actividades del mantenimiento son:

Identificación y seguimiento

Análisis

Diseño

Implementación

Pruebas de sistema

Aceptación de pruebas

Entrega

Manejo de mantenimiento

Resultado de imagen para software maintenanceResultado de imagen para software maintenance

Chequen este vídeo.

 

 

 

Fuente.

Foto de portada de Flickr por ryan harvey.

 


User Interface Design

3013865652_b3ea69377d_o
flickr photo by jeferonix https://flickr.com/photos/jeffreywarren/3013865652 shared under a Creative Commons (BY-SA) license

Everyone have navigated on a website, in the menu of an application or in the menu of the video game like the settings, and had positive thoughts about it, for example: “it very easy to use this app”, “I found really fast the setting I was looking for”, “The use of this app almost feels like something natural”. But there are also negative that frustrate us because we can’t do what we want with the application, for example: “I don’t understand how to use this app”, “I got lost in the navigation menu”, “I can’t find the setting I changed early”, etc.

The reaction or the experience of the user when using software doesn’t only depend on the functionality and the aesthetically design, what more influences the user to feel comfortable or not is the user interface.

User Interface (UI) Design focuses on anticipating what users might need to do and ensuring that the interface has elements that are easy to access, understand, and use to facilitate those actions.

                                                                        From usability

This means that user interface design is about thinking like a common user instead of an experience programmer that already knows what the software does. It can also be interpreted as molding the functionality of the software so it could be used more “naturally”, in other words, that you can use the software like if it where something of common sense.

There many elements, principles and other concepts in user interface design that explaining all of them will make this post very huge, so I will share this page to find more info about it.

 

References:

https://www.usability.gov/what-and-why/user-interface-design.html

http://bokardo.com/principles-of-user-interface-design/


Software Maintenace

Maintenance is a well-known concept, the general idea is to prevent things to stop doing what is supposed to do; this can be applied to everything, for example, we usually have the car to have maintenance so we can prevent future problems that will be more expensive than the maintenance.

In software there is no difference, every program needs maintenance to prevent future problems, even if software is not a physical thing, is also a product that has a functionality, and because of that, is vulnerable to suffer malfunction with the time.

Software maintenance is defined as the process of modifying a software system or component after delivery to correct faults, improve performance or other attributes, or adapt to a changed environment.

            From here.

flickr photo by osde8info https://flickr.com/photos/osde-info/4849284182 shared under a Creative Commons (BY-SA) license
flickr photo by osde8info https://flickr.com/photos/osde-info/4849284182 shared under a Creative Commons (BY-SA) license

As the previous quote suggest, maintenance corrects faults, improve performance, adapt and prevents problems; this means that there four types of maintenance: the corrective, the adaptive, the perfective and the preventive.

The corrective seeks for malfunctions and problems in the system, then it modifies it to solve problems and bugs; the adaptive applies modification to keep the product up to date to the ever changing world of technology and business environment; the perfective is to improve performance and to keep the software usable over a long period of time, as well as adding more functional requirements and new features; and the preventive aims to attend insignificant problems that may cause serious problems in the future.

Software maintenance is the last step of the software life-cycle; from here you may be wondering why is a cycle? why the gathering is required again? This is because in maintenance you are looking for new problems and new requirements that then, you will have to design,

Continue reading "Software Maintenace"

Just keep it simple.

Software Engineering

User Interface, what is it ? It is not only where they can interact and write commands, like in terminal, in fact, bash and terminal applications are user interfaces. But not everyone is as tech savvy as others. So that’s why we must take the final user into account. Not only because it is he the one who pays, but also the one you must help. So, long story, short UIs are:

The means by which the user and a computer system interact, in particular the use of input devices and software.

This concept is something that changes across history, we didn’t have those cool transparency effects on the Mac Lisa. Developers have adapted to what the user needs and their experience. By the way, this experience is called User Experience (UX) and it has a strong link with UI Design. In fact, design provides the experience. These two…

View original post 296 more words


VERIFICATION vs VALIDATION

Criteria Verification

Validation

Definition The process of evaluating work-products (not the actual final product) of a development phase to determine whether they meet the specified requirements for that phase. The process of evaluating software during or at the end of the development process to determine whether it satisfies specified business requirements.
Objective To ensure that work products meet their specified requirements. To demonstrate that the product fulfills its intended use when placed in its intended environment.
Question Are we building the product right? Are we building the right product?
Evaluation Items Plans, Requirement Specs, Design Specs, Code, Test Cases The actual product/software.
Activities
  • Reviews
  • Walkthroughs
  • Inspections
  • Testing

It is entirely possible that a product passes when verified but fails when validated.

Example: A product is built as per the specifications but the specifications themselves fail to address the user’s needs.

References:

http://softwaretestingfundamentals.com/verification-vs-validation/

flickr photo by rosefirerising https://flickr.com/photos/rosefirerising/16319223902 shared under a Creative Commons (BY-NC-ND) license