Made with
ConceptDraw
DIAGRAM 18

Yourdon and Coad Diagram

OOAD is simply an abbreviation for the term of “object-oriented analysis and design”, which is a very popular technical approach used for designing and analyzing any needed application, business or system in a way of applying the object-oriented programming. The mentioned approach involves the visual modelling throughout the life cycles development to foster better product quality and stakeholder communication.

OOAD in the modern software engineering is known to be best conducted in both incremental and iterative ways. The outputs of the OOAD activities, the analysis models for OOA as well as the design models for OOD are refined. Each software life cycle is usually divided up into at least a few stages: from abstract descriptions of the problem to designs to code as well as process of testing all the way to the deployment stage. The earliest stages of such process are analysis and design. The analysis phase is also known to be called as the "requirements acquisition".

In some approaches to the software development, such as the so-called “waterfall models”, the boundaries between each of the stages are meant to be sequential and rigid. The term "waterfall" itself is known to be coined for such methodologies in order to signify that the progress goes in one direction only. For example, once analysis is complete then its design can begin and it is not a usual thing for such situation to happen when a design issue requires a change in the analysis model or when, for instance, a coding issue requires some changes in design.

The alternative to the described “waterfall models” are the “iterative models”. The mentioned distinction was popularized by Barry Boehm while he was working on his Spiral Model trying to develop the software. In case of the “iterative models”, it is always possible to do work in a few different stages of the model in parallel. Thus, for example, it is always possible and acceptable to work on design, analysis and code on the same day having issues from one stage impact issues to another one. The software development is known to be a knowledge-intensive process and the things such as analysis cannot be realized without understanding the design issues as well as the coding issues affecting design.

The object-oriented model focuses on the re-usability as well as on modularity. The main goal of the object-oriented approach is to please the so-called "open-closed principle". A module is known to be “open” in case it supports extension. In case the module provides the standardized ways to add the new behaviours or to describe the new states. In the object-oriented paradigm it is often accomplished in a way of creating a new subclass of the existing class. Any module is known to be closed in case it has a well-defined stable interface that all of the other modules have to use and that limits the interaction as well as the potential errors that can be introduced into only one module by the changes in another.

Any software life cycle is known to be divided up into a few stages going from the abstract descriptions of the problem to design then to code, later — to the testing stage and later, finally, to the stage of deployment. The early stages of this process are stage of design and stage of analysis. There is a distinction between design and analysis which can sometimes be described as "how vs. what". In the analysis the developers are known to be working with the users as well as the domain experts try to define what system is supposed to do. The implementation details are expected to be totally or mostly ignored at this stage depending on the method itself.

The major difference between the object-oriented analysis and any other form of analysis is that by the object-oriented approach we can organize the requirements around objects, that integrate both data (states) and processes (behaviours), which were modelled after the real world objects which some particular system interacts with. In the so-called “traditional analysis methodologies”, the processes and data (the states and behaviours) are considered separately from each other. You can always visualize your data modelled by the Entity-Relationship diagram, for example, and the behaviours in the way of the flow or structure charts. To make any of the mentioned illustration you can always use ConceptDraw DIAGRAM software as well as any needed solution downloaded from another product of CS Odessa — ConceptDraw STORE.

Data Flow Diagram (DFD) Solution

Example 1. Data Flow Diagram (DFD) Solution in ConceptDraw STORE

The primary tasks in the OOA (object-oriented analysis) are to find the objects, to organize these objects, to describe the way how the objects interact with each other, to define the behaviour of the mentioned objects and so to define the internals of such objects. The common models which are used within OOA are object models and use cases. The object models are known to be those which are used for describing the class relations, such as a circle to be a subclass of a shape, for example, operations, properties and names of the major objects. The user-interface prototypes or mock-ups can also be created in order to help simplify the understanding. The use cases are known to be describing the scenarios for the standard domain functions which the system is expected to accomplish.

Yourdon and Coad Diagram

Example 2. Yourdon and Coad diagram — Order Process

Being involved in the OOA as well as OOAD you might find it very useful to have an OOAD solution downloaded from the ConceptDraw STORE application to use while working in ConceptDraw DIAGRAM software creating any needed diagrams. Having all the needed tools can simplify your work with making the diagrams, such as the Yourdon and Coad ones. Peter Coad and Edward Yourdon developed the so-called “Coad/Yourdon method” used for the OOA. Object-oriented analysis and design (OOAD) is a popular technical approach for analyzing an application, designing the system or business in a way of applying the object-oriented paradigm. Being involved in such activity you may find ConceptDraw DIAGRAM a very useful professional tool for making any needed OOA diagrams.

