chap10

Upload: azzoun-jawhar

Post on 06-Jan-2016

215 views

Category:

Documents


0 download

DESCRIPTION

analyse des systeme d'information en utilisants les dictionnaire des données

TRANSCRIPT

Chapter 10 Analyzing Systems Using Data Dictionaries

Chapter 10Analyzing SystemsUsing Data DictionariesSystems Analysis and DesignKendall and KendallFifth EditionKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-2Major TopicsData dictionary conceptsDefining data flowDefining data structuresDefining elementsDefining data storesUsing the data dictionaryData dictionary analysisKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-3Data DictionaryData dictionary is a main method for analyzing the data flows and data stores of data-oriented systemsThe data dictionary is a reference work of data about data (metadata) It collects, coordinates, and confirms what a specific data term means to different people in the organizationKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-4Reasons for Using a Data DictionaryThe data dictionary may be used for the following reasons:Provide documentationEliminate redundancyValidate the data flow diagramProvide a starting point for developing screens and reportsTo develop the logic for DFD processesKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-5The RepositoryA data repository is a large collection of project informationIt includesInformation about system dataProcedural logicScreen and report designRelationships between entriesProject requirements and deliverablesProject management informationKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-6Data Dictionary ContentsData dictionaries containData flowData structuresElementsData storesKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-7Defining Data Flow Each data flow should be defined with descriptive information and it's composite structure or elementsInclude the following information:ID - identification numberLabel, the text that should appear on the diagramA general description of the data flowKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-8Defining Data Flow (Continued)The source of the data flowThis could be an external entity, a process, or a data flow coming from a data storeThe destination of the data flowType of data flow, either A record entering or leaving a file Containing a report, form, or screen Internal - used between processesKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-9Defining Data Flow (Continued)The name of the data structure or elementsThe volume per unit timeThis could be records per day or any other unit of timeAn area for further comments and notations about the data flowKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-10Data Flow ExampleNameCustomer OrderDescriptionContains customer order information and is used to update the customer master and item files and to produce an order record.SourceCustomer External EntityDestinationProcess 1, Add Customer OrderTypeScreenData StructureOrder InformationVolume/Time10/hourCommentsAn order record contains information for one customer order. The order may be received by mail, fax, or by telephone.Kendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-11Defining Data StructuresData structures are a group of smaller structures and elementsAn algebraic notation is used to represent the data structureKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-12Algebraic NotationThe symbols used areEqual sign, meaning consists ofPlus sign, meaning "andBraces {} meaning repetitive elements, a repeating element or group of elementsBrackets [] for an either/or situationThe elements listed inside are mutually exclusiveParentheses () for an optional elementKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-13Repeating GroupsA repeating group may beA sub-formA screen or form tableA program table, matrix, or arrayThere may be one repeating element or several within the groupKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-14Repeating GroupsThe repeating group may haveConditionsA fixed number of repetitionsUpper and lower limits for the number of repetitionsKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-15Physical and Logical Data StructuresData structures may be either logical or physicalLogical data structures indicate the composition of the data familiar to the userKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-16Physical Data StructuresInclude elements and information necessary to implement the system Additional physical elements includeKey fields used to locate recordsCodes to indicate record statusCodes to identify records when multiple record types exist on a single fileA count of repeating group entriesKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-17Data Structure ExampleCustomer Order =Customer Number +Customer Name + Address + Telephone + Catalog Number + Order Date + {Order Items} + Merchandise Total + (Tax) + Shipping and Handling + Order Total + Method of Payment + (Credit Card Type) + (Credit Card Number) + (Expiration Date)Kendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-18Structural RecordsA structure may consist of elements or smaller structural recordsThese are a group of fields, such asCustomer NameAddressTelephoneEach of these must be further defined until only elements remainKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-19General Structural RecordsStructural records and elements that are used within many different systems should be given a non-system-specific name, such as street, city, and zipThe names do not reflect a functional area This allows the analyst to define them once and use in many different applicationsKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-20Structural Record ExampleCustomer Name =First Name + (Middle Initial) + Last Name

Address = Street + (Apartment) + City + State + Zip + (Zip Expansion) + (Country)

