identify use cases, external and temporal business events for a system. perform event partitioning...
Post on 20-Dec-2015
215 views
TRANSCRIPT
Identify use cases, external and temporal business events for a system.Perform event partitioning and organize events in a functional decomposition diagram.Draw event diagrams and merge those events into a system diagram.Draw primitive data flow diagrams and describe the elementary data flows and processes in terms of data structures and procedural logic (Structured English and decision tables), respectively.Document the distribution of processes to locations.Synchronize data and process models using a CRUD matrix.
Lesson-22 Process Modeling(2)
Data Types and Domains
Data attributes should be defined by data types and domains.
A data type defines what class of data can be stored in an attribute (e.g., character, integers, real numbers, dates, pictures, etc.).
A domain defines what values or range of values an attribute can legitimately take on.
Diverging and Converging Data Flows
• A diverging data flow is one that splits into multiple data flows.– Useful for illustrating data that starts out naturally as one flow,
but needs to be routed to parallel processes.
– Also useful for illustrating multiple copies of the same output going to different destinations.
•A converging data flow is the merger of multiple data flows into a single packet.– Useful for illustrating data from multiple sources that must
come back together for some subsequent processing
ExternalAgent
External Agents• An external agent defines a person, organization unit, or other
organization that lies outside of the scope of the project but that interacts with the system being studied. – External agents define the “boundary” or scope of a system being
modeled.
– As scope changes, external agents can become processes, and vice versa.
– Almost always one of the following:• Office, department, division inside the business but outside the system scope.
• An external organization or agency.
• Another business or another information system.
• One of your system’s end-users or managers
DataStore
Data Stores• A data store is an inventory of data.
– Frequently implemented as a file or database.
– A data store is “data at rest” compared to a data flow that is “data in motion.”
– Almost always one of the following:• Persons
(or groups of persons)
• Places
• Objects
• Events (about which data is captured)
• Concepts (about which data is important)
– Data stores depicted on a DFD store all instances of data entities (depicted on an ERD)
When to Draw Process Models• Strategic systems planning
– Enterprise process models illustrate important business functions.
• Business process redesign– “As is” process models facilitate critical analysis.– “To be” process models facilitate improvement.
• Systems analysis (primary focus of this course)– Model the existing system including its limitations – Model the target system’s logical requirements (meaning
processes and data flows needed regardless of how the system will be implemented)
– Model candidate technical solutions (physical DFDs only)– Model the target technical solution (physical DFDs only)
Classical Structured Analysis1. Draw top-down physical DFDs that represent the current
physical implementation of the system including its limitations.
2. Convert the physical DFDs to their logical equivalents.
3. Draw top-down logical DFDs that represent an improved system.
4. Describe all data flows, data stores, policies, and procedures in a data dictionary or encyclopedia.
5. Optionally, mark up copies of the logical DFDs to represent alternative physical solutions.
6. Draw top-down physical DFDs that represent the target solution.
THE ABOVE METHODOLOGY IS RARELY PRACTICED ANYMORE BECAUSE IT IS VERY CUMBERSOME AND TIME-CONSUMING.
Modern Structured Analysis1. Draw a context DFD to establish initial project scope.
2. Draw a functional decomposition diagram to partition the system into subsystems.
3. Create an event-response or use-case list for the system to define events for which the system must have a response.
4. Draw an event DFD (or event handler) for each event.
5. Merge event DFDs into a system diagram (or, for larger systems, subsystem diagrams).
6. Draw detailed, primitive DFDs for the more complex event handlers.
7. Document data flows and processes in the data dictionary.
THE ABOVE METHODOLOGY, BASED ON EVENT PARTITIONING, IS MORE COMMONLY PRACTICED.
Events• Events define processes needed to respond
to those events.– External events are those initiated by external
agents. They result in an input transaction or data flow.
– Temporal events are those that are triggered by the passage of time. They simply “happen” and are indicated by a control flow.
– State events are those based on a system’s change from one state to another.
Use Cases• Use cases are based upon object-oriented
concepts that are essentially the same as events.– Use case analysis is the process of identifying
and modeling business events and how the system responds to them.
– An actor is anything that needs to interact with the system (essentially, a synonym for external agent).
membership subscription plan
AGREEMENT
Logically Delete (void) in the database.
Use Case ListActor
Event (or Use Case)
Trigger
Responses
Marketing Establishes a new
to entice new members.
NEW MEMBER SUBSCRIPTION
PROGRAM Generate SUBSCRIPTION
PLAN CONFIRMATION.
Create AGREEMENT in the database.
Marketing Establishes a new membership resubscription plan to lure back former members.
PAST MEMBER
RESUBSCRIPTION PROGRAM
Generate SUBSCRIPTION
PLAN CONFIRMATION.
Create AGREEMENT in the database.
Marketing Changes a subscription plan for current members (e.g., extending the fulfillment period)
SUBSCRIPTION PLAN
CHANGE. Generate AGREEMENT
CHANGE CONFIRMATION.
Update AGREEMENT in the database.
(time) A subscription plan expires. (current date) Generate AGREEMENT
CHANGE CONFIRMATION.
System DFD (see book for more readable copy)
GenerateOrder Analysis
Report
ProcessMember OrderCancelation
ProcessMember Order
Revision
ProcessSubscription
Order
ProcessMember Order
ClubDirectors
TimeWarehouse
Warehouse
Member
Member
Member
Member OrderedProducts
Products
Transactions
Products
Member Orders
Member Orders
Members
Members
Inventory Commitment
Product and Availability
Address
New Member Order
New MemberOrdered Products
MemberOrder
CancelationNotice
UpdatedMember
DeletedMember
Order
Deleted MemberOrdered Products
OrderAnalysisReport
End of Day
Orders
OrderedProducts
Packing Order
Packing Order
Member Order Confirmation
InventoryCommitment
Product andAvailability
Updated Memberfrom Updated Order
UpdatedMemberOrderedProducts
UpdatedMember
Order
Member
New MemberOrderedProducts
RelevantTransactions
InventoryCommitmen
t
Product andAvailability
NewMember
OrderUpdated Member
from Order
Member
SubscriptionOrder
ConfirmationMember OrderConfirmation
RevisedPacking Order
Member OrderCancelation
MemberOrder
ChangeRequest
Subscription Order
Member Order