Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Desarrollo de Aplicaciones unidad 9, Apuntes de Desarrollo de Software

Desarrollo de Aplicaciones unidad 9

Tipo: Apuntes

2019/2020

Subido el 20/02/2020

roberto-ivan-santiago-hernandez
roberto-ivan-santiago-hernandez 🇲🇽

5

(3)

5 documentos

1 / 40

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
1
20 FEBRUARY
UNIVERSIDAD DA VINCI
Creado por: ROBERTO IVAN SANTIAGO HERNANDEZ,
MATRICULA: A0123111915
UNIDAD IX. DISEÑO DE
INTERFAZ
UNIDAD IX. DISEÑO DE
INTERFAZ
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28

Vista previa parcial del texto

¡Descarga Desarrollo de Aplicaciones unidad 9 y más Apuntes en PDF de Desarrollo de Software solo en Docsity!

20 FEBRUARY

UNIVERSIDAD DA VINCI

Creado por: ROBERTO IVAN SANTIAGO HERNANDEZ, MATRICULA: A

UNIDAD IX. DISEÑO DE

INTERFAZ

UNIDAD IX. DISEÑO DE

INTERFAZ

Foro U

A partir de los contenidos de la unidad responde: Aspecto 1: ¿Cuál es la importancia de la usabilidad durante el diseño y construcción e aplicaciones destinadas a la industria? La usabilidad es la capacidad del producto software para ser entendido, aprendido, usado y resultar atractivo para el usuario, cuando se usa bajo determinadas condiciones. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:  Capacidad para reconocer su adecuación. Capacidad del producto que permite al usuario entender si el software es adecuado para sus necesidades.  Capacidad de aprendizaje. Capacidad del producto que permite al usuario aprender su aplicación.  Capacidad para ser usado. Capacidad del producto que permite al usuario operarlo y controlarlo con facilidad.  Protección contra errores de usuario. Capacidad del sistema para proteger a los usuarios de hacer errores.  Estética de la interfaz de usuario. Capacidad de la interfaz de usuario de agradar y satisfacer la interacción con el usuario.  Accesibilidad. Capacidad del producto que permite que sea utilizado por usuarios con determinadas características y discapacidades. Características principales de la usabilidad Una vez abordado el concepto de usabilidad según las distintas fuentes mencionadas, es claro que abordarla implica también revisar una serie de aspectos relacionados con el uso y la manera en que las personas se relacionan con los sistemas que se les ofrecen.

Conociendo sus características y aplicándoles principios de diseño con ingeniería, se obtendrán una serie de beneficios, entre los que podemos destacar:

  • Reducción de los costos de aprendizaje y consecuentemente los de asistencia y ayuda al usuario.
  • Optimización de los costos de diseño, rediseño y mantenimiento.
  • Aumento de la tasa de conversión de visitantes a clientes de un sitio web.
  • Mejora de la imagen y el prestigio.
  • Mejora en la calidad del producto.
  • Mejora la calidad de vida de los usuarios, ya que reduce su estrés, incrementa la satisfacción y la productividad. Todos estos beneficios implican una reducción y optimización general de los costos de producción, así como un aumento en la productividad. La usabilidad permite mayor rapidez en la realización de tareas, menor riesgo o propensión a errores y reduce las pérdidas de tiempo. Debido a que la Interfaz de Usuario (IU) es la puerta hacia la funcionalidad del sistema subyacente, es necesario diseñarla de tal forma que sean usables para los usuarios, ya que un mal diseño se convierte en un factor que limita su uso. Un software es fácil de utilizar si realiza la tarea para la que lo estamos usando de una manera fácil, eficiente e intuitiva. La facilidad de aprendizaje se puede medir por la velocidad con que se realiza una tarea, cuántos errores se cometen y la satisfacción de la gente que lo utiliza. Consideraciones de la usabilidad La usabilidad idealmente debe considerarse desde el inicio del proceso de desarrollo hasta las últimas acciones antes de implementar el sistema, producto o servicio disponible al público. Antes de iniciar el proyecto es esencial tener una idea acerca de las características de los usuarios y de los aspectos del producto en cuanto al interés y necesidad que podría tener el usuario.

Teniendo en cuenta estas consideraciones de forma temprana se ahorra tiempo y dinero, dado que la posterior implementación de nuevos aspectos o nuevas interfaces de usuario implican un enorme esfuerzo adicional. Durante todo el desarrollo se han de realizar pruebas para comprobar que se está considerando la usabilidad del producto. Incluso una vez que el producto está en el mercado se debería preguntar a los usuarios acerca de sus necesidades y actitud respecto del mismo. La usabilidad incluye consideraciones tales como: a) ¿Quiénes son los usuarios, qué es lo que saben y qué pueden aprender? b) ¿Qué quieren o necesitan hacer los usuarios? c) ¿Cuál es el contexto general de los usuarios? d) ¿Cuál es el contexto en el cual los usuarios están trabajando? e) ¿Qué hay que dejarle a la máquina? Las respuestas a estas preguntas se pueden obtener realizando análisis de usuarios y tareas al inicio del proyecto. Otras consideraciones a) ¿Pueden los usuarios realizar sus tareas destinadas a su velocidad? b) ¿Cuánto entrenamiento requieren los usuarios? c) ¿Qué tipo de documentación o material de soporte está disponible para ayudar al usuario? ¿Pueden encontrar las soluciones que buscan en estos materiales? d) ¿Cuáles y cuántos errores cometen los usuarios cuando interactúan con el producto? e) ¿El usuario puede recuperarse de los errores? ¿Qué tienen que hacer para recuperarse de los errores? ¿El producto ayuda a los usuarios a recuperarse de los errores? ¿El software presenta errores de mensajes comprensibles e informativos? f) ¿Existen disposiciones especiales para satisfacer las necesidades de los usuarios con discapacidades? (Accesibilidad).