Telephone = Area code + Local numberKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-21Defining ElementsData elements should be defined with descriptive information, length and type of data information, validation criteria, and default valuesEach element should be defined once in the data dictionaryKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-22Defining ElementsAttributes of each element areElement ID. This is an optional entry that allows the analyst to build automated data dictionary entriesThe name of the element, descriptive and uniqueIt should be what the element is commonly called in most programs or by the major user of the elementKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-23Defining ElementsAliases, which are synonyms or other names for the elementThese are names used by different users within different systemsExample, a Customer Number may be called a Receivable Account NumberClient NumberKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-24Defining ElementsA short description of the elementWhether the element is base or derivedA base element is one that has been initially keyed into the systemA derived element is one that is created by a process, usually as the result of a calculation or some logicKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-25Defining ElementsThe length of an elementThis should be the stored length of the itemThe length used on a screen or printed lengths may differKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-26Determining Element LengthWhat should the element length be?Some elements have standard lengths, such as a state abbreviation, zip code, or telephone numberFor other elements, the length may vary and the analyst and user community must decide the final lengthKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-27Determining Element LengthNumeric amount lengths should be determined by figuring the largest number the amount will contain and then allowing room for expansionTotals should be large enough to accommodate the numbers accumulated into themIt is often useful to sample historical data to determine a suitable lengthKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-28Determining Element Length Percent of data that willElement Length fit within the length

