Path: utzoo!dciem!nrcaer!scs!spl1!laidbak!att!pacbell!ames!pasteur!ucbvax!decwrl!hplabs!hpda!hpcuhb!hpcilzb!chris From: chris@hpcilzb.HP.COM (Chris Toomey) Newsgroups: comp.software-eng Subject: Structured Analysis ques. Message-ID: <4150003@hpcilzb.HP.COM> Date: 1 Jun 88 23:26:02 GMT Article-I.D.: hpcilzb.4150003 Organization: HP Design Tech Center - Santa Clara, CA Lines: 43 I'm doing structured analysis for the first time and am a little confused about a few of its concepts. I'm using an automated tool (HP Teamwork) to develop a set of leveled data flow diagrams and the accompanying data dictionary; I want to use these in place of a formal written requirements spec. I'm confused over the identification of the net inputs/outputs of the system as specified in the top-level DFD (the context diagram). I'll use a simple example to illustrate my point. Let's say I'm developing a very simple spelling program (similar to UNIX's spell) which will repeatedly prompt the user for words, which are to be input one at a time following the prompt. The program will check the spelling of the words and place them accordingly into the files "correct" and "incorrect." This will continue until the user enters ctrl-d at the prompt. Now, for the context diagram: ------- --------- ---------- words / \ --------------> correct | user | -------->| spell | --------- ---------- \ / --------------> incorrect -------- --------- As this DFD illustrates, the net input to the program is the words the user enters, and the net output is the two files correct and incorrect. Is this the right assessment of the system I've described? If so, then it seems to me that the system cannot be fully specified by this approach because it fails to consider the module(s) which are responsible for prompting the user and reading words. In other words, how can DFDs and data dictionary entries be used in place of a written requirements spec. if they don't encompass the entire system being developed? Is my context diagram incorrect? Should the net input be "keystrokes"? Also, if the system was extended to display a menu to the user, would the menu be considered net output to the user or merely "control information" (and thus not shown on the DFD)? Thanks for any insights.