Tuesday, February 4, 2020

Object Oriented Programming.

If you order your custom term paper from our custom writing service you will receive a perfectly written assignment on Object Oriented Programming.. What we need from you is to provide us with your detailed paper instructions for our experienced writers to follow all of your specific writing requirements. Specify your order details, state the exact number of pages required and our custom writing professionals will deliver the best quality Object Oriented Programming. paper right on time.


Our staff of freelance writers includes over 120 experts proficient in Object Oriented Programming., therefore you can rest assured that your assignment will be handled by only top rated specialists. Order your Object Oriented Programming. paper at affordable prices!


Class


A class is a general specification of a set of objects that defines their common structure (data), behaviour (methods) and relationships. For example


Object


An object is an abstraction or simulation of physical things such as people and machines or intangible things such as events or processes that captures their characteristics and behaviour. An object has state, behaviour and identity e.g.


Persistence


Persistence allows the state of the object to be saved to non-volatile storage such as a file or database and later restored even though the original creator of the object no longer exists. An example would be


Encapsulation


This is a modelling and implementation technique, known as information hiding, which separates the external aspects of an object from the internal implementation details of the object e.g.


Inheritance


Inheritance is a relationship between classes where one class is a parent of another. It implements "is a" relationships between objects. Inheritance takes advantage of the commonality amongst objects to reduce complexity. One class inherits part or all of the public description of another base class and instances inherit all the properties and methods of the classes which they contain e.g.


Polymorphism


A concept in type theory according to which a name (such as a variable declaration) may denote objects of many different classes that are related by some common super-class. Thus any object denoted by this name is able to respond to some common set of operations in different ways. For example


Object Oriented Life Cycle


The OO Life Cycle of a software development project can have several incremental steps. Each of these increments consists of Iteration Cycles whereby specific phases of development are carried out. Each cycle consists of an Analysis, Design, Implementation and Testing phase where certain deliverables are produced. The iterations are repetitive by nature as the project evolves over time.


Analysis


The analyst looks at the existing real world scenario for which a computer based solution may be appropriate. This stage consists of parts.


1) Domain Modelling or Elaboration


Use Case diagrams are produced to indicate the main actors and functions of the system and determine the scope of the eventual system, both what can in included and what should be excluded.


A Conceptual Model used be developed with highlights the main classes and their attributes.


A Behaviour Model consisting of a state diagram showing how the events of the system affect the objects.


Domain Analysis


Domain analysis is concerned with devising a precise, understandable, and correct model of the real world. Object oriented analysis provides the designer with an understanding of the problem in preparation for design.


• Object discovery


• Identifying relationships


• Defining operations


• Identifying attributes


• Re-using abstractions with inheritance


• Applying patterns to recurring problems


) Software Specification


System requirements are extended to include further detail of the intended software solution to the business problem/requirements.


Use Case in further detail including exception conditions and common behaviour.


Analysis Model.


Behaviour Model or sequence diagram.


Deliverables


• High level Use Case model


• Project plan


• Expanded Use Case model


• System scenario diagrams


• Event list


• Software requirements specification



Design


During system design, the architecture of the system is chosen. The architecture establishes common tactical policies that must be used by different elements of the system. Using the analysis model and expanding it to cater for the operations required by the system.


Model the behaviour through collaboration diagrams and work out which classes are responsible for which operations. Use Case models are used to design storyboards for the User Interface of the system.


System Design


During system design, the architecture of the system is chosen. The architecture establishes common tactical policies that must be used by different elements of the system.


• Organizing the system into subsystems


• Identifying concurrency


• Allocating subsystems to processors and processes


• Selecting data store implementation strategies


• Selecting control strategies


• Establishing trade-off priorities


• Applying patterns to common design problems


• Collect classes into packages and subsystems


• Refine class package structure to reduce coupling and enhance re-usability


Object Design


Object design determines the full definition of the classes and associations used in the implementation as well as the interfaces and algorithms of the methods used to implement the operations.


• Design algorithms to implement operations


• Optimise access paths to data


• Implement software control by refining strategies selected during system design


• Adjust class structure to increase inheritance


• Design implementation of associations


• Determine the exact representation of object attributes


Implementation/Testing


The software is physically written by the programmer using the pre-selected programming language. The programs will have integral documentation and as the system is being developed test and user documentation will also be produced. Once tests are passed by the system it is installed on the clients site. Classes are tested independently for ease. Inheritance allows for less duplication of testing. System can then be phased in for full production.


Maintenance


System is handed over to the customer and will be altered/amended over time due to new user/client requirements. Due to OO and a modular approach the system will be easily maintained. Existing documentation (class diagrams) will make it simple to identify any subsequent changes to attributes and the whole OO life cycle can be used again to incrementally and iteratively implement new enhancements to the system.


Advantages of Traditional Life Cycle


Tasks in phases can be assigned to specialised teams.


Project progress evaluated at the end of each phase.


Manage projects with high levels of risks.


Clearly defined deliverables at each stage.


Project Managers can clearly see and understand the progress


Of such a linear approach.


Disadvantages of Traditional Life Cycle


Real life does rarely follows such a simplistic sequential life cycle.


Iterations are inevitable.


Time passes between the system analysis/design and implementation stages.


The life cycle does not respond well to business changes during the project.


Advantages of Object Oriented Approach


Reusability of components saves time and money.


Encourages modularity.


System maintenance is easier since objects are independent.


Disadvantages of Object Oriented Approach


Harder to project manage as the approach can seem never ending.


Difficulties inherent with persistent objects.


Please note that this sample paper on Object Oriented Programming. is for your review only. In order to eliminate any of the plagiarism issues, it is highly recommended that you do not use it for you own writing purposes. In case you experience difficulties with writing a well structured and accurately composed paper on Object Oriented Programming., we are here to assist you. Your cheap custom college paper on Object Oriented Programming. will be written from scratch, so you do not have to worry about its originality.


Order your authentic assignment and you will be amazed at how easy it is to complete a quality custom paper within the shortest time possible!