Está en la página 1de 8

TEMA:

Tarea #1 Semana 1 Conceptos de Diseo

ELABORADO POR:

Sully Morazn - 61211441

PRESENTADO A:

Ing. Claudio Gutirrez

UNIVERSIDAD CEUTEC

Ingeniera en Informtica

Ingeniera de Software 2

San Pedro Sula, Honduras


CONCEPTOS DE DISEO
1. Estudie el conjunto de tareas para el diseo. Dnde se evala la calidad en dicho
conjunto? Cmo se logra? Cmo se consiguen los atributos de calidad estudiados en
la seccin 8.2.1?
R= La calidad se avala en representaciones del software, se logra a travs del proceso de
diseo, por medio de la realizacin de revisiones tcnicas RT, celebradas por miembros del
equipo de software; antes de la reunin, se entrega a cada persona del equipo una copia del
producto del trabajo de diseo y se le pide que lea y que busque errores, omisiones o
ambigedades, de modo que puedan corregirse antes de que comience la implementacin.

Los atributos de calidad se consiguen con la aplicacin de los principios de diseo


fundamentales, una metodologa sistemtica y con revisin.

2. De ejemplos de tres abstracciones de datos y de las abstracciones de procedimiento


que se usan para manipularlas.
R= Ejemplo 1: Abstraccin de datos Televisor con sus atributos selector de cambios,
video, audio con su abstraccin de procedimiento Encender que implica una secuencia
de pasos del procedimiento como caminar hacia el televisor, llegar y presionar el botn de
encendido/apagado.

Ejemplo 2: Abstraccin de datos Coche con sus atributos color, el modelo o la marca
con su abstraccin de procedimiento Ponerse en marcha que implica una secuencia de
pasos del procedimiento como caminar hacia el coche, llegar, pisar el freno para asegurar el
vehculo, pisar el clutch para preparar el carro para recibir primer cambio en la palanca,
asegurarse de que la palanca est en neutra, encender el motor y quitar el freno de mano o
de emergencias.

Ejemplo 3: Abstraccin de datos Puerta con sus atributos tipo, direccin del
abatimiento, mecanismo de apertura, peso dimensiones, etc con su abstraccin de
procedimiento Abrir que implica una secuencia larga de pasos del procedimiento como
caminar hacia la puerta, llegar y tomar el picaporte, girar ste y jalar la puerta, retroceder
para que la puerta se abra, etc.
3. Aplique un enfoque de refinamiento stepwise para desarrollar tres niveles
distintos de abstracciones del procedimiento para uno o ms de los programas
siguientes:

a) Un revisor de la escritura que, dada una cantidad numrica de dinero, imprima


sta en las palabras que se requieren normalmente en un cheque.
R=

Nivel alto de abstraccin:

Imprimir una cantidad numrica de dinero en palabras en un cheque.

Nivel medio de abstraccin:

Ingresar la cantidad numrica.


Crear una instancia de la clase que procesar la cantidad numrica.
Enviar la cantidad numrica al constructor de la clase que procesar dicha cantidad.
La clase se encarga de convertir la cantidad numrica en palabras.
Imprimir el cheque con la cantidad numrica en palabras.

Nivel bajo de abstraccin:

Llamar a la funcin donde se inicia la conversin del nmero a letras


