Download presentation
1
System Implementation
System Analysis and Design System Implementation - Mr. Ahmad Al-Ghoul In this sequence we will explain a structure chart
2
System Analysis and Design System Implemantation
learning Objectives explain a structure chart showing top-down design, modular design, cohesion, and coupling Avicenna System Analysis and Design System Implemantation
3
Structured Application Development
Structure Charts Structure charts show the program modules and the relationships among them Control module: In a structure chart, a control module is a higher-level module that directs lower-level modules, called subordinate modules. Subordinate modules: A lower-level module in a structure chart. Avicenna System Analysis and Design System Implemantation
4
Structured Application Development
Structure Charts Module A self-contained component of a system, defined by a function One single coordinating module at the root of structure chart Single point of entry and exit Communicate with each other by passing parameters library module: In a structure chart, a library module is a module that is reusable and can be invoked from more than one point in the chart. Avicenna System Analysis and Design System Implemantation
5
Structured Application Development
Data and control passed between structure chart modules is either a: Data couple, A diagrammatic representation of the data exchanged between two modules in a structure chart passing only data, shown as an arrow with an empty circle. Control couple shown as an arrow with a filled-in circle. In a structure chart, a control couple shows a message, also called a flag, which one module sends to another. A module uses a flag to signal a specific condition or action to another module Avicenna System Analysis and Design System Implemantation
6
Structured Application Development
Control modules make the decisions about which lower-level modules should be executed. Lower-level modules are functional, performing only one task. Systems analysts should keep the number of couples to a minimum. The fewer data couples and control flags one has in the system, the easier it is to change the system. Avicenna System Analysis and Design System Implemantation
7
Structured Application Development
The look up customer name module exchanges data with the maintain customer data module The update customer file module sends an account overdue flag back to the maintain customer data module An example of a structure chart data couple. An example of a structure chart control couple. Avicenna System Analysis and Design System Implemantation
8
Structured Application Development
Structure Charts – Notation Modules Library modules Module call Data Flag Avicenna System Analysis and Design System Implemantation
9
Structured Application Development
Structure Charts Condition: A line with diamond on one end presents a condition A specified action or state in a structure chart. A condition line indicates that a control module determines which subordinate modules will be invoked, depending on a specific condition Sort inventory parts is a control module with a condition line that triggers one of the three subordinate modules An example of a structure chart condition and condition lines. Avicenna System Analysis and Design System Implemantation
10
Structured Application Development
Structure Charts Loop: A curved arrow represents a loop In a structure chart, a loop indicates that one or more modules are repeated. The get student grades and calculate GPA modules are repeated for each student An example of a structure chart loop. Avicenna System Analysis and Design System Implemantation
11
Structured Application Development
In order to choose among alternatives when dividing systems into modules, it useful to evaluate the connection between them. If there are few or no connections between modules, then it is easier to understand one module without reference to others. The notion of module independence can be described in terms of ‘coupling’ and ‘cohesiveness’. These concepts were introduced by Edward Yourdon and Larry Constantine who are concerned with ‘goodness’ of design. Avicenna System Analysis and Design System Implemantation
12
Structured Application Development
Coupling: Coupling measures relationships and interdependence among modules. Coupling is the strength of relationships between modules (the degree to which modules are interconnected with or related to one another). The stronger the coupling between modules in a system, the more difficult it is to implement and maintain the system, because a modification to one module will then necessitate careful study, as well as possible changes and modifications, to one or more other modules. In practice, this means that each module should have simple, clean interface with other modules, and that the minimum number of data elements should be shared between modules. Avicenna System Analysis and Design System Implemantation
13
Structured Application Development
Loosely coupled: Modules that are relatively independent. Loosely coupled modules are easier to maintain and modify, because the logic in one module does not affect other modules. Tightly coupled: If modules are tightly coupled, one module refers to internal logic contained in another module. Avicenna System Analysis and Design System Implemantation
14
Structured Application Development
This figure shows two examples of coupling In the tightly coupled example, the subordinate module, Calculate Current Charges, depends on a status flag that is receives from control module, Update Customer Balance. The loosely coupled modules on the left are logically independent. Rather than passing flag down to the subordinate module, the control module allows the Apply Discount module to handle discount processing independently. Logic errors, if any, are confined to the Apply Discount module, where they can be detected and resolved more easily An example of loosely coupled and tightly coupled structure charts. Avicenna System Analysis and Design System Implemantation
15
Structured Application Development
Cohesion: Cohesion measures a module's scope and processing characteristics. Cohesion is the measure of the strength among the elements in the same module (the degree to which the components of a module are necessary and sufficient to carry out one, single, well defined function). In practice, this means that the systems designer must ensure that they does not split essential processes into fragmented modules and the systems designer must ensure that they does not gather together unrelated processes (represented as processes on the DFD) into meaningless modules. The best modules are those that are functionally cohesive. The worst modules are those that are coincidentally cohesive. High cohesiveness occurs when all of the module parts contribute directly to the purpose or function which the module is supposed to accomplish. If you need to make a module more cohesive, you can split it into separate units, each of which performs a single function Avicenna System Analysis and Design System Implemantation
16
Structured Application Development
In the figure below the task called Check Customer Status actually consists of two separate tasks: Check Customer Number and Check Customer Credit Limit. Notice that the figure with one module is less cohesive than the figure with the two modules, because it combines the two tasks into a single module, while the other figure treats them as separate modules, you achieve more cohesion and better program quality An example of structure chart cohesion. Avicenna System Analysis and Design System Implemantation
17
Structured Application Development
advantages Structure Charts: Modularity improves system maintainability Provides a means for transition from analysis to design Provides a synchronous hierarchy of modules disadvantages Does not work well for asynchronous processes such as networks Could be too large to be effectively understood with large programs. Avicenna System Analysis and Design System Implemantation
18
System Analysis and Design System Implemantation
Sequence Summary A structure chart consists of symbols that represent program modules, data couples, control couples, conditions, and loops A rectangle represents a program module, which consists of program code that accomplishes a specific function An arrow with an empty circle represents a data couple, which shows data that one module passes to anther An arrow with a filled circle represents a control couple, which shows a message, also called a flag A line with a diamond on one end represents a condition, which indicates a control module that determines which subordinate module are invoked, depending on a specific condition A curved arrow represents a loop, which indicates that one or more modules are repeated Cohesion measures a module’s scope and processing characteristics A module that performs a single function or task has a high degree of cohesion, which is desirable Coupling measures relationships and interdependence among modules Modules that are relatively independent are loosely coupled, which is desirable Avicenna System Analysis and Design System Implemantation
19
System Analysis and Design System Implemantation
Sequence Summary In this Sequence we have Defined the terms structure chart, control module, Subordinate module, library module, Data couple, control couple, condition, and loop Described a structure charts – notation Explained a structured application development explained a structure charts, cohesion, and coupling Described a structure charts advantages and disadvantages Avicenna System Analysis and Design System Implemantation
20
System Analysis and Design System Implemantation
Reference [1] System Analysis and Design, Sixth Edition Authors: Gary B. Shelly, Thomas J. Cashman and Harry J. Rosenblatt Publisher: SHELLY CASHMAN SEWIES. Avicenna System Analysis and Design System Implemantation
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.