Análisis y Diseño Flashcards

(87 cards)

1
Q

Jmeter

A

Herramienta de Apache que permite realizar pruebas de rendimiento inyectando carga a la aplicación a evaluar

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

SonarQube

A

Herramienta de SW libre para evaluar la calidad del código fuente de una aplicación, que proporciona información del nivel de mantenimiento

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

FURPS

A

5 Características como factores de calidad: Funcionality, Usability, Reliability, Performance, Support

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

MTTF, MTTR, MTBF

A
Medidas de disponibilidad
Mean Time to:
-Failure
-Recovery
-Between failure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

MDT (Mean Down Time)

A

Tiempo medio de parada tras fallo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Complejidad Ciclomática

A

Nº de bucles que tiene el código

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

[ERS] Especificación de Requisitos Software

A

ASI - documento formal en el que se recogen los requisitos del sistema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

SMART

A
Características que deben cumplir los requisitos 
Specific
Measurable
Attainable
Realisable
Traceable
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

INVEST

A
método para escribir buenas historias de usuario. 
Independent
Negotiable
Valuable
Estimatable
Small
Testable
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Historia de usuario

A

Especificación de un requisito con lenguaje común de usuario
Como [rol] quiero [funcionalidad] para [beneficio]
Épicas si son demasiado grandes y deben detallarse más

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

CVS

A

Herramienta para el control de versiones

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

[SVN] Apache Subversion

A

Herramienta para el control de versiones

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Mercurial

A

Herramienta de control de versiones escrita en python

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Monotone

A

Herramienta para el control de versiones distribuido

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Tunning (rendimiento)

A

modificación del sistema para rendimiento óptimo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Acoplamiento

A

Grado de independencia entre los módulos de un SI

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Cohesión

A

Medida interna de la relación funcional de los elementos de un módulo de un SI

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Descomposición (DSI)

A

Separación de una función contenida en un módulo para formar un nuevo módulo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Fan-out y Fan-In (DSI)

A

Fan-out: nº de módulos controlados directamente por otro módulo (5-9)
Fan-in: nº de módulos que controlan a otro módulo. Medida de reusabilidad

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Protocolo de un objeto (POO)

A

Mensajes a los que puede responder ese objeto

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Atributo/Método protegido (POO)

A

Atributo/método que solo puede ser usado por la propia clase o sus clases hijas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Sobrecarga (POO)

A

En una misma clase tener dos métodos que se llaman igual, y según los atributos ejecuta un método u otro

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Persistencia (POO)

A

Cualidad que se refeire a la permanencia de un objeto (almacenándolo en memoria), serializándolos previamente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

SOLID

