Sie sind auf Seite 1von 8

CHAPTER 9-PROCESS SPECIFICATIONS AND

STRUCTURED DECISIONS
REVIEW QUESTIONS
1.List three reasons for producing process specifications

To reduce the ambiguity of the process. This goal compels the analyst to learn details about how
the process works. Any vague areas should be noted, written down, and consolidated for all process
specifications. These observations form a basis and provide the questions for follow-up interviews with the
user community.
To obtain a precise description of what is accomplished, which is usually included in a packet of
specifications for the programmer.
To validate the system design. This goal includes ensuring that a process has all the input data
flow necessary for producing the output. In addition, all input and output must be represented on the data flow
diagram.

2. Define what is meant by a structured decision.


One way to describe structured decisions is to use the method referred to as structured English, in which
logic is expressed in sequential structures, decision structures, case structures, or iterations.

3. What four elements must be known for the systems analyst to design systems for structured decisions?
It is important to be able to recognize logic and structured decisions that occur in a business and how
they are distinguishable from semi-structured decisions that tend to involve human judgment. Then it is critical
to recognize that structured decisions lend themselves particularly well to analysis with systematic methods that
promote completeness, accuracy, and communication.

4. What are the two building blocks of structured English?


As the name implies, structured English is based on (1) structured logic, or instructions organized into
nested and grouped procedures, and (2) simple English statements such as add, multiply, and move.

5. List five conventions that should be followed when using structured English.

Express all logic in terms of one of these four types: sequential structures, decision
structures, case structures, or iterations
Use and capitalize accepted keywords such as IF, THEN, ELSE, DO, DO WHILE, DO
UNTIL, and PERFORM.
Indent blocks of statements to show their hierarchy (nesting) clearly.
When words or phrases have been defined in a data dictionary, underline
those words or phrases to signify that they have a specialized, reserved meaning.
Be careful when using and and or, and avoid confusion when distinguishing between
greater than and greater than or equal to and like relationships. A and B means both
A and B; A or B means either A or B, but not both. Clarify the logical statements now
rather than waiting until the program coding stage.
6. What is the advantage of using structured English to communicate with people in the organization?
The obvious advantage of clarifying the logic and relationships found in human languages, structured
English has another important advantage: It is a communication tool. Structured English can be taught to and
hence understood by users in the organization, so if communication is important, structured English is a viable
alternative for decision analysis.

7. Which quadrant of the decision table is used for conditions? Which is used for condition alternatives?
The upper left quadrant contains the condition(s). The upper right quadrant contains the condition
alternatives.

8. What is the first step to take in developing a decision table?


Determine the number of conditions that may affect the decision. Combine rows that overlap, such as
conditions that are mutually exclusive. The number of conditions becomes the number of rows in the top half of
the decision table.

9. List the four main problems that can occur in developing decision tables?
Four main problems can occur in developing decision tables: incompleteness, impossible situations,
contradictions, and redundancy.

10. What is one of the major advantages of decision tables over other methods of decision analysis?
One major advantage of using decision tables over other methods is that tables help the analyst ensure
completeness.

11. What are the main uses of decision trees in systems analysis?
Decision trees are used when complex branching occurs in a structured decision process. Trees are also
useful when it is essential to keep a string of decisions in a particular sequence.

12. List the two major steps in building decision trees.

Identify 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 right.

13. What three advantages do decision trees have over decision tables?
The decision tree has three main advantages over a decision table. First, it takes advantage of the
sequential structure of decision tree branches so that the order of checking conditions and executing actions is
immediately noticeable. Second, conditions and actions of decision trees are found on some branches but not on
others, which contrasts with decision tables, in which they are all part of the same table. Those conditions and
actions that are critical are connected directly to other conditions and actions, whereas those conditions that do
not matter are absent. In other words, the tree does not have to be symmetrical. Third, compared with decision
tables, decision trees are more readily understood by others in the organization. Consequently, they are more
appropriate as a communication tool.

14. In which two situations should you use structured English?


There are many repetitious actions
Communication to end users is important.

15. In which two situations do decision tables work best?


Complex combinations of conditions, actions, and rules are found,
You require a method that effectively avoids impossible situations, redundancies, and
Contradictions

16. In which two situations are decision trees preferable?


The sequence of conditions and actions is critical,
When not every condition is relevant to every action (the branches are different).

KEYWORDS AND PHRASES


Action- Organized activity to accomplish an objective
Condition- it is in the upper left quadrant of a decision table
Condition alternative- it is in the upper right quadrant of a decision table
Decision table- A decision table is a table of rows and columns, separated into four quadrants.

Decision tree- are used when complex branching occurs in a structured decision process. Trees are also useful
when it is essential to keep a string of decisions in a particular sequence.

Minispecs- see process specification

Process Specifications- sometimes called minispecs because they are a small portion of the
total project specifications are created for primitive processes on a data flow diagram as well as for some
higher-level processes that explode to a child diagram. They also may be created for class methods in object-
oriented design, and, in a more general sense, for the steps in a use case total project specifications