Last Name 11 98%First Name18 95%Company Name20 95%Street18 90%City17 99%Kendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-29Data TruncationIf the element is too small, the data will be truncatedThe analyst must decide how this will affect the system outputsIf a last name is truncated, mail would usually still be deliveredA truncated email address or Web address is not usable Kendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-30Data FormatThe type of data, either numeric, date, alphabetic or alphanumeric or other microcomputer formatsStorage type for numeric dataMainframe: packed, binary, displayMicrocomputer (PC) formatsPC formats depend on how the data will be used, such as Currency, Number, or ScientificKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-31Personal Computer FormatsBit - A value of 1 or 0, a true/false valueChar, varchar, text - Any alphanumeric characterDatetime, smalldatetime - Alphanumeric data, several formatsDecimal, numeric - Numeric data that is accurate to the least significant digitCan contain a whole and decimal portionFloat, real - Floating point values that contain an approximate decimal valueInt, smallint, tinyint - Only integer (whole digit) dataMoney, smallmoney - Monetary numbers accurate to four decimal placesBinary, varbinary, image - Binary strings (sound, picture, video)Cursor, timestamp, uniqueidentifier - A value that is always unique within a databaseKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-32Defining Elements - FormatInput and output formats should be included, using coding symbols:Z - Zero suppress9 - NumberX - CharacterX(8) - 8 characters. , - Comma, decimal point, hyphenThese may translate into masks used to define database fieldsKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-33Defining Elements - ValidationValidation criteria must be definedElements are eitherDiscrete, meaning they have fixed valuesDiscrete elements are verified by checking the values within a programThey may search a table of codesContinuous, with a smooth range of valuesContinuous elements are checked that the data is within limits or rangesKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-34Defining ElementsInclude any default value the element may haveThe default value is displayed on entry screensReduces the amount of keyingDefault values on GUI screensInitially display in drop-down listsAre selected when a group of radio buttons are usedKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-35Defining ElementsAn additional comment or remarks areaThis might be used to indicate the format of the date, special validation that is required, the check-digit method used, and so onKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-36Data Element ExampleNameCustomer NumberAliasClient NumberAliasReceivable Account NumberDescriptionUniquely identifies a customer that has made any business transaction within the last five years.Length 6Input Format 9(6)Output Format9(6)Default ValueContinuous/DiscreteContinuousTypeNumericBase or DerivedDerivedUpper Limit18DiscreteValue/Meaning CommentsThe customer number must pass a modulus-11 check-digit test.Kendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-37Defining Data StoresData stores contain a minimal of all base elements as well as many derived elementsData stores are created for each different data entity, that is, each different person, place, or thing being storedKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-38Defining Data StoresData flow base elements are grouped together and a data store is created for each unique groupSince a data flow may only show part of the collective data, called the user view, you may have to examine many different data flow structures to arrive at a complete data store descriptionKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-39Data Store DefinitionThe Data Store IDThe Data Store Name, descriptive and uniqueAn Alias for the fileA short description of the data storeThe file type, either manual or computerizedKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-40Data Store DefinitionIf the file is computerized, the file format designates whether the file is a database file or the format of a traditional flat fileThe maximum and average number of records on the fileThe growth per yearThis helps the analyst to predict the amount of disk space requiredKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-41Data Store DefinitionThe data set name specifies the table or file name, if knownIn the initial design stages, this may be left blankThe data structure should use a name found in the data dictionaryKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-42Data Store Definition - Key FieldsPrimary and secondary keys must be elements (or a combination of elements) found within the data structureExample: Customer Master FileCustomer Number is the primary key, which should be uniqueThe Customer Name, Telephone, and Zip Code are secondary keysKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-43Data Store Example - Part 1IDD1NameCustomer Master FileAliasClient Master FileDescriptionContains a record for each customerFile TypeComputerFile FormatDatabaseRecord Size200Maximum Records45,000Average Records42,000 Percent Growth/Year6%Kendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-44Data Store Example - Part 2Data Set/Table NameCustomerCopy MemberCustmastData StructureCustomer RecordPrimary KeyCustomer NumberSecondary KeysCustomer Name, Telephone, Zip CodeCommentsThe Customer Master file records are copied to a history file and purged if the customer has not purchased an item within the past five years. A customer may be retained even if he or she has not made a purchase by requesting a catalog.Kendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-45Data Dictionary and Data Flow Diagram LevelsData dictionary entries vary according to the level of the corresponding data flow diagramData dictionaries are created in a top-down mannerData dictionary entries may be used to validate parent and child data flow diagram level balancingKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-46Data Dictionary and Data Flow Diagram LevelsWhole structures, such as the whole report or screen, are used on the top level of the data flow diagramEither the context level or diagram zeroData structures are used on intermediate-level data flow diagramElements are used on lower-level data flow diagramsKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-47Creating Data Dictionaries1. Information from interviews and JAD sessions is summarized on Input and Output Analysis FormsThis provides a means of summarizing system data and how it is used2. Each structure or group of elements is analyzedKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-48Creating Data Dictionaries3. Each element should be analyzed by asking the following questions:A. Are there many of the field?If the answer is yes, indicate that the field is a repeating field using the { } symbolsB. Is the element mutually exclusive of another element?If the answer is yes, surround the two fields with the [ | ] symbolsKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-49Creating Data Dictionaries C. Is the field an optional entry or optionally printed or displayed?If so, surround the field with parenthesis ( )4. All data entered into the system must be storedCreate one file or database file for each different type of data that must be storedAdd a key field that is unique to each fileKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-50Determining Data Store ContentsData stores may be determined by analyzing data flowsEach data store should consist of elements on the data flows that are logically related, meaning they describe the same entityKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-51Maintaining the Data DictionaryTo have maximum power, the data dictionary should be tied into other programs in the systemWhen an item is updated or deleted from the data dictionary it is automatically updated or deleted from the databaseKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-52Using the Data DictionaryData dictionaries may be used toCreate reports, screens, and formsGenerate computer program source codeAnalyze the system design for completion and to detect design flawsKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-53Creating Reports, Screens, FormsTo create screens, reports, and formsUse the element definitions to create fieldsArrange the fields in an aesthetically pleasing screen, form, or report, using design guidelines and common senseRepeating groups become columnsStructural records are grouped together on the screen, report, or formKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-54Data Dictionary AnalysisThe data dictionary may be used in conjunction with the data flow diagram to analyze the design, detecting flaws and areas that need clarificationKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-55Data Dictionary AnalysisSome considerations for analysis areAll base elements on an output data flow must be present on an input data flow to the process producing the outputBase elements are keyed and should never be created by a processKendall & Kendall Copyright 2002 by Prentice Hall, Inc.10-56Data Dictionary AnalysisA derived element should be output from at least one process that it is not input intoThe elements that are present on a data flow into or coming from a data store must be contained within the data store