Fase1_Grupo_301403_44
Short Description
Descripción: Fase 1 programacion orientada a objetos unad...
Description
Fase 1 – Análisis de requisitos
Presentado por: Herney Galvis Galvis Cód.801776610 Ronald Mauricio Bermúdez González Cód. 80165388 Grupo 301403_44
Presentado a: Franklin Lizcano Celis Tutor virtual
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD ESCUELA DE CIENCIAS BÁSICAS, TECNOLOGÍA E INGENIERÍA – ECBTI PROGRAMACIÓN ORIENTADA A OBJETOS Bogotá D.C., 14 de March de 2017
Respuestas 1. Cuál es la diferencia entre programación estructurada y programación orientada a objetos Sintaxis para definir variables en Java. Pendiente
2. Ventajas y desventajas de la programación orientada a objetos. Pendiente
3. Para la definición de variables es necesario conocer el tipo de datos En el caso de un campo de tipo cadena de texto string se define de la siguiente manera: String nombre = “Oscar”;
Como se observa se define el tipo de dato, luego el nombre de la variable y si se desea se puede asignar un valor a la misma, dicho valor se debe escribir entre comillas dobles, finalizando la línea con un “;”
Para el caso del tipo de dato entero int se define así: Int edad = 18;
Se sigue la misma directriz, primero se pone el tipo de dato, luego el nombre de la variable y si se quiere el valor de la misma, nótese que el valor de la variable tipo entero se pone sin comillas.
4. Sintaxis para imprimir en consola en Java Para realizar la impresión a través de la consola de Java usaremos la siguiente sintaxis: System.out.println ("Mensaje a mostrar");
Sin embargo, si desea concatenar diferentes variables, usará la siguiente sintaxis: System.out.println ("El precio es de " + precio + " euros");
Nótese que se usa el signo “+” para concatenar los valores que se desean mostrar en consola, colocando las cadenas de caracteres entre comillas.
5. Sintaxis para comentar en Java En Java existen tres tipos de comentarios, descritos a continuación: El comentario se utiliza para dar a conocer detalles del código generalmente se usa el comentario de una línea, usando dos diagonales al inicio del comentario // indica el comentario de una sola línea
Cuando el comentario que se debe efectuar es demasiado largo, se pueden usar comentarios de más de una línea haciendo uso de la diagonal “/” seguida por el “*” y al finalizar los renglones que desee incluir cerrará primero con un “*” y luego con la “/” /* indica comentarios que ocupan más de una línea */
La otra clase de comentarios, son aquellos que se desean documentar a través de la sentencia javadoc, lo cual permite crear un documento sencillo a partir de su código fuente /* * indica comentarios que podrán ser documentables a través de la sentencia javadoc */
6. Sintaxis de los operadores lógicos y relacionales Lógicos Los operadores lógicos son aquellos que me permiten evaluar dos o más expresiones en términos booleanos, es decir, evaluar si es verdadero o falso, los tipos de operadores lógicos en Java son: &&
AND
evalúa si ambas expresiones son verdaderas, en caso contrario el
resultado será falso, si la primera no es verdadera no evaluará la segunda, dado que es excluyente y determina que si la primera condición no se cumple el resultado será falso. ||
OR
evalúa si una de las expresiones es falsa, en caso que una sea
verdadera y la otra falsa el resultado será verdadero, en caso que la primera sea verdadera no evaluará la segunda. !
NOT
se aplica a una sola expresión, cambiando el valor de falso a
verdadero o viceversa.
Relacionales Los operadores relacionales al igual que los lógicos dan como resultado un tipo true o false, es decir booleano, éstos operadores permiten comparar dos o más expresiones y determinar el resultado, los operadores relacionales son: <
Menor que
>
Mayor que
= Mayor
o igual que
!=
Distinto
== Igual 7. Defina Clase, instancia de clase, atributo, comportamiento, identidad, constructor e identificadores. Pendiente
8. Informe los tipos de clases Las clases se describen por medio de diagramas de clases la notación para una clase es una caja rectangular que contiene el nombre de la clase
Nombre de la clase
Según la lectura hay dos tipos de clase Clases con estereotipos Clases para casos de uso
El tipo de funcionalidad o “la razón de ser” de un objeto dentro de una arquitectura se conoce como su estereotipo. Siguiendo la metodología de casos de uso, la arquitectura del sistema para el modelo de análisis se basará en tres estereotipos:
El estereotipo entidad para los objetos que guardan información sobre el estado interno del sistema a corto y largo plazo. Estos objetos corresponden al dominio del problema. Un ejemplo de objeto entidad es un registro de usuario con sus datos y comportamiento asociados.
El estereotipo borde para objetos que implementan las interfaces del sistema con el mundo externo, correspondientes a todos los actores, incluyendo a aquellos que no son humanos. Un ejemplo de objeto borde es una interface de usuario o pantalla para insertar o modificar información en el registro de usuario. Otro ejemplo es un objeto que se comunica con una base de datos externa al sistema. El estereotipo control (control) para objetos que implementan el comportamiento o control de la lógica de los casos de uso, especificando cuándo y cómo el sistema cambia de estado. Los objetos control modelan la funcionalidad que no se asocia naturalmente con un solo objeto. Un ejemplo típico de objeto control es validar un usuario existente o insertar uno nuevo. Este comportamiento requiere la interacción de múltiples objetos y actores. Los tres estereotipos de la arquitectura de análisis se pueden describir a través de diagramas de iconos en lugar de rectángulos, se muestran como iconos en la figura 7.6.
Clases de casos de uso En cada caso de uso se identifican los objetos necesarios para su implementación. Los objetos se identifican según sus estereotipos de manera que correspondan con la funcionalidad ofrecida en cada uno. Se define explícitamente qué objeto es responsable de cuál comportamiento dentro del caso de uso. Se dice que se debe iniciar identificando los objetos de borde luego los objetos entidad y por último los objetos de control La asignación de objetos a cada caso de uso se hace de acuerdo con los siguientes principios:
La funcionalidad de los casos de uso que depende directamente de la interacción del sistema con el mundo externo se asigna a los objetos borde. La funcionalidad relacionada con el almacenamiento y manejo de información del dominio del problema se asigna a los objetos entidad. La funcionalidad específica a uno o varios casos de uso y que afecta a múltiples objetos a la vez, o que no se relaciona naturalmente con ningún objeto borde o entidad, se asigna a los objetos control. En general, se asigna un solo objeto control por caso de uso. Si el caso de uso es muy complejo, se pueden asignar objetos de control adicionales
9. Describa el proceso de Modularización Pendiente
10. Describa el proceso de Herencia Pendiente
11. Describa el proceso de polimorfismo Pendiente
12. Describa el proceso de encapsulamiento El encapsulamiento consiste en permitir la visibilidad de atributos y/o métodos, en una clase determinada, teniendo así tres niveles de: privados que se utilizaran solo en esa clase, protegidos que se utilizaran por todos los métodos, clases y /o atributos mientras se encuentre en el mismo y los públicos que pueden ser usados por cualquier clase o método.
Un ejemplo de encapsulamiento aplicado a objetos es una lavadora, donde el usuario solo se le ofrece la posibilidad de programar; el nivel de llenado del estanque, su funcionalidad (lavar, centrifugar, secar), encendido o apagado, como funciones principales. Pero para funcionamiento interno, no se requiere saber cuál es el método para cambiar de estanque lleno a vaciado y posterior centrifugado, etc. De esta manera se hace más fácil el uso de la lavadora para el usuario.
13. Informe cómo convertir un String a entero en Java Utilizamos el método parseInt de la clase Integer. String cadena = "1234"; int numero = 0; numero = Integer.parseInt(cadena)
14. Defina el concepto de método y realice un ejemplo constructor Definición de método Abstracción de una acción, servicio, comportamiento o tarea que puede ser realizado por un objeto. Generalmente, un método manipula la información registrada en los atributos a través de una o más instrucciones. La definición de un método en Java requiere básicamente especificar: El tipo de dato que retornará como resultado el método. Este tipo de dato puede corresponder a un tipo de dato primitivo, a cualquier tipo de dato de referencia, o en caso de no retornar ningún valor debe especificarse el valor de void El nombre del método. La comunidad de programadores de Java maneja una convención de nombramiento para los métodos, que establece que el nombre del método debe escribirse
en minúsculas. Si el nombre de un método está compuesto por varias palabras; se unen las letras de todas las palabras (sin usar ningún carácter especial adicional) y se colocan en mayúsculas las primeras letras de cada palabra, a excepción de la primera letra del nombre del método (por ejemplo, calcularSalario). Un paréntesis de apertura y un paréntesis de cierre ( ‘ () ’), y en caso de requerirse dentro del juego de paréntesis, la definición del conjunto de parámetros que necesita el método para su funcionamiento. Por ejemplo, para el caso de la definición del método calcularSalario, muchos preguntarían por qué no se incluyen como parámetros el valor de las horas trabajadas y el sueldo por hora del empleado. Supóngase por un momento que la definición del método se ha alterado para reflejar dicho cambio, por consiguiente el código de la clase Empleado quedaría de la siguiente manera: class Empleado{ String cedula; String apellido; String nombre; double horasTrabajadas; double sueldoXHora; } double calcularSalario(double horasTrabajadas, double sueldoXHora){ return horasTrabajadas * sueldoXHora; }
Suponga, además, que se tiene el siguiente código: Empleado e1 = new Empleado();
e1.cedula = “12345”; e1.apellido = “Pérez”; e1.nombre = “Pedro”; e1.sueldoXHora = 50; e1.horasTrabajadas = 20;
Definición de método constructor Método especial que crea un objeto de la clase y que puede emplearse para especificar aquellas tareas que deban realizarse en el momento de la creación como, por ejemplo, la inicialización de los valores de los atributos. El método constructor es un método especial, y su definición varía ligeramente del resto. Las particularidades son: Un método constructor no puede tener definido un tipo de dato de retorno cuando ni siquiera el valor de void es válido. El nombre del método debe ser el mismo nombre de la clase (debe coincidir exactamente con el nombre cuidando hasta el uso de letras mayúsculas y minúsculas).
15. Que función tiene el paquete Swing en Java y describa sus principales características. Pendiente
16. Consultar la estructura y sintaxis de cómo funcionan las excepciones en Java. Pendiente
3. Análisis de requisitos del proyecto Una vez elegida la propuesta a desarrollar, entre los compañeros del grupo colaborativo deberán diseñar el Análisis de requisitos del proyecto. -Análisis de requisitos del proyecto: Definición del problema, Objetivo general, objetivos específicos, Requisitos funcionales y No funcionales.
Definición del problema
En la Universidad Nacional Abierta y a Distancia UNAD se cuenta con el departamento de registro y control el cual se encarga de la matrícula de los estudiantes, el cual está constituido por cinco funcionarios, quienes son los únicos con acceso al sistema Actualmente la universidad solo cuenta con 8 estudiantes matriculados También intervienen en el proceso otros actores, sin embargo, pensando en el crecimiento de la institución se requiere una aplicación que permita realizar de forma automatizada los siguientes procesos.
1
Matrícula de Estudiantes: Inscribir a un estudiante registrando sus datos personales básicos (Nombre, Teléfono, Identificación, Dirección y teléfono y programa al cual está inscrito).
2
Consulta de Estudiantes: Consulta mediante identificación o Programa al cual pertenece.
3
Eliminar un estudiante: Eliminar un estudiante de la base de datos de inscritos.
4
Consulta de Programas: Consulta de número de inscritos a un determinado programa, teniendo en cuenta que existen solo los siguientes: Ingeniería de sistemas, Ingeniería industrial, Ingeniería electrónica y Administración de empresas.
5
Reportes: La aplicación debe permitir realizar reportes sobre los estudiantes vinculados a un programa, estudiantes que se han retirado y estudiantes activos en un programa académico determinado.
6
Finalmente, al ejecutar la aplicación, esta debe solicitar un password y Login para garantizar la seguridad de la aplicación y el acceso solo a personal autorizado. Los estudiantes deben tener en cuenta que no se permite en el password los siguientes caracteres: $,%,&,/,*,/,-,ñ por lo que es obligatorio hacer uso de los bloques de excepciones en Java para evitar estos caracteres.
OBJETIVO GENERAL Desarrollar una aplicación de registro y control de matrículas para los estudiantes de la UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD cumpliendo con todos los requerimientos solicitados por el cliente donde se facilite el proceso de matrículas de la universidad por consiguiente facilitar y optimizar tiempos de trabajo y procesos de vinculación de un estudiante nuevo y antiguo de la universidad.
BORRADOR 2 Diseñar, construir e implementar un sistema de información de registro y control de los alumnos para la UNIVERSIDAD NACIONAL ABIERTA Y DISTANCIA UNAD soportándose en una base de datos para de esta manera facilitar la toma de decisiones y su administración. Objetivos específicos
1. Recopilar la información necesaria para descubrir falencias en los procesos llevados a cabo por la universidad Nacional Abierta y a Distancia (UNAD). 2. Organizar la información enfocándose en las fallas con más urgencia de una solución tecnológica.
3. Diseñar la estructura para la construcción del software en donde se aclaren sus alcances y limitaciones. 4. Establecer los elementos que se utilizaran en la construcción del software de igual forma los recursos tecnológicos.
5. Construir un módulo en donde se pueda Registrar, visualizar y actualizar los datos de los alumnos de la universidad mediante la implementación de una base de datos.
Requisitos funcionales y No funcionales.
Bibliografía Ciberaula. (s.f.). Curso online gratuito - POO y Java. Obtenido de http://www.ciberaula.com/articulo/ventajas_poo Garcia Llinas, L. F. (2010). Todo lo básico que debería saber: sobre programación orientada a objetos en Java. Bogotá: Ediciones de la U. mheducation.es. (s.f.). Programación orientada a objetos versus programación estructurada: C++ y algoritmos. Obtenido de Enseñanzas medias: http://assets.mheducation.es/bcv/guide/capitulo/8448146433.pdf Robledo, A. (15 de Noviembre de 2015). POO, que es, ventajas y desventajas, ejemplo de programación orientada a objetos. Obtenido de Blogger: http://poao4.blogspot.com/2015/11/poo-que-es-ventajas-y-desventajas.html Rodriguez, A. (s.f.). Imprimir por consola en Java con System.out. Concatenar cadenas. Notación de punto para objetos. (CU00632B). Obtenido de Aprender a programar: http://aprenderaprogramar.com/index.php? option=com_content&view=article&id=461:imprimir-por-consola-en-java-consystemout-concatenar-cadenas-notacion-de-punto-para-objetoscu00632b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188 Team colectivo. (3 de Septiembre de 2013). Como definir o declarar variables en Java. Obtenido de Youtube: https://www.youtube.com/watch?v=ON3d-lu53_0 Weitzenfeld, A. (2005). Ingeniería de Software Orientada a Objetos con UML, Java e Internet. (C. Learning, Ed.) Obtenido de Biblioteca virtual UNAD: http://bibliotecavirtual.unad.edu.co:2081/ps/retrieve.do?
tabID=&userGroupName=unad&inPS=true&prodId=GVRL&contentSet=GALE&docId =GALE|CX3004300043 Yojanes Aguilar, L., & Zohonero Martínez, I. (2008). Estructuras de datos en Java. Madrid: McGraw Hill.
View more...
Comments