Key principles that underlie patterns are:
• abstraction
• encapsulation
• information hiding
• modularization
• separation of concerns
• Coupling and cohesion
• Sufficiency
• Completeness and primitiveness
• Separation of policy and implementation
• Separation of interface and implementation
• Single point of reference
• Divide and conquer.
It is a metaphor for the way that objects interact in object-oriented system by sending each other messages that request services or supply information. In a system, several objects may collaborate to fulfil an action. These objects communicate by sending each other message. Since objects interact only through messages they exchange, their internal detail can remain hidden from each other.
CRC stands for Class–Responsibility–Collaboration. CRC cards help to model interaction between objects.
A black box description of a service (of a class or sub-system) that specifies the results of the service and the conditions under which it will be provided.
Documents unsuccessful attempts at providing solutions to certain recurring problems but includes reworked solutions that are effective.
A variation of a statechart diagram that focuses on a flow of activity driven by internal processing within an object rather than by events that are external to it. In an activity diagram most (or all) states are action states, each of which represents the execution of an operation.
Two approaches may be used:
• Behavioural approach
• Life cycle approach
A pattern is an abstract solution to a commonly occurring problem in a given context. A pattern describes a problem which occurs over and over again in our environment, and then describes the core of a solution to that problem, in such a way that we can use this solution a million times over, without ever doing it the same way twice.
A whole–part association between two or more objects, where one represents the whole and the others parts of that whole.
A part of a system that can be regarded as a system in its own right.
Backing up Active Directory is essential to maintain an Active Directory database. You can back upActive Directory by using the Graphical User Interface (GUI) and command-line tools that theWindows Server 2003 family provides.
You frequently backup the system state data on domain controllers so that you can restore the most current data. By establishing a regular backup schedule, you have a better chance of recovering data when necessary.
To ensure a good backup includes at least the system state data and contents of the system disk, you must be aware of the tombstone lifetime. By default, the tombstone is 60 days. Any backup older than 60 days is not a good backup. Plan to backup at least two domain controllers in each domain, one of at least one backup to enable an authoritative restore of the data when necessary.
Multiple inheritance occurs when a subclass inherits from more than one generalization hierarchy. All features are inherited from every superclass.
Normally there are 5 views.
Use Case view - This view exposes the requirements of a system.
Design View - Capturing the vocabulary.
Process View - modeling the distribution of the systems processes and threads.
Implementation view - addressing the physical implementation of the system.
Deployment view - focus on the modeling the components required for deploying the system.
Some of the benefits offered by iterative development are as follows:
Relational DBMS: Complex objects have to be taken apart and the parts stored in different tables are called relational database management system.
Object DBMS: Object databases are closely linked to programming languages with ways of navigating through the database.
XML signature is recommended by w3c. It acts as a digital signature for XML documents. This technology is used by various technologies such as SAML, SOAP, etc.
A message is the specification of a communication, when a message is passed that results in action that is in turn an executable statement.
There are four types of event:
• A change
• A call event
• A signal event
• An elapsed-time event
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.
A class that has no instances; a superclass that acts only as a generalized template for its instantiated subclasses.
A lifeline is a vertical dashed line that represents the existence of an object on an interaction sequence diagrams. An object symbol containing the object’s name is placed at the top of a lifeline.
Link: A connection between objects; an instance of an association.
Association: A logical connection, usually between different classes although in some circumstances a class can have an association with itself. An association describes possible links between objects, and may correspond either to logical relationship in the application domain or to message paths in software.
Boundary objects model interaction between the system and actors. Entity objects represent information and behaviour in the application domain. Control objects co-ordinate and control other objects.
There are different kinds of relationships: Dependencies, Generalization, and Association. Dependencies are relations ships between two entities that that a change in specification of one thing may affect another thing. Most commonly it is used to show that one class uses another class as an argument in the signature of the operation. Generalization is relationships specified in the class subclass scenario, it is shown when one entity inherits from other. Associations are structural relationships that are: a room has walls, Person works for a company. Aggregation is a type of association where there is a has a relationship, That is a room has walls, A±o if there are two classes room and walls then the relationship is called a association and further defined as an aggregation.
Component is an executable software module with a well-defined interface and identity.
Transition deals with product installation and rollout.
A package is a mechanism for grouping UML elements, usually classes, into groups. Packages can be nested within other packages.
The mechanism by which object-oriented programming languages implement a relationship of generalization and specialization between classes is called inheritance. When we extend a class from an existing class – the existing class is the superclass and the extended class is subclass. By the rules of inheritance the subclass inherits all the features from its superclass.
The part of a CASE tool environment that handles the storage of models, including diagrams, specification and definitions.
The same model—the class model—is used through the life of the project During design, additional detail is added to the analysis classes, and extra classes are added to provide the supporting functionality for the user interface and data management Other diagrams are also elaborated in design activities.
The existing system may a manual one, based on paper documents, forms and files; it may already be computerized; or it may be a combination of both manual and computerized elements is called current system.
The components of MVC architecture are:
• Model
• View
• Controller
There are three types of file access methods. These are:
• Serial access
• Index-sequential access
• Direct access.
A relationship between two model elements, such that a change in one element may require a change in the dependent element.
Three type of Design patterns are:
• Creational pattern
• Structural pattern
• Behavioural pattern.
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.
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.
A UML diagram that shows classes with their attributes and operations, together with the associations between classes.
Functional requirements describe what a system does or is expected to do, often referred to as its functionality.
A formal language that supplements the graphical notations of UML. OCL is generally used to give precise definitions for operation logic, or for properties such as invariants (q.v.).
Diagrams are graphical representation of a set of elements most often shown made of things and associations.
Elaboration focuses requirements capture and determining the structure of the system.
The focus of control indicates times during activation when processing is taking place within that object. Parts of an object activation that are not within the focus of control represent periods when, for example, an operation is waiting for a return from another object.