Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Information system


Published on

Published in: Business, Technology
  • PumaToto | Agen Togel Terpercaya PumaToto merupakan Togel Online | Togel Terpercaya dengan Prediksi Togel Akurat | Prediksi Angka Jitu Bagi kalian yang suka bermain Togel Singapore | Togel HK bisa untuk bergabung dengan PumaToto Cara Main Togel | Cara Pasang Togel | Pasang Togel Online di PumaToto, dengan Discount dan Hadiah Menarik Tentunya Daftarkan diri Anda bersama PumaToto
    Are you sure you want to  Yes  No
    Your message goes here
  • There are over 16,000 woodworking plans that comes with step-by-step instructions and detailed photos, Click here to take a look ●●●
    Are you sure you want to  Yes  No
    Your message goes here
  • Follow the link, new dating source: ♥♥♥ ♥♥♥
    Are you sure you want to  Yes  No
    Your message goes here
  • Dating for everyone is here: ❶❶❶ ❶❶❶
    Are you sure you want to  Yes  No
    Your message goes here
  • (Unlimited)....ACCESS WEBSITE Over for All Ebooks ................ accessibility Books Library allowing access to top content, including thousands of title from favorite author, plus the ability to read or download a huge selection of books for your pc or smartphone within minutes ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { } ......................................................................................................................... Download Full EPUB Ebook here { } ......................................................................................................................... Download Full PDF EBOOK here { }
    Are you sure you want to  Yes  No
    Your message goes here