A
Principios de la POO
Single responsability
Open/closed
Sustitución de Liskov
Interface Segregation
Dependency Inversion
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
GRASP
Buenas prácticas recomendables para el diseño de SW.
26
IDEF0
Método de modelado de funciones derivado de Metodología SADT
27
[DFD] Diagrama de Flujo de datos
``` Representa cómo fluye la información en el sistema y qué transformaciones se hacen sobre la misma. Se descompone en niveles 0 - Contexto 1 - Subsistemas 2 - Funciones de subsistemas 3 - Sunfunciones de funciones 4 - de procesos ```
28
[DEC] Diagramas de estrucuta de cuadros de Constantine
Se utiliza para modelar módulos de un sistema y sus relaciones a partir de DFD
29
[DTE] Diagrama de Transición de Estados
Es una técnica de modelado que se centra en el comportamiento del sistema a lo largo del tiempo
30
UML
Es un lenguaje de modelado que permite modelar, construir y documentar los elementos que forman un sistema SW orientado a objetos
31
OCL (Object Constraint Language)
Lenguaje de restricción de objetos para especificar conceptos ambiguos sobre los distintos elementos de un diagrama
32
XMI (XML Metadata Interchange)
Schema XML que permite contruir una representación SVG de los diagramas UML para poder ser intercambiados
33
Diagrama de clases
Colección de clases, atributos y métodos y relaciones entre ellas.
34
Diagrama de objetos
Representación en memoria de los objetos y sus relaciones en un instante determinado
35
Diagrama de objetos
Representación en memoria de los objetos y sus relaciones en un instante determinado
36
Diagrama de componentes
Representa los componentes SW reutilizables de una aplicación con sus interfaces púclicas y las relaciones entre ellos
37
Diagrama de despliegue
Muestra cómo y dónde se desplegarán los diferentes elementos del sistema (a nivel físico), indicando los procolos entre nodos (máquinas físicas). Cada nodo tiene sus elementos desplegados.
38
Diagrama de estructura compuesta
Muestra la estructura interna de un clasificador (clase, componente o caso de uso) y las colaboraciones que tiene esta estructura
39
Diagrama de casos de uso
Presenta visión de alto nivel de la funcionalidad que debe proporcionar el sistema, indicando los actores con los que interactúa y la funcionalidad disponible
40
Diagrama de máquina de estados
muestra los diferentes estados por los que pasa un sistema u objeto a lo largo de su tiempo de vida
41
Diagrama de actividades
Muestra la secuencia de actividades de un proceso, incidiendo en si éstas se ejecutan de forma secuencial o en paralelo, así cmo las desiciones que se toman.
42
Diagrama de interacción
Muestran como se interrelacionan los objetos entre ellos mediante el paso de mensajes
43
Diagrama de secuencia
Muestra el comportamiento dinámico de un sistema, poniendo énfasis en el intercambio de mensajes que se producen entre sus objetos y la ordenación temporal de éstos
44
Diagrama de comunicación
Muestra cómo reaccionan las clases cuando reciben mensajes
45
Vistas 4+1
``` Describe los aspectos esenciales de la arquitectura del sistema Vista lógica Vista física Vista de procesos Vista de desarrollo Escenarios ```
46
Patrón
Solución repetible que en base a la experiencia se sabe que sirve para solucionar un problema común
47
Builder
Patrón que permitecrear objetos complejos usando otro objeto más simple
48
Factory Method
Patrón que permite crear objetos sin tener que especificar su clase exacta
49
Singleton
Patrón que se emplea cuando buscamos que únicamente se declare una instancia de una clase
50
Adapter
Patrón que adapta una interfaz para que pueda ser utilizada por una clase que de otro modo no podría utilizarla
51
Fecade
Patrón que oculta complejidad de interactuar con un conjunto de sistemas proporcionando una interfaz de alto nivel
52
Observer
Patrón que hace que cuando un objeto cambie de estado se notifiquen y actualicen automáticamente todos los objetos que dependen de él.
53
State
Patrón que permite a un objeto alterar su comportamiento cuando su estado interno cambia
54
Strategy
patrón que se centra en definir la forma en la que se produce el intercambio de mensajes entre distintos componentes. El cliente puede elegri entre un conjunto de algoritmos según sus necesidades
55
Antipatrón de diseño
Son patrones de diseño que conduce a una mala solución para un problema
56
Herramientas CASE
Aplicaciones SW de apoyo durante el desarrollo del sistema. Upper CASE -> planificación estratégica y gestión de proyecto Middle CASE -> Automatización de análisis y diseño Lower CASE -> Automatización de la programación, generación de código
57
I-CASE
Herramienta SW de apoyo que da soporte durante toda la vida del desarrollo SW
58
Sistema Distribuido
Colección de computadoras separadas físicamente y conectadas entre sí por una red de comunicaciones, que se comunican y coordinan mediante paso de mensajes.
59
CORBA
Es un middleware que permite que diversos componentes de software escritos en múltiples lenguajes de programación y que se ejecuten en distintas computadoras puedan trabajar juntos
60
Marshalling
Serialización del objeto para enviarlo por la red (especialmente en sistemas distribuidos)
61
ORB
CORBA | Facilita la comunicación entre objetos haciendo peticiones cliente/servidor
62
IDL
CORBA Lenguaje que se utiliza para definir la interfaz común. Tiene: Stub (objeto remoto de cliente) Skeleton (objeto remoto de servidor)
63
RMI (Remote Method Invocation)
[Java] | mecanismo para la comunicación de objetos distribuidos creados con tecnología Java.
64
EJB (Enterprise Java Beans)
Componentes distribuidos Java que se comunican mediante RMI. 3 tipos: de sesión, de mensajería y se entidad
65
JINI (Jini is Not Initials)
permite interconexión entre dispositivos con JVM
66
DCOM (Distributed Component Object Model)
[Microsoft] | Utiliza RCP y extiende del modelo COM para la comunicación de objetos distribuidos
67
RPC
(Llamada a procedimiento Remoto) | Comunicación de alto nivel en la que el cliente llama a una función o procedimiento en el servidor y recibe el result
68
Websphere
Middleware de IBM, es decir, SW que asiste a una aplicación para interactuar o comunicarse con otra aplicación, red, hw o SO [aplicaciones distribuidas]
69
Tuxedo
Middleware de Oracle, es decir, SW que asiste a una aplicación para interactuar o comunicarse con otra aplicación, red, hw o SO [aplicaciones distribuidas]
70
SOA
Arquitectura de SW que define la utilización de servicios para dar soporte a los requisitos de negocio corporativo
71
SOI
Es la aplicación de la tecnología SOA a la infraestructura TI (procesamiento, almacenamiento y capacidad de redes virtuales)
72
SOAP
Simple Object Access Protocol Es un protocolo que define cómo dos objetos en diferentes procesos pueden comunicarse por medio de intercambio de datos XML
73
WSDL
Es un formato XML que se utiliza para describir servicios web (independiente de la plataforma/lenguaje)
74
REST
Representational State Transfer | Más simple que SOAP, utiliza los métodos de HTTP para manejar los recursos (mediante URIs)
75
WS-BRSP
Conjunto de OASIS de mejores prácticas para la interoperabilidad de servicios web
76
XML Encryption
Documentos XML para garantizar confidencialidad
77
WS-Security
Garantizar integridad y seguridad en mensajería
78
SAML
Usado por cl@ve. | Esquema XML para el intercambio de datos de autenticación y autorización
79
Apache AXIS2
Framework que implementa SOAP y REST
80
Apache CXF
Framework que implementa SOAP y REST
81
ESB (Enterprise Service Bus)
Middleware que proporciona servicios de integración de los distintos servicios de mensajería basada en estándares y servicios de sincronización. Getiona la comunicación entre servicios web.
82
BPM (Business Proces Management)
Disciplina empresarial cuyo objetivo es mejorar la eficiencia a través de la gestión sistemática de los procesos de negocio
83
BPEL
Lenguaje basado en XML que permite definir o modelar procesos de negocio
84
BPMN
Notación gráfica que permite el modelado de procesos de negocio y el intercambio de datos y mensajes entre participantes
85
XPDL
Lenguaje basado en XML para la definición de modelos de procesos de negocio.
86
Orquestación
Modelo centralizado en el que una entidad central es la encargada de definir la lógica de interacción entre los diferentes servicios (suele definirse con BPEL)
87
Coreografía
Modelo para la composición de servicios distribuidos, definiendo las conversaciones que se pueden producir entre ellos