Context Models v2 (ppt)


Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • We did a similar thing when I invited you to this presentation. I sent you a message, you responded, etc. End result you showed up at this meeting. I could have accomplished the same thing with a form and enrollment and signatures and hand delivered letters.
  • business semantics is based on fundamental categories or predicates. The most important core categories are the following: 􀂄 Actors 􀂄 Messages 􀂄 Subjects or objects 􀂄 Locations 􀂄 Events From these, we can achieve yet another set of more abstract, derived categories: 􀂄 Business exchanges 􀂄 Business processes 􀂄 Business roles 􀂄 Business process activities and decisions 􀂄 User interfaces/formulas/ decision rules 􀂄 Business relationships 􀂄 Business rules Each of these derived categories is a configuration of the actors, messages, and so forth of the core categories. In the following sections, we describe both the core categories and the derived categories. We discovered the major core categories (actors, messages, subjects/objects, locations, and events) not theoretically but by analyzing why a set of rather simple drawings we now call context diagrams were so effective in helping people to understand business systems environments.3 Figure 1 shows a simple context diagram. Context diagrams show only two kinds (or categories) of things explicitly: actors and messages. When we first started using them, the idea was to represent people, organizations, or systems communicating with other people, organizations, or systems with a minimum of other information. Actors are shown in context
  • Modeling Actors, Subjects, and Messages The first thing to understand about actors (individuals, organizations, and systems) is that in the real world, they exist independently of one another. This is what philosophers call “ontological” independence. Customers, for example, are independent of one another. I may physically inherit genes from my parents, but after a certain age, I don’t physically depend on them for my existence. Things in the real world that are independent of one another ought to be modeled as independent entities or classes in corresponding business systems models. If Frank Jones and Frank Smith are separate customers, they need to be assigned different identification numbers and have their attributes collected and updated independently as well. The same holds true for the subject (objects) category. Subjects are independent things; they are individual products (such as hammers, wrenches, or screwdrivers), so they should have unique identification numbers as well. Historically, only expensive products such as cars and computers and television sets have had truly unique IDs (i.e., serial numbers). But with the emergence of radio frequency identification (RFID) technology, the day is coming when nearly every produced product will have its own unique ID, and our business systems will need to be prepared to model billions of unique IDs and capture a whole range of new information about that product including, perhaps, current location and status. The bottom line is that from a business semantics standpoint, actors and subjects are modeled in simple tables with unique IDs (see Figure 10). The fundamental data model of messages (transactions) is only a bit more complex than the data models for actors and subjects. In general, there are two parts to a message: a message header and message line item. Figure 11 shows a typical message data structure. The actor, subject, and message data models are the building blocks for most major business systems (we’ll address event/time and location information later). In a sense, actors and subjects represent the nouns of our business semantics sentences (propositions), and messages represent the verbs. With them, we can construct the basic model for a business communication.
  • System A feeds message to Actor B System A needs a data interface to System A Test, The a new Message from System A Test to Actor B. Then a comparison report to compare System A output to System B output
  • Early on we noted that there was a lot of communication going on with our business partners. We collected the communication flows from the individual business area context models and created an internal/external communication master model. Improving our agency’s communication and relationships with our business partners is an agency priority. Everyone knew about their part of the communications but no one knew about them all.
  • This is a sample of a Organizational based Context flow. Since we only identified the direct interaction to externals we lost the 2-x level interaction. EX Consultant to Design to Traffic.
  • This is an example from the Business partner perspective. Now try to estimate how this picture looks if you include the other state agencies.
  • We did a lot of models and we did not identify information fro a primary system going to anyone outside of KDOT. So we went back to those groups who were receiving information from the system and ask questions around what they did with this information. In a lot of cases they either reformatted it and sent It on to another group inside the agency. Or they repackaged it and sent it to someone outside the agency. Our State staff have almost been trained to be in the middle of an information flow to other sources from systems. As we ask what value they add to the information flow we really get to the real questions around what the best alternative for a system design might look like.
  • Don’t be surprised if you have to do 2-3-4 levels of models for clarity around one information flow. At a high level it might be purchase order, at the next level it might be the model above. At the third level it might include digital signatures, multiple bids, partial shipping papers, multiple receipts, multiple payments. And don’t be surprised if inside of one role you actually discover 2-3 other roles inside of that office. IE Payment staff may break down into recipt of documents, payment authorization, payment distribution, vendor monthly summary audit.
  • Roles in a lot of cases are unique within an organization unit. IE Chief Procurement, Bureau of Computer Services Bureau Chief. Some roles are agency wide. Some are unique within a division, IE Area Engineer.
  • Try to put yourself in these business partners position and imagine the various types of communication you receive from the state on a steady basis. If we can make their life easier and it doesn’t cost us anymore this is good business relations.
  • Copy the today version of the model. Add in a New message flow. Label it New, or modified. Highlight the differences. Focus on the capabilities differences from each actors perspective. See if you can bypass any of the actors or clarify the value added by that actor.
  • For every hour of a modeling session plan on 4-20 hours of follow up efforts Clean up the presentation Make the behind the scene associations, Break into multiple models for clarity Verify the text and definitions, Distribute to team members ( web sites help) and edit.
  • Temptation to include all things on this model, Business functions, Activities, People, Have someone who does not know the topic area review to see if they recognize the actors and messages.
  • Context Models v2 (ppt)

    1. 1. Context Models Part of Enterprise Architecture Training Bill Roth Chief Information Technology Architect State of Kansas [email_address]
    2. 2. Agenda <ul><li>What is a Context Model </li></ul><ul><li>How do I build one </li></ul><ul><li>How do I use it </li></ul><ul><li>How does our agency use it </li></ul><ul><ul><li>How would another agency see it </li></ul></ul><ul><li>Why should I care </li></ul><ul><li>Where does this fit into the big picture </li></ul>
    3. 3. What is a context model <ul><li>A model to show any information flow from one source to another. </li></ul><ul><li>An information flow can be any format </li></ul><ul><ul><li>Text, voice, reports, video, financial, mail, web, forms, signatures, etc. </li></ul></ul>
    4. 4. Simple demo KDOT Supplier KDOT Purchaser Request Bid Current Bid Purchase Order Item requested & shipping order Payment Invoice
    5. 5. Simple demo KDOT Supplier KDOT Purchaser Request Bid Current Bid Purchase Order Item requested & shipping order Payment Invoice ACTORS Messages
    6. 6. Define Context
    7. 7. Define Context Actors Can be Groups, Roles, Systems Examples KHP, Dispatchers, EADCR
    8. 8. Define Context Messages Any Information sent from one place to another, In any format Example, accident form, dispatch notice All Types Text, voice, radio, form, report, video, image, ect
    9. 9. Define Context Actors outside of topic area Actors inside of topic area
    10. 10. Actors Can be Groups, Roles, Systems Bureau Of Computer Services Bureau Chief Bureau Chief Of Computer Services CPMS CMS Email System Area Engineer Designer Ben Nelson DB2 Don’t use personal names or technology, both will change Use the level of Detail that is appropriate for the topic.
    11. 11. Messages Actor A Actor B Daily Report Financial Transaction Voice Message Yearly Report Request for Information Batch File Form Signature XML data Role Specific information Receipt Acknowledgement If in doubt put it down, You can clarify it later For every Yin there is a Yen. Look for the completeness
    12. 12. Message questions <ul><li>What is the basic information flows </li></ul><ul><li>How about: </li></ul><ul><ul><li>Daily Cycles </li></ul></ul><ul><ul><li>Yearly cycles(FY, Calendar, Fed FY, Budget Cycle, </li></ul></ul><ul><ul><li>Monthly Cycles, Report distributions, Financials, status reports, </li></ul></ul><ul><ul><li>Get many levels of the organization involved. Some reports have been delivered so long the current managers may not even be aware of them, especially if they are automated. </li></ul></ul><ul><li>Keep asking questions until they run out of answers, or you run out of time. </li></ul><ul><li>Messages are always depicted with one-way arrows. </li></ul>
    13. 13. Business semantics based on fundamental categories or predicates <ul><li>most important core categories are the following : </li></ul><ul><ul><li>Actors </li></ul></ul><ul><ul><li>Messages </li></ul></ul><ul><ul><li>Subjects or objects </li></ul></ul><ul><ul><li>Locations </li></ul></ul><ul><ul><li>Events </li></ul></ul><ul><li>From these, we can achieve yet another set of more abstract, derived categories: </li></ul><ul><li>Business exchanges </li></ul><ul><li>Business processes </li></ul><ul><li>Business roles </li></ul><ul><li>Business process activities and decisions </li></ul><ul><li>User interfaces/formulas/ decision rules </li></ul><ul><li>Business relationships </li></ul><ul><li>Business rules </li></ul>
    14. 14. Message as a document Copyright Cutter Consortium & Ken Orr
    15. 15. Message as Data Copyright Cutter Consortium & Ken Orr
    16. 16. What do you do with a context model <ul><li>Look for sequences of messages, These are Work flows </li></ul><ul><li>Cyclical stuff can be scheduled </li></ul><ul><li>Any Message from a system is either an interface or a report. </li></ul><ul><ul><li>Look for commonalities, these can be a service </li></ul></ul><ul><li>Any message that is a response to a request can be a service </li></ul>
    17. 17. So now this Context becomes? KDOT Supplier KDOT Purchaser Request Bid Current Bid Purchase Order Item requested & shipping order Payment Invoice ACTORS Messages
    18. 18. Define Business Process
    19. 19. A Defined Business Process Now you can ask about the activity that creates the message Actors control each swimlane Activity to do something Message or content
    20. 20. Why are we using Context Models? <ul><li>For Clarity, for you yes, but mostly for Other Agency Staff, Use their terms, They need to see their stuff on the models. </li></ul><ul><li>For completeness </li></ul><ul><li>For separation of things to decompose a project into identifiable pieces </li></ul><ul><li>For identity of cycles, Business processes </li></ul><ul><li>For Identity of services being delivered, ?automated, Scheduled, Extended, customized </li></ul>
    21. 21. So we identified an interface, now what? <ul><li>If I am going to rewrite the interface? </li></ul><ul><ul><li>How can I build a detour to keep messages flowing while new work is being tested </li></ul></ul><ul><ul><li>How Can I build verification to ensure new work matches old work </li></ul></ul><ul><li>I can associate the data with the Interface </li></ul><ul><li>Is there any thing you can propose to add value to the interface </li></ul><ul><li>Is the interface essential </li></ul><ul><li>Identify the metrics of the Interface, frequency, volume, size, type, </li></ul><ul><li>Can the Type change, IE Voice to VOIP </li></ul>
    22. 22. So I identified a Business process, Now What <ul><li>Come Back next month for Business Process discussion </li></ul><ul><li>Model out Business Process, Don’t be surprised if you find new message flows </li></ul><ul><li>Is there signatures needed that were overlooked </li></ul><ul><li>Can the Business process be automated </li></ul>
    23. 23. How many types of Context Models are there <ul><li>As many as you need. We have done them </li></ul><ul><ul><li>System to system only </li></ul></ul><ul><ul><li>Agency to agency only </li></ul></ul><ul><ul><li>System centered, total flows to all end points </li></ul></ul><ul><ul><li>Business Area centered, IE Construction </li></ul></ul><ul><ul><li>Organization area centered, IE Local Projects </li></ul></ul><ul><ul><li>Interagency (IE Water Office, KCJIS) </li></ul></ul><ul><li>There are a lot already done, Identify your topic and request all current messages for that topic </li></ul><ul><li>Give feed back if someone else’s model is not accurate </li></ul>
    24. 24. KDOT's Business Partners KDOT Accident Reports, Traffic Impact Incidents Road Conditions, Traffic Status Vehicle Accident Analysis &quot;Drug Testing&quot;/Drivers License Checks, Project Plans, Vehicle Usage, Payment Information Invoices, Transportation Statistics, GIS Views Research Information Incidents, Problems, Permit Applications 511 responses, KANROAD responses, Project Information Invoices, Permit Applications, Contract Status, Utility GIS Info Project Plans, Project Schedules Contracts, Payments and Schedules Design Plans, Weekly Accomplishments, Invoices, Collaboration Requests for Bids, Contracts, Plans, Change Orders Bids, Invoices, Status reports Project Plans, Invoices, Contracts Funding Limits 5 year plans, TIP Plan Invoices, Local Payments Project Plans, Invoices, Contracts Funding Limits 5 year plans, TIP Plan Invoices, Local Payments Grants, Loans Vehicle Information, Inspection Information Vehicle Reports, Applications, Ridership Information Permits, Road Conditions, Detours etc. Travel and traffic info, Road Conditions, Detours Incidents, Problems, Permit Applications Info req., incidents, problems Req. for info, eGov transactions Requested info, eGov transactions Consultants, Design Contractors Cities Counties Public Transit Authorities Law Enforcement Other State Agencies Universities and Colleges Public Utilities Truckers, Trucking Co Motorists Other States and Federal Agencies
    25. 28. The Models don’t appear complete, What did I do wrong <ul><li>For 30 years we have been building solutions to feed stuff to agency Staff. Then they do something with it. They: </li></ul><ul><ul><li>Import it to Excel/Access </li></ul></ul><ul><ul><li>Generate form letters from Word, Mail out packets </li></ul></ul><ul><ul><li>Separate and distribute to other parties </li></ul></ul><ul><ul><li>Incorporate this with other information and create reports then distribute </li></ul></ul><ul><li>If It goes to someone in your agency, Find out what they do with it. If they do nothing with it it may be a dead end. (mostly they just don’t think about what they do as adding value) </li></ul><ul><li>Basically keep asking questions until you see the real end customer And then ask what the real end customer does with it. </li></ul>
    26. 29. Things you can do for clarity Put the Organization roles inside the Organization units KDOT Supplier KDOT Purchaser Request Bid Current Bid Purchase Order Item requested & shipping order Payment Invoice ACTORS Messages Purchaser Payment staff Receipt clerk Salesman Shipping Officer Billing Officer Connect the messages to the roles, You can see there is now multiple parties involved in approval and authorities
    27. 30. Behind the scenes associations <ul><li>Associate Actors with Organization hierarchy </li></ul><ul><li>Organize Roles with Organization if unique </li></ul><ul><li>Associate Messages with data definition </li></ul><ul><ul><li>Abstract (IE Voice Data) </li></ul></ul><ul><ul><li>Unique(IE CPMS Project table) </li></ul></ul><ul><ul><li>If possible Identify the Key of the message (IE Project ID, Voucher Number) </li></ul></ul><ul><li>You can do this for your project, </li></ul><ul><li>We will work with you to do this for total agency models. </li></ul>
    28. 31. Agency and Your Business Partners PS We may not be the only agency who works with these business partners KDOT Supplier KDOT Purchaser Request Bid Current Bid Purchase Order Item requested & shipping order Payment Invoice ACTORS Purchaser Payment staff Receipt clerk Salesman Shipping Officer Billing Officer These are Relationships to manage & points for competition Suppliers Customers Citizens Legislature Other Agencies Cities Counties
    29. 32. Look at Business partners Perspective <ul><li>How many ways to deal with different agencies </li></ul><ul><li>How many types of messages are they getting </li></ul><ul><li>Can you help them automate by making something available (IE a data file vs a hard copy report) </li></ul><ul><li>Single Authority(IE PKI) </li></ul><ul><li>Volume of information exchange </li></ul>
    30. 33. As other agencies get these models <ul><li>Look for common business partners </li></ul><ul><li>Look for common ways for secure interactions </li></ul><ul><li>Look for common types of transactions </li></ul><ul><li>Look for competitive alternatives </li></ul><ul><li>Ask them better ways to work with the state </li></ul><ul><li>Look for common services, yours-theirs </li></ul>
    31. 34. Context Model & Strategic Intent <ul><li>Look for Message flow causing problem </li></ul><ul><li>Highlight message flows that could be customized to business partner needs </li></ul><ul><li>Highlight Message flows that could ease pain for different roles in KDOT, IE Inspectors </li></ul><ul><li>Highlight areas where all messages are transactions, No summary, no cyclical, No support for strategic measurements </li></ul><ul><li>Highlight areas you are requesting to invest efforts in. </li></ul>
    32. 35. Future <ul><li>Did I mention that you could put future systems, future message flows, future roles & actors on a model </li></ul><ul><li>Maybe a before and after model </li></ul><ul><li>Or color coded(note that these don’t copy well) </li></ul>
    33. 36. How do I get a Context Model <ul><li>Conducting a modeling session </li></ul><ul><li>Room requirements </li></ul><ul><li>Preparation for a session </li></ul><ul><li>People involved </li></ul><ul><li>Technical requirements </li></ul><ul><li>Immediate feedback or next meeting feedback </li></ul><ul><li>Follow up to a session </li></ul><ul><li>Getting approval of the session deliverables. </li></ul>
    34. 37. Keep it free but disciplined <ul><li>Discipline and QA </li></ul><ul><ul><li>Actors, messages, systems </li></ul></ul><ul><ul><li>How do you know if you have violated the basics. </li></ul></ul><ul><li>Combining low level context models </li></ul><ul><ul><li>To get summary from a single perspective. IE Business partner </li></ul></ul><ul><ul><li>To get summary from a single system </li></ul></ul><ul><ul><li>To see where gaps may exist </li></ul></ul><ul><li>Get other perspectives, Reviews </li></ul><ul><li>Note you can also get this from existing documentation but it helps if the business community helps you build them. </li></ul>
    35. 38. Connecting Context models to Project plans <ul><li>Connecting Context models to project staging </li></ul><ul><li>Connecting context models to testing plans. </li></ul><ul><li>Connecting context models to Requirements gathering </li></ul><ul><li>Connecting Context models to Design </li></ul><ul><li>Connecting Context models to implementation phases </li></ul><ul><ul><li>Like a KDOT Project, A detour needs to be built first if you are going to work through traffic, and verification </li></ul></ul>
    36. 39. Technology Architecture <ul><li>When you connect message flows to technical implementations, you can </li></ul><ul><ul><li>Use the Context Models to identify big picture needs and changes </li></ul></ul><ul><ul><li>Develop Macro level considerations for Technology Architecture replace-ability. </li></ul></ul><ul><ul><li>Develop Phased evolutions for legacy systems. </li></ul></ul>
    37. 40. Why Do I care about a message? Every Message becomes a program eventually. And each program is tied to associated technologies and is an investment for KDOT. When you look at a message in current solution and you look at the message in Future solution. Look for technology and customization options that you can add to make life easier for our customers CMS System Contractor Area Engineer Contractor Status Report Mainframe DB2 Views XXX Program XXX Server Web Server Business Objects Server SSL Layer Program XXX Client Contract ID Option AE ID Option Schedule Options Authenticate Parameters Report Parameters Data Service USER Sees this We Build this
    38. 41. Conclusion <ul><li>Understanding Your Business </li></ul><ul><li>Understanding relationship between your Business, Its strategy, Its business Partners, and current and future IT Systems. </li></ul><ul><li>Clarity is good, </li></ul><ul><li>Use Big Pictures and Big Paper, Or High level and low levels related. This is not a 8 ½ X 11 exercise. </li></ul>
    39. 42. Focus on KDOT’s Process, Supporting Data and Communication Methods Today’s Session Strategy objectives goals critical success factors Organization Structure business units roles skills business partners Business Processes activities goals workflow Information data letters/faxes drawings email Applications programs systems spreadsheets Technology software hardware network Enterprise Architecture
    40. 43. Possible Future Topics <ul><li>Business Processes Next Month </li></ul><ul><li>Radar Charts </li></ul><ul><li>Value Chains </li></ul><ul><li>Data, Data Warehouse, Data models, etc </li></ul><ul><li>Technical </li></ul><ul><li>Application decomposition </li></ul><ul><li>Legacy replacement </li></ul>