Structured Decision- are those for which the conditions, condition alternatives, actions, and action
rules can be determined. There are three major methods for analysis of structured decisions: structured English,
decision tables, and decision trees.

Structured English- is based on (1) structured logic, or instructions organized into nested and grouped
procedures, and (2) simple English statements such as add, multiply, and move.
CHAPTER 10 - OBJECT-ORIENTED SYSTEMS ANALYSIS
AND DESIGN USING UML
REVIEW QUESTIONS
1. List two reasons for taking an object-oriented approach to systems development
Object-oriented analysis and design can offer an approach that facilitates logical, rapid, and thorough
methods for creating new systems responsive to a changing business landscape. Object-oriented techniques
work well in situations in which complicated information systems are undergoing con-tinuous maintenance,
adaptation, and redesign.

2. Describe the difference between a class and an object.


Objects are persons, places, or things that are relevant to the system we are analyzing. Objects are
typically part of a group of similar items called classes.

3. Explain the concept of inheritance in object-oriented systems.


Inheritance reduces programming labor by using common objects easily. The programmer only
needs to declare that the Car class inherits from the Vehicle class, and then provide any additional
details about new attributes or behaviors that are unique to a car. All the attributes and behaviors of
the Vehicle class are automatically and implicitly part of the Carclass and require no additional
programming. This enables the analyst to define once but use many times, and is similar to data that
is in the third normal form, defined only once in one database table

4. What does CRC stand for?


CRC stands for class, responsibilities, and collaborators.
5. Describe what Object Think adds to the CRC card.
The Object Think statements are written in plain English, and the property,
or attribute, name is entered in its proper place. The purpose of these columns is to clarify think-ing and help
move toward creating UML diagrams.

6. What is UML?
UML provides a standardized set of tools to document the analysis and design of a soft-ware system.

7. What are the three major elements of UML?


UML consists of things, relationships, and diagrams.

8. List what the concept of structural things includes.


Classes, Interfaces, Collaborations, Use Cases, Active Classes, Components and Nodes.

9. List what the concept of behavioral things includes.


Interactions and State Machines.

10. What are the two main types of diagrams in UML?


There are two main types of diagrams in UML: structural diagrams and behavioral diagrams.

11. List the diagrams included in structural diagrams.


They include class diagrams, object diagrams, component diagrams, and deployment diagrams.

12. List the diagrams included in behavioral diagrams.


Behavioral diagrams include use case diagrams, sequence diagrams, communication diagrams, state-
chart diagrams, and activity diagrams.

13. What is it that a use case model describes?


Use case model shows a view of the system from the user perspective, thus describing what a system
does without describing how the system does it.

14. Would you describe a use case model as a logical or physical model of the system?
A use case provides developers with a view of what the users want. It is free of technical or
implementation details. We can think of a use case as a sequence of transactions in a system. The
use case model is based on the interactions and relationships of individual use cases.

15. Define what an actor is in a use case diagram.


An actor that initiates an event.

16. What three things must a use case always describe?


A use case always describes three things: an actor that initiates an event; the event that trig-gers a use
case; and the use case that performs the actions triggered by the event.

17. What does an activity diagram depict?


Activity diagrams show the sequence of activities in a process, including sequential and parallel
activities, and decisions that are made. An activity diagram is usually created for one use case and
may show the different possible scenarios.

18. Write a paragraph that describes the use of swimlanes on activity diagrams.
Rectangles surrounding other symbols, called swimlanes, indicate partitioning and are used
to show which activities are done on which platform, such as a browser, server, or mainframe
computer; or to show activities done by different user groups. Swimlanes are zones that can depict logic as well
as the responsibility of a class.

19. What can be depicted on a sequence or communication diagram?


These diagrams, along with class diagrams, are used in a use case realization, which is a way to achieve
or accomplish a use case.

20. Why is defining classes such an important object-oriented analysis task?


Because programming occurs at the class level.

21. What can be shown on a class diagram?


A class diagram also shows the nature of the relationships between classes.

22. Define method overloading.


Method overloading refers to including the same method (or operation) several times in a class.

23. List the four categories into which classes fall.


Classes fall into four categories: entity, interface, abstract, and control.

24. What are the steps for creating a sequence diagram?


Include the actor from the use case diagram in the enhanced sequence diagram. This will
be a stick figure from the use case diagram. There may be an additional actor on the right side of the
diagram, such as a credit card company or bank.
Define one or more interface classes for each actor. Each actor should have his or her own interface
class.
Create prototype Web pages for all human interfaces.
Ensure each use case has one control class, although more may be created during the detailed design.
Look for that control class and include it in the sequence diagram.
Examine the use case to see what entity classes are present. Include these on the diagram.
Realize that the sequence diagram may be modified again when doing detailed design, such as creating
additional Web pages or control classes (one for each Web form submitted).
To obtain a greater degree of reuse, consider moving methods from a control class to an entity class.

25. What are the two categories of relationships between classes?


There are two categories of relationships: associations and whole/part relationships.

26. What are gen/spec diagrams used for?


