Bài giảng Systems Analysis and Design - Chapter 9: Describing Process Specifications and Structured Decisions
Decision Analysis Advantages
Structured English is useful when many actions are repeated and when communicating with others is important
Decision tables provide complete analysis of complex situations while limiting the need for change attributable to impossible situations, redundancies, or contradictions
Decision trees are important when proper sequencing of conditions and actions is critical and when each condition is not relevant to each action
46 trang |
Chia sẻ: vutrong32 | Lượt xem: 1374 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Bài giảng Systems Analysis and Design - Chapter 9: Describing Process Specifications and Structured Decisions, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Describing Process Specificationsand Structured DecisionsSystems Analysis and Design, 7eKendall & Kendall9© 2008 Pearson Prentice HallLearning ObjectivesUnderstand the purpose of process specificationsRecognize the difference between structured and semistructured decisionsUse structured English, decision tables, and decision trees to analyze, describe, and document structured decisionsChoose an appropriate decision analysis method for analyzing structured decisions and creating process specifications2Logic of DecisionsDocumenting and analyzing logic:Structured EnglishDecision tablesDecision treesLogic and structured decisions are distinguishable from semistructured decisions Structured decision analysis methods promote completeness, accuracy, and communication3Major TopicsProcess specificationsBusiness rulesStructured EnglishDecision tablesDecision treesHorizontal balancing4Process SpecificationsSometimes called minispecsCreated for primitive processes as well as for some higher level processes on a data flow diagramCreated for class methods in object-oriented design and for the steps in a use case5Goals of Producing Process SpecificationsReduce process ambiguityObtain a precise description of what is accomplishedValidate the system design6Process Specifications Are Not CreatedProcesses that represent physical input and/or outputProcesses that represent simple data validationProcesses that use prewritten code7Figure 9.1 How process specifications relate to the data flow diagram 8Process Specification Format InformationThe process numberThe process name Description of what the process accomplishesA list of input data flowOutput data flowsType of process Uses prewritten codeProcess logic descriptionLogic method reference List any unresolved issues9The Process NumberMust match the process ID on the data flow diagramAllows the analyst to work on or review any process, and to locate the data flow diagram containing the process easily10The Process NameThe same as displays within the process symbol on the DFD11Description of What the Process AccomplishesExample: Determine if an item is available for sale. If it is not available, create a backordered item record. Determine the quantity available12List of Input Data FlowUses the names found on the data flow diagramData names used in the formulae or logic should match the data dictionary, for consistency and good communication13Output Data FlowsUses data flow diagram and data dictionary names14Type of ProcessBatchOnlineRequire screen designsManualShould have well-defined procedures for employees performing the process tasks15Uses Prewritten CodeInclude the name of the subprogram or function containing the code16Process Logic DescriptionThis should state policy and business rules, not computer language pseudocodeBusiness rules are the procedures that allow a corporation to run its business17Common Business Rule FormatsDefinitions of business termsBusiness conditions and actionsData integrity constraintsMathematical and functional derivationsLogical inferencesProcessing sequencesRelationships among facts about the business18Logic Method ReferenceIf there is not enough room for a complete structured English description include a reference to the structured English description, decision table, or tree depicting the logic19List Any Unresolved IssuesIncomplete portions of logicThese issues form the basis of the questions used for follow-up interviews with users or business experts you have added to your project team20Figure 9.2 An example of a completed process specification form for determining whether an item is available21Structured EnglishUsed when the process logic involves formulas or iteration, or when structured decisions are not complex Based on structured logic and Simple English statements such as add, multiply, and move22Writing Structured EnglishExpress all logic in terms of sequential structures, decision structures, case structures, or iterationsUse and capitalize accepted keywords such as IF, THEN, ELSE, DO, and PERFORMIndent blocks of statements to show their hierarchy (nesting) clearlyUnderline words or phrases that have been defined in a data dictionaryClarify the logical statements23Figure 9.4 Examples of logic expressed in a sequential structure, a decision structure, a case structure, and an iteration24Advantages of Structured EnglishClarifying the logic and relationships found in human languagesAn effective communication tool, it can be taught to and understood by users in the organization25Data Dictionary and Process SpecificationThe data dictionary is a starting point for creating structured English:Sequence - a simple sequence of statements MOVE, ADD, and SUBTRACTSelection - [] entries become IF..THEN...ELSE statementsIteration { } entries become DO WHILE, DO UNTIL, or PERFORM UNTIL26Decision TablesA table of rows and columns, separated into four quadrantsConditionsCondition alternativesActions to be takenRules for executing the actions 27Figure 9.8 The standard format used for presenting a decision table28Figure 9.10 Constructing a decision table for deciding which catalog to send to customers who order only from selected catalogs29Developing Decision TablesDetermine conditions that affect the decisionDetermine possible actions that can be takenDetermine condition alternatives for each conditionCalculate the maximum number of columns in the decision tableFill in the condition alternativesComplete table by inserting an X where rules suggest actionsCombine rules where it is apparent Check for impossible situationsRearrange to make more understandable30Checking for Completeness and AccuracyFour main problemsIncompletenessImpossible situationsContradictionsRedundancy31Figure 9.14 Checking the decision table for inadvertent contradictions and redundancy is important32More Advanced Decision TablesAs the number of alternatives and conditions grow the number of columns increasesA table with seven conditions each having two alternatives would need 128 columnsTo reduce the number of columnsUse extended entriesUse the ELSE ruleConstruct multiple tables33Decision Table AdvantagesHelp the analysis ensure completenessEasy to check for possible errorsImpossible situationsContradictionsRedundancy34Decision TreesDecision trees are used when complex branching occurs in a structured decision processTrees are also useful when it is essential to keep a string of decisions in a particular sequence35Drawing Decision TreesIdentify all conditions and actions and their order and timing (if they are critical)Begin building the tree from left to right, making sure you list all possible alternatives before moving to the right36Figure 9.15 Drawing a decision tree to show the noncash purchase approval actions for a department store37Decision Tree AdvantagesThe order of checking conditions and executing actions is immediately noticeableConditions and actions of decision trees are found on some branches but not on othersCompared to decision tables, decision trees are more readily understood by others in the organization38Selecting a Structured Decision Analysis TechniqueUse structured English when there are many repetitious actions or when communication to end users is importantUse decision tables when complex combination of conditions, actions, and rules are found or you require a method that effectively avoids impossible situations, redundancies, and contradictionsUse decision trees when the sequence of conditions and actions is critical or when not every condition is relevant to every action (the branches are different)39Physical and Logical Process SpecificationsHow can a data flow diagram be transformed into a process specificationEach data flow diagram process expands to a child diagram, a structure chart, or process specificationHow process specifications can be used to balance (and correct) a data flow diagram40Using Process Specifications: Horizontal BalancingHorizontal balancing dictates that all output data flow elements must be obtained from the input elements and process logicA method where process specifications are used to analyze the data flow diagram and data dictionary41Horizontal Balancing RulesAll base elements on an output data flow must be present on an input data flowAll derived elements on an output data flow must be eitherPresent on an input data flow, orCreated by the processUnresolved areas are posted as questions during follow-up interviews with key users42SummaryProcess specificationsDecision AnalysisStructured EnglishLogic is expressed in sequential structures, decision structures, case structures, or iterations43Summary (Continued)Decision tablesFour quadrants are used toDescribe the conditionsIdentify possible decision alternativesIndicate which actions should be performedDescribe the actionsDecision treesConsists of nodes and branches44Summary (Continued)Decision Analysis AdvantagesStructured English is useful when many actions are repeated and when communicating with others is importantDecision tables provide complete analysis of complex situations while limiting the need for change attributable to impossible situations, redundancies, or contradictionsDecision trees are important when proper sequencing of conditions and actions is critical and when each condition is not relevant to each action45Summary (Continued)Horizontal balancingUsing process specifications to analyze the data flow and data dictionary46
Các file đính kèm theo tài liệu này:
- systems_analysis_and_design_chapter_9_9501.ppt