Software Engineering

by Kerem Kosaner

Process Modeling : What is Process?

Posted by keremkosaner on 1 April 2008

1.    Process :

 

Process is “Ordered set of activities to solve a problem”. Process (computing), a running program; a task to be executed, especially one which is largely self-contained.

 

1.2 Process Concept in Methodologies:

 

Dataflow Diagram: A data flow diagram (DFD) is a graphical representation of the “flow” of data through an information system. A data flow diagram can also be used for the visualization of data processing (structured design). It is common practice for a designer to draw a context-level DFD first which shows the interaction between the system and outside entities. This context-level DFD is then “exploded” to show more detail of the system being modeled.

 

  • The system designer makes a context level DFD, which shows the interaction (data flows) between the system (represented by one process) and the system environment (represented by terminators).
  • The system is decomposed in lower level DFD (Zero) into a set of processes, data stores, and the data flows between these processes and data stores.
  • Each process is then decomposed into an even lower level diagram containing its subprocesses.
  • This approach then continues on the subsequent subprocesses, until a necessary and sufficient level of detail is reached which is called the primitive process (aka chewable in one bite).

 

UML:  In the field of software engineering, the Unified Modeling Language (UML) is a standardized visual specification language for object modeling. UML is a general-purpose modeling language that includes a graphical notation used to create an abstract model of a system, referred to as a UML model. UML is not restricted to modeling software. UML is also used for business process modeling, systems engineering modeling and representing organizational structures. The Systems Modeling Language (SysML) is a Domain-Specific Modeling language for systems engineering that is defined as a UML 2.0 profiles.

 

Structure diagrams emphasize what things must be in the system being modeled:

 

        * Class diagram

        * Component diagram

        * Composite structure diagram (added in UML 2.x)

        * Deployment diagram

        * Object diagram

        * Package diagram

 

Behavior diagrams emphasize what must happen in the system being modeled:

 

        * Activity diagram

        * State Machine diagram

        * Use case diagram

 

Interaction diagrams, a subset of behavior diagrams, emphasize the flow of control and data among the things in the system being modeled:

 

        * Communication diagram

        * Interaction overview diagram (added in UML 2.x)

        * Sequence diagram

        * Timing diagram (added in UML 2.x)

 

Concepts: UML uses many concepts from many sources. For a definitive list, consult the glossary of Unified Modeling Language terms. Notable concepts are listed here.

 

  • For structure : Actor, attribute, class, component, interface, object, package
  • For behavior :  Activity, event, message, method, operation, state, use case.
  • For relationships : Aggregation, association, composition, dependency, generalization (or inheritance).
  • Other concepts :

        * Stereotype. It qualifies the symbol it is attached to.

        * Multiplicity notation which corresponds to database modeling cardinality, e.g., 1, 0..1, 1..*

        * Role

 

COSEML: Component Oriented Software Engineering (COSE) seems to be the future of software engineering. Currently, COSEML is the only modeling language that completely supports the COSE approach. Abstract decomposition of the system and their representing components are shown in a hierarchy diagram to support the COSE process model. In COSEML, only static modeling is supported through this single diagram. However, software is about behavior and static modeling is not sufficient to describe the system.

 

Activitiy Diagram: In the Unified Modeling Language, an activity diagram represents the business and operational step-by-step workflows of components in a system. An activity diagram shows the overall flow of control.

 

Activity diagrams are typically used for business process modeling. They consist of:

 

    * Initial node.

    * Activity final node.

    * Activities

 

The starting point of the diagram is the initial node, and the activity final node is the ending. An activity diagram can also have zero or more activity final nodes. Inbetween activities are represented by rounded rectangles.

 

Workflow : The term is used in computer programming to capture and develop human to machine interaction. Workflow software aims to provide end users with an easier way to orchestrate or describe complex processing of data in a visual form, much like flow charts but without the need to understand computers or programming.