- What are the Advantages of Object-Oriented development?
The advantages are:
- Improved software-development productivity
- Improved software maintainability
- Faster development
- Lower cost of development
- Higher-quality software
The disadvantages are:
- Steep Learning curve
- Larger program size
- Slow programs
- Not suitable for all types of problems
- Differentiate between operation and behavior.
|Operation is a behavioral feature that may be owned by an interface, data type, or class.||Behavior is a class which specifies how the classifier;which owns the behavior changes its state over time.|
|An operation may be redefined in a specialization of the featured classifier.||Behavior can be specialized, with specific notation and the detailed semantics defined by its subclasses|
- What is RUP?
- “Rational Unified Process.” RUP is a software development process from Rational, a division of IBM. It divides the development process into four distinct phases that each involve business modeling, analysis and design, implementation, testing, and deployment. The four phases are:
- Inception 3) Construction
- Elaboration 4) Transition
- What is Encapsulation?
- Encapsulationis the process of binding both attributes and methods together within a class. It permits the elements of the class to be accessed from outside only through the interface provided by the class.
- What is prototyping model?
- The prototyping modelis a systems developmentmethod in which a prototype is built, tested and then reworked as necessary until an acceptable outcome is achieved from which the complete system or product can be developed.
- What is multiple Inheritance? Give an example.
- Multiple inheritanceis a feature of some object-oriented computer programming languages in which an object or class can inheritcharacteristics and features from more than one parent object or parent class.
- Distinguish between static and dynamic models.
- The Difference is:
|Static Model||Dynamic Model|
|Static model is the model of the system not during runtime.||Dynamic model of is the runtime model of the system.|
|Static models are the at equilibrium of in a steady state||Dynamic models keep changing with reference to time.|
|This model is rigid, cannot be changed in real time so referred as static modelling.||This model is flexible, it can be changed with time, so referred as Dynamic modelling.|
- State the purpose of modelling a sequence diagram.
- The purposeof a sequence diagramin UML is to visualize the sequence of a message flow in the system.
- The sequence diagramshows the interaction between two lifelines as a time-ordered sequenceof events. A sequence diagram is used to capture the behavior of any scenario.
- What do you mean by Polymorphism?
- Polymorphismrefers to a programming language’s ability to process objects differently depending on their data type or class.
- What are the components of use case diagram?
The components are:
- Use Cases
1 Define IS_A rule?
Sub class inherit the data and behavior of super class including its extra information is known as IS_A rule.
2 List the relationship that can exist in use case?
The relationship that can exist in use case are
- Association between the user and use case:
- Extend relation :
- Include relation:
3 How would you represent protected and static member in class diagram?
With the help of # key protected and static member by underlining represent in class diagram.
4 what do you mean by conceptual diagram?
A conceptual diagram is essentially an illustration depicting the arrangement and relationships of key attributes within a system by using a variety of appropriate symbols that are easily understood.
5 What artifacts can start in elaboration phase?
Following artifacts can start in elaboration phase
- Domain model: A visualization of domain concepts and entities
- Design model: A set of diagrams outlining of the structure of the software, as well as the user interfaces.
- Data model: Database schemas, including object to relational database mappings
6 what is abstract class?
Abstract Class is similar to interface except that it can contain default method implementation.
7 What do you mean by iterative development?
Iterative development is a way of breaking down the software development of a large application into smaller chunks.
8 what relation do you find between system sequence diagram and use case?
Use Cases is a collection of related success and failure scenarios that describe an actor using a system to support a goal. It is made up of a set of possible sequence of interaction between the system and actor in a particular environment. It is the textstories which describe the external entity that interact with the system and what system should do on behalf of actor responses.
Such text stories are visually describe by the system sequence diagram. The SSD shows the system events for one scenario of the use case i.e. SSD are drawn when one particular use case are executed. For the particular use case (for main success scenario) SSD shows what events are generated by the external entity, what event are generated inside the system, flow of operation, system have to perform based on external event. SSD uses UML sequence diagram notation to visually represent the main success scenario of the use cases.
9 For what purpose domain model is used?
For collection of related concepts, relationship and workflow purpose of domain model.
10 What do you mean by OOA and OOD?
Object oriented analysis emphasis on finding and describing the object or concept in the problem domain.
Object oriented design (object design) emphasize on defining the software objects and how they are collaborate or interact to fulfill the requirement.