Skip to main content

Introduction to Java Programming

  What is Java? Java is a programming language and a platform. Java is a high-level, robust, object-oriented and secure programming language. Java was developed by Sun Microsystems (which is now the subsidiary of Oracle) in the year 1995. James Gosling is known as the father of Java. Firstly, it was called  Greentalk  and the file extension was  .gt . After that, it was called  Oak . Initially Java was designed for small, embedded systems in electronic appliances like set-top boxes. Platform:  Any hardware or software environment in which a program runs, is known as a platform. Since Java has a runtime environment (JRE) and API(Application Programming Interface), it is called a platform. The principles for creating Java programming were "Simple, Robust, Portable, Platform-independent, Secured, High performance, Multithreaded, Architecture neutral, Object-oriented, Interpreted, and Dynamic". Currently, Java is used in internet programming, mobile devices, g...

4. Functional Modeling

 

Functional Modeling

Functional modeling gives the process perspective of the object-oriented analysis model and an overview of what the system is supposed to do. It defines the function of the internal processes in the system with the aid of Data Flow Diagrams (DFDs).

Data flow models consist of a number of processes which exchange information. A process transform information it receives, and passes the transformed information on to other processes or to objects in the system.

Data Flow Diagrams

Functional modeling is represented through a hierarchy of DFDs. The DFD is a graphical representation of a system that shows the inputs of the system, the processing upon the inputs, the outputs of the system as well as the internal data stores. DFDs illustrates the series of transformation or computations performed on the objects or the system, and the external controls and objects that affect the transformation.

A data flow diagram is a graph which shows the flow of data values from their sources in objects through processes that transform them to their destination on other objects.

Features of a DFD

Processes

Processes are the computational activities that transform data values . A whole system can be visualized as a high-level process.

Representation in DFD: A process is represented as an ellipse with its name written inside it and contains a fixed number of input and output data values.

Data Flows

Data flow represents the flow of data between an actor and a process, or between a data store and a process. A data flow denotes the value of a data item at some point of the computation. This value of the data is not changed by the data flow.

Representation in DFD: A data flow is represented by a directed arc or an arrow, labelled with the name of the data item that it carries.

If a process gives same outputs, then we represent it using unlabelled arrows.

If a process gives different outputs, then we represent its each forked component is labelled.

Actors

Actors are the active objects that interact with the system by either producing data and inputting them to the system, or consuming data produced by the system. In other words, actors are the objects of the system which gives the input or takes the output.

Representation in DFD: An actor is represented by a rectangle. Actors are connected to the inputs and outputs, and lie on the boundary of the DFD.

Data Stores

Data stores are the passive objects that acts as a permanent data storage. Unlike actors, they cannot perform any operations. The are used to store data and retrieve the stored data.

Representation in DFD: A data store is represented by two parallel lines containing the name of the data store. Each data store is connected to at least one process. Input arrows contain information to modify the contents of the data stores, while output arrows contain information retrieved from the data store.

When a part of information is to be retrieved, the output arrow is labelled. An unlabelled arrow denoted full data retrieval. A two-way arrow implies both retrieval and update.

Constraints

Constraints specifies the conditions or restrictions that we need to be satisfied over time. They allow adding new rules or modifying existing ones.

In object modeling, the constraints define the relationship between objects. This may also define the relationship between the different values that an object may take at different times.

In dynamic modeling, the constraints define the relationship between the states and events of different objects.

In functional modeling, the constraints define the restrictions on transformations and computations.

Representation in DFD: A constraint is rendered as a string within braces.

Control Flows

A process may be associated with a certain Boolean value and is evaluated only if the value is true, though it is not a direct input to the process. Checking some certain specific Boolean conditions to be satisfied for processing a certain transformation. These Boolean values are called the control flows.

Representation in DFD: Control flows are represented by a dotted arc from the process producing the Boolean value to the process controlled by them.

Process of Functional Modeling

  1. Identify input and output values.
  2. Build data flow diagrams showing functional dependencies.
  3. Describe functions
  4. Identify constraints
  5. Specify optimization criteria.

Previous

Next

Comments