Keeping the lines of the two previous publications, today I will make another incision concepts Software Engineering. Specifically, I will make a brief introduction to object-oriented analysis .
As usual, the first thing will be to define some basic concepts first. This time, on Object Oriented (OO ) ...
basic OO features
- Abstraction: denotes features essential object that allow differentiation from other types of objects, thus defining the conceptual point of view of the user. Modularity
- : property is to decompose a complex system into more manageable independent.
- Encapsulation: hide implementation allows . It complements the abstraction, since the abstraction is concerned with the external view of an object and the encapsulation prevents customers to see the internals. Hierarchy
- : abstractions are ordered hierarchically . General objects are defined and their subcategories. Generalization (inheritance ) and Aggregation / Composition ( become or be composed of something ).
OO Basics
- Object: an entity that exists in the real world and behave.
- Object Class: describes a set of objects with the same properties (attributes), behavior (operations), relationships and semántica.Implementa the principle of abstraction and serves as a template to create objects.
- Attributes: properties are shared by the class objects and have value depending on the object instance. May be basic or derived (data displayed in other information)
- Operations: Functions that can be applied to objects of a class. It must recognize the arguments and results.
- Methods. implementation of an operation within a class.
- polymorphism. allow the same operation can be applied in different classes, so that its implementation depends on each class.
- Relations:
- Associations. define how to connect objects different classes. We go from one object to another by following the link.
- Aggregation. model a relationship "part-whole."
- composition. is a type of aggregation, with the difference that the party does not exist without the whole.
- Generalization. represents a relationship "to be such." Defined hierarchy of abstractions.
- Heritage. allows data structures and operations of a class are accessible to its subclasses.
- Navigation : associations and aggregations are bi-directional by default, but sometimes we need to restrict the meaning and use arrows to indicate the direction of navigation.
UML: Unified Modeling Language
is a visual language object-oriented modeling. It helps us to understand the system and specifying the functions that should have, and shows us models of the system to have a global perspective on it.
modeling languages \u200b\u200bare beginning to emerge between '70s and late '80s, and get to create many different types, which creates dissatisfaction on the part of users. Of all the existing three to choose unification began in 1994 including: Booch, OMT i OOSE. The first version of UML (1.1) adopted for standardization does not appear until 1997. The emergence of UML
objectives were, mainly, the modeling of systems regardless of the size of these, from beginning to end, in a simple manner and can be used both by people and machines
UML Definition. Is a language for visualizing , specify, build , document elements of a complex system from an object-oriented vision. This is not a process, not tell us how to do things, simply a notation (written, formal and graphics) with well-defined semantics.
multiple models are needed to meet the different views of the system architecture. Features
- specifies all decisions of analysis, design and implementation to build accurate models, clear and complete.
- can be used in any programming language. We can design for UML to code thanks to engineering directly, and vice versa through reverse engineering.
- to document all elements of a development process.
0 comments:
Post a Comment