A generalization/specialization (gen/spec) diagram may be considered to be an enhanced class diagram.

27. What is another term for polymorphism?


Another term for polymorphism Method Overriding

28. What is depicted by a statechart diagram?


It is used to examine the different states that an object may have.

29. What is a package in UML approach?


Packages are containers for other UML things, such as use cases or classes. Packages can show system
partitioning, indicating which classes or use cases are grouped into a subsystem, called logical
packages.

30. Why is using UML for modeling important?


UML is a powerful tool that can greatly improve the quality of your systems analysis and design,
and it is hoped that the improved practices will translate into higher-quality systems.

KEYWORDS AND PHRASES


abstract class- are classes that cannot be directly instantiated

activity diagram- show the sequence of activities in a process, including sequential and parallel
activities, and decisions that are made. An activity diagram is usually created for one use case and
may show the different possible scenarios.

Actor-In UML, a particular role of a user of the system. The actor exists outside the system and interacts with
the system in a specific way. An actor can be a human, another system, or a device such as a keyboard.

Aggregation- Often described as has a relationship when using UML for an object-oriented approach.
Aggregations provide a means of showing that the whole object is composed of the sum of its parts (other
objects).

Ajax- A method using JavaScript and XML to dynamically change Web pages without displaying a new
page by obtaining small amounts of data from the server.

annotational thing- give developers more information about the system.


Association- or a structural connection between classes or objects. Associations are shown as a simple line on
a class diagram. The end points of the line are labeled with a symbol indicating the multiplicity, which is the
same as cardinality on an entity-relationship diagram. A zero represents none, a one represents one and
only one, and an asterisk represents many. The notation 0..1 represents from zero to one, and the notation 1..*
represents from one to many.

asynchronous message- which occur when the calling program does not wait for a returning message, such as a
feature run from a menu.

boundary class- The presentation layer, which represents what the user sees

branch- also called as a diamond or a merge. that represents either a decision .

class- Objects typically part of a group of similar items

class diagram- shows the nature of the relationships between classes.

Collaboration- original name of communication diagram

communication diagram- describe the interactions of two or more things in the system that perform a behavior
that is more than any one of the things can do alone.

control class- or active, classes are used to control the flow of activities, and they act as a coordinator when
implementing classes.

CRC cards- are used to represent the responsibilities of classes and the interaction between the classes.

deployment diagram- illustrates the physical implementation of the system, including the hardware, the
relationships between the hardware, and the system on which it is deployed. The deployment diagram may
show servers, workstations, printers, and so on.

entity class- represent real-world items, such as people, things, and so on. Entity classes are the entities
represented on an entity-relationship diagram.

Event- represent things that happen at a certain time and place.

Fork- one event going into the synchronization bar and several events going out of it.

generalization/specialization (gen/spec)- may be considered to be an enhanced class diagram.

Inheritance- . Classes can have children; that is, one class can be created out of another class.

Join- A synchronization in which several events merge into one event

main path- known as the steps Performed

merge- see branch

message- Information can be sent by an object in one class to an object in another class using a message,
similar to a call in a traditional programming language.

method overloading- refers to including the same method (or operation) several times in a class.
method overriding- see Polymorphism

object- are persons, places, or things that are relevant to the system we are analyzing.

object-oriented- Each object is a computer representation of some actual thing or event.

Package- are containers for other UML things, such as use cases or classes. Packages can show sys-tem
partitioning, indicating which classes or use cases are grouped into a subsystem, called logical
packages.

Polymorphism- (meaning many forms), or method overriding (not the same as method overloading), is the
capability of an object-oriented program to have several versions of the same method with the same name
within a superclass/subclass relationship.

primary use case- consists of a standard flow of events in the system that describes a standard
system behavior. The primary use case represents the normal, expected, and successful comple-tion of the use
case.

Relationship- are connections between classes, similar to those found on an entity-relationship diagram. These
are shown as lines connecting classes on a class diagram. There are two categories of relationships: associations
and whole/part relationships.

sequence diagram- showing the sequence of activities and class relationships. Each use
case may create one or more sequence diagrams.

State- which are the conditions of an object at a specific time.

statechart diagram- or state transition, diagram is another way to determine class methods. It is used
to examine the different states that an object may have.

Swimlane- are zones that can de-pict logic as well as the responsibility of a class.

synchronization bar- are used to show parallel activities. Represented by a long, flat rectangle.

synchronous message- which are calls to functions or subroutines. The calling object stops and waits for
control to be returned to it, along with an optional message.

temporal event- which occur at a predetermined time. These usually do not involve an actor or any external
event.

unified modeling language (UML)- provides a standardized set of tools to document the analysis and design of
a soft-ware system. UML consists of things, relationships, and diagrams. The first
components, or primary elements, of UML are called things.

use case diagram- provide the basis for creating other types of diagrams, such as class dia-grams and activity
diagrams.

use case scenario- are helpful in drawing sequence diagrams. Both


use case diagrams and use case scenarios are powerful tools to help us understand how a system
works in general.

Das könnte Ihnen auch gefallen