Wednesday 3 August 2011

UML Interview Questions

1) Explain what is UML?
UML is defined as a standard visual specification language and it is primarily used for object modeling. It uses graphical notation for creating an abstract model of a system. This model is also referred as UML model. UML helps a developer work easy by allowing him to concentrate on design and architecture. It can represent an object in terms of family of graphical notations.

2) Explain about the methods in UML?
UML was created to support the methods of its era, but gradually UML also evolved in nature thus paving a better support to object oriented methods. Rational unified process and many UML supported methods such as Dynamic systems method and Abstraction methods have been designed to provide solutions.

3) What are the three different view of a system model?
UML diagrams present three different view of a system they are: -
* Functional requirements view
* Static structural view
* Dynamic behavior view
Models can be interchanges among UML by the use of XMI interchange format.

4) Explain about dynamical behavior view?
Dynamical behavior view plays a very important in determining relationships and behavior of the system. This view depicts collaboration among objects and the effective changes to the internal states of objects. This includes activity, sequence and state machine diagrams.

5) Explain about the static structural view presented by UML?
Static structural view determines the static structure of the system. It uses attributes, relationships, objects and operations. Static structural view includes composite structure and class diagrams.

6) Explain about executable UML?
Executable does not use full functionality and standards as present in UML. Although there are many constructs present in UML all of them are not used for designing, executable UML uses only limited number of constructs.

7) Detail whether UML can be used as a programming language?
UML can be used as a programming language but it has to garner programmers and developers for it to become as a programming language. It is not so much productive than the other languages; it can be used if its productivity increases. It is well suited for the graphical development environments.

8) Detail the meaning of association?
There are five types of association but importance is given to only two they are Bidirectional and unidirectional. It represents a family of links. Binary associations are represented by two ends and they are connected to class box. Higher order associations can have more than two ends.

9) Explain about aggregation?
Aggregation gives a much more detail than association. In aggregation you can name it and it can have same adornments. It may not be involved with more than two classes. It can have a collection of classes but its classes are not dependent on the life cycle. It`s contents are not destroyed even when its classes are destroyed.

10) Explain about composition?
Composition has a stronger variant and is represented by a diamond. It has a strong life cycle dependency. When a container is destroyed elements or classes present in the container are also destroyed although you will have the facility to remove the classes from the relationship.

11) Explain about realization and its relationships?
Realization is represented as a dashed line with empty arrow pointing towards the supplier on the diagram editor. It forms a relationship between interfaces, packages and components. It shows the relationships offered by the interface.

12) Explain about dependency?
This form of relationship exists when a change to a certain element changes the definition and structure of the other element as well. This is indicated by a pointing arrow from the dependent side to the independent side. This form of relationship can exist between classes and inheritance.

13) State some benefits of iterative development?
Some of the benefits offered by iterative development are as follows: -
1) Mitigation of risks in an earlier stage
2) Visibility of progress
3) Feedback, adaptation and engagement.
4) Complexity management
5) Iteration management can improve the overall process of the project because it details and explains the various steps present in it.

14) Explain about package diagram?
Package diagram shows different logical groups and depicts the dependencies among these diagrams. Package diagrams are designed to increase internal coherence and minimize external coherence. This can also give a good idea about the work flow structure.

15) What are the basic notational elements which can make up a diagram?
1)Filled circle denotes the initial state
2)Hollow circle depicts the final state
3)Rounded rectangle is like a class and below it are the functions or activities.
4)Transitions are indicated by a arrow
5)Horizontal lines denote join or relationship between two parts

16) State some of the criticisms present with UML?
Some of the disadvantages presented by UML are as follows
1) Language bloat: - This language is very long in length and complex to understand. Infrequent and redundancy elements are present in UML which retards the learning of the subject.
2) Confusion is overwhelming when using UML due to lack of proper abstract notation.

17) Explain about the difficulties of interchange format of UML?
XML standard should allow interchange of UML models but it is not the case scenario practically. Portability of the language from one format to another format is not possible and lack of information can be possible in the course. It also lacks sufficient details which make it impossible for interchange between modeling tools.

0 comments:

Post a Comment

Popular Posts

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | cheap international calls