Page 57 - DCAP305_PRINCIPLES_OF_SOFTWARE_ENGINEERING
P. 57

Unit 3: Software Requirements



            3.3 Object Oriented Modelling                                                         Notes

            Object-oriented software engineering is the methodology. This technology uses actors, use cases,
            interface descriptions and problem domain objects. Relevant notations are drawn from the
            UML (Unified Modelling Language) the object oriented paradigm is the framework in software
            engineering, influencing all effort in information science. It is one of the main objectives of the
            software engineering. Object models are different from other modelling techniques because they
            have merged the concept of variables and abstract data types into an abstract variable type: an
            object. Objects have identity, state, and behaviour and object models are built out of systems of
            these objects. To make object modelling easier, there are concepts of type, inheritance, association,
            and possibly class. Object modelling focus on identity and behaviour is completely different from
            the relational model’s focus on information. Ontology is well known as description of declaration
            and abstract way the domain information of the application, it involved with vocabulary and
            how to constrain the use of the data and they are used widely in the semantic web approach,
            which requires a significant degree of structure. In the area of ontology the concept have been
            supplemented above which allow expressing the similarity of concept in ontology with object
            (atom) in object oriented. Ontology’s themselves are rising as an important tool for coping with
            very great, compound and various sources of information. It has also been known that ontology’s
            are advantageous for software engineering. Ontology representations are little known outside AI
            research laboratories; In contrast, commercial interest has results in ideas from object oriented
            programming community maturing into industry standards and powerful tools for object oriented
            analysis design and implementation. And this maturing standards and tools can be used for
            ontology modelling. Ontology is formally specified models of bodies of knowledge defining
            concepts used to describe a domain and the relationship that hold between them.

            Object Modelling
            The object-oriented model is based on a compilation of objects. An object contains values stored
            in case in point variables within the object. Thus objects enclose objects to a randomly deep
            level of nesting. Attributes/properties objects will have at least one attribute. Possible slot
            types are primitive types (integer, Boolean, string etc.), references to other objects (modelling
            relationships) and sets of values of these types. An object also contains bodies of code  that
            operate on the object. These bodies of code are called methods. Method/Operations are attached
            to classes or slots and contain Meta information, such as comments, constraints and default
            values. Relationship/relations represent the relation between objects/classes from object model
            (KB). Major classes of relations exist: relations combining labels (the name we tend to give to
            things) and concepts (the things themselves) and concepts and relations combining concepts
            (the part-whole relation). Objects that contain the same types of values and the same methods
            are grouped into classes. A class may be viewed as a type definition for objects. Analogy: the
            programming language concept of an abstract data type. The only way in which one object can
            access the data of another object is by invoking the method of that other object. This is called
            sending a message to the object. Internal parts of the object, the instance variables and method
            code, are not visible externally or some researchers called it as black box. Black Box Testing is
            used to test the functional correctness of the program. Black Box Testing attempts to find errors
            in the following categories.
               1.  Incorrect or Missing Function
               2.  Interface Error
               3.  Performance Error
            Black Box Testing an approach to testing where the program is considered as a “Black Box”, that
            is one cannot “see” inside of it. The program test cases are based on the system specification,
            and are not based on the internal workings of the program. White Box Testing is conducted



                                             LOVELY PROFESSIONAL UNIVERSITY                                    51
   52   53   54   55   56   57   58   59   60   61   62