ConceptDraw DIAGRAM is a perfect tool for:






TEN RELATED HOW TO's:
UML Diagram Estate Agency. This sample was created in ConceptDraw DIAGRAM diagramming and vector drawing software using the UML Use Case Diagram library of the Rapid UML Solution from the Software Development area of ConceptDraw Solution Park. This sample shows the work of the estate agency and is used by the estate agencies, building companies, at the trainings of the estate agencies, for understanding the working processes of the estate agencies.UML Use Case Diagram Example - Estate Agency *
Picture: UML Use Case Diagram Example - Estate Agency
Related Solution:
UML Interaction Overview Diagram schematically shows a control flow with nodes and a sequence of activities that can contain interaction or sequence diagrams.Diagramming Software for Design UML Interaction Overview Diagrams *
Picture: Diagramming Software for Design UML Interaction Overview Diagrams
The Social Media Response solution creates interactive social media flow charts and action mind maps. The solution includes a video tutorial and a number of samples helping social media teams refine and organize their response process.How to Connect Social Media DFD Flowchart with Action Maps *
Picture: How to Connect Social Media DFD Flowchart with Action Maps
Related Solution:
The UML Diagrams are widely used by developers and software engineers for professionally design and development any bank system or Automated Teller Machine (ATM) system. You need a powerful software for their design? ConceptDraw DIAGRAM extended with ATM UML Diagrams Solution from the Software Development Area of ConceptDraw Solution Park suits the best for this goal.Bank System *
Picture: Bank System
Related Solution:
The recruitment process often requires design and use of various HR flowcharts, diagrams, attractive illustrations.Recruitment
Picture: Recruitment
Related Solution:
Garrett IA diagrams are used at development of Internet-resources, in particulars at projecting of interactions of web-resource elements. The diagram of information architecture of the web resource which is constructed correctly with necessary details presents to developers the resource in comprehensible and visual way.Garrett IA Diagrams with ConceptDraw DIAGRAM  *
Picture: Garrett IA Diagrams with ConceptDraw DIAGRAM
Planning a water supply system is one of the stages of developing a building drawing. Although materials are constantly improved, design elements for plumbing haven't changed sufficiently for decades. This is due to necessity of maintaining very old systems. The plan and schematic drawing of plumbing equipment, water pipe junctions and, kitchen facilities a is a rather significant element of a building plan. The suite of 4 vector libraries supplied with ConceptDraw solution for Plumbing and Piping Planning includes near 130 vector images of pipes, boilers, water pipe junctions, tanks and other plumbing devices, helpful when creating plumbing and piping plans, and blueprints of sewerage or water supply systems.Building Drawing
Picture: Building Drawing. Design Element — Plumbing
Related Solution:
The entity–relationship (ER) model is a data model that lets graphically represent the information system and depict the relationships between people, objects, concepts, places, and events within a given system. It is also convenient to use the ER Diagram for Cloud computing representation and description the Cloud computing architecture, design them with pleasure using the extensive tools of the Cloud Computing Diagrams solution from the Computers and Network area of ConceptDraw Solution Park.ER Diagram for Cloud Computing
Picture: ER Diagram for Cloud Computing
Related Solution:
While designing a conceptual data model, you should use appropriate software. For instance, ConceptDraw DIAGRAM is a user-friendly ER diagram tool that has a lot of samples and templates to facilitate your work. A clear entity-relationship diagram helps to define the relations between system’s components. Software engineering is the section of a computer science engaged to design, realization, and support of complex software products. An ERD is a data modeling method that is widely applied in the software engineering practice. Commonly it is used for developing a structure of a a relational database. An entity relationship diagram is helpful for structuring and organizing databases that can be modeled using a relational structure. An entity relationship diagram is designed to depicts the interrelationships within the sets of entities which are accumulated in the database. Each entity represents a particular component of a data. Thus, ER diagrams depicts the logical structure of databases. ConceptDraw ER Diagrams solution provides software engineers with the professional tool for making entity-relationship diagrams.Entity Relationship Diagram Software Engineering *
Picture: Entity Relationship Diagram Software Engineering
Related Solution:
The activity of any organization is more or less branchy network of processes. The description of these processes is a hard technical task which requires definite methodology and standards. According to the IDEF0 standard any process can be described in the form of a block (Activity Box) which has inputs and outputs. The process consists in transformation of inputs into outputs under the influence of the management and in the presence of necessary resources. Outputs of the given process later on can be either inputs for the next process or resources, or management means.IDEF0 standard with ConceptDraw DIAGRAM *
Picture: IDEF0 standard with ConceptDraw DIAGRAM
Related Solution:
ConceptDraw
DIAGRAM 18