1 / 30

- Meeting 3 - Modules, Hierarchy Charts, and Documentation

- Meeting 3 - Modules, Hierarchy Charts, and Documentation. By: Felix Valentin, MBA. Today Topic:. Modules, Subroutines, Procedures , Functions, or Methods Modularization Provides Abstraction Modularization Allows Multiple Programmers to Work on a Problem

garin
Download Presentation

- Meeting 3 - Modules, Hierarchy Charts, and Documentation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. - Meeting 3 - Modules, Hierarchy Charts, and Documentation By: Felix Valentin, MBA

  2. Today Topic: • Modules, Subroutines, Procedures, Functions, or Methods • Modularization Provides Abstraction • Modularization AllowsMultiple Programmers to Work on a Problem • Modularization Allows You to Reuse Your Work • Modularization Makes It Easier to Identify Structures • Modularization Makes It Easier to Identify Structures • Modularize a Program • Creating Hierarchy Charts • Understanding Documentation

  3. Modules, Subroutines, Procedures, Functions, or Methods • COBOL, RPG, and BASIC programmers are most likely to use “subroutine” • You are never required to break a large program into modules, but there are at least four reasons for doing so: • Modularization provides abstraction • Modularization allows multiple programmers to work on a problem • Modularization allows you to reuse your work • Modularization makes it easier to identify structures

  4. Modularization Provides Abstraction • One reason modularized programs are easier to understand is that they enable a programmer to see the big picture • Abstraction is the process of paying attention to important properties while ignoring nonessential details • Likewise, some level of abstraction occurs in every computer program

  5. Modularization AllowsMultiple Programmers to Work on a Problem • When you dissect any large task into modules, you gain the ability to divide the task among various people • Rarely does a single programmer write a commercial program that you buy off the shelf • Professional software developers can write new programs in weeks or months, instead of years, by dividing large programs into modules and assigning each module to an individual programmer or programming team

  6. Modularization Allows You to Reuse Your Work • If a subroutine or function is useful and well written, you may want to reuse it more than once within a program or in other programs • You can find many real-world examples of reusability • Assuming the plumbing and electrical systems you choose are also in service in other houses improves your house’s reliability

  7. Modularization Makes It Easier to Identify Structures • When you combine several programming tasks into modules, it may be easier for you to identify structures • When you work with a program segment, you may question whether it is structured • If you can modularize some of the statements and give them a more abstract group name, it is easier to see that the program involves a major selection and that the program segment is structured

  8. Selection of Logic From a Payroll Program

  9. Modularized Logic from a Payroll Program

  10. Modularize a Program • Modulenames will follow the same two rules used for variable names: • Module names must be one word • Module names should have some meaning • Additionally, in this text module names will be followed by a set of parentheses

  11. Modularization Makes It Easier to Identify Structures • When a program uses a module, you can refer to the main program as the calling program, because it “calls” the module’s name when it wants to use the module • Check flowchart and code @ page 68 Flowchart and Pseudocodefor Averaging Program with Modules

  12. Modules Calling Other Modules • Just as a program can call a module or subroutine, any module can call another module • Deciding whether to break down any particular module further into its own subroutines or sub-modules is an art • Rather than use arbitrary rules, a better policy is to place together statements that contribute to one specific task • The more the statements contribute to the same job, the greater the functional cohesion of the module • Check flowchart and code @ page 70 Flowchart for Averaging Program with sub Modules

  13. Declaring Variables • The primary work of most modules in most programs you write is to manipulate data • Many program languages require you to declare all variables before you use them • Declaring a variable involves providing a name for the memory location where the computer will store the variable value and notifying the computer what type of data to expect

  14. Declaring Variables • Every programming language requires that you follow specific rules when declaring variables, but all the rules involve identifying at least two attributes for every variable: • You must declare a data type • You must give the variable a name • Two type to declaring variables: • Local variable • Global variable

  15. Averaging Program with Declared Variables

  16. Creating Hierarchy Charts • Use a hierarchy chart to illustrate modules’ relationships • A hierarchy chart does not tell you what tasks are to be performed within a module; it does not tell you when or how a module executes

  17. Hierarchy Chart for Value-Averaging Program

  18. An Organizational Hierarchy Chart

  19. Billing Program Hierarchy Chart

  20. Understanding Documentation • Documentation refers to all of the supporting material that goes with a program • When programmers begin to plan the logic of a computer program, they require instructions known as program documentation

  21. Understanding Documentation • Program documentation falls into two categories: • Internal program documentation consists of program comments, or non-executing statements that programmers place within their code to explain program statements in English • External program documentation includes all the supporting paperwork that programmers develop before they write a program

  22. Output Documentation • Output documentation is usually the first to be written • The most common type of output is a printed report usually design in printed report on a printer spacing chart, which is also referred to as a print chart or a print layout • Check picture of output documentation @ page 78 - 83

  23. Input Documentation • A file description describes the data that are contained in a file • You usually find a file’s description as part of an organization’s information systems’ documentation; physically, the description might be on paper in a binder in the Information Systems department, or it might be stored on a disk

  24. Input Documentation • The price of any item in the inventory file is allowed five positions, 16 through 20 • Two of the positions are reserved for decimal places • Typically, decimal points themselves are not stored in data files; they are implied or assumed

  25. Input Documentation • Organizations may use different forms to relay the information about records and fields, but the very least the programmer needs to know is: • What is the name of the file? • What data does it contain? • How much room does the file and each of its fields take up? • What type of data is each field—character or numeric? Chapter 3

  26. Partise Case INPUT DOCUMENT

  27. Partise Case REQUEST PROFIT REPORT

  28. Completing the Documentation • When you have designed the output and confirmed that it is possible to produce it from the input, then you can plan the logic of the program, code the program, and test the program • In addition to this program documentation, you typically must create user documentation • User documentation includes all the manuals or other instructional materials that nontechnical people use, as well as the operating instructions that computer operators and data-entry personnel need

  29. Completing the Documentation • The areas addressed in user documentation may include: • How to prepare input for the program • To whom the output should be distributed • How to interpret the normal output • How to interpret and react to any error message generated by the program • How frequently the program needs to run

  30. Practice Case: Create a flowchart and Pseudo codefor and must use modularity: • Show a several menu for : • Odd and Even • Sigma Function • Exit • User can choose the menu it is menu A or B, if user choose A perform A task, if user choose B perform B task. • After finish perform a task application will be go back to main menu again and ask a user until user choose C to exit an application.

More Related