Software Methodologies posted by Shuchi
Gauri
Why rules to check the class diagrams are
are needed?
What are Reflexive associations used for?
What are the Do's and Don’ts of DFD?
What are the Building Blocks used by the
De Marco Model for requirement specs?
What are Petri Nets are used for?
What are properties of Petri Net?
What are the objectives of structured
analysis?
How are Domain specific data types
useful? Give it’s types.
Identify the uses of the Object
Constraint Language.
What are the 12 UML diagramming methods?
Why rules to check the class diagrams are are needed?
To formalize the models
a. They are checkable (static verification)
b. They are executable (dynamic verification)
c. They are translatable
To keep it simple but not too simple
a. Ease of learning
b. Ease of translation
What are Reflexive associations used for?
Reflexive Associations are associations between instances of the same class.
They are used to model objects that systematically associate with each other
For example:
– A sequence of objects
– A network of objects
– A hierarchy of objects
The 'is-a' is called a reflexive association because the reflexive association
permits classes to bear the is-a association not only with their super-classes
but also with themselves.

Figure above depicts how an Employee class could be related to itself through
the manager/manages role. When a class is associated to itself, this does not
mean that a class's instance is related to itself, but that an instance of the
class is related to another instance of the class.
What are the Do's and Don’ts of DFD?
Don’ts:
a) Don’t show possible outcomes of a process as split data flows.
b) Don’t show control processing on data flows.
c) Don’t loop
d) Don’t use dataflows as Process activation signals
e) Don’t draw too many process bubbles on a DFD
Do's:
a) Do label data flows according to content and define any possible outcomes in
the data dictionary.
b) Do label data flows according to content and show control processing inside
functional primitives with outcomes defined in the data dictionary.
c) Do describe iterative processing within functional primitives.
d) Do describe control events within functional primitives.
e) Do draw DFDs that contain a high degree of
f) functional abstraction
What are the Building Blocks used by the De Marco Model for
requirement specs?
Building Blocks used by the De Marco Model Requirements Specifications are
constructed using:
a) Data Flow Diagrams: To show processes, inputs and outputs.
b) Data Dictionary: That contains definitions of inputs, outputs &
intermediate data together with accuracy, units of measure, range etc.
c) Structured Language: To describe functional primitives using a concise set
of terms that enhances clarity and understanding. Also may include, equations,
tables, charts & diagrams.
d) Decision Tables and/or Trees: To clearly indicate decision processing when
language becomes too convoluted or difficult to follow.
What are Petri Nets are used for?
Petri Net are also known as place/transition net.
a) The specification of asynchronous systems
b) Describing and analyzing systems that are characterized as concurrent,
distributed, parallel, nondeterministic and/or stochastic.
c) A generalization of finite state machine
d) Manufacturing systems
e) To depict the flow using visualization technique like flow charts or block
diagrams but with much more scope on concurrency aspects.
f) As a general theory of discrete parallel systems (the first)
What are properties of Petri Net?
Some Petri Net properties are:
a) Liveness - are there future transitions? A petri net can have different
degrees of liveness L1 - L4
b) Boundedness - is max no. of tokens at a place limited?
c) Reachability - is some state possible? (reachability tree is computable)
d) Safety - is some state impossible?
e) Fairness - does a transition get its proper share (whatever that is)?
What are the objectives of structured analysis?
Objectives of Structured Analysis:
a) Improve project management & control
b) Make more effective use of experienced and inexperienced development staff
c) Develop better quality systems
d) Make projects resilient to the loss of staff
e) Enable projects to be supported by computer based tools such as computer
aided software engineering (CASE)
f) Establish a framework for good communication between participants in a
project
How are Domain specific data types useful? Give it’s types.
a) Domain Specific Data Types have precise control over legal values.
b) They can represent subsets of values of the core data types.
c) Mapping of domain specific types to target language types is handled by
appropriate implicit bridge translation rules.
Types of Domain specific data types:
a) Numeric types
- values that have units, range, and precision
b) String types
- String types provide for values that contain textual data. These can be
specified in terms of a size and a pattern
c) Enumerated types
- described by a list of values
d) Composite value
- A type may be composite, but the corresponding attribute must always be
treated by the domain as a single unit. Example: Mail Address and Contact
Number are valid types, but no operations in the domain can access the city as
a part of the mailing address, nor an area code as a part of the telephone
number.
Identify the uses of the Object Constraint Language.
Uses of OCL are:
a) Modeling identifiers
b) Defining derived attributes.
c) To specify invariants on classes and types in the class model.
d) To describe pre- and post-conditions on Operations and Methods.
e) As a navigation language.
f) To specify constraints on operations
What are the 12 UML diagramming methods?
UML supports twelve diagramming methods:
a) class
b) object
c) component
d) deployment
e) case
f) sequence
g) activity
h) collaboration
i) state chart
j) incorporating packages
k) subsystems
l) models
|