Information system

  1. 1. Information Systems Analysis and Design Myriam Lewkowicz
  2. 2. Outline <ul><li>Information Systems: the big picture </li></ul><ul><li>Information Systems for competitive advantage </li></ul><ul><li>Organizational Information Systems </li></ul><ul><li>Entreprise -Wide Information Systems </li></ul><ul><li>Information Systems Development & Acquisition </li></ul><ul><li>Managing the Information Systems Project </li></ul><ul><li>Systems Planning </li></ul><ul><li>Determining System Requirements </li></ul><ul><li>Structuring System Requirements: Process Modeling </li></ul><ul><li>Structuring System Requirements: Conceptual Data Modeling </li></ul><ul><li>Object Oriented Analysis and Design </li></ul><ul><li>Designing the Human Interface </li></ul><ul><li>Systems Implementation and Operation </li></ul>
  3. 3. Chapter 1 Information Systems: The Big Picture
  4. 4. Chapter 1 Objectives <ul><li>Understand the term information systems (IS) </li></ul><ul><li>Understand IS components: </li></ul><ul><ul><li>Technology, people, organizations </li></ul></ul><ul><li>Understand IS career opportunities </li></ul><ul><li>Understand types of information systems </li></ul><ul><li>Understand IS and organizational success or failure </li></ul><ul><li>Understand the future of IS management </li></ul>
  5. 5. Information Systems Defined <ul><li>Combinations of hardware, software, and telecommunications networks that people build and use to collect, create, and distribute useful data in organizations </li></ul>
  6. 6. Key Elements of Information Systems
  7. 7. Data <ul><li>Data: raw material, unformatted information </li></ul><ul><li>Information: processed data (meaningful) </li></ul><ul><li>Knowledge: understanding relationships between pieces of information </li></ul><ul><li>Wisdom: knowledge accumulated and applied </li></ul>
  8. 8. Knowledge as a Business Resource <ul><li>Knowledge Worker </li></ul><ul><ul><li>A well-educated professional who creates, modifies, or synthesizes knowledge in one’s profession </li></ul></ul><ul><li>Knowledge Society </li></ul><ul><ul><li>Also called digital society, new economy </li></ul></ul><ul><ul><li>Working with brains instead of hands </li></ul></ul><ul><ul><li>The importance of education </li></ul></ul><ul><ul><li>Digital divide </li></ul></ul>
  9. 9. Technology and Information Systems <ul><li>Computer-Based Information Systems </li></ul><ul><ul><li>One type of technology </li></ul></ul><ul><ul><li>Technology – any mechanical and/or electrical means to supplement, extend, or replace human activity </li></ul></ul><ul><ul><li>Information Technology (IT) – machine technology controlled by or using information </li></ul></ul><ul><li>The goal of IS is to provide useful data to users </li></ul><ul><ul><li>IS can be local or global, organizational or enterprise-wide </li></ul></ul>
  10. 10. IS Managerial Personnel <ul><li>CIO </li></ul><ul><li>IS director </li></ul><ul><li>Account Executive </li></ul><ul><li>Info Center Manager </li></ul><ul><li>Development Manager </li></ul><ul><li>Project Manager </li></ul><ul><li>Maintenance Manager </li></ul><ul><li>Systems Manager </li></ul><ul><li>IS planning Manager </li></ul><ul><li>Operations Manager </li></ul><ul><li>Programming Manager </li></ul><ul><li>Systems Programming Manager </li></ul><ul><li>Manager of Emerging Technologies </li></ul><ul><li>Telecommunications Manager </li></ul><ul><li>Network Manager </li></ul><ul><li>Database Administrator </li></ul><ul><li>Auditing or Computer Security Manager </li></ul><ul><li>Quality Assurance Manager </li></ul><ul><li>Webmaster </li></ul>
  11. 11. Integrating Skills and Knowledge <ul><li>Technology </li></ul><ul><ul><li>hardware, software, networking </li></ul></ul><ul><li>Business </li></ul><ul><ul><li>business, management, social, communications </li></ul></ul><ul><li>Systems </li></ul><ul><ul><li>Integration, development methods, critical thinking, problem solving </li></ul></ul>
  12. 12. Hot Skills in IS Workers <ul><li>Office / E-mail </li></ul><ul><li>Languages </li></ul><ul><li>Applications </li></ul><ul><li>RDBS Administration </li></ul><ul><li>Development Tools </li></ul><ul><li>Internetworking </li></ul><ul><li>Operating Systems </li></ul><ul><li>LAN Administration </li></ul><ul><li>Networking </li></ul>
  13. 13. IS Within the Firm <ul><li>Traditionally a love/hate relationship </li></ul><ul><ul><li>“Techies” vs. mere “users” (us vs. them) </li></ul></ul><ul><ul><li>Poor service, lousy attitudes </li></ul></ul><ul><li>Now: progress toward better customer service </li></ul><ul><ul><li>Better relationships within the company </li></ul></ul><ul><ul><li>Cooperation, not rivalry </li></ul></ul>
  14. 14. The Spread of Technology in Organizations <ul><li>Technology infiltrates business units </li></ul><ul><li>Dual role for IS workers: </li></ul><ul><ul><li>Work with IS technical group </li></ul></ul><ul><ul><li>Work with business unit (marketing, finance, etc.) </li></ul></ul>
  15. 15. The Spread of Technology in Organizations <ul><li>Benefits of centralized IS function </li></ul><ul><ul><li>Coordinated planning </li></ul></ul><ul><ul><li>Consistent management </li></ul></ul><ul><ul><li>Systems compatibility and connectivity </li></ul></ul>
  16. 16. Questions <ul><li>Define and understand the term information systems (IS) </li></ul><ul><li>Explain the technology, people, and organizational components of an information system. </li></ul>
  17. 17. Chapter 2 Information Systems for Competitive Advantage
  18. 18. Chapter 2 Objectives <ul><li>Understand the IS in automation, organizational learning, and strategic support </li></ul><ul><li>Understand IS for strategic organizational success </li></ul><ul><li>Understand the need for making an IS business case </li></ul><ul><li>Understand technological innovations to improve competitive advantage </li></ul>
  19. 19. Why Use Information Systems? <ul><li>Automating: doing things faster </li></ul><ul><li>Organizational learning: doing things better </li></ul><ul><li>Supporting Strategy: doing things smarter </li></ul>
  20. 20. Automating: Doing Things Faster <ul><li>Technology is used to automate a manual process </li></ul><ul><ul><li>Doing things faster, better, cheaper </li></ul></ul><ul><ul><li>Greater accuracy and consistency </li></ul></ul><ul><li>Loan application example </li></ul><ul><ul><li>Manual processing </li></ul></ul><ul><ul><li>Technology-supported process </li></ul></ul><ul><ul><li>Completely automated </li></ul></ul>
  21. 21. Organizational Learning: Doing Things Better <ul><li>Going beyond automation </li></ul><ul><ul><li>Involves learning to improve the day-to-day activities within the process </li></ul></ul><ul><ul><li>Looking at patterns and trends </li></ul></ul><ul><li>Organizational Learning </li></ul><ul><ul><li>Using acquired knowledge and insights to improve organizational behavior </li></ul></ul><ul><li>Total Quality Management (TQM) </li></ul><ul><ul><li>Monitoring an organization to improve quality of operations, products, and services </li></ul></ul>
  22. 22. Supporting Strategy: Doing Things Smarter <ul><li>Strategic Planning </li></ul><ul><ul><li>Create a vision: setting the direction </li></ul></ul><ul><ul><li>Create a standard: performance targets </li></ul></ul><ul><ul><li>Create a strategy: reaching the goal </li></ul></ul>
  23. 23. Question <ul><li>Now, it should be fairly obvious why an IS professional should be able to make a business case for a given system. Why, however, is it just as important for non-IS professionals? How are they involved in this process? What is their role in information systems planning? </li></ul>
  24. 24. Chapter 3 Organizational Information Systems
  25. 25. Chapter Objectives <ul><li>Understand characteristics of operational, managerial, and executive information systems </li></ul><ul><li>Understand characteristics of transaction processing systems, management information systems, and executive information systems </li></ul><ul><li>Understand characteristics of information systems that span organizational boundaries </li></ul>
  26. 26. Decision-Making Levels of an Organization
  27. 27. Decision-Making Levels of an Organization <ul><li>Executive level (top) </li></ul><ul><ul><li>Long-term decisions </li></ul></ul><ul><ul><li>Unstructured decisions </li></ul></ul><ul><li>Managerial level (middle) </li></ul><ul><ul><li>Decisions covering weeks and months </li></ul></ul><ul><ul><li>Semistructured decisions </li></ul></ul><ul><li>Operational level (bottom) </li></ul><ul><ul><li>Day-to-day decisions </li></ul></ul><ul><ul><li>Structured decisions </li></ul></ul>
  28. 28. General Types of Information Systems <ul><li>Transaction Processing Systems (TPSs) </li></ul><ul><ul><li>Transactions </li></ul></ul><ul><ul><li>Used at Operational level of the organization </li></ul></ul><ul><ul><li>Goal: to automate repetitive information processing activities </li></ul></ul><ul><ul><ul><li>Increase speed </li></ul></ul></ul><ul><ul><ul><li>Increase accuracy </li></ul></ul></ul><ul><ul><ul><li>Greater efficiency </li></ul></ul></ul>
  29. 29. General Types of Information Systems <ul><li>Data input </li></ul><ul><ul><li>Manual data entry </li></ul></ul><ul><ul><li>Semiautomated data entry </li></ul></ul><ul><ul><li>Fully automated data entry </li></ul></ul><ul><li>Examples: </li></ul><ul><ul><li>Payroll </li></ul></ul><ul><ul><li>Sales and ordering </li></ul></ul><ul><ul><li>Inventory </li></ul></ul><ul><ul><li>Purchasing, receiving, shipping </li></ul></ul><ul><ul><li>Accounts payable and receivable </li></ul></ul>
  30. 30. General Types of Information Systems <ul><li>Management Information Systems (MISs) </li></ul><ul><ul><li>Two Types: </li></ul></ul><ul><ul><ul><li>Management of IS in organizations </li></ul></ul></ul><ul><ul><ul><li>Specific information systems for mid-level managers </li></ul></ul></ul><ul><ul><li>Used at managerial level of the organization </li></ul></ul>
  31. 31. General Types of Information Systems <ul><li>Management Information Systems </li></ul><ul><ul><li>Types of reports: </li></ul></ul><ul><ul><ul><li>Scheduled report </li></ul></ul></ul><ul><ul><ul><li>Key-indicator report </li></ul></ul></ul><ul><ul><ul><li>Exception report </li></ul></ul></ul><ul><ul><ul><li>Drill-down report </li></ul></ul></ul><ul><ul><ul><li>Ad hoc report </li></ul></ul></ul>
  32. 32. General Types of Information Systems <ul><li>Management Information Systems (MISs) </li></ul><ul><ul><li>Examples: </li></ul></ul><ul><ul><ul><li>Sales forecasting </li></ul></ul></ul><ul><ul><ul><li>Financial management and forecasting </li></ul></ul></ul><ul><ul><ul><li>Manufacturing planning and scheduling </li></ul></ul></ul><ul><ul><ul><li>Inventory management and planning </li></ul></ul></ul><ul><ul><ul><li>Advertising and product pricing </li></ul></ul></ul>
  33. 33. General Types of Information Systems <ul><li>Executive Information Systems (EISs) </li></ul><ul><ul><li>Used at executive level of the organization </li></ul></ul><ul><ul><li>Highly aggregated form </li></ul></ul><ul><ul><li>Data types </li></ul></ul><ul><ul><ul><li>Soft data – news and nonanalytical data </li></ul></ul></ul><ul><ul><ul><li>Hard data – facts and numbers </li></ul></ul></ul>
  34. 34. General Types of Information Systems <ul><li>Executive Information Systems (EISs) </li></ul><ul><ul><li>Examples: </li></ul></ul><ul><ul><ul><li>Executive-level decision making </li></ul></ul></ul><ul><ul><ul><li>Long-range and strategic planning </li></ul></ul></ul><ul><ul><ul><li>Monitoring internal and external events </li></ul></ul></ul><ul><ul><ul><li>Crisis management </li></ul></ul></ul><ul><ul><ul><li>Staffing and labor relations </li></ul></ul></ul>
  35. 35. 1.
  36. 36. Information Systems that Span Organizational Boundaries
  37. 37. Information Systems that Span Organizational Boundaries <ul><li>Decision Support Systems (DSSs) </li></ul><ul><ul><li>Designed to support organizational decision making </li></ul></ul><ul><ul><li>“ What-if” analysis </li></ul></ul><ul><ul><ul><li>Example of a DSS tool: Microsoft Excel </li></ul></ul></ul><ul><ul><ul><li>Text and graphs </li></ul></ul></ul><ul><ul><li>Models for each of the functional areas </li></ul></ul><ul><ul><ul><li>Accounting, finance, personnel, etc. </li></ul></ul></ul>
  38. 38. Information Systems that Span Organizational Boundaries <ul><li>Expert Systems (ESs) </li></ul><ul><ul><li>Mimics human expertise by manipulating knowledge </li></ul></ul><ul><ul><li>Rules (If-then) </li></ul></ul><ul><ul><li>Inferencing </li></ul></ul>
  39. 39. Information Systems that Span Organizational Boundaries <ul><li>Office Automation Systems (OASs) </li></ul><ul><ul><li>Examples: </li></ul></ul><ul><ul><ul><li>Communicating and scheduling </li></ul></ul></ul><ul><ul><ul><li>Document preparation </li></ul></ul></ul><ul><ul><ul><li>Analyzing data </li></ul></ul></ul><ul><ul><ul><li>Consolidating information </li></ul></ul></ul>
  40. 40. Information Systems that Span Organizational Boundaries <ul><li>Collaboration Technologies </li></ul><ul><ul><li>Virtual teams </li></ul></ul><ul><ul><li>Videoconferencing </li></ul></ul><ul><ul><li>Groupware </li></ul></ul><ul><ul><li>Electronic Meeting Systems (EMSs) </li></ul></ul>
  41. 41. Information Systems that Span Organizational Boundaries <ul><li>Functional Area Information Systems </li></ul><ul><ul><li>Geared toward specific areas in the company: </li></ul></ul><ul><ul><ul><li>Human Resources </li></ul></ul></ul><ul><ul><ul><li>Benefits </li></ul></ul></ul><ul><ul><ul><li>Marketing </li></ul></ul></ul>
  42. 43. Information Systems that Span Organizational Boundaries <ul><li>Global Information Systems </li></ul><ul><ul><li>International IS </li></ul></ul><ul><ul><li>Transnational IS </li></ul></ul><ul><ul><li>Multinational IS </li></ul></ul><ul><ul><li>Global IS </li></ul></ul>
  43. 44. Chapter 4 Enterprise-Wide Information Systems
  44. 45. Chapter Objectives <ul><li>Understand how information technology supports business activities </li></ul><ul><li>Understand enterprise systems and how they evolved </li></ul><ul><li>Understand software applications that are internally or externally focused </li></ul><ul><li>Understand how to implement enterprise systems </li></ul>
  45. 46. Enterprise Systems <ul><li>Enterprise systems </li></ul><ul><ul><li>Also known as enterprise-wide information systems </li></ul></ul><ul><ul><li>Information systems that allow companies to integrate information across operations on a company-wide basis </li></ul></ul>
  46. 47. Before an entreprise system
  47. 48. With an entreprise sytem
  48. 49. Types of Enterprise Systems <ul><li>Packaged applications </li></ul><ul><li>Custom applications </li></ul><ul><li>Stand-alone applications </li></ul>
  49. 50. Types of Enterprise Systems <ul><li>Enterprise Resource Planning </li></ul><ul><ul><li>Integrated applications </li></ul></ul><ul><ul><li>ERP systems </li></ul></ul><ul><ul><ul><li>Baan </li></ul></ul></ul><ul><ul><ul><li>Oracle </li></ul></ul></ul><ul><ul><ul><li>PeopleSoft </li></ul></ul></ul><ul><ul><ul><li>SAP </li></ul></ul></ul>
  50. 51. Types of Enterprise Systems <ul><li>ERP Implementation </li></ul><ul><ul><li>Modules </li></ul></ul><ul><ul><li>Customizations </li></ul></ul><ul><ul><li>Best practices </li></ul></ul><ul><ul><li>Business process reengineering (BPR) </li></ul></ul>
  51. 52. Types of Enterprise Systems <ul><li>Customer Relationship Management (CRM) </li></ul><ul><ul><li>Sales Force Automation (SFA) </li></ul></ul><ul><ul><li>New opportunities for competitive advantage </li></ul></ul><ul><ul><li>Examples: </li></ul></ul><ul><ul><ul><li>MGM </li></ul></ul></ul><ul><ul><ul><li>American Airlines </li></ul></ul></ul><ul><ul><ul><li>Marriott International </li></ul></ul></ul>
  52. 53. CRM system
  53. 54. Types of Enterprise Systems <ul><li>Supply Chain Management (SCM) </li></ul><ul><ul><li>Supply chain – the producers of supplies that a company uses </li></ul></ul><ul><ul><li>Supply network </li></ul></ul><ul><ul><li>What if supply chain does not collaborate? </li></ul></ul><ul><ul><li>Two objectives of upstream information flow: </li></ul></ul><ul><ul><ul><li>Accelerate product development </li></ul></ul></ul><ul><ul><ul><li>Reduce costs associated with suppliers </li></ul></ul></ul>
  54. 55. Supply chain management
  55. 56. The Formula for Enterprise System Success <ul><li>Secure executive sponsorship </li></ul><ul><li>Get help from outside experts </li></ul><ul><li>Thoroughly train users </li></ul><ul><li>Take a multidisciplinary approach to implementation </li></ul>
  56. 57. Questions <ul><li>List the different classes of information systems described in this chapter. How do they differ from each other? </li></ul><ul><li>Of the information systems listed in the chapter, how many do you have experience with? What systems would you like to work with? What types of systems do you encounter at the university you are attending? </li></ul><ul><li>Consider an organization that you are familiar with, perhaps the one in which you work or one with which you have done business. Describe the type of information systems that organization uses and whether or not they are useful or up-to-date. List specific examples for updating or installing information systems that improve productivity or efficiency. </li></ul>
  57. 58. Chapter 5 Information Systems Development & Acquisition
  58. 59. Chapter Objectives <ul><li>Understand the process of IS management </li></ul><ul><li>Understand the system development life cycle (SDLC) </li></ul><ul><li>Understand alternative approaches to system development </li></ul><ul><li>Understand in-house system development </li></ul><ul><li>Understand external acquisition, outsourcing, and end-user development </li></ul>
  59. 60. The Need for Structured Systems Development <ul><li>Systems analysis and design – the process of designing, building, and maintaining information systems </li></ul><ul><ul><li>Systems analyst </li></ul></ul><ul><ul><li>Blending technical and managerial expertise </li></ul></ul>
  60. 61. The Need for Structured Systems Development <ul><li>Evolution of IS development </li></ul><ul><ul><li>From “art” to a “discipline” </li></ul></ul><ul><ul><li>Standardized development methods </li></ul></ul><ul><ul><li>Software engineering </li></ul></ul>
  61. 62. The Need for Structured Systems Development <ul><li>Options for Obtaining Information Systems </li></ul><ul><ul><li>Build your own </li></ul></ul><ul><ul><li>Buy a prepackaged system </li></ul></ul><ul><ul><li>Outsource development to a 3rd party </li></ul></ul><ul><ul><li>End user development </li></ul></ul>
  62. 63. The Need for Structured Systems Development <ul><li>Information Systems Development in Action </li></ul><ul><ul><li>Breaking large complex problems into manageable pieces </li></ul></ul><ul><ul><li>Decomposing large, complex problems </li></ul></ul>
  63. 64. The Need for Structured Systems Development <ul><li>System Construction Process </li></ul><ul><ul><li>Identify a large IT problem to solve </li></ul></ul><ul><ul><li>Break the large problem into several smaller, more manageable pieces </li></ul></ul><ul><ul><li>Translate each “piece” (small problem) into computer programs </li></ul></ul><ul><ul><li>Piece together each program into an overall comprehensive IS that solves the problem </li></ul></ul>
  64. 65. The Need for Structured Systems Development <ul><li>The Role of Users in the Systems Development Process </li></ul><ul><ul><li>Knowledgeable of needs </li></ul></ul><ul><ul><li>Effective partnership </li></ul></ul>
  65. 66. Information Systems Analysis and Design <ul><li>Systems Analyst performs analysis and design based upon: </li></ul><ul><ul><li>Understanding of organization’s objectives, structure and processes </li></ul></ul><ul><ul><li>Knowledge of how to exploit information technology for advantage </li></ul></ul>
  66. 67. Systems Analysis and Design: Core Concepts <ul><li>Major goal: to improve organizational systems by developing or acquiring software and training employees in its use </li></ul><ul><li>Application software, or a system, supports organizational functions or processes </li></ul>
  67. 68. Systems Analysis and Design: Core Concepts <ul><li>System: Turns data into information and includes: </li></ul><ul><ul><li>Hardware and system software </li></ul></ul><ul><ul><li>Documentation and training materials </li></ul></ul><ul><ul><li>Job roles associated with the system </li></ul></ul><ul><ul><li>Controls to prevent theft or fraud </li></ul></ul><ul><ul><li>The people who use the software to perform their jobs </li></ul></ul>
  68. 70. Software Engineering Process <ul><li>A process used to create an information system </li></ul><ul><li>Consists of: </li></ul><ul><ul><li>Methodologies </li></ul></ul><ul><ul><ul><li>A sequence of step-by-step approaches that help develop the information system </li></ul></ul></ul><ul><ul><li>Techniques </li></ul></ul><ul><ul><ul><li>Processes that the analyst follows to ensure thorough, complete and comprehensive analysis and design </li></ul></ul></ul><ul><ul><li>Tools </li></ul></ul><ul><ul><ul><li>Computer programs that aid in applying techniques </li></ul></ul></ul>
  69. 72. System <ul><li>A system is an interrelated set of business procedures used within one business unit working together for a purpose </li></ul><ul><li>A system has nine characteristics </li></ul><ul><li>A system exists within an environment </li></ul><ul><li>A boundary separates a system from its environment </li></ul>
  70. 73. Characteristics of a System <ul><li>Components </li></ul><ul><li>Interrelated Components </li></ul><ul><li>Boundary </li></ul><ul><li>Purpose </li></ul><ul><li>Environment </li></ul><ul><li>Interfaces </li></ul><ul><li>Constraints </li></ul><ul><li>Input </li></ul><ul><li>Output </li></ul>
  71. 75. Important System Concepts <ul><li>Decomposition </li></ul><ul><ul><li>The process of breaking down a system into smaller components </li></ul></ul><ul><ul><li>Allows the systems analyst to: </li></ul></ul><ul><ul><ul><li>Break a system into small, manageable subsystems </li></ul></ul></ul><ul><ul><ul><li>Focus on one area at a time </li></ul></ul></ul><ul><ul><ul><li>Concentrate on component pertinent to one group of users </li></ul></ul></ul><ul><ul><ul><li>Build different components at independent times </li></ul></ul></ul>
  72. 77. Important System Concepts <ul><li>Modularity </li></ul><ul><ul><li>Process of dividing a system into modules of a relatively uniform size </li></ul></ul><ul><ul><li>Modules simplify system design </li></ul></ul><ul><li>Coupling </li></ul><ul><ul><li>Subsystems that are dependent upon each other are coupled </li></ul></ul><ul><li>Cohesion </li></ul><ul><ul><li>Extent to which a subsystem performs a single function </li></ul></ul>
  73. 78. A Modern Approach to Systems Analysis and Design <ul><li>Systems Integration </li></ul><ul><ul><li>Allows hardware and software from different vendors to work together </li></ul></ul><ul><ul><li>Enables procedural language systems to work with visual programming systems </li></ul></ul><ul><ul><li>Visual programming environment uses client/server model </li></ul></ul>
  74. 79. Data and Processes <ul><li>Three key components of an information system </li></ul><ul><ul><li>Data </li></ul></ul><ul><ul><li>Data Flows </li></ul></ul><ul><ul><li>Processing Logic </li></ul></ul><ul><li>Data vs. Information </li></ul><ul><ul><li>Data </li></ul></ul><ul><ul><ul><li>Raw facts </li></ul></ul></ul><ul><ul><li>Information </li></ul></ul><ul><ul><ul><li>Derived from data </li></ul></ul></ul><ul><ul><ul><li>Organized in a manner that humans can </li></ul></ul></ul><ul><ul><ul><li>understand </li></ul></ul></ul>
  75. 80. Data and Processes <ul><li>Data </li></ul><ul><ul><li>Understanding the source and use of data is key to good system design </li></ul></ul><ul><ul><li>Various techniques are used to describe data and the relationship amongst data </li></ul></ul><ul><li>Data Flows </li></ul><ul><ul><li>Groups of data that move and flow through the system </li></ul></ul><ul><ul><li>Include description of sources and destination for each data flow </li></ul></ul><ul><li>Processing Logic </li></ul><ul><ul><li>Describe steps that transform data and events that trigger the steps </li></ul></ul>
  76. 82. Approaches to Systems Development <ul><li>Process-Oriented Approach </li></ul><ul><ul><li>Focus is on flow, use and transformation of data in an information system </li></ul></ul><ul><ul><li>Involves creating graphical representations such as data flow diagrams and charts </li></ul></ul><ul><ul><li>Data are tracked from sources, through intermediate steps and to final destinations </li></ul></ul><ul><ul><li>Natural structure of data is not specified </li></ul></ul><ul><ul><li>Disadvantage: data files are tied to specific applications </li></ul></ul>
  77. 83. Approaches to Systems Development (2) <ul><li>Data-Oriented Approach </li></ul><ul><ul><li>Depicts ideal organization of data, independent of where and how data are used </li></ul></ul><ul><ul><li>Data model describes kinds of data and business relationships among the data </li></ul></ul><ul><ul><li>Business rules depict how organization captures and processes the data </li></ul></ul>
  78. 85. Databases and Application Independence <ul><li>Database </li></ul><ul><ul><li>Shared collection of logically related data </li></ul></ul><ul><ul><li>Organized to facilitate capture, storage and retrieval by multiple users </li></ul></ul><ul><ul><li>Centrally managed </li></ul></ul><ul><ul><li>Designed around subjects </li></ul></ul><ul><ul><ul><li>Customers </li></ul></ul></ul><ul><ul><ul><li>Suppliers </li></ul></ul></ul><ul><li>Application Independence </li></ul><ul><ul><li>Separation of data and definition of data from applications </li></ul></ul>
  79. 86. Role of the Systems Analyst <ul><li>Study problems and needs of an organization </li></ul><ul><li>Determine best approach to improving organization through use of: </li></ul><ul><ul><li>People </li></ul></ul><ul><ul><li>Methods </li></ul></ul><ul><ul><li>Information technology </li></ul></ul><ul><li>Help system users and managers define their requirements for new or enhanced systems </li></ul>
  80. 87. Role of the Systems Analyst <ul><li>Assess options for system implementation </li></ul><ul><ul><li>In-house development </li></ul></ul><ul><ul><li>Outsourced development </li></ul></ul><ul><ul><li>Outsourced development and operation </li></ul></ul><ul><ul><li>Commercial application </li></ul></ul><ul><li>For in-house projects, work on a team of analysts and developers </li></ul>
  81. 88. Skills of a Successful Systems Analyst <ul><li>Analytical </li></ul><ul><ul><li>Understanding of organizations </li></ul></ul><ul><ul><li>Problem-solving skills </li></ul></ul><ul><ul><li>System thinking </li></ul></ul><ul><ul><ul><li>Ability to see organizations and information systems as systems </li></ul></ul></ul><ul><li>Technical </li></ul><ul><ul><li>Understanding of potential and limitations of technology </li></ul></ul><ul><li>Managerial </li></ul><ul><ul><li>Ability to manage projects, resources, risk and change </li></ul></ul><ul><li>Interpersonal </li></ul><ul><ul><li>Effective written and oral communication skills </li></ul></ul>
  82. 89. Systems Development Life Cycle <ul><li>System Development Methodology </li></ul><ul><ul><li>Standard process followed in an organization </li></ul></ul><ul><ul><li>Consists of: </li></ul></ul><ul><ul><ul><li>Analysis </li></ul></ul></ul><ul><ul><ul><li>Design </li></ul></ul></ul><ul><ul><ul><li>Implementation </li></ul></ul></ul><ul><ul><ul><li>Maintenance </li></ul></ul></ul>
  83. 90. Systems Development Life Cycle <ul><li>Series of steps used to manage the phases of development for an information system </li></ul><ul><li>Consists of four phases: </li></ul><ul><ul><li>Planning and Selection </li></ul></ul><ul><ul><li>Analysis </li></ul></ul><ul><ul><li>Design </li></ul></ul><ul><ul><li>Implementation and Operation </li></ul></ul>
  84. 91. Systems Development Life Cycle <ul><li>Phases are not necessarily sequential </li></ul><ul><li>Each phase has a specific outcome and deliverable </li></ul><ul><li>Individual companies use customized life cycle </li></ul>
  85. 92. Phases of the Systems Development Life Cycle <ul><li>Systems Planning and Selection </li></ul><ul><ul><li>Two Main Activities </li></ul></ul><ul><ul><ul><li>Identification of need </li></ul></ul></ul><ul><ul><ul><li>Investigation and determination of scope </li></ul></ul></ul><ul><li>Systems Analysis </li></ul><ul><ul><li>Study of current procedures and information systems </li></ul></ul><ul><ul><ul><li>Determine requirements </li></ul></ul></ul><ul><ul><ul><li>Generate alternative designs </li></ul></ul></ul><ul><ul><ul><li>Compare alternatives </li></ul></ul></ul><ul><ul><ul><li>Recommend best alternative </li></ul></ul></ul>
  86. 93. Systems Development Life Cycle <ul><li>System Design </li></ul><ul><ul><li>Logical Design </li></ul></ul><ul><ul><ul><li>Concentrates on business aspects of the system </li></ul></ul></ul><ul><ul><li>Physical Design </li></ul></ul><ul><ul><ul><li>Technical specifications </li></ul></ul></ul><ul><li>Implementation and Operation </li></ul><ul><ul><li>Implementation </li></ul></ul><ul><ul><ul><li>Hardware and software installation </li></ul></ul></ul><ul><ul><ul><li>Programming </li></ul></ul></ul><ul><ul><ul><li>User Training </li></ul></ul></ul><ul><ul><ul><li>Documentation </li></ul></ul></ul><ul><ul><li>Operation </li></ul></ul><ul><ul><ul><li>System changed to reflect changing conditions </li></ul></ul></ul><ul><ul><ul><li>System obsolescence </li></ul></ul></ul>
  87. 95. Alternative approaches <ul><li>Prototyping </li></ul><ul><ul><li>Building a scaled-down working version of the system </li></ul></ul><ul><ul><li>Advantages: </li></ul></ul><ul><ul><ul><li>Users are involved in design </li></ul></ul></ul><ul><ul><ul><li>Captures requirements in concrete form </li></ul></ul></ul><ul><li>Rapid Application Development (RAD) </li></ul><ul><ul><li>Utilizes prototyping to delay producing system design until after user requirements are clear </li></ul></ul><ul><li>Joint Application Design (JAD) </li></ul><ul><ul><li>Users, Managers and Analysts work together for several days </li></ul></ul><ul><ul><li>System requirements are reviewed </li></ul></ul><ul><ul><li>Structured meetings </li></ul></ul>
  88. 97. Summary <ul><li>Information systems analysis and design </li></ul><ul><ul><li>Process of developing and maintaining an information system </li></ul></ul><ul><li>Modern approach to systems analysis </li></ul><ul><ul><li>Process-Oriented </li></ul></ul><ul><ul><li>Data-Oriented </li></ul></ul>
  89. 98. Summary <ul><li>Systems Development Life Cycle (SDLC) </li></ul><ul><ul><li>Systems Planning and Selection </li></ul></ul><ul><ul><li>Systems Analysis </li></ul></ul><ul><ul><li>Systems Design </li></ul></ul><ul><ul><li>Systems Implementation </li></ul></ul><ul><li>Alternatives to Systems Development Life Cycle </li></ul><ul><ul><li>Prototyping </li></ul></ul><ul><ul><li>Rapid Application Development (RAD) </li></ul></ul><ul><ul><li>Joint Application Design (JAD) </li></ul></ul>
  90. 99. Questions <ul><li>In what way are organizations systems? </li></ul><ul><li>List and explain the different phases in the systems development life cycle. </li></ul><ul><li>Why is it important to use systems analysis and design methodologies when building a system? Why not just build the system in whatever way seems to be “quick and easy”? What value is provided by using an “engineering” approach? </li></ul><ul><li>Explain the traditional application-based approach to systems development. How is this different from the data-based approach? </li></ul><ul><li>What is prototyping? </li></ul><ul><li>What is JAD? What is Participatory Design? </li></ul>
  91. 100. Chapter 6 Managing the Information Systems Project
  92. 101. Learning Objectives <ul><li>Discuss skills required to be an effective project manager </li></ul><ul><li>Describe skills and activities of a project manager during project initiation, planning, execution and closedown </li></ul><ul><li>Explain Gantt Charts and Network Diagrams </li></ul><ul><li>Review commercial project management software packages </li></ul>
  93. 102. Case of Pine Valley Furniture <ul><li>Manufacturing Company </li></ul><ul><ul><li>Product: Wood Furniture </li></ul></ul><ul><ul><li>Market: U.S. </li></ul></ul><ul><ul><li>Organized into functional areas </li></ul></ul><ul><ul><ul><li>Manufacturing </li></ul></ul></ul><ul><ul><ul><li>Sales </li></ul></ul></ul><ul><ul><li>Three independent computer systems were converted to a database in 1990s </li></ul></ul>
  94. 104. Managing the Information Systems Project <ul><li>Focus of project management </li></ul><ul><ul><li>To ensure that information system projects meet customer expectations </li></ul></ul><ul><ul><ul><li>Delivered in a timely manner </li></ul></ul></ul><ul><ul><ul><li>Meet constraints and requirements </li></ul></ul></ul>
  95. 105. <ul><li>Project Manager </li></ul><ul><ul><li>Systems Analyst responsible for </li></ul></ul><ul><ul><ul><li>Project initiation </li></ul></ul></ul><ul><ul><ul><li>Planning </li></ul></ul></ul><ul><ul><ul><li>Execution </li></ul></ul></ul><ul><ul><ul><li>Closing down </li></ul></ul></ul><ul><ul><li>Requires diverse set of skills </li></ul></ul><ul><ul><ul><li>Management </li></ul></ul></ul><ul><ul><ul><li>Leadership </li></ul></ul></ul><ul><ul><ul><li>Technical </li></ul></ul></ul><ul><ul><ul><li>Conflict management </li></ul></ul></ul><ul><ul><ul><li>Customer relations </li></ul></ul></ul>Managing the Information Systems Project
  96. 107. Project Management Process <ul><li>Project </li></ul><ul><ul><li>Planned undertaking of related activities to reach an objective that has a beginning and an end </li></ul></ul><ul><li>Four Phases </li></ul><ul><ul><li>Initiation </li></ul></ul><ul><ul><li>Planning </li></ul></ul><ul><ul><li>Execution </li></ul></ul><ul><ul><li>Closing down </li></ul></ul>
  97. 108. Initiating the Project <ul><li>Establish project initiation team </li></ul><ul><li>Establish relationship with customer </li></ul><ul><li>Establish project initiation plan </li></ul><ul><li>Establish management procedures </li></ul><ul><li>Establish project management environment and workbook </li></ul>
  98. 109. Planning the Project <ul><li>Describe project scope, alternatives and feasibility </li></ul><ul><ul><li>Scope and Feasibility </li></ul></ul><ul><ul><ul><li>Understand the project </li></ul></ul></ul><ul><ul><ul><li>What problem is addressed </li></ul></ul></ul><ul><ul><ul><li>What results are to be achieved </li></ul></ul></ul><ul><ul><ul><li>Measures of success </li></ul></ul></ul><ul><ul><ul><li>Completion criteria </li></ul></ul></ul>
  99. 110. Planning the Project <ul><li>Divide the project into manageable tasks </li></ul><ul><ul><ul><li>Work breakdown structure </li></ul></ul></ul><ul><ul><ul><li>Gantt chart </li></ul></ul></ul><ul><li>Estimate resources and create a resource plan </li></ul><ul><li>Develop a preliminary schedule </li></ul><ul><ul><ul><li>Utilize Gantt Charts and Network Diagrams </li></ul></ul></ul><ul><li>Develop a communication plan </li></ul><ul><ul><li>Outline communication processes among customers, team members and management </li></ul></ul><ul><ul><li>Types of reports </li></ul></ul><ul><ul><li>Frequency of reports </li></ul></ul>
  100. 112. Planning the Project <ul><li>Determine project standards and procedures </li></ul><ul><ul><li>Specify how deliverables are tested and produced </li></ul></ul><ul><li>Identify and assess risk </li></ul><ul><ul><li>Identify sources of risk </li></ul></ul><ul><ul><li>Estimate consequences of risk </li></ul></ul><ul><li>Create a preliminary budget </li></ul><ul><li>Develop a statement of work </li></ul><ul><ul><li>Describe what the project will deliver </li></ul></ul><ul><li>Set a baseline project plan </li></ul><ul><ul><li>Estimate of project’s tasks and resources </li></ul></ul>
  101. 113. Executing the Project <ul><li>Execute baseline project plan </li></ul><ul><ul><li>Acquire and assign resources </li></ul></ul><ul><ul><li>Train new team members </li></ul></ul><ul><ul><li>Keep project on schedule </li></ul></ul><ul><li>Monitor project progress </li></ul><ul><ul><li>Adjust resources, budget and/or activities </li></ul></ul><ul><li>Manage changes to baseline project plan </li></ul><ul><ul><li>Slipped completion dates </li></ul></ul><ul><ul><li>Changes in personnel </li></ul></ul><ul><ul><li>New activities </li></ul></ul><ul><li>Maintain project workbook </li></ul><ul><li>Communicate project status </li></ul>
  102. 114. Closing Down the Project <ul><li>Termination </li></ul><ul><ul><li>Types of termination </li></ul></ul><ul><ul><ul><li>Natural </li></ul></ul></ul><ul><ul><ul><ul><li>Requirements have been met </li></ul></ul></ul></ul><ul><ul><ul><li>Unnatural </li></ul></ul></ul><ul><ul><ul><ul><li>Project stopped </li></ul></ul></ul></ul><ul><ul><li>Documentation </li></ul></ul><ul><ul><li>Personnel Appraisal </li></ul></ul><ul><li>Conduct post-project reviews </li></ul><ul><ul><li>Determine strengths and weaknesses of: </li></ul></ul><ul><ul><ul><li>Project deliverables </li></ul></ul></ul><ul><ul><ul><li>Project management process </li></ul></ul></ul><ul><ul><ul><li>Development process </li></ul></ul></ul><ul><li>Close customer contract </li></ul>
  103. 115. Representing and Scheduling Project Plans <ul><li>Gantt Charts </li></ul><ul><ul><li>Useful for depicting simple projects or parts of large projects </li></ul></ul><ul><ul><li>Show start and completion dates for individual tasks </li></ul></ul><ul><li>Network Diagrams </li></ul><ul><ul><li>Show order of activities </li></ul></ul>
  104. 118. Summary <ul><li>Skills of an effective project manager </li></ul><ul><li>Activities of project manager </li></ul><ul><ul><li>Initiation </li></ul></ul><ul><ul><li>Planning </li></ul></ul><ul><ul><li>Execution </li></ul></ul><ul><ul><li>Closedown </li></ul></ul><ul><li>Gantt Charts and Network Diagrams </li></ul><ul><li>Commercial PM Software </li></ul>
  105. 119. Questions <ul><li>List and describe the common skills and activities of a project manager. Which skill do you think is most important? Why? </li></ul><ul><li>Describe the activities performed by the project manager during project initiation. </li></ul><ul><li>Describe the activities performed by the project manager during project planning. </li></ul><ul><li>Describe the activities performed by the project manager during project execution. </li></ul>
  106. 120. Chapter 7 Systems Planning
  107. 121. Learning Objectives <ul><li>Discuss the content of and need for a Statement of Work and Baseline Project Plan </li></ul><ul><li>Describe a structured walkthrough </li></ul>
  108. 122. First documents <ul><li>Baseline Project Plan (BPP) : internal document </li></ul><ul><ul><li>Scope </li></ul></ul><ul><ul><li>Benefits </li></ul></ul><ul><ul><li>Costs </li></ul></ul><ul><ul><li>Risks </li></ul></ul><ul><ul><li>Resources </li></ul></ul><ul><li>Statement of Work (SOW) : Outlines objectives and constraints of the project to the customer </li></ul><ul><ul><li>Describes deliverables </li></ul></ul><ul><ul><li>Outlines work needed to be performed </li></ul></ul>
  109. 124. Building the Baseline Project Plan <ul><li>Objectives </li></ul><ul><ul><li>Assures that customer and development group have a complete understanding of the proposed system and requirements </li></ul></ul><ul><ul><li>Provides sponsoring organization with a clear idea of scope, benefits and duration of project </li></ul></ul><ul><li>Four Sections </li></ul><ul><ul><li>Introduction </li></ul></ul><ul><ul><li>System Description </li></ul></ul><ul><ul><li>Feasibility Assessment </li></ul></ul><ul><ul><li>Management Issues </li></ul></ul>
  110. 125. Building the Baseline Project Plan <ul><li>Introduction </li></ul><ul><ul><li>Brief overview </li></ul></ul><ul><ul><li>Recommended course of action </li></ul></ul><ul><ul><li>Project scope defined </li></ul></ul><ul><ul><ul><li>Units affected </li></ul></ul></ul><ul><ul><ul><li>Interaction with other systems </li></ul></ul></ul><ul><ul><ul><li>Range of system capabilities </li></ul></ul></ul>
  111. 126. Building the Baseline Project Plan <ul><li>System Description </li></ul><ul><ul><li>Outline of possible alternative solutions </li></ul></ul><ul><ul><li>Narrative format </li></ul></ul><ul><li>Feasibility Assessment </li></ul><ul><ul><li>Project costs and benefits </li></ul></ul><ul><ul><li>Technical difficulties </li></ul></ul><ul><ul><li>High-level project schedule </li></ul></ul>
  112. 127. Building the Baseline Project Plan <ul><li>Management Issues </li></ul><ul><ul><li>Outlines concerns that management may have about the project </li></ul></ul><ul><ul><li>Team composition </li></ul></ul><ul><ul><li>Communication plan </li></ul></ul><ul><ul><li>Project standards and procedures </li></ul></ul>
  113. 129. Reviewing the Baseline Project Plan <ul><li>Objectives </li></ul><ul><ul><li>Assure conformity to organizational standards </li></ul></ul><ul><ul><li>All parties agree to continue with project </li></ul></ul>
  114. 130. Reviewing the Baseline Project Plan <ul><li>Walkthrough </li></ul><ul><ul><li>Peer group review </li></ul></ul><ul><ul><li>Participants </li></ul></ul><ul><ul><ul><li>Coordinator </li></ul></ul></ul><ul><ul><ul><li>Presenter </li></ul></ul></ul><ul><ul><ul><li>User </li></ul></ul></ul><ul><ul><ul><li>Secretary </li></ul></ul></ul><ul><ul><ul><li>Standards Bearer </li></ul></ul></ul><ul><ul><ul><li>Maintenance Oracle </li></ul></ul></ul><ul><ul><li>Activities </li></ul></ul><ul><ul><ul><li>Walkthrough review form </li></ul></ul></ul><ul><ul><ul><li>Individuals polled </li></ul></ul></ul><ul><ul><ul><li>Walkthrough action list </li></ul></ul></ul><ul><ul><li>Advantages </li></ul></ul><ul><ul><ul><li>Assures that review occurs during project </li></ul></ul></ul>
  115. 133. Summary <ul><li>Baseline Project Plan (BPP) </li></ul><ul><ul><li>Created during project initiation and planning </li></ul></ul><ul><ul><li>Contains: </li></ul></ul><ul><ul><ul><li>Introduction </li></ul></ul></ul><ul><ul><ul><li>High-Level description of system </li></ul></ul></ul><ul><ul><ul><li>Outline of feasibility </li></ul></ul></ul><ul><ul><ul><li>Overview of Management Issues </li></ul></ul></ul><ul><li>Statement of Work (SOW) </li></ul><ul><ul><li>Describes what project will deliver </li></ul></ul><ul><ul><li>Lists all work to be performed </li></ul></ul>
  116. 134. Questions <ul><li>What is contained in a Baseline Project Plan? Are the content and format of all baseline plans the same? Why or why not? </li></ul><ul><li>Describe the structured walkthrough process. What roles need to be performed during a walkthrough? </li></ul>
  117. 135. Chapter 8 Determining System Requirements
  118. 136. Learning Objectives <ul><li>Describe options for designing and conducting interviews </li></ul><ul><li>Discuss planning an interview </li></ul><ul><li>Discuss using questionnaires to determine system requirements </li></ul><ul><li>Explain advantages and disadvantages of observing workers and analyzing business documents to determine requirements </li></ul>
  119. 137. Learning Objectives <ul><li>Learn about Joint Application Design (JAD) and Prototyping </li></ul><ul><li>Discuss appropriate methods to elicit system requests </li></ul><ul><li>Examine requirements determination for Internet applications </li></ul>
  120. 138. Activities in Requirement Gathering 1.0 Identify the right Stakeholders & Artefacts 0.0 Outline information to be sought 2.0 Use most appropriate investigation techniques 4.0 Document the requirements Objective : determine the functions & information that must be provided by the information system 3.0 Determine duration
  121. 139. Performing Requirements Determination <ul><li>Gather information on what the system should do from many sources </li></ul><ul><ul><li>Users </li></ul></ul><ul><ul><li>Reports </li></ul></ul><ul><ul><li>Forms </li></ul></ul><ul><ul><li>Procedures </li></ul></ul>
  122. 140. Performing Requirements Determination <ul><li>Characteristics for gathering requirements </li></ul><ul><ul><li>Impertinence </li></ul></ul><ul><ul><ul><li>Question everything </li></ul></ul></ul><ul><ul><li>Impartiality </li></ul></ul><ul><ul><ul><li>Find the best organizational solution </li></ul></ul></ul><ul><ul><li>Relaxation of constraints </li></ul></ul><ul><ul><li>Attention to detail </li></ul></ul><ul><ul><li>Reframing </li></ul></ul><ul><ul><ul><li>View the organization in new ways </li></ul></ul></ul>
  123. 141. Deliverables and Outcomes <ul><li>Types of deliverables: </li></ul><ul><ul><li>Information collected from users </li></ul></ul><ul><ul><li>Existing documents and files </li></ul></ul><ul><ul><li>Computer-based information </li></ul></ul><ul><ul><li>Understanding of organizational components </li></ul></ul><ul><ul><ul><li>Business objective </li></ul></ul></ul><ul><ul><ul><li>Information needs </li></ul></ul></ul><ul><ul><ul><li>Rules of data processing </li></ul></ul></ul><ul><ul><ul><li>Key events </li></ul></ul></ul>
  124. 142. Deliverables and Outcomes
  125. 143. Traditional Methods for Determining Requirements
  126. 144. Traditional Methods for Determining Requirements <ul><li>Interviewing and Listening </li></ul><ul><ul><li>Gather facts, opinions and speculations </li></ul></ul><ul><ul><li>Observe body language and emotions </li></ul></ul><ul><ul><li>Guidelines </li></ul></ul><ul><ul><ul><li>Plan </li></ul></ul></ul><ul><ul><ul><ul><li>Checklist </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Appointment </li></ul></ul></ul></ul><ul><ul><ul><li>Be neutral </li></ul></ul></ul><ul><ul><ul><li>Listen </li></ul></ul></ul><ul><ul><ul><li>Seek a diverse view </li></ul></ul></ul><ul><ul><li>Interview Questions </li></ul></ul><ul><ul><ul><li>Open-Ended </li></ul></ul></ul><ul><ul><ul><ul><li>No prespecified answers </li></ul></ul></ul></ul><ul><ul><ul><li>Close-Ended </li></ul></ul></ul><ul><ul><ul><ul><li>Respondent is asked to choose from a set of specified responses </li></ul></ul></ul></ul>
  127. 148. Traditional Methods for Determining Requirements <ul><li>Administering Questionnaires </li></ul><ul><ul><li>More cost-effective than interviews </li></ul></ul><ul><ul><li>Choosing respondents </li></ul></ul><ul><ul><ul><li>Should be representative of all users </li></ul></ul></ul><ul><ul><ul><li>Types of samples </li></ul></ul></ul><ul><ul><ul><ul><li>Convenient </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Random sample </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Purposeful sample </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Stratified sample </li></ul></ul></ul></ul><ul><ul><li>Design </li></ul></ul><ul><ul><ul><li>Mostly closed-ended questions </li></ul></ul></ul><ul><ul><ul><li>Can be administered over the phone, in person or over the Internet or company intranet </li></ul></ul></ul>
  128. 149. Traditional Methods for Determining Requirements <ul><li>Questionnaires Vs. Interviews </li></ul><ul><ul><ul><li>Interviews cost more but yield more information </li></ul></ul></ul><ul><ul><ul><li>Questionnaires are more cost-effective </li></ul></ul></ul>
  129. 151. Traditional Methods for Determining Requirements <ul><li>Directly Observing Users </li></ul><ul><ul><li>Serves as a good method to supplement interviews </li></ul></ul><ul><ul><li>Often difficult to obtain unbiased data </li></ul></ul><ul><ul><ul><li>People often work differently when being observed </li></ul></ul></ul>
  130. 152. Analyzing Procedures and Other Documents <ul><li>Types of information to be discovered: </li></ul><ul><ul><li>Problems with existing system </li></ul></ul><ul><ul><li>Opportunity to meet new need </li></ul></ul><ul><ul><li>Organizational direction </li></ul></ul><ul><ul><li>Names of key individuals </li></ul></ul><ul><ul><li>Values of organization </li></ul></ul><ul><ul><li>Special information processing circumstances </li></ul></ul><ul><ul><li>Rules for processing data </li></ul></ul>
  131. 154. Modern Methods for Determining Requirements <ul><li>Joint Application Design (JAD) </li></ul><ul><ul><li>Brings together key users, managers and systems analysts </li></ul></ul><ul><ul><li>Purpose: collect system requirements simultaneously from key people </li></ul></ul><ul><ul><li>Conducted off-site </li></ul></ul><ul><li>Prototyping </li></ul><ul><ul><li>Repetitive process </li></ul></ul><ul><ul><li>Rudimentary version of system is built </li></ul></ul><ul><ul><li>Replaces or augments SDLC </li></ul></ul><ul><ul><li>Goal: to develop concrete specifications for ultimate system </li></ul></ul>
  132. 155. Joint Application Design (JAD) <ul><li>Participants </li></ul><ul><ul><li>Session Leader </li></ul></ul><ul><ul><li>Users </li></ul></ul><ul><ul><li>Managers </li></ul></ul><ul><ul><li>Sponsor </li></ul></ul><ul><ul><li>Systems Analysts </li></ul></ul><ul><ul><li>Scribe </li></ul></ul><ul><ul><li>IS Staff </li></ul></ul><ul><li>End Result </li></ul><ul><ul><li>Documentation detailing existing system </li></ul></ul><ul><ul><li>Features of proposed system </li></ul></ul>
  133. 157. Prototyping <ul><li>Quickly converts requirements to working version of system </li></ul><ul><li>Once the user sees requirements converted to system, will ask for modifications or will generate additional requests </li></ul><ul><li>Most useful when: </li></ul><ul><ul><li>User requests are not clear </li></ul></ul><ul><ul><li>Few users are involved in the system </li></ul></ul><ul><ul><li>Designs are complex and require concrete form </li></ul></ul><ul><ul><li>History of communication problems between analysts and users </li></ul></ul><ul><ul><li>Tools are readily available to build prototype </li></ul></ul>
  134. 158. Prototyping <ul><li>Drawbacks </li></ul><ul><ul><li>Tendency to avoid formal documentation </li></ul></ul><ul><ul><li>Difficult to adapt to more general user audience </li></ul></ul><ul><ul><li>Sharing data with other systems is often not considered </li></ul></ul><ul><ul><li>Systems Development Life Cycle (SDLC) checks are often bypassed </li></ul></ul>
  135. 159. Summary <ul><li>Interviews </li></ul><ul><ul><li>Open-ended and close-ended questions </li></ul></ul><ul><ul><li>Preparation is key </li></ul></ul><ul><li>Questionnaires </li></ul><ul><ul><li>Must be carefully designed </li></ul></ul><ul><ul><li>Can contain close-ended as well as open-ended questions </li></ul></ul>
  136. 160. Summary <ul><li>Other means of gathering requirements </li></ul><ul><ul><li>Observing workers </li></ul></ul><ul><ul><li>Analyzing business documents </li></ul></ul><ul><li>Joint Application Design (JAD) </li></ul><ul><li>Prototyping </li></ul>
  137. 161. Questions (1) <ul><li>Describe systems analysis and the major activities that occur during this phase of the systems development life cycle. </li></ul><ul><li>What are some useful character traits for an analyst involved in requirements determination? </li></ul><ul><li>Describe four traditional techniques for collecting information during analysis. When might one be better than another? </li></ul><ul><li>What are the general guidelines for conducting interviews? </li></ul><ul><li>What are the general guidelines for designing questionnaires? </li></ul><ul><li>Compare collecting information by interview and by questionnaire. Describe a hypothetical situation in which each of these methods would be an effective way to collect information system requirements. </li></ul>
  138. 162. Questions (2) <ul><li>What are the general guidelines for collecting data through observing workers? </li></ul><ul><li>What are the general guidelines for collecting data through analyzing documents? </li></ul><ul><li>Describe how prototyping can be used during requirements determination. How is it better or worse than traditional methods? </li></ul>
  139. 163. Chapter 9 Structuring System Requirements: Process Modeling
  140. 164. Learning Objectives <ul><li>Understand the logical modeling of processes through studying data flow diagrams </li></ul><ul><li>How to draw data flow diagrams using rules and guidelines </li></ul><ul><li>How to decompose data flow diagrams into lower-level diagrams </li></ul><ul><li>Balancing of data flow diagrams </li></ul>
  141. 165. Learning Objectives <ul><li>Discuss the use of data flow diagrams as analysis tools </li></ul><ul><li>Discuss process modeling for Internet Applications </li></ul>
  142. 166. Process Modeling <ul><li>Graphically represent the processes that capture, manipulate, store and distribute data between a system and its environment and among system components </li></ul><ul><li>Data flow diagrams (DFD) </li></ul><ul><ul><li>Graphically illustrate movement of data between external entities and the processes and data stores within a system </li></ul></ul>
  143. 167. Process Modeling <ul><li>Modeling a system’s process </li></ul><ul><ul><li>Utilize information gathered during requirements determination </li></ul></ul><ul><ul><li>Structure of the data is also modeled in addition to the processes </li></ul></ul><ul><li>Deliverables and Outcomes </li></ul><ul><ul><li>Set of coherent, interrelated data flow diagrams </li></ul></ul>
  144. 168. Process Modeling <ul><li>Deliverables and outcomes (continued) </li></ul><ul><ul><li>Context data flow diagram (DFD) </li></ul></ul><ul><ul><ul><li>Scope of system </li></ul></ul></ul><ul><ul><li>DFDs of current system </li></ul></ul><ul><ul><ul><li>Enables analysts to understand current system </li></ul></ul></ul><ul><ul><li>DFDs of new logical system </li></ul></ul><ul><ul><ul><li>Technology independent </li></ul></ul></ul><ul><ul><ul><li>Show data flows, structure and functional requirements of new system </li></ul></ul></ul>
  145. 170. Data Flow Diagramming Mechanics <ul><li>Data Flow </li></ul><ul><ul><li>Depicts data that are in motion and moving as a unit from one place to another in the system </li></ul></ul><ul><ul><li>Drawn as an arrow </li></ul></ul><ul><ul><li>Select a meaningful name to represent the data </li></ul></ul>
  146. 171. Data Flow Diagramming Mechanics <ul><li>Data Store </li></ul><ul><ul><li>Depicts data at rest </li></ul></ul><ul><ul><li>May represent data in: </li></ul></ul><ul><ul><ul><li>File folder </li></ul></ul></ul><ul><ul><ul><li>Computer-based file </li></ul></ul></ul><ul><ul><ul><li>Notebook </li></ul></ul></ul><ul><ul><li>Drawn as a rectangle with the right hand vertical line missing </li></ul></ul><ul><ul><li>Label includes name of the store as well as the number </li></ul></ul>
  147. 172. Data Flow Diagramming Mechanics <ul><li>Process </li></ul><ul><ul><li>Depicts work or action performed on data so that they are transformed, stored or distributed </li></ul></ul><ul><ul><li>Drawn as a rectangle with rounded corners </li></ul></ul><ul><ul><li>Number of process as well as name are recorded </li></ul></ul>
  148. 173. Data Flow Diagramming Mechanics <ul><li>Source/Sink </li></ul><ul><ul><li>Depicts the origin and/or destination of the data </li></ul></ul><ul><ul><li>Sometimes referred to as an external entity </li></ul></ul><ul><ul><li>Drawn as a square symbol </li></ul></ul><ul><ul><li>Name states what the external agent is </li></ul></ul><ul><ul><li>Because they are external, many characteristics are not of interest to us </li></ul></ul>
  149. 176. Data Flow Diagramming Definitions <ul><li>Context Diagram </li></ul><ul><ul><li>A data flow diagram (DFD) of the scope of an organizational system that shows the system boundaries, external entities that interact with the system and the major information flows between the entities and the system </li></ul></ul><ul><li>Level-O Diagram </li></ul><ul><ul><li>A data flow diagrams (DFD) that represents a system’s major processes, data flows and data stores at a higher level </li></ul></ul>
  150. 177. Developing DFDs: An Example <ul><li>Hoosier Burger’s automated food ordering system </li></ul><ul><li>Context Diagram contains no data stores </li></ul>
  151. 179. Developing DFDs: An Example <ul><li>Next step is to expand the context diagram to show the breakdown of processes </li></ul>
  152. 181. Data Flow Diagramming Rules <ul><li>Basic rules that apply to all DFDs </li></ul><ul><ul><li>Inputs to a process are always different than outputs </li></ul></ul><ul><ul><li>Objects always have a unique name </li></ul></ul><ul><ul><ul><li>In order to keep the diagram uncluttered, you can repeat data stores and data flows on a diagram </li></ul></ul></ul>
  153. 182. Data Flow Diagramming Rules <ul><li>Process </li></ul><ul><ul><li>No process can have only outputs (a miracle) </li></ul></ul><ul><ul><li>No process can have only inputs (black hole) </li></ul></ul><ul><ul><li>A process has a verb phrase label </li></ul></ul><ul><li>Data Store </li></ul><ul><ul><li>Data cannot be moved from one store to another </li></ul></ul><ul><ul><li>Data cannot move from an outside source to a data store </li></ul></ul><ul><ul><li>Data cannot move directly from a data store to a data sink </li></ul></ul><ul><ul><li>Data store has a noun phrase label </li></ul></ul>
  154. 183. Data Flow Diagramming Rules <ul><li>Source/Sink </li></ul><ul><ul><li>Data cannot move directly from a source to a sink </li></ul></ul><ul><ul><li>A source/sink has a noun phrase label </li></ul></ul><ul><li>Data Flow </li></ul><ul><ul><li>A data flow has only one direction of flow between symbols </li></ul></ul><ul><ul><li>A fork means that exactly the same data go from a common location to two or more processes, data stores or sources/sinks </li></ul></ul>
  155. 184. Data Flow Diagramming Rules <ul><li>Data Flow (Continued) </li></ul><ul><ul><li>A join means that exactly the same data come from any two or more different processes, data stores or sources/sinks to a common location </li></ul></ul><ul><ul><li>A data flow cannot go directly back to the same process it leaves </li></ul></ul><ul><ul><li>A data flow to a data store means update </li></ul></ul><ul><ul><li>A data flow from a data store means retrieve or use </li></ul></ul><ul><ul><li>A data flow has a noun phrase label </li></ul></ul>
  156. 185. Decomposition of DFDs <ul><li>Functional decomposition </li></ul><ul><ul><li>Act of going from one single system to many component processes </li></ul></ul><ul><ul><li>Repetitive procedure </li></ul></ul><ul><ul><li>Lowest level is called a primitive DFD </li></ul></ul><ul><li>Level-N Diagrams </li></ul><ul><ul><li>A DFD that is the result of n nested decompositions of a series of subprocesses from a process on a level-0 diagram </li></ul></ul>
  157. 186. Balancing DFDs <ul><li>When decomposing a DFD, you must conserve inputs to and outputs from a process at the next level of decomposition </li></ul><ul><li>This is called balancing </li></ul><ul><li>Example: Hoosier Burgers </li></ul><ul><ul><li>In Figure 5-4, notice that there is one input to the system, the customer order </li></ul></ul><ul><ul><li>Three outputs: </li></ul></ul><ul><ul><ul><li>Customer receipt </li></ul></ul></ul><ul><ul><ul><li>Food order </li></ul></ul></ul><ul><ul><ul><li>Management reports </li></ul></ul></ul>
  158. 187. Balancing DFDs <ul><li>Example (Continued) </li></ul><ul><ul><li>Notice Figure 5-5. We have the same inputs and outputs </li></ul></ul><ul><ul><li>No new inputs or outputs have been introduced </li></ul></ul><ul><ul><li>We can say that the context diagram and level-0 DFD are balanced </li></ul></ul>
  159. 188. Balancing DFDs: An Unbalanced Example <ul><ul><li>In context diagram, we have one input to the system, A and one output, B </li></ul></ul><ul><ul><li>Level-0 diagram has one additional data flow, C </li></ul></ul><ul><ul><li>These DFDs are not balanced </li></ul></ul>
  160. 189. Balancing DFDs <ul><li>We can split a data flow into separate data flows on a lower-level diagram </li></ul>
  161. 190. Balancing DFDs: Four Additional Advanced Rules
  162. 191. Guidelines for Drawing DFDs <ul><li>Completeness </li></ul><ul><ul><li>DFD must include all components necessary for system </li></ul></ul><ul><ul><li>Each component must be fully described in the project dictionary or CASE repository </li></ul></ul><ul><li>Consistency </li></ul><ul><ul><li>The extent to which information contained on one level of a set of nested DFDs is also included on other levels </li></ul></ul>
  163. 192. Guidelines for Drawing DFDs <ul><li>Timing </li></ul><ul><ul><li>Time is not represented well on DFDs </li></ul></ul><ul><ul><li>Best to draw DFDs as if the system has never started and will never stop </li></ul></ul><ul><li>Iterative Development </li></ul><ul><ul><li>Analyst should expect to redraw diagram several times before reaching the closest approximation to the system being modeled </li></ul></ul><ul><li>Primitive DFDs </li></ul><ul><ul><li>Lowest logical level of decomposition </li></ul></ul><ul><ul><li>Decision has to be made when to stop decomposition </li></ul></ul>
  164. 193. Using DFDs as Analysis Tools <ul><li>Gap Analysis </li></ul><ul><ul><li>The process of discovering discrepancies between two or more sets of data flow diagrams or discrepancies within a single DFD </li></ul></ul><ul><li>Inefficiencies in a system can often be identified through DFDs </li></ul>
  165. 194. Using DFDs in Business Process Reengineering <ul><li>Example: IBM Credit </li></ul><ul><li>Credit approval process required six days before Business Process Reengineering (see Fig 5-12) </li></ul>
  166. 195. Using DFDs in Business Process Reengineering <ul><li>After Business Reprocess Engineering, IBM was able to process 100 times the number of transactions in the same amount of time </li></ul>
  167. 196. Summary <ul><li>Data flow diagrams (DFD) </li></ul><ul><ul><li>Symbols </li></ul></ul><ul><ul><li>Rules for creating </li></ul></ul><ul><ul><li>Decomposition </li></ul></ul><ul><ul><li>Balancing </li></ul></ul><ul><li>DFDs for Analysis </li></ul><ul><li>DFDs for Business Process Reengineering (BPR) </li></ul>
  168. 197. Questions <ul><li>What is a data flow diagram? Why do systems analysts use data flow diagrams? </li></ul><ul><li>What is decomposition? What is balancing? How can you determine if DFDs are not balanced? </li></ul><ul><li>Explain the convention for naming different levels of data flow diagrams. </li></ul><ul><li>How can data flow diagrams be used as analysis tools? </li></ul>
  169. 198. Chapter 10 Structuring System Requirements: Conceptual Data Modeling
  170. 199. Learning Objectives <ul><li>Define key data-modeling terms </li></ul><ul><ul><li>Conceptual data model </li></ul></ul><ul><ul><li>Entity-Relationship (E-R) diagram </li></ul></ul><ul><ul><li>Entity type </li></ul></ul><ul><ul><li>Entity instance </li></ul></ul><ul><ul><li>Attribute </li></ul></ul><ul><ul><li>Candidate key </li></ul></ul><ul><ul><li>Multivalued attributes </li></ul></ul><ul><ul><li>Relationship </li></ul></ul><ul><ul><li>Degree </li></ul></ul><ul><ul><li>Cardinality </li></ul></ul><ul><ul><li>Associative entity </li></ul></ul>
  171. 200. Learning Objectives <ul><li>Ask the right kinds of questions to determine data requirements for an IS </li></ul><ul><li>Learn to draw entity-relationship diagrams (ERD) </li></ul><ul><li>Review the role of conceptual data modeling in overall design and analysis of an information system </li></ul><ul><li>Discuss relationships and associative entities </li></ul><ul><li>Discuss relationship between data modeling and process modeling </li></ul>
  172. 201. Conceptual Data Modeling <ul><li>Representation of organizational data </li></ul><ul><li>Purpose is to show rules about the meaning and interrelationships among data </li></ul><ul><li>Entity-Relationship (E-R) diagrams are commonly used to show how data are organized </li></ul><ul><li>Main goal of conceptual data modeling is to create accurate E-R diagrams </li></ul><ul><li>Methods such as interviewing, questionnaires and JAD are used to collect information </li></ul><ul><li>Consistency must be maintained between process flow, decision logic and data modeling descriptions </li></ul>
  173. 202. Process of Conceptual Data Modeling <ul><li>First step is to develop a data model for the system being replaced </li></ul><ul><li>Next, a new conceptual data model is built that includes all the requirements of the new system </li></ul><ul><li>In the design stage, the conceptual data model is translated into a physical design </li></ul><ul><li>Project repository links all design and data modeling steps performed during SDLC </li></ul>
  174. 203. Deliverables and Outcomes <ul><li>Primary deliverable is the entity-relationship diagram </li></ul><ul><li>There may be as many as 4 E-R diagrams produced and analyzed during conceptual data modeling </li></ul><ul><ul><li>Covers just data needed in the project’s application </li></ul></ul><ul><ul><li>E-R diagram for system being replaced </li></ul></ul><ul><ul><li>An E-R diagram for the whole database from which the new application’s data are extracted </li></ul></ul><ul><ul><li>An E-R diagram for the whole database from which data for the application system being replaced are drawn </li></ul></ul>
  175. 205. Deliverables and Outcomes <ul><li>Second deliverable is a set of entries about data objects to be stored in repository or project dictionary </li></ul><ul><ul><li>Repository links data, process and logic models of an information system </li></ul></ul><ul><ul><li>Data elements that are included in the DFD must appear in the data model and conversely </li></ul></ul><ul><ul><li>Each data store in a process model must relate to business objects represented in the data model </li></ul></ul>
  176. 206. Gathering Information for Conceptual Data Modeling <ul><li>Two perspectives </li></ul><ul><ul><li>Top-down </li></ul></ul><ul><ul><ul><li>Data model is derived from an intimate understanding of the business </li></ul></ul></ul><ul><ul><li>Bottom-up </li></ul></ul><ul><ul><ul><li>Data model is derived by reviewing specifications and business documents </li></ul></ul></ul>
  177. 207. Introduction to Entity-Relationship (E-R) Modeling <ul><li>Notation uses three main constructs </li></ul><ul><ul><li>Data entities </li></ul></ul><ul><ul><li>Relationships </li></ul></ul><ul><ul><li>Attributes </li></ul></ul><ul><li>Entity-Relationship (E-R) Diagram </li></ul><ul><ul><li>A detailed, logical and graphical representation of the entities, associations and data elements for an organization or business </li></ul></ul>
  178. 208. Entity-Relationship (E-R) Modeling Key Terms <ul><li>Entity </li></ul><ul><ul><li>A person, place, object, event or concept in the user environment about which the organization wishes to maintain data </li></ul></ul><ul><ul><li>Represented by a rectangle in E-R diagrams </li></ul></ul><ul><li>Entity Type </li></ul><ul><ul><li>A collection of entities that share common properties or characteristics </li></ul></ul><ul><li>Attribute </li></ul><ul><ul><li>A named property or characteristic of an entity that is of interest to an organization </li></ul></ul>
  179. 210. Entity-Relationship (E-R) Modeling Key Terms <ul><li>Candidate keys and identifiers </li></ul><ul><ul><li>Each entity type must have an attribute or set of attributes that distinguishes one instance from other instances of the same type </li></ul></ul><ul><ul><li>Candidate key </li></ul></ul><ul><ul><ul><li>Attribute (or combination of attributes) that uniquely identifies each instance of an entity type </li></ul></ul></ul>
  180. 211. Entity-Relationship (E-R) Modeling Key Terms <ul><li>Identifier </li></ul><ul><ul><li>A candidate key that has been selected as the unique identifying characteristic for an entity type </li></ul></ul><ul><ul><li>Selection rules for an identifier </li></ul></ul><ul><ul><ul><li>Choose a candidate key that will not change its value </li></ul></ul></ul><ul><ul><ul><li>Choose a candidate key that will never be null </li></ul></ul></ul><ul><ul><ul><li>Avoid using intelligent keys </li></ul></ul></ul><ul><ul><ul><li>Consider substituting single value surrogate keys for large composite keys </li></ul></ul></ul>
  181. 212. Entity-Relationship (E-R) Modeling Key Terms <ul><li>Multivalued Attribute </li></ul><ul><ul><li>An attribute that may take on more than one value for each entity instance </li></ul></ul><ul><ul><li>Represented on E-R Diagram in two ways: </li></ul></ul><ul><ul><ul><li>Double-lined ellipse </li></ul></ul></ul><ul><ul><ul><li>Weak entity </li></ul></ul></ul>
  182. 213. Entity-Relationship (E-R) Modeling Key Terms <ul><li>Relationship </li></ul><ul><ul><li>An association between the instances of one or more entity types that is of interest to the organization </li></ul></ul><ul><ul><li>Association indicates that an event has occurred or that there is a natural link between entity types </li></ul></ul><ul><ul><li>Relationships are always labeled with verb phrases </li></ul></ul>
  183. 214. Conceptual Data Modeling and the E-R Diagram <ul><li>Goal </li></ul><ul><ul><li>Capture as much of the meaning of the data as possible </li></ul></ul><ul><li>Result </li></ul><ul><ul><li>A better design that is easier to maintain </li></ul></ul>
  184. 215. Degree of Relationship <ul><li>Degree </li></ul><ul><ul><li>Number of entity types that participate in a relationship </li></ul></ul><ul><li>Three cases </li></ul><ul><ul><li>Unary </li></ul></ul><ul><ul><ul><li>A relationship between the instances of one entity type </li></ul></ul></ul><ul><ul><li>Binary </li></ul></ul><ul><ul><ul><li>A relationship between the instances of two entity types </li></ul></ul></ul><ul><ul><li>Ternary </li></ul></ul><ul><ul><ul><li>A simultaneous relationship among the instances of three entity types </li></ul></ul></ul><ul><ul><ul><li>Not the same as three binary relationships </li></ul></ul></ul>
  185. 217. Cardinality <ul><li>The number of instances of entity B that can be associated with each instance of entity A </li></ul><ul><li>Minimum Cardinality </li></ul><ul><ul><li>The minimum number of instances of entity B that may be associated with each instance of entity A </li></ul></ul><ul><li>Maximum Cardinality </li></ul><ul><ul><li>The maximum number of instances of entity B that may be associated with each instance of entity A </li></ul></ul>
  186. 218. Electronic Commerce Development: Conceptual Data Model <ul><li>Conceptual data modeling for Internet applications is no different than the processed followed for other types of applications </li></ul><ul><li>Pine Valley Furniture WebStore </li></ul><ul><ul><li>Four entity types defined </li></ul></ul><ul><ul><ul><li>Customer </li></ul></ul></ul><ul><ul><ul><li>Inventory </li></ul></ul></ul><ul><ul><ul><li>Order </li></ul></ul></ul><ul><ul><ul><li>Shopping cart </li></ul></ul></ul>
  187. 221. ER diagram for Pine Valley furniture
  188. 223. Summary <ul><li>Process of conceptual data modeling </li></ul><ul><ul><li>Deliverables </li></ul></ul><ul><ul><li>Gathering information </li></ul></ul><ul><li>Entity-Relationship Modeling </li></ul><ul><ul><li>Entities </li></ul></ul><ul><ul><li>Attributes </li></ul></ul><ul><ul><li>Candidate keys and identifiers </li></ul></ul><ul><ul><li>Multivalued attributes </li></ul></ul><ul><li>Degree of relationship </li></ul>
  189. 224. Summary <ul><li>Cardinality </li></ul><ul><li>Associative entities </li></ul><ul><li>Conceptual data modeling and Internet development </li></ul>
  190. 225. Questions <ul><li>List the four types of E-R diagrams produced and analyzed during conceptual data modeling. </li></ul><ul><li>What elements of a data flow diagram should be analyzed as part of data modeling? </li></ul><ul><li>What is the degree of a relationship? Give an example of each of the relationship degrees illustrated in this chapter. </li></ul><ul><li>Explain why a ternary relationship is not the same as three binary relationships. </li></ul><ul><li>Which of the following types of relationships can have attributes associated with them: one-to-one, one-to-many, many-to-many? </li></ul><ul><li>Give an example of a ternary relationship (different from any example in this chapter.) </li></ul>
  191. 226. Chapter 11 Object-Oriented Analysis and Design
  192. 227. Learning Objectives <ul><li>Discuss the concepts and principles underlying the object-oriented approach </li></ul><ul><li>Learn to develop requirements models using use-case diagrams </li></ul><ul><li>Learn to develop requirements models using state and sequence diagrams </li></ul><ul><li>Learn to use class diagrams to develop object models of the problem domain </li></ul>
  193. 228. The Object-Oriented Modeling Approach <ul><li>Benefits </li></ul><ul><ul><li>The ability to tackle more challenging problem domains </li></ul></ul><ul><ul><li>Improved communication among users, analysts, designers and programmers </li></ul></ul><ul><ul><li>Reusability of analysis, design and programming results </li></ul></ul><ul><ul><li>Increased consistency among the models developed during object-oriented analysis, design, and programming </li></ul></ul><ul><ul><li>Explicit representation of commonality among system components </li></ul></ul>
  194. 229. The Object-Oriented Modeling Approach <ul><li>Object-Oriented systems development life cycle: </li></ul><ul><ul><li>Process of progressively developing representation of a system component (or object) through the phases of analysis, design and implementation </li></ul></ul><ul><ul><li>The model is abstract in the early stages </li></ul></ul><ul><ul><li>As the model evolves, it becomes more and more detailed </li></ul></ul>
  195. 230. The Object-Oriented Systems Development Life Cycle <ul><li>Analysis Phase </li></ul><ul><ul><li>Model of the real-world application is developed showing its important properties </li></ul></ul><ul><ul><li>Model specifies the functional behavior of the system independent of implementation details </li></ul></ul><ul><li>Design Phase </li></ul><ul><ul><li>Analysis model is refined and adapted to the environment </li></ul></ul><ul><li>Implementation Phase </li></ul><ul><ul><li>Design is implemented using a programming language or database management system </li></ul></ul>
  196. 231. The Object-Oriented Systems Development Life Cycle <ul><li>Unified Modeling Language (UML) </li></ul><ul><ul><li>A notation that allows the modeler to specify, visualize and construct the artifacts of software systems, as well as business models </li></ul></ul><ul><ul><li>Techniques and notations </li></ul></ul><ul><ul><ul><li>Use cases </li></ul></ul></ul><ul><ul><ul><li>Sequence diagrams </li></ul></ul></ul><ul><ul><ul><li>Activity diagrams </li></ul></ul></ul><ul><ul><ul><li>Class diagrams </li></ul></ul></ul><ul><ul><ul><li>State diagrams </li></ul></ul></ul>
  197. 232. An architecture-based vision Components View Deployment View Process View Logical View Use Case View Functional needs Major classes coding System performances Servers and network organization
  198. 233. Use Cases diagrams Functional modelling Sequence Diagrams Dynamic modelling of scenarios Class Diagrams Static modelling System’s structure Collaboration diagram Dynamic modelling, focusing on spatial relationships between objects Statecharts Diagrams Dynamic modelling, focusing on an object. Activities done in each state correspond to operations Activity Diagrams Dynamic modelling, focusing on an activity Objects Diagrams Static modelling Context 1
  199. 234. Use-Case Modeling <ul><li>Applied to analyze functional requirements of the system </li></ul><ul><li>Performed during the analysis phase to help developers understand functional requirements of the system without regard for implementation details </li></ul><ul><li>Use Case </li></ul><ul><ul><li>A complete sequence of related actions initiated by an actor </li></ul></ul><ul><li>Actor </li></ul><ul><ul><li>An external entity that interacts with the system </li></ul></ul>
  200. 235. Use-Case Modeling <ul><li>Use cases are always initiated by an actor </li></ul><ul><li>Use cases represent complete functionality of the system </li></ul><ul><li>Use cases may participate in relationships with other use-cases </li></ul><ul><li>Use cases may also use other use cases </li></ul>
  201. 236. Use cases diagram <ul><li>Use cases diagrams describe what a system does from the standpoint of an external observer. The emphasis is on what a system does rather than how. </li></ul><ul><li>Use cases diagrams are closely connected to scenarios. A scenario is an example of what happens when someone interacts with the system. </li></ul><ul><ul><li>Here is a scenario for a medical clinic: </li></ul></ul><ul><ul><ul><li>A patient calls the clinic to make an appointment for a yearly checkup. </li></ul></ul></ul><ul><ul><ul><li>The receptionist finds the nearest empty time slot in the appointment book </li></ul></ul></ul><ul><ul><ul><li>and schedules the appointment for that time slot </li></ul></ul></ul><ul><li>A use case is a summary of scenarios for a single task or goal. An actor is who or what initiates the events involved in that task. Actors are simply roles that people or objects play </li></ul>
  202. 237. A use case and his actor
  203. 238. A use case diagram
  204. 240. Explanation <ul><li>A system boundary rectangle separates the clinic system from the external actors. </li></ul><ul><li>A use case generalization shows that one use case is simply a special kind of another. Pay Bill is a parent use case and Bill Insurance is the child. A child can be substituted for its parent whenever necessary. Generalization appears as a line with a triangular arrow head toward the parent use case. </li></ul><ul><li>Include relationships factor use cases into additional ones. Includes are especially helpful when the same use case can be factored out of two different use cases. Both Make Appointment and Request Medication include Check Patient Record as a subtask. In the diagram, include notation is a dotted line beginning at base use case ending with an arrows pointing to the include use case. The dotted line is labeled <<include>>. </li></ul><ul><li>An extend relationship indicates that one use case is a variation of another. Extend notation is a dotted line, labeled <<extend>>, and with an arrow toward the base case. The extension point, which determines when the extended case is appropriate, is written inside the base case. </li></ul>
  205. 242. Use case diagrams are helpful in three areas <ul><li>Determining features (requirements). New use cases often generate new requirements as the system is analyzed and the design takes shape. </li></ul><ul><li>Communicating with clients. Their notational simplicity makes use case diagrams a good way for developers to communicate with clients. </li></ul><ul><li>Generating test cases. The collection of scenarios for a use case may suggest a suite of test cases for those scenarios. </li></ul>
  206. 243. Use case example Online HR system
  207. 246. Update Benefits description
  208. 247. Dynamic Modeling: Sequence Diagrams <ul><li>Sequence Diagram </li></ul><ul><ul><li>A depiction of the interaction among objects during certain periods of time </li></ul></ul><ul><li>Activation </li></ul><ul><ul><li>The time period during which an object performs an operation </li></ul></ul><ul><li>Messages </li></ul><ul><ul><li>Means by which objects communicate with each other </li></ul></ul>
  209. 250. Explanation <ul><li>The Reservation window sends a makeReservation() message to a HotelChain . The HotelChain then sends a makeReservation() message to a Hotel . If the Hotel has available rooms, then it makes a Reservation and a Confirmation . </li></ul><ul><li>Each vertical dotted line is a lifeline , representing the time that an object exists. Each arrow is a message call. An arrow goes from the sender to the top of the activation bar of the message on the receiver's lifeline. The activation bar represents the duration of execution of the message. </li></ul><ul><li>In our diagram, the Hotel issues a self call to determine if a room is available. If so, then the Hotel creates a Reservation and a Confirmation . The asterisk on the self call means iteration (to make sure there is available room for each day of the stay in the hotel). The expression in square brackets, [ ], is a condition . </li></ul><ul><li>The diagram has a clarifying note , which is text inside a dog-eared rectangle. Notes can be put into any kind of UML diagram. </li></ul>
  210. 251. Collaboration diagram <ul><li>Collaboration diagrams are also interaction diagrams. They convey the same information as sequence diagrams, but they focus on object roles instead of the times that messages are sent. In a sequence diagram, object roles are the vertices and messages are the connecting links. </li></ul><ul><li>The object-role rectangles are labeled with either class or object names (or both). Class names are preceded by colons ( : ). </li></ul><ul><li>Each message in a collaboration diagram has a sequence number . The top-level message is numbered 1. Messages at the same level (sent during the same call) have the same decimal prefix but suffixes of 1, 2, etc. according to when they occur. </li></ul>
  211. 252. Collaboration diagram
  212. 253. Activity diagram <ul><li>An activity diagram is essentially a fancy flowchart. Activity diagrams and statechart diagrams are related </li></ul><ul><ul><li>While a statechart diagram focuses attention on an object undergoing a process (or on a process as an object), an activity diagram focuses on the flow of activities involved in a single process. The activity diagram shows the how those activities depend on one another. </li></ul></ul><ul><li>For our example, we used the following process. </li></ul><ul><ul><li>&quot;Withdraw money from a bank account through an ATM.&quot; </li></ul></ul><ul><ul><li>The three involved classes (people, etc.) of the activity are Customer, ATM, and Bank. The process begins at the black start circle at the top and ends at the concentric white/black stop circles at the bottom. The activities are rounded rectangles. </li></ul></ul>
  213. 255. Class diagrams <ul><li>A Class diagram gives an overview of a system by showing its classes and the relationships among them. </li></ul><ul><li>Class diagrams are static: they display what interacts but not what happens when they do interact </li></ul>
  214. 256. Class notations
  215. 257. Class stereotypes
  216. 258. Example <ul><li>The following class diagram models a customer order from a retail catalog. </li></ul><ul><ul><li>The central class is the Order. </li></ul></ul><ul><ul><li>Associated with it are the Customer making the purchase and the Payment. </li></ul></ul><ul><ul><ul><li>A Payment is one of three kinds: Cash, Check, or Credit. </li></ul></ul></ul><ul><ul><ul><li>The order contains OrderDetails (line items), each with its associated Item. </li></ul></ul></ul>
  217. 260. Representing Associations <ul><li>Association </li></ul><ul><ul><li>A relationship between object classes </li></ul></ul><ul><ul><li>Degree may be unary, binary, ternary or higher </li></ul></ul><ul><ul><li>Depicted as a solid line between participating classes </li></ul></ul><ul><li>Association Role </li></ul><ul><ul><li>The end of an association where it connects to a class </li></ul></ul><ul><ul><li>Each role has multiplicity, which indicates how many objects participate in a given association relationship </li></ul></ul>
  218. 262. Representing Generalization <ul><li>Generalization </li></ul><ul><ul><li>Abstraction of common features among multiple classes, as well as their relationships, into a more general class </li></ul></ul><ul><li>Subclass </li></ul><ul><ul><li>A class that has been generalized </li></ul></ul><ul><li>Superclass </li></ul><ul><ul><li>A class that is composed of several generalized subclasses </li></ul></ul>
  219. 263. Representing Generalization <ul><li>Discriminator </li></ul><ul><ul><li>Shows which property of an object class is being abstracted by a generalization relationship </li></ul></ul><ul><li>Inheritance </li></ul><ul><ul><li>A property that a subclass inherits the features from its superclass </li></ul></ul><ul><li>Abstract Class </li></ul><ul><ul><li>A class that has no direct instances, but whose descendents may have direct instances </li></ul></ul><ul><li>Concrete Class </li></ul><ul><ul><li>A class that can have direct instances </li></ul></ul>
  220. 266. Representing Aggregation <ul><li>Aggregation </li></ul><ul><ul><li>A part-of relationship between a component object and an aggregate object </li></ul></ul><ul><ul><li>Example: Personal computer </li></ul></ul><ul><ul><ul><li>Composed of CPU, Monitor, Keyboard, etc </li></ul></ul></ul>
  221. 267. Composition and Aggregation <ul><li>Associations in which an object is part of a whole are aggregations . </li></ul><ul><li>Composition is a strong association in which the part can belong to only one whole </li></ul><ul><ul><li>The part cannot exist without the whole. Composition is denoted by a filled diamond at the whole end. </li></ul></ul><ul><li>The following diagram shows that a BoxOffice belongs to exactly one MovieTheater . Destroy the MovieTheater and the BoxOffice goes away! </li></ul><ul><ul><li>The collection of Movies is not so closely bound to the MovieTheater . </li></ul></ul>
  222. 269. Dependencies and constraints <ul><li>A dependency is a relation between two classes in which a change in one may force changes in the other. Dependencies are drawn as dotted lines. </li></ul><ul><ul><li>In the class diagram below, Co_op depends on Company . If you decide to modify Company , you may have to change Co_op too. </li></ul></ul><ul><li>A constraint is a condition that every implementation of the design must satisfy. Constraints are written in curly braces { }. </li></ul><ul><ul><li>The constraint on our diagram indicates that a Section can be part of a CourseSchedule only if it is not canceled. </li></ul></ul>
  223. 271. Packages <ul><li>To simplify complex class diagrams, you can group classes into packages. </li></ul><ul><li>A package is a collection of logically related UML elements. </li></ul><ul><ul><li>Packages appear as rectangles with small tabs at the top. </li></ul></ul><ul><ul><li>The package name is on the tab or inside the rectangle. </li></ul></ul><ul><ul><li>The dotted arrows are dependencies: One package depends on another if changes in the other could possibly force changes in the first. </li></ul></ul>
  224. 273. Object diagrams <ul><li>Object diagrams show instances instead of classes. They are useful for explaining small pieces with complicated relationships, especially recursive relationships. </li></ul><ul><li>This small class diagram shows that a university Department can contain lots of other Departments. </li></ul>
  225. 275. Object Modeling Object Diagrams <ul><li>Object Diagram </li></ul><ul><ul><li>also called an instance diagram </li></ul></ul><ul><ul><li>Object is represented as a rectangle with two compartments </li></ul></ul><ul><li>Operation </li></ul><ul><ul><li>A function or service that is provided by all the instances of a class </li></ul></ul><ul><li>Encapsulation </li></ul><ul><ul><li>The technique of hiding the internal implementation details of an object from its external view </li></ul></ul>
  226. 276. Objects notations
  227. 278. Statecharts diagram <ul><li>Objects have behaviors and state. The state of an object depends on its current activity or condition. A statechart diagram shows the possible states of the object and the transitions that cause a change in state. </li></ul><ul><li>State </li></ul><ul><ul><li>A condition during the life of an object during which it satisfies some conditions, performs some actions or waits for some events </li></ul></ul><ul><ul><li>Shown as a rectangle with rounded corners </li></ul></ul><ul><li>State Transition </li></ul><ul><ul><li>The changes in the attribute of an object or in the links an object has with other objects </li></ul></ul><ul><ul><li>Shown as a solid arrow </li></ul></ul><ul><ul><li>Diagrammed with a guard condition and action </li></ul></ul><ul><li>Event </li></ul><ul><ul><li>Something that takes place at a certain point in time </li></ul></ul>
  228. 279. Example <ul><li>Our example diagram models the login part of an online banking system. </li></ul><ul><ul><li>Logging in consists of entering a valid social security number and personal id number, then submitting the information for validation. </li></ul></ul><ul><ul><li>Logging in can be factored into four non-overlapping states: Getting SSN, Getting PIN, Validating, and Rejecting. </li></ul></ul><ul><ul><li>From each state comes a complete set of transitions that determine the subsequent state. </li></ul></ul>
  229. 281. Explanation <ul><li>Our diagram has two self-transition, one on Getting SSN and another on Getting PIN . </li></ul><ul><li>The initial state (black circle) is a dummy to start the action. Final states are also dummy states that terminate the action. </li></ul><ul><li>The action that occurs as a result of an event or condition is expressed in the form /action. </li></ul><ul><li>While in its Validating state, the object does not wait for an outside event to trigger a transition. Instead, it performs an activity. The result of that activity determines its subsequent state. </li></ul>
  230. 283. Moving to Design <ul><li>Start with existing set of analysis model </li></ul><ul><li>Progressively add technical details </li></ul><ul><li>Design model must be more detailed than analysis model </li></ul><ul><li>Component Diagram </li></ul><ul><ul><li>A diagram that shows the software components or modules and their dependencies </li></ul></ul><ul><li>Deployment Diagram </li></ul><ul><ul><li>A diagram that shows how the software components, process and objects are deployed into the physical architecture of the system </li></ul></ul>
  231. 284. Component and deployment diagrams <ul><li>A component is a code module. Component diagrams are physical analogs of class diagram. Deployment diagrams show the physical configurations of software and hardware. </li></ul><ul><li>The following deployment diagram shows the relationships among software and hardware components involved in real estate transactions. </li></ul><ul><li>The physical hardware is made up of nodes . Each component belongs on a node. Components are shown as rectangles with two tabs at the upper left. </li></ul>
  232. 286. Summary <ul><li>Object-Oriented modeling approach </li></ul><ul><ul><li>Benefits </li></ul></ul><ul><ul><li>Unified Modeling Language </li></ul></ul><ul><ul><ul><li>Use cases </li></ul></ul></ul><ul><ul><ul><li>Class diagrams </li></ul></ul></ul><ul><ul><ul><li>State diagrams </li></ul></ul></ul><ul><ul><ul><li>Sequence diagrams </li></ul></ul></ul><ul><li>Use-case modeling </li></ul>
  233. 287. Summary <ul><li>Object Modeling: Class Diagrams </li></ul><ul><ul><li>Associations </li></ul></ul><ul><ul><li>Generalizations </li></ul></ul><ul><ul><li>Aggregation </li></ul></ul><ul><li>Dynamic Modeling: State Diagrams </li></ul><ul><li>Dynamic Modeling: Sequence Diagrams </li></ul><ul><li>Moving to Design </li></ul>
  234. 288. Chapter 12 Designing the Human Interface
  235. 289. Learning Objectives <ul><li>Explain the process of designing forms and reports and the deliverables for their creation </li></ul><ul><li>Discuss general guidelines for formatting text, tables and lists </li></ul><ul><li>Learn how to effectively format text, tables and lists </li></ul><ul><li>Explain the process of designing interfaces and dialogues and the deliverables for their creation </li></ul>
  236. 290. Learning Objectives <ul><li>Discuss the general guidelines for interface design including: </li></ul><ul><ul><li>Layout and design </li></ul></ul><ul><ul><li>Structuring data entry fields </li></ul></ul><ul><ul><li>Providing feedback </li></ul></ul><ul><ul><li>System help </li></ul></ul><ul><li>Discuss the design of human-computer dialogues and the use of dialogue diagramming </li></ul><ul><li>Explain interface design guidelines unique to the design of Internet-based electronic commerce systems </li></ul>
  237. 291. Designing Forms and Reports <ul><li>System inputs and outputs are produced at the end of the analysis phase </li></ul><ul><ul><li>Precise appearance was not defined during this phase </li></ul></ul><ul><li>Forms and reports are integrally related to DFD and E-R diagrams </li></ul>
  238. 292. Designing Forms and Reports: Key Concepts <ul><li>Form </li></ul><ul><ul><li>A business document that contains some predefined data and may include some areas where additional data are to be filled in </li></ul></ul><ul><ul><li>An instance of a form is typically based on one database record </li></ul></ul><ul><li>Report </li></ul><ul><ul><li>A business document that contains only predefined data </li></ul></ul><ul><ul><li>A passive document for reading or viewing data </li></ul></ul><ul><ul><li>Typically contains data from many database records or transactions </li></ul></ul>
  239. 293. The Process of Designing Forms and Reports <ul><li>User-focused activity </li></ul><ul><li>Follows a prototyping approach </li></ul><ul><li>Requirements determination </li></ul><ul><ul><li>Who will use the form or report? </li></ul></ul><ul><ul><li>What is the purpose of the form or report? </li></ul></ul><ul><ul><li>When is the report needed or used? </li></ul></ul><ul><ul><li>Where does the form or report need to be delivered and used? </li></ul></ul><ul><ul><li>How many people need to use or view the form or report? </li></ul></ul>
  240. 294. The Process of Designing Forms and Reports <ul><li>Prototyping </li></ul><ul><ul><li>Initial prototype is designed from requirements </li></ul></ul><ul><ul><li>Users review prototype design and either accept the design or request changes </li></ul></ul><ul><ul><li>If changes are requested, the construction-evaluation-request cycle is repeated until the design is accepted </li></ul></ul>
  241. 295. Deliverables and Outcomes <ul><li>Design specifications are major deliverable and contain three sections </li></ul><ul><ul><li>Narrative </li></ul></ul><ul><ul><li>Screen Design </li></ul></ul><ul><ul><li>Testing and usability assessment </li></ul></ul>
  242. 296. General Formatting Guidelines for Forms and Reports <ul><li>Highlighting </li></ul><ul><ul><li>Use sparingly to draw user to or away from certain information </li></ul></ul><ul><ul><li>Blinking and audible tones should only be used to highlight critical information requiring user’s immediate attention </li></ul></ul><ul><ul><li>Methods should be consistently selected and used based upon level of importance of emphasized information </li></ul></ul>
  243. 299. General Formatting Guidelines for Forms and Reports <ul><li>Displaying Text </li></ul><ul><ul><li>Display text in mixed upper- and lowercase and use conventional punctuation </li></ul></ul><ul><ul><li>Use double spacing if space permits. If not, place a blank line between paragraphs </li></ul></ul><ul><ul><li>Left-justify text and leave a ragged right margin </li></ul></ul><ul><ul><li>Do not hyphenate words between lines </li></ul></ul><ul><ul><li>Use abbreviations and acronyms only when they are widely understood by users and are significantly shorter than the full text </li></ul></ul>
  244. 300. General Formatting Guidelines for Forms and Reports <ul><li>Displaying tables and lists </li></ul><ul><ul><li>Labels </li></ul></ul><ul><ul><ul><li>All columns and rows should have meaningful labels </li></ul></ul></ul><ul><ul><ul><li>Labels should be separated from other information by using highlighting </li></ul></ul></ul><ul><ul><ul><li>Redisplay labels when the data extend beyond a single screen or page </li></ul></ul></ul>
  245. 301. General Formatting Guidelines for Forms and Reports <ul><li>Displaying tables and lists (continued) </li></ul><ul><ul><li>Formatting columns, rows and text </li></ul></ul><ul><ul><ul><li>Sort in a meaningful order </li></ul></ul></ul><ul><ul><ul><li>Place a blank line between every 5 rows in long columns </li></ul></ul></ul><ul><ul><ul><li>Similar information displayed in multiple columns should be sorted vertically </li></ul></ul></ul><ul><ul><ul><li>Columns should have at least two spaces between them </li></ul></ul></ul><ul><ul><ul><li>Allow white space on printed reports for user to write notes </li></ul></ul></ul><ul><ul><ul><li>Use a single typeface, except for emphasis </li></ul></ul></ul><ul><ul><ul><li>Use same family of typefaces within and across displays and reports </li></ul></ul></ul><ul><ul><ul><li>Avoid overly fancy fonts </li></ul></ul></ul>
  246. 302. General Formatting Guidelines for Forms and Reports <ul><li>Displaying tables and lists (continued) </li></ul><ul><ul><li>Formatting numeric, textual and alphanumeric data </li></ul></ul><ul><ul><ul><li>Right-justify numeric data and align columns by decimal points or other delimiter </li></ul></ul></ul><ul><ul><ul><li>Left-justify textual data. Use short line length, usually 30 to 40 characters per line </li></ul></ul></ul><ul><ul><ul><li>Break long sequences of alphanumeric data into small groups of three to four characters each </li></ul></ul></ul>
  247. 306. Designing Interfaces and Dialogues <ul><li>Focus on how information is provided to and captured from users </li></ul><ul><li>Dialogues are analogous to a conversation between two people </li></ul><ul><li>A good human-computer interface provides a unifying structure for finding, viewing and invoking the different components of a system </li></ul>
  248. 307. Designing Interfaces <ul><li>Designing Layouts </li></ul><ul><ul><li>Standard formats similar to paper-based forms and reports should be used </li></ul></ul><ul><ul><li>Screen navigation on data entry screens should be left-to-right, top-to-bottom as on paper forms </li></ul></ul>
  249. 308. Designing Layouts <ul><li>Flexibility and consistency are primary design goals </li></ul><ul><ul><li>Users should be able to move freely between fields </li></ul></ul><ul><ul><li>Data should not be permanently saved until the user explicitly requests this </li></ul></ul><ul><ul><li>Each key and command should be assigned to one function </li></ul></ul>
  250. 309. Structuring Data Entry Provide context-sensitive help when appropriate Help Automatically justify data entries Justify Provide formatting examples Format Always place a caption adjacent to fields Captioning Use character replacement when appropriate Replacement Make clear the type of data units requested for entry Units Always provide default values when appropriate Defaults Never require data that are already online or that can be computed Entry
  251. 310. Controlling Data Input <ul><li>One objective of interface design is to reduce data entry errors </li></ul><ul><li>Role of systems analyst is to anticipate user errors and design features into the system’s interfaces to avoid, detect, and correct data entry mistakes </li></ul><ul><li>Table 8-9 describes types of data entry errors </li></ul><ul><li>Table 8-10 lists techniques used by system designers to detect errors </li></ul>
  252. 313. Providing Feedback <ul><li>Status Information </li></ul><ul><ul><li>Keeps users informed of what is going on in system </li></ul></ul><ul><ul><li>Displaying status information is especially important if the operation takes longer than a second or two </li></ul></ul><ul><li>Prompting Cues </li></ul><ul><ul><li>Best to keep as specific as possible </li></ul></ul><ul><li>Error and Warning Messages </li></ul><ul><ul><li>Messages should be specific and free of error codes and jargon </li></ul></ul><ul><ul><li>User should be guided toward a result rather than scolded </li></ul></ul><ul><ul><li>Use terms familiar to user </li></ul></ul><ul><ul><li>Be consistent in format and placement of messages </li></ul></ul>
  253. 314. Providing Help <ul><li>Place yourself in user’s place when designing help </li></ul><ul><li>Guidelines </li></ul><ul><ul><li>Simplicity </li></ul></ul><ul><ul><ul><li>Help messages should be short and to the point </li></ul></ul></ul><ul><ul><li>Organization </li></ul></ul><ul><ul><ul><li>Information in help messages should be easily absorbed by users </li></ul></ul></ul><ul><ul><li>Demonstrate </li></ul></ul><ul><ul><ul><li>It is useful to explicitly show users how to perform an operation </li></ul></ul></ul>
  254. 315. Providing Help <ul><li>Context-Sensitive Help </li></ul><ul><ul><li>Enables user to get field-specific help </li></ul></ul><ul><li>Users should always be returned to where they were when requesting help </li></ul>
  255. 316. Designing Dialogues <ul><li>Dialogue </li></ul><ul><ul><li>Sequence in which information is displayed to and obtained from a user </li></ul></ul><ul><li>Primary design guideline is consistency in sequence of actions, keystrokes, and terminology </li></ul><ul><li>Three-step process </li></ul><ul><ul><li>1. Design dialogue sequence </li></ul></ul><ul><ul><li>2. Build a prototype </li></ul></ul><ul><ul><li>3. Assess usability </li></ul></ul>
  256. 317. Designing the Dialogue Sequence <ul><li>Define the sequence </li></ul><ul><li>Have a clear understanding of the user, task, technological and environmental characteristics </li></ul><ul><li>Dialogue Diagram </li></ul><ul><ul><li>A formal method for designing and representing human-computer dialogues using box and line diagrams </li></ul></ul><ul><ul><li>Consists of a box with three sections </li></ul></ul><ul><ul><ul><li>Top: Unique display reference num