System Analyst and Design - PowerPoint PPT Presentation

About This Presentation
Title:

System Analyst and Design

Description:

Structural Modeling Information – PowerPoint PPT presentation

Number of Views:43

less

Transcript and Presenter's Notes

Title: System Analyst and Design


1
Structural Modeling
  • Basics

2
What is Structural Modeling?
  • The goal of the analyst to discover the key data
    contained in the problem domain and to build a
    structural model of the object.
  • One of the primary purpose of the structural
    model is to create a vocabulary that can be used
    by the analyst and the user.
  • Structural models represent the things, idea, or
    concepts-that is, the objects-contained in the
    domain of the problems.

3
Class
  • A class is a general template that we use to
    create specific instances, or objects, in the
    problem domain.
  • An attribute of an analyst class represents a
    piece of information that is relevant to the
    description of the class within the application
    domain of the problem being investigated.
  • An attribute contains information the analyst or
    user feels the system should store.
  • An operation or service describe the action to
    which the instances of the class are capable of
    responding.

4
Relationship
  • Can be classified into three basic categories of
    data...
  • Generalization
  • Aggregation (collection of parts)
  • Association
  • The generalization enables the analyst to create
    classes that inherit attributes and operations of
    other classes. (a-kind-of)
  • The aggregation relate parts to wholes or parts
    to assemblies. (a-part-of)
  • The association is an organization with a common
    purpose and having a formal structure.

5
Object Identification
  • The four common approaches are...
  • Textual analyst
  • Brainstorming
  • Common object lists
  • Patterns
  • Textual analyst is an analyst of the use-case
    description. The text is examined to identify
    potential objects, attributes, operations, and
    relationships.
  • Brainstorming is a process of a set of
    individuals sitting around a table and suggesting
    potential classes that could be useful for the
    problem under consideration.

6
Object Identification
  • Common object list is simply a list of objects
    common to the business domain of the system.There
    are several categories.
  • Tangible things (physical)
  • Incidents (events)
  • Roles (people)
  • Interaction (communication)

7
Object Identification
  • Other types of objects are...
  • Places
  • Containers
  • Organizations
  • Business records
  • Catalogs
  • Policies

8
Object Identification
  • Patterns is simply a useful group of
    collaborating classes that provide a solution to
    a commonly occurring problem.

9
CRC Cards
  • Class-Responsibility-Collaboration cards are used
    to document the responsibilities and
    collaborations of a class.
  • Responsibilities of a class can be broken into
    two separate types Knowing and Doing
  • Knowing are things that an instance of a class
    must be capable of knowing.
  • Doing are things that an instance of a class must
    be capable of doing.
  • Most use cases involve a set of several classes.
    Theses classes form Collaborations.

10
CRC Cards
  • Collaborations allow analyst to think in terms of
    client, server and contracts.
  • A client object is an instance of a class that
    sends a request to an instance of another class
    for an operation to be executed.
  • A server object is the instance that receives the
    request from the client object.
  • A contract formalizes the interaction between the
    client and the server objects.
  • CRC Questions for Role Playing
  • Who or what are you?
  • What do you know?
  • What can you do?

11
Elements of a CRC Card
  • The front of the card contains
  • Class name (common noun)
  • ID
  • Type
  • Description
  • Associated use cases
  • Responsibilities
  • Collaboration
  • The back of the card contains
  • Attributes (Knowing Responsibilities of each
    class)
  • Relationships ( generalization, aggregation and
    association)
  • CRC cards are used to document the essential
    properties of a class.

12
Role-Playing CRC Cards with Use-Cases
  • CRC cards can be used in a role-playing exercise
    that can be useful in discovering additional
    objects, attributes, relationships and
    operations.
  • The first step is to review the use-case
    description.
  • The second step is to identify the relevant roles
    that are to be played.
  • The third step is to role-play scenarios of the
    use case.
  • The forth step is to simply repeat steps 1
    through 3 for the remaining use cases.

13
Class Diagrams
  • A class diagram is a static model that shows the
    classes and the relationships among classes that
    remain constant in the system over time.
  • The class refer to the people, places and things
    about which the system will capture information.
  • Attributes are properties of the class about
    which we want to capture information.
  • Derived attributes are attributes that can be
    calculated or derived.
  • The visibility of an attribute can be can be
    public (), protected () or private (-).
  • Public not hidden from any objects
  • Protected hidden from all except its immediate
    subclasses
  • Private hidden from all classes

14
Class Diagrams
  • Operations are actions that a class can preform.
    The functions that are available to all classes
  • Create new instance
  • Return a value for a particular attribute
  • Set a value for a particular attribute
  • Delete an instance

15
Class Diagrams
  • There are four kinds of operations that a class
    can contain
  • Constructor operation creates a new instance.
  • Query operation makes information about the state
    of an object available to other objects.
  • Update operation changes the value of some or all
    the object's attributes.
  • Destructor operation simply deletes or removes
    the object from the system.

16
Class Diagrams
  • A primary purpose of a class diagram is to show
    the relationships, or associations, that classes
    have with one another.
  • When multiple classes share a relationship, a
    line is drawn and labeled with either the name of
    the relationship or the roles that the classes
    play in the relationship.
  • Multiplicity documents how an instance of an
    object can be associated with other instances.
  • Association class is formed when classes share
    many-to-many relationships, which has its own
    attributes and operations.

17
Class Diagrams
  • A generalization association shows that one class
    (subclass) inherits from another class
    (superclass).
  • An aggregation association is used when classes
    actually comprise other classes.
  • Aggregation is used to portray logical a-part-of
    relationships.
  • Composition is used to portray a physical part of
    relationships.
  • Physical implies that the part can be associated
    with only a single whole.
Write a Comment
User Comments (0)
About PowerShow.com