Codigos del Modelo: package modelo; /**

  • @author ARYRI */

public class textiles { private Integer codtextilfab; private String nombre; private double precioventa; private String fechafab; void textiles(){ this.codtextilfab = 0; this.nombre = null; this.precioventa = 0.0; this.fechafab = null; } public textiles(Integer codtextilfab, String nombre, double precioventa, String fechafab) { this.codtextilfab = codtextilfab; this.nombre = nombre; this.precioventa = precioventa; this.fechafab = fechafab; } public Integer getcodtextilfab() { return codtextilfab; } public String getNombre() { return nombre; }

package u9_desapp; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import modelo.textiles; /**

  • @author ARYRI */ public class textiles_servicios { private final String tabla = "textiles"; int nivel_prioridad; public void guardar(Connection conexion, textiles tarea) throws SQLException{ try{ PreparedStatement consulta; if(tarea.getcodtextilfab() == 0){ consulta = conexion.prepareStatement("INSERT INTO " + this.tabla + "(nombre, precioventa, fechafab) VALUES(?, ?, ?)"); consulta.setString(1, tarea.getNombre()); consulta.setDouble(2, tarea.getPrecioventa()); consulta.setString(3, tarea.getFechafab());

}else{ consulta = conexion.prepareStatement("UPDATE " + this.tabla + " SET nombre = ?, precioventa = ?, fechafab =? WHERE codtextilfab = ?"); consulta.setString(1, tarea.getNombre()); consulta.setDouble(2, tarea.getPrecioventa()); consulta.setString(3, tarea.getFechafab()); nivel_prioridad = (int) tarea.getcodtextilfab(); consulta.setInt(4, nivel_prioridad); } //System.out.println(consulta); consulta.executeUpdate(); }catch(SQLException ex){ throw new SQLException(ex); } } public textiles recuperarPorId(Connection conexion, int codtextilfab) throws SQLException { textiles tarea = null; try{ PreparedStatement consulta = conexion.prepareStatement("SELECT nombre, precioventa, fechafab FROM " + this.tabla + " WHERE codtextilfab = ?" ); consulta.setInt(1, codtextilfab); ResultSet resultado = consulta.executeQuery(); while(resultado.next()){ tarea = new textiles(codtextilfab, resultado.getString("nombre"), resultado.getDouble("precioventa"), resultado.getString("fechafab"));

}catch(SQLException ex){ throw new SQLException(ex); } return tareas; } } package u9_desapp; /**

  • @author ARYRI */ import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class conexion { private static Connection cnx = null; //private static url = "jdbc:mysql://127.0.0.1:3307/u6_desapp? useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=fal se&serverTimezone=UTC"; public static Connection obtener() throws SQLException, ClassNotFoundException { if (cnx == null) { try { Class.forName("com.mysql.cj.jdbc.Driver");

cnx = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3307/fabtextiles? serverTimezone=UTC", "root", "rish0422"); } catch (SQLException ex) { throw new SQLException(ex); } catch (ClassNotFoundException ex) { throw new ClassCastException(ex.getMessage()); } } return cnx; } public static void cerrar() throws SQLException { if (cnx != null) { cnx.close(); } } } package u9_desapp; import vistas.Tareas_listar_vista; /**

  • @author ARYRI / public class Principal { /*

import u9_desapp.textiles_servicios; /**

  • @author Fernando / public class Tareas_listar_vista extends javax.swing.JFrame { private final textiles_servicios tareas_servicio = new textiles_servicios(); private List tareas; /*
  • Creates new form Guardar_tarea_vista */ public Tareas_listar_vista() { initComponents(); this.cargar_lista_de_tareas(); } private void cargar_lista_de_tareas(){ try{ this.tareas = this.tareas_servicio.recuperarTodas(conexion.obtener()); DefaultTableModel dtm = (DefaultTableModel) elemento_tabla.getModel(); dtm.setRowCount(0); int np; for(int i = 0; i < this.tareas.size(); i++){ dtm.addRow(new Object[]{ this.tareas.get(i).getNombre(),

(double) this.tareas.get(i).getPrecioventa(), this.tareas.get(i).getFechafab() }); } }catch(SQLException ex){ System.out.println(ex.getMessage()); JOptionPane.showMessageDialog(this, "Ha surgido un error y no se han podido recuperar los registros"); }catch(ClassNotFoundException ex){ System.out.println(ex); JOptionPane.showMessageDialog(this, "Ha surgido un error y no se han podido recuperar los registros"); } } /**

  • This method is called from within the constructor to initialize the form.
  • WARNING: Do NOT modify this code. The content of this method is always
  • regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane(); elemento_tabla = new javax.swing.JTable(); elemento_crear = new javax.swing.JButton(); elemento_modificar = new javax.swing.JButton();

elemento_crearActionPerformed(evt); } }); elemento_modificar.setText("Modificar"); elemento_modificar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { elemento_modificarActionPerformed(evt); } }); elemento_eliminar.setText("Eliminar"); elemento_eliminar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { elemento_eliminarActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LE ADING)

.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 375, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createSequentialGroup() .addComponent(elemento_crear) .addGap(18, 18, 18) .addComponent(elemento_modificar) .addGap(18, 18, 18) .addComponent(elemento_eliminar))) .addContainerGap(15, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BA SELINE) .addComponent(elemento_crear) .addComponent(elemento_modificar) .addComponent(elemento_eliminar)) .addGap(33, 33, 33) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 219, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(14, Short.MAX_VALUE)) ); pack(); }// </editor-fold>