Object Oriented Design Concepts
ORD introduces a new set of terminology notation and procedures for the derivation of a software design. In this section we review objects oriented terminology and introduce a few additional concepts that are relevant to design.
Object Operations and Messages
To accomplish object oriented design, we must establish a mechanism for (1) the representation of data structure (2) the specification of process, and (3) the invocation procedure.
An example typical objects might be machines commands files displays switches signals alphanumeric strings, or any other person place thing occurrence role or event. When an objects is mapped into its software relocation it consists of a private data structure and processes, called operations that may legitimately transform the data structure. Operation contain control and procedural constructs that may be invoked by a messages request to the objects to perform one of its operations.
The objects also has a shared part that is its interface. Massage move across the interface and specify what operation on the objects is descried, but not show the operation is to be performed. The objects that receives a message determines how the requested operation is to be implemented.
Objects and their operation provide inherent modularity that is software elements ( data and process ) are grouped together with a well defined interface mechanism ( in this case messages).
Design Issue
Bertrand Meyer suggests five criteria for judging a design method ability to achieve modularity and relates these to objects oriented design.
1. Decomposability : The facility with which a design method helps the designer to decompose a large problem into sub problems that are easier to solve.
2. Compos ability : The degree to which a design method ensures that program components modules, once designed and built, can be reused to create other systems.
3. Understand ability : The case with which a program component can be understood without reference to other information or other modules.
4. Continuity : The ability to make small changes in a program and have these changes manifest themselves with corresponding changes in just or a very few modules.
5. Protection : An architectural characteristic that will reduce the propagation of side effects if an error does occur in a given module.
From these criteria Meyer suggest that five basic design principle can be derived for modular architectures (1) linguistic modular units(2) few interface (3) small interfaces ( weak coupling) (4) explicit interfaces (5) information hiding.
The design criteria and principles presented in this section can be applied to any design method. As we will see however the objects oriented design methods achieve each of the criteria more efficiently than other approaches and results in modular architectures that allow us to meet each of the modularity criteria most effectively.
Classes Instances and Inheritance
Many objects in the physical world have reasonably similar characteristics and perform reasonably similar operations. If we look at the manufacturing floor of a heavy equipment manufacturer we see milling machines drill presses and jig forgers. Although each of these objects is different, all belong to a larger class that is called metal cutting toots. All objects in the metal cutting tools class have attributes in common and perform common operations ( e .g. cut start or stop). Therefore by categorizing a hobbler as member of the class metal cutting machines , we know something about its attributes and the operation it performs even if we don't know its detailed function is.
Software realizations of real world objects are categorized in much the same way. All objects are members of a large class and inherit the private data structure and operations that have been defined for that class. Stated another way a class is a set of objects that each has the same characteristics. An individual objects is therefore an instance of a larger class.
The use of classes subclasses and inheritance is crucially important in modern software engineering. Reuse of program components ( our ability to achieve composition ) is attained by creating objects ( instances ) that build on existing attributes and operation inherited from a class or subclass, we only need to specify how the new objects differs from the class rather than defining all the characteristics of the new objects.
Object Descriptions
A design description of an objects ( an instance of a class or subclass) can take one to two forms.
1. A protocol description that establishes the interface of an objects by defining each message that the objects can receive and the related operation that the objects performs, when it receives the message.
2. An implementation description that shows implementation details for each operation implied by a message that is passed by an object. Implementation details includes information about the objects private part that is internal details about the data structure and procedural details that describe operations.
The protocol description is nothing more than a set of messages and a corresponding comment for each message. An implementation of an objects provides the internal ( hidden) details that are required for implementation but are not necessary for invocation.
An implementation description is comprised of the following information.
Case Characteristics: The difference between the information contained in the protocol description and that contained in the implementation description in terms of users and suppliers of sieves . a user of the service provided by an object must be familiar with the protocol for invoking the service that is for specifying what is desired. The supplier of the service ( the objects itself) must be concerned with how the service is to be supplied to the user that is with implementation details.
An objects delivers encapsulation, whereby a data structure and a group of procedures for accessing it can be put into service such that the users of that capability can access it through a set of carefully documented, controlled and standardized interfaces. These encapsulated data structures, called objects ,amount to active data can be requested to do things by sending them messages.
Latest technology based Software Engineering Online Tutoring Assistance
Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Object Oriented Design Concepts homework help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Object Oriented Design Concepts, project ideas and tutorials. We provide email based Object Oriented Design Concepts homework help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Object Oriented Design Concepts. Through Online Tutoring, you would be able to complete your homework or assignments at your home. Tutors at the TutorsGlobe are committed to provide the best quality online tutoring assistance for Software Engineering homework help and assignment help services. They use their experience, as they have solved thousands of the software engineering assignments, which may help you to solve your complex issues of Object Oriented Design Concepts. TutorsGlobe assure for the best quality compliance to your homework. Compromise with quality is not in our dictionary. If we feel that we are not able to provide the homework help as per the deadline or given instruction by the student, we refund the money of the student without any delay.
tutorsglobe.com purification of lead assignment help-homework help by online lead tutors
Theory and lecture notes of Special Production Functions all along with the key concepts of Linear Production Function, Fixed-proportions Production Function, Homogeneous Function, Cobb-Douglas Production Function. Tutorsglobe offers homework help, assignment help and tutor’s assistance on special production functions.
The Microscope tutorial all along with the key concepts of Microscopy, Brief History of microscope, Light Microscope, Polarizing Microscope, Phase Contrast Microscope, Interference Microscope, Ultraviolet Microscope, X-Ray Microscope, Electron Microscope and Principles of the Microscope
tutorsglobe.com phylum coelenterate assignment help-homework help by online animal kingdom tutors
tutorsglobe.com morphology of eumycotic granules assignment help-homework help by online mycetoma tutors
The Mammalian liver tutorial all along with the key concepts of Functions of the Liver, Regulation of Sugar and lipids, Bile Production, Cholesterol regulation, Removal of Sex Hormones, Diseases of the Liver
tutorsglobe.com electron transport system assignment help-homework help by online plant physiology tutors
tutorsglobe.com says law of market assignment help-homework help by online simple theory of income determination tutors
tutorsglobe.com beneficial activities of bacteria assignment help-homework help by online bacteria tutors
tutorsglobe.com compound assignment help-homework help by online d block elements tutors
tutorsglobe.com antigenic determinants and epitopes assignment help-homework help by online secondary lymphoid organs tutors
want top-rated criminology assignment help from bets experts to attain maximum grades? hire us right away!
www.tutorsglobe.com offers Master Budget homework help, assignment help, case study, writing homework help, online tutoring assistance by accounting tutors.
Transformation of alcohols and arenes tutorial all along with the key concepts of Oxidation of primary alcohols, Oxidation of secondary alcohols, Oxidation of tertiary alcohols and Transformation of arenes
to learn the two inputs of the arithmetic circuits of half adder, full adder and flip flops using ics.
1947139
Questions Asked
3689
Tutors
1447236
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!