Enviar el nmero a otra funcin (que revisa si el nmero tiene decenas de millones)
para verificar si el nmero es igual a 10,000,000 para escribir su equivalente en
palabras diez millones, si no se verifica si es mayor que 10,000,000 y menor que
20,000,000 para dividir el nmero entre 1,000,000 para obtener la decena y
concatenar la cadena con la palabra millones , enviando el residuo del nmero
entre 1,000,000 a otra funcin que calcula la parte de los cien miles. Se verifica si el
nmero es mayor que 20,000,000 y menor que 100,000,000 para dividir el nmero
entre 1,000,000 y enviarlo a la funcin que calcula las decenas, luego se concatena
con la palabra millones y con el resultado que se genera al enviar el residuo del
nmero entre 1,000,000 a la funcin que calcula los millones. Si el nmero es
menor que 10,000,000 se enva a la funcin que calcula los millones.
Evaluar si el nmero es mayor o igual a 1,000,000 y menor que 2,000,000 para que
al hacer la conversin se imprima la palabra Un milln concatenada con el
resultado de procesar el residuo del nmero entre 1,000,000 enviado a la funcin
que calcula los cien miles en palabras. Si el nmero es menor que 1,000,000, el
nmero es enviado a la funcin cien miles directamente.
Verificar si el nmero es igual a 100,000 para imprimir la frase cien mil, si no
evaluar si es mayor o igual que 100,000 y menor que 1,000,000 donde se enva el
nmero dividido entre 1,000 para calcular la centena de millar y se concatena con la
palabra mil , tambin con las centenas que resultan del residuo del nmero entre
1,000. Si el nmero es menor que 100,000 se calcula las decenas de miles.
Verificar si el nmero es igual a 10,000 para imprimir la frase diez mil. Si no
evaluar si el nmero es mayor que 10,000 y menor que 20,000 para enviar el
nmero dividido entre 1,000 a la funcin que calcula las decenas, imprimiendo la
cadena que se genera con la palabra mil concatenada con la cadena que genera la
funcin que calcula las centenas al enviarle el residuo del nmero entre 1,000.
Evaluar si el nmero es mayor o igual a 20,000 y menor que 100,000 para enviar el
nmero dividido entre mil a la funcin que calcula las decenas concatenando el
resultado con la palabra mil y con la cadena resultante de enviar el residuo del
nmero entre 1,000 a la funcin que calcula los miles.
Evaluar si el nmero es mayor o igual que 1,000 y menor que 2,000 para imprimir
la palabra mil con la cadena que genera la funcin que calcula las centenas al
enviarle el residuo del nmero entre 1,000. Si no, evaluar si el nmero es mayor o
igual que 2,000 y mayor que 10,000, se enva el nmero dividido entre 1,000 a la
funcin que calcula las unidades y el resultado se concatena con la palabra mil y
con la cadena que resulta de enviar el residuo entre 1,000 a la funcin que calcula
las centenas. Si el nmero es menor que 1,000 se enva a la funcin que calcula las
centenas.
Convertir las centenas en palabras, desde 100 hasta 999 por ejemplo; 900 a
novecientos y las decenas se obtienen al restar el nmero-900; y se envan a la
funcin que genera las decenas en palabras.
Convertir las decenas en palabras, desde 10 hasta 19 (diez, once, doce, trece, etc.) y
desde 20 hasta 99 por ejemplo; 90 a noventa y las unidades se obtienen de restar
el nmero-90; y se envan a la funcin que genera las unidades en palabras.
Convertir las unidades desde 1 hasta 9 a su equivalente en palabras (uno, dos tres,
etc.)
Imprimir el nmero o cantidad numrica convertida a palabras en el cheque.

b) Una resolucin en forma iterativa de las races de una ecuacin trascendente.


R=

Nivel alto de abstraccin:

Resolver en forma iterativa las races de una ecuacin trascendente.

Nivel medio de abstraccin:

Ingresar funcin, x0, tol


Reutilizar las variables x0 y x1 para almacenar los valores de xk y xk+1,
respectivamente.
Nivel bajo de abstraccin:

Hacer
Si entonces escribir . Fin
En caso contrario hacer y reiterar.

c) Un algoritmo de programacin de tareas simples para un sistema operativo.


R=

Nivel alto de abstraccin:

Activacin del sistema operativo.

Nivel medio de abstraccin:

Realizar el proceso de arranque del sistema operativo

Nivel bajo de abstraccin:

Encendido(Cuando presionamos el botn de encendido del case, el power light es


iluminado y la energa es distribuida por circuitos internos de la computadora)
Comienzo del programa de arranque (El microprocesador empieza a ejecutar las
instrucciones almacenadas en la memoria ROM).
Auto prueba de encendido o power-on self-test (La computadora realiza un
diagnostico crucial del sistema y de cada componente de la computadora)
Carga del Sistema Operativo(El sistema operativo es copiado desde el disco duro a
la memoria RAM)
Chequeo de la configuracin(El microprocesador lee los datos de configuracin del
CMOs y ejecuta cualquier rutina especfica para su uso)
Lista para aceptar datos y comandos. (La computadora esta lista para aceptar
comandos y datos).
4. Considere el software requerido para implementar la capacidad de navegacin (con
un GPS) en un dispositivo mvil de comunicacin porttil. Describa dos o tres
preocupaciones de interferencia que se presentaran. Analice la manera en la que se
representara como aspecto una de estas preocupaciones.
R= Una preocupacin de interferencia sera cuando necesitamos que el GPS nos lleve al
punto de partida (requerimiento A) desde donde comenzamos nuestro recorrido, para ello
tenemos que movilizarnos (requerimiento B) para que el GPS marque el camino y los
receptores GPS puedan almacenar la trayectoria recorrida.

