Chapter 1: The Systems Development Environment PDF
Document Details
Uploaded by Deleted User
Tags
Summary
This document is an introductory chapter on systems development, exploring concepts like information systems analysis and design, and the information systems development life cycle (SDLC). It covers various methodologies and tools, including CASE tools and Agile Methodologies.
Full Transcript
# Chapter 1: The Systems Development Environment ## Learning Objectives * Define information systems analysis and design. * Describe the information systems development life cycle (SDLC). * Explain computer-aided software engineering (CASE) tools. * Describe Agile Methodologies and eXtreme Program...
# Chapter 1: The Systems Development Environment ## Learning Objectives * Define information systems analysis and design. * Describe the information systems development life cycle (SDLC). * Explain computer-aided software engineering (CASE) tools. * Describe Agile Methodologies and eXtreme Programming. * Explain object-oriented analysis and design and the Rational Unified Process (RUP). ## Introduction * Information Systems Analysis and Design * Complex organizational process * Used to develop and maintain computer-based information systems * Used by a team of business and systems professionals ## Introduction (Cont.) * **Application Software:** Computer software designed to support organizational functions or processes * **Systems Analyst**: Organizational role most responsible for analysis and design of information systems ## A Modern Approach to Systems Analysis and Design * **1950s**: Focus on efficient automation of existing processes * **1960s**: Advent of procedural third-generation languages (3GL) - faster and more reliable computers * **1970s**: Systems development becomes more like an engineering discipline * **1980s**: Major breakthrough with 4GL, CASE tools, object-oriented methods. * **1990s**: Focus on system integration, GUI applications, client/server platforms, the Internet * **The New Century**: Web application development wireless PDAs smart phones, component-based applications, per-use cloud-based application services. ## Developing Information Systems * **System Development Methodology** is a standard process followed in an organization to conduct all the steps necessary to analyze, design, implement, and maintain information systems. ## Systems Development Life Cycle (SDLC) * **Traditional methodology used to develop, maintain, and replace information systems** ### Phases in SDLC: 1. **Planning** 2. **Analysis** 3. **Design** 4. **Implementation** 5. **Maintenance** ## Systems Development Life Cycle (SDLC) (Cont.) * **Planning**: An organization´s total information system needs are identified, analyzed, prioritized, and arranged. * **Analysis**: System requirements are studied and structured. * **Design**: A description of the recommended solution is converted into logical and then physical system specifications * **Systems Development Life Cycle (SDLC) (Cont.)**: * **Logical Design**: All functional features of the system chosen for development in analysis are described independently of any computer platform * **Physical Design**: The logical specifications of the system from the logical design are transformed into the technology-specific details from which all programming and system construction can be accomplished. * **Implementation**: The information system is coded, tested, installed, and supported in the organization * **Maintenance**: An information system is systematically repaired and improved ## Problems with the Waterfall Approach * Feedback ignored, milestones lock in design specs even when conditions change * Limited user involvement (only in requirements phase) * Too much focus on milestone deadlines of SDLC phases to the detriment of sound development practices ## Different Approaches to Improving Development * **CASE Tools** * **Agile Methodologies** * **eXtreme Programming** ## Computer-Aided Software Engineering (CASE) Tools * **Diagramming tools** enable graphical representation. * **Computer displays and report generators** help prototype how systems "look and feel". * **Computer-Aided Software Engineering (CASE) Tools (Cont.)**: * **Analysis tools** automatically check for consistency in diagrams, forms, and reports. * **A central repository** provides integrated storage of diagrams, reports, and project management specifications. * **Documentation generators** standardize technical and user documentation. * **Code generators** enable automatic generation of programs and database code directly from design documents, diagrams, forms, and reports. ## Agile Methodologies * **Motivated by recognition of software development as fluid, unpredictable, and dynamic** * **Three key principles**: * Adaptive rather than predictive * Emphasize people rather than roles * Self-adaptive processes ## When to use Agile methodologies: * If your project involves: * Unpredictable or dynamic requirements * Responsible and motivated developers * Customers who understand the process and will get involved ## eXtreme Programming * Short, incremental development cycles * Automated tests * Two-person programming teams * Coding, testing, listening, designing. ## eXtreme Programming (Cont.) * **Coding and testing operate together** * **Advantages**: * Communication between developers * High level of productivity * High-quality code ## Object-Oriented Analysis and Design (OOAD) * **Based on objects rather than data or processes** * **Object**: A structure encapsulating attributes and behaviors of a real-world entity * **Object-Oriented Analysis and Design (OOAD) (Cont.)**: * **Object class**: A logical grouping of objects sharing the same attributes and behaviors. * **Inheritance**: Hierarchical arrangement of classes enable subclasses to inherit properties of superclasses ## Rational Unified Process (RUP) * **An object-oriented systems development methodology** * **Establishes four phases of development**: Inception, elaboration, construction, and transition * **Each phase is organized into a number of separate iterations.** ## Our Approach to Systems Development * **Criticisms of SDLC**: * Forcing timed phases on intangible processes (analysis and design) is doomed to fail. * Too much formal process and documentation slows things down. * Cycles are not necessarily waterfalls. * **And yet the concept of a cycle is in all methodologies. So, SDLC is a valuable model that has many variations.** ## Summary In this chapter you learned how to: * Define information systems analysis and design. * Describe the information systems development life cycle (SDLC). * Explain computer-aided software engineering (CASE) tools. * Describe Agile Methodologies and eXtreme Programming. * Explain object-oriented analysis and design and the Rational Unified Process (RUP). # Chapter 2: The Origins of Software ## Learning Objectives * Explain outsourcing. * Describe six different sources of software. * Discuss how to evaluate off-the-shelf software. * Explain reuse and its role in software development. ## Introduction * Historically, software development for a corporate information systems department was done primarily in-house. * Now it involves use of components from external sources. * Much in-house application coding involves making the components work together. ## Introduction (cont.) * **Six sources of software:** * Information technology service firms * Packaged software providers * Vendors of enterprise-wide solution software * Cloud computing * Open-source software * In-house development * **There are ways to evaluate software from sources** ## Sources of Software * Information technology services firm * Packaged software producers * Enterprise solutions software * Enterprise Resource Planning (ERP) * Cloud computing * Open-source software * In-house developers. * **There are ways to evaluate software from sources** ## Systems Acquisition: Outsourcing * **Outsourcing**: The practice of turning over responsibility of some or all of an organization´s information systems applications and operations to an outside firm ## Systems Acquisition: Outsourcing (Cont.) * **Outsourcing Example**: * Shell Oil outsource spending: $3.2 billion (2008) * Shell´s outsourcing vendors (2008-2011): EDS, T-Systems, AT&T, IBM, Logica, Wipro, Accenture ## Outsourcing (Cont.) * **Reasons to outsource:** * Cost-effectiveness * Take advantage of economies of scale * Make up for lack of in-house knowledge * Free up internal resources * Reduce time to market * Increase process efficiencies * System development is a non-core activity for the organization * Political reasons (e.g. labor disputes) ## Global Outsourcing * **Top Outsourcing Countries**: India, China, Malaysia (A.T. Kearny report 2014). * **Top 10 are in Asia, Latin America, Europe, and Africa** * **Some U.S. firms are switching to nearshoring (same time zone, low labor costs)** ## Information Technology (IT) Services Firms * Help companies develop custom information systems for internal use * Develop, host, and run applications for customers * Provide other services (management, accounting, auditing, financial) ## Packaged Software Producers * Serve many market segments * Provide software ranging from broad-based packages (i.e. general ledger) to niche packages (i.e. day care management) * **Pre-packaged, off-the-shelf software** ## Packaged Software Producers (Cont.) * Software runs on all size computers, from microcomputers to large mainframes. * Prepackaged software is off-the-shelf, turnkey software (i.e. not customizable). * Off-the-shelf software, at best, meets 70% of organizations' needs. ## Enterprise Solutions Software * Enterprise Resource Planning (ERP) systems integrate individual traditional business functions into modules enabling a single seamless transaction to cut across functional boundaries. * **SAP AG is the leading vendor of ERP systems.** ## Cloud Computing * The provision of computing resources, including applications, over the Internet, so customers do not have to invest in the computing infrastructure needed to run and maintain the resources. * Pay-per-use or monthly/yearly licenses. ## Cloud Computing (Cont.) * **Examples:** * Google Apps- for sharing documents, spreadsheets, and presentations * Salesforce.com - online customer relationship management (CRM) software * An example of software as a service (SaaS) * Microsoft Azure platform * Amazon.com cloud infrastructure and services * An example of hardware as a service (HaaS) * **Cloud Computing (Cont.)**: * Heavy growth predicted * **Benefits**: * Frees company of internal IT staff requirement * Faster access to application than via internal development * Lower cost than internal development * **Concerns**: * Security * Reliability * Regulation compliance ## Open-Source Software * Freely available including source code * Developed by a community of interested people * Performs the same functions as commercial software * **Examples**: Linux, mySQL, Firefox * **How to make money?** * Provide maintenance/services * Sell a more featured version of the free software ## In-House Development * If sufficient system development expertise with the chosen platform exists in-house, then some or all of the system can be developed by the organization´s own staff. * In-house development usually leads to more maintenance burden than other approaches. * **Hybrid solutions involving some purchased and some in-house components are common.** ## Selecting Off-the-Shelf Software * **Cost**: Comparing the cost of developing the same system in-house with the cost of purchasing or licensing the software package. * **Functionality**: The tasks that the software can perform and the mandatory, essential, and desired system features. ## Selecting Off-the-Shelf Software (Cont.) * **Vendor support**: Whether and how much support the vendor can provide and at what cost. * **Viability of vendor**: Can vendor continue to adapt/update software to changes in systems software and hardware. ## Selecting Off-the-Shelf Software (Cont.) * **Flexibility**: The ease with which software is customized. * **Documentation**: Understandable and up-to-date user’s manual and technical documentation. ## Selecting Off-the-Shelf Software (Cont.) * **Response time**: How long it takes the software package to respond to the user’s requests in an interactive session. * **Ease of installation**: A measure of the difficulty of loading the software and making it operational. ## Validating Purchased Software Information * Send a request for proposal (RFP) to vendors. * RFP - a document provided to vendors to ask them to propose hardware and system software that will meet the requirements of a new system. * **Use a variety of information sources**: * Collect information from vendor. * Software documentation * Technical marketing literature ## Request For Proposal (RFP) * Sometimes called a Request For Quote (RFQ) * Analyst selects best candidates based on: * Vendor bids * A variety of information sources ## Information Sources For RFP * Vendor's proposal * Running software through a series of tests * Feedback from other users of the vendor´s product * Independent software testing services * Customer surveys * Articles in trade publications are sometimes biased (seeded by manufacturer) ## Reuse * The use of previously written software resources, especially objects and components, in new applications. * Commonly applied to two different development technologies: * Object-oriented development. * Component-based development. ## Reuse (Cont.) * **Object-oriented development**: Object class encapsulates data and behavior of common organizational entities (e.g. employees). * **Component-based development**: Components can be as small as objects or as large as pieces of software that handle single business functions . ## Reuse (Cont.) * **Can be effective** (increased productivity, less defects, reduced rework). * **Technical issues**: Lack of methodology for component library (creating and labeling reusable components). * **Organizational issues**: Lack of commitment, training, and organizational support; hard to measure economic benefits; legal and contractual issues. ## 3 Steps of Software Reuse 1. **Abstraction**: Design of reusable piece of software 2. **Storage** : Making software. assets available for others. 3. **Recontextualization**: Making the software understandable to developers. ## Approaches to Reuse * **Ad-hoc**: Individuals are free to find or develop reusable assets on their own. * **Facilitated**: Developers are encouraged to practice reuse. * **Managed**: The development, sharing, and adoption of reusable. assets is mandated. * **Designed**: Assets mandated for reuse as they are being designed for specific applications. # Chapter 3: Managing The Information Systems Project (cont.) ## Learning Objectives * Explain the process of managing an information systems project. * Describe the skills required to be an effective project manager. * List and describe the skills and activities of a project manager during project initiation, project planning, project execution, and project closedown. * Explain what is meant by critical path scheduling and describe the process of creating Gantt charts and network diagrams. * Explain how commercial project management software packages can be used to assist in representing and managing project schedules. ## Introduction * Project management (PM) may be the most important aspect of systems development. * Effective PM helps to ensure: * The meeting of customer expectations. * The satisfying of budget and time constraints. * The nature of projects has changed from custom development to implementing packaged software and data warehousing. * PM skills are difficult and important to learn. ## Managing the Information Systems Project * **Project**: A planned undertaking of related activities to reach an objective that has a beginning and an end. * **Project management**: A controlled process of initiating, planning, executing, and closing down a project. ## Managing The Information Systems Project (cont.) * **Project manager**: A systems analyst with a diverse set of skills – management, leadership, technical, conflict management, and customer relationship – who is responsible for initiating, planning, executing, and closing down a project. * **Deliverable**: The end product of an SDLC phase ## Deciding on Systems Projects * **System Service Request (SSR)**: A standard form for requesting or proposing systems development work within an organization. * **Feasibility study**: A study that determines whether a requested system makes economic and operational sense for an organization. ## Project Management Activities * **The Art of Project Management**: * Technological Change * Customer and Management Expectations * Documentation and Communication * Systems Development Life Cycle * Time and Resource Constraints * Organizational Change and Complexity * Contractors and Vendors * **Managing People** * Methodologies and Tools * **! A project manager juggles numerous activities** ## Phases of Project Management Process 1. **Phase 1: Initiation** 2. **Phase 2: Planning** 3. **Phase 3: Execution** 4. **Phase 4: Closedown** ## PM Phase 1: Project Initiation * Assess size, scope and complexity, and establish procedures. * **Establish**: * Initiation team * Relationship with customer * Project initiation plan * Management procedures * Project management environment and workbook * **Project charter** ## Project Charter * A short document prepared for the customer describing project deliverables and outlining the work required to complete the project. * **Elements**: * Title and authorization date * Project manager name and contact information * Customer name and contact information * Project start and completion dates * Key stakeholders, roles, responsibilities * Project objectives and description * Key assumptions * Signatures of stakeholders ## PM Phase 2: Project Planning * Define clear, discrete activities and the work needed to complete each activity. Tasks include: 1. Describing Project Scope, Alternatives, and Feasibility 2. Dividing the project into manageable tasks. 3. Estimating resources and creating a resource plan. 4. Developing a preliminary schedule. 5. Developing a communication plan. 6. Determining Project Standards and Procedures. 7. Identifying and Assessing Risk. 8. Creating a preliminary budget. 9. Developing a project scope statement. 10. Setting a baseline project plan. ## Project Scope, Alternatives, and Feasibility * What problem or opportunity does the project address? * What are the quantifiable results to be achieved? * What needs to be done? * How will success be measured? * How will we know when are finished? ## Dividing Project into Manageable Tasks * **Work Breakdown Structure (WBS)**: Division of project into manageable and logically ordered tasks and subtasks. ## Scheduling Diagrams * **Gantt chart**: Horizontal bars represent task durations. * **Network diagram**: Boxes and links represent task dependencies. ## Developing a Communication Plan * Who are stakeholders? * What information does each stakeholder need? * When should information be produced? * What are sources of information? * Who will collect, store and validate info? * Who will organize and document info? * Who is the contact person for each stakeholder? * What is the appropriate/best format for info? * What communication medium should be used? ## Setting a Baseline Project Plan * A Baseline Project Plan provides an estimate of the project´s tasks and resource requirements and is used to guide the next project phase – execution. As new information is acquired during project execution, the baseline plan will continue to be updated. ## PM Phase 3: Project Execution * Plans created in prior phases are put into action. * **Actions**: * Execute baseline project plan. * Monitor progress against baseline plan. * Manage changes in baseline plan. * Maintain project workbook. * Communicate project status. ## PM Phase 4: Project Closedown * Bring the project to an end. * **Actions**: * Close down the project * Conduct post-project reviews. * Close the customer contract. ## Representing and Scheduling Project Plans * Gantt Charts * Network Diagrams * PERT Calculations * **Critical Path Scheduling** * Project Management Software ## Gantt Charts vs. Network Diagrams * **Gantt charts**: * Show task durations. * Show time overlap. * Show slack time in duration. * **Network Diagrams**: * Show task dependencies. * Do not show time overlap, but show parallelism. * Show slack time in boxes. * **Gantt Charts vs. Network Diagrams**: * A (design system) -> B (write programs) -> C (test programs) -> E (install system) * A (design system) -> D (write documentation ) -> E (install system) ## Estimating Task Duration * **PERT**: Program Evaluation Review Technique * **Technique that uses optimistic (o), pessimistic (p), and realistic (r) time estimates to determine expected task duration** * **Formula for Estimated Time**: * ET = ( o + 4r + p ) / 6 ## Critical Path Scheduling * A scheduling technique whose order and duration of a sequence of task activities directly affect the completion. * **Critical path**: The shortest time in which a project can be completed * **Slack time**: The time an activity can be delayed without delaying the project. ## Determining The Critical Path * Calculate the earliest possible completion time for each activity by summing the activity times in the longest path to the activity. This gives total expected project time. * Calculate the latest possible completion time for each activity by subtracting the activity times in the path following the activity from the total expected time. This gives slack time for activities. * **Critical path contains no activities with slack time.** ## Using Project Management Software * Many powerful software tools exist for assisting with project management. * **Example**: Microsoft Project can help with: * Entering project start or end date. * Establishing tasks and task dependencies. * Viewing project information as Gantt or Network diagrams. # Chapter 4: Identifying and Selecting Systems Development Projects ## Learning Objectives * Describe the project identification and selection process. * Describe corporate strategic planning and information systems planning process * Describe the three classes of Internet electronic commerce applications: business-to-consumer, business-to-employee, and business-to-business. ## Identifying and Selecting Systems Development Projects * **Three main steps:** 1. Identifying potential development projects 2. Classifying and ranking IS development projects 3. Selecting IS development projects ## The Process of Identifying and Selecting IS Development Projects * **1. Identifying potential development projects**: Identification from a stakeholder group. * **Each stakeholder group brings their own perspective and motivation to the IS decision** * **Top-down source**: Projects identified by top management or by a diverse steering committee. * **Bottom-up source**: Project initiatives stemming from managers, business units, or the development group. * **The process varies substantially across organizations.** ## The Process of Identifying and Selecting IS Development Projects (Cont.) * **2. Classifying and ranking IS development projects**: Using value chain analysis or other evaluation criteria. * **Value chain analysis**: Analyzing an organization´s activities to determine where value is added to products and/or services and the costs incurred for doing so; usually also includes a comparison with the activities, added value, and costs of other organizations for the purpose of making improvements in the organization’s operations and performance. ## The Process of Identifying and Selecting IS Development Projects (Cont.) * **Project Selection Decision**: Perceived and Real Needs * **List of Potential and Ongoing Projects**: Existing and Available Resources. Current Organizational Environment. Evaluation Criteria. ## Decision Outcome * Accept Project. * Reject Project. * Delay Project * Refocus Project * End-User Development. * Proof of Concept * **Project selection decisions must consider numerous factors and can have numerous outcomes. ** ## The Process of Identifying and Selecting IS Development Projects (Cont.) * **One method for deciding among different projects or alternative designs**: For each requirement or constraint: * Score = weight X rating * Each alternative: sum scores across requirements/constraints * **Alternative with highest score wins** ## Deliverables and Outcomes * **Primary deliverable from the first part of the planning phase is a schedule of specific IS development projects.** * **Outcome of the next part of the planning phase – project initiation and planning – is the assurance that careful consideration was given to project selection and each project can help the organization reach its goals.** ## Deliverables and Outcomes (Cont.) * **Incremental commitment**: A strategy in systems analysis and design in which the project is reviewed after each phase and continuation of the. project is rejustified. ## Corporate and Information Systems Planning * To benefit from a planning-based approach for identifying and selecting projects, an organization must: * Analyze its information needs thoroughly. * Plan its projects carefully. ## Reasons for Importance of Improved Planning * Increasing cost of information systems (40% of organizational expense) * Lack of cross-organizational applications and systems * Systems don't address critical strategic problems * Too much data redundancy, lack of data quality * High system maintenance costs * Long application backlogs ## Corporate Strategic Planning * **Ongoing process that defines mission, objectives, and strategies of an organization** * **Corporate strategy involves**: * Mission statement * Objective statements * Description of competitive strategy * **Step 1**: Current Enterprise * **Step 2**: Future Enterprise * **Step 3**: Strategic Plan * **Corporate strategic planning is a three-step process.** ## Corporate Strategic Planning (Cont.) * **Mission statement**: A statement that makes it clear what business a company is in. ## Pine Valley Furniture Corporate Mission Statement * We are in the business of designing, fabricating, and selling to retail stores high-quality wood furniture for household, office, and institutional use. We value quality in our products and in our relationships with customers and suppliers. We consider our employees our most critical resource * **Mission statement (Pine Valley Furniture)** ## Corporate Strategic Planning (Cont.) * **Objective statement**: A series of statements that express an organization´s qualitative and quantitative goals for reaching a desired future position. * **Sometimes called “critical success factors”** ## Pine Valley Furniture Statement of Objectives 1. PVF will strive to increase market share and profitability (prime objective). 2. PVF will be considered a market leader in customer service. 3. PVF will be innovative in the use of technology to help bring new products to market faster than our competition. 4. PVF will employ the fewest number of the highest-quality people necessary to accomplish our prime objective. 5. PVF will create an environment that values diversity in gender, race, values, and culture among employees, suppliers, and customers. * **Statement of Corporate Objectives (Pine Valley Furniture)** ## Corporate Strategic Planning (Cont.) * **Competitive strategy**: The method by which an organization attempts to achieve its mission and objectives. * **Main types**: * Low-cost producer * Product differentiation. * Product focus or niche. ## Information Systems Planning (ISP) * An orderly means of assessing the information needs of an organization and defining the systems, databases, and technologies that will best meet those needs. * ISP must be done in accordance with the organization’s mission, objectives, and competitive strategy. ## Information Systems Planning (Cont.) * **Top-down planning attempts to gain a broad understanding of information system needs of the entire organization and offers**: * Broader perspective. * Improved integration. * Improved management support. * Better understanding. ## Information Systems Planning (Cont.) * **Bottom-up planning identifies IS development projects based on solving specific operational business problems or taking advantage of specific opportunities.** * **Can be faster and less costly, so may be beneficial in certain circumstances.** ## Information Systems Planning (Cont.) * **FUNCTIONS**: * Business planning. * Product development. * Marketing and sales. * Production operations. * Finance and accounting. * Human resources * **DATA ENTITIES**: * Customer * Product * Vendor * Raw material * Order * Invoice * Equipment * **INFORMATION SYSTEMS**: * Payroll processing. * Accounts payable. * Accounts receivable. * Time card processing. * Inventory management. * **Information systems planning information (Pine Valley Furniture)** ## Information Systems Planning (Cont.) * **Functional Decomposition**: Breaking high-level abstract information into smaller units for more detailed planning. ## Information Systems Planning (Cont.) * IS planning matrices describe relationships between pairs of organizational elements (location, function, business unit, objective, process, data, information system). ## Types of Planning Matrices * Location-to-Function * Location-to-Unit * Unit-to-Function * Function-to-Objective * Function-to-Process * Function-to-Data Entity * Process-to-Data Entity * Process-to-Information System * Data Entity-to-Information System * Information System-to-Objective ## Making Sense of the Matrices * IS planning takes place prior to project identification and selection: * "Behind the scenes" analysis * **Matrices**: As-is (current) and to-be (future, target) * **CASE tools help via**: * Managing information * Matrix construction * Matrix analysis (affinity clustering). ## Affinity Clustering * Arranging planning matrix information so that clusters of information with a predetermined level or type of affinity are placed next to each other on a matrix report. * **Affinity**: The extent to which information holds things in common ## Example: Function - to - Data entity matrix * Functions using similar data entities placed in adjacent rows. * Data entities used in common by processes in adjacent columns. ## Information Systems (IS) Plan * **Information Systems Plan**: * I. Organizational Mission * II. Informational Inventory * III. Mission and Objectives of IS * IV. Constraints * V. Long-Range IS Strategies * VI. Short-Term Plan * VII. Conclusions ## IS Plan Components * **Organizational Mission, Objectives, and Strategy**: Brief description of mission, objectives, and strategy of the organization. * **Information Inventory**: Summary of processes, functions, data entities, and information needs of the enterprise ## IS Plan Components (Cont.) * **Mission and Objectives of IS**: Primary role IS will play in the organization to transform enterprise from current to future state. * **Constraints on IS Development**: Limitations imposed by technology and current levels of financial, technical, and personnel resources. ## IS Plan Components (Cont.) * **Systems Needs and IS Strategy**: Summarize overall information systems needs in the company and set long-term (2-5 year) strategies for filling the needs. * **Short Term Plan**: Detailed inventory of present projects and systems and. detailed plan for the current year. ## IS Plan Components (Cont.) * **Conclusions**: Unknown but likely events that can affect the plan, presently known business change elements and their impact on the plan. ## Electronic Commerce Applications and Internet Basics (Cont.) * **Business-to-consumer (B2C)**: Electronic commerce between businesses and consumers. * **Business-to-business (B2B)**: Electronic commerce between business partners, such as suppliers and intermediaries. * **Business-to-employee (B2E)**: Electronic commerce between businesses and their employees. ## Electronic Commerce Applications and Internet Basics * **Internet**: A large worldwide network of networks that use a common protocol to communicate with each other. * **Electronic Commerce (EC)**: Internet-based communication to support day-to-day business activities. * **Electronic data interchange (EDI)**: The use of telecommunications technologies to directly transfer business. documents between organizations.