Otra preocupacin de interferencia sera que en el momento de hacer una ruta que la
persona no haba hecho antes (requerimiento A) y que otra persona si haba realizado
(requerimiento B); esta persona la puede exportar fcilmente a un ordenador para que
pueda ser cargada a un GPS que no contenga la ruta.

La primera preocupacin definida se representara como aspecto de la siguiente manera: Un


GPS no puede llevar a un punto de partida si no se ha registrado una ruta previamente.

5. Sugiera un patrn de diseo que encuentre en una categora de objetos cotidianos


(por ejemplo, electrnica de consumo, automviles, aparatos, etc.). Describa el patrn
en forma breve.
R= Sugiero el patrn de diseo Abstract Factory ya que con este patrn se pueden crear
diferentes familias de objetos. Su objetivo principal es soportar mltiples estndares que
viene definidos por las diferentes jerarquas de herencia de objetos. Est orientado a
combinar productos.

6. Cundo debe implementarse un diseo modular como software monoltico?


Cmo se logra esto? El rendimiento es la nica justificacin para la implementacin
de software monoltico?
R= Se debe implementar un diseo modular como software monoltico cuando una
aplicacin se disea para realizar una sola funcin, que sea autnoma, independiente de
otras aplicaciones computacionales. Se logra combinando la interfaz de usuario, la
verificacin, lgica de negocio y acceso de datos en un solo programa de una plataforma
nica. Como justificacin para implementar software monoltico adems del rendimiento es
que funciona ms rpido, es fcil de desarrollar y es eficiente, ya que se producen pocos
cambios en el contexto.

7. Analice la relacin entre el concepto de ocultamiento de informacin como atributo


de la modularidad efectiva y el de independencia de los mdulos.
R= El concepto de ocultamiento de informacin dice que deben especificarse y disearse
mdulos, de forma que la informacin (algoritmos y datos) contenida en un mdulo sea
inaccesible para los que no necesiten de ella y que intercambien slo aquella informacin
necesaria para lograr la funcin del software; el concepto de independencia de los mdulos
es el resultado directo del ocultamiento de informacin ya que trata de evitar la interaccin
excesiva entre mdulos.

8. Cmo se relacionan los conceptos de acoplamiento y portabilidad del software? D


ejemplos que apoyen su punto de vista.
R= Para que el software sea portable es decir que el sistema sea fcil de implementar,
cuando pasa de una plataforma a otra; tiene que tener un acoplamiento mnimo aceptable
donde la relacin entre mdulos sea mnima. Ejemplos: un sistema operativo como Linux
que tiene bajo acoplamiento al ser un sistema monoltico por lo que es portable al poderse
instalar en una computadora de cualquier marca. Otro ejemplo es el navegador de internet
Mozilla Firefox, que se puede ejecutar en cualquier dispositivo con acceso a internet.
BIBLIOGRAFA
es.wikipedia.org. (s.f.). Recuperado el 20 de Julio de 2017, de
https://es.wikipedia.org/wiki/Abstracci%C3%B3n_(inform%C3%A1tica)

migranitodejava.blogspot.com.es. (s.f.). Recuperado el 20 de Julio de 2017, de


http://migranitodejava.blogspot.com.es/2011/05/abstract-factory.html

Monografas. (s.f.). Recuperado el 20 de julio de 2017, de


http://www.monografias.com/trabajos5/proar/proar.shtml

Pressman, R. S. (2010). Ingeniera de Software, Un enfoque prctico. Mxico, D.F.:


McGraw-Hill.

qualityandprogramming.blogspot.com. (s.f.). Recuperado el 22 de Julio de 2017, de


http://qualityandprogramming.blogspot.com/2012/04/estilo-arquitectonico-
software.html

Wikibooks. (s.f.). es.wikibooks.org. Recuperado el 20 de Julio de 2017, de


https://es.wikibooks.org/wiki/Fundamentos_de_programaci%C3%B3n/La_Abstracc
i%C3%B3n_y_el_Encapsulamiento

También podría gustarte