Management Information Systems: Solving Business Problems with Information Technology Part Four: Organizing Businesses and Systems Chapter Twelve: Systems Development Prof. Gerald V. Post Prof. David L. Anderson Transaction Processing System Input Process Systems Development Communication Information Output Systems Development Life Cycle Consists Of Six Phases Systems Planning Systems Analysis General Systems Design Systems Evaluation and Selection Detailed Systems Design Systems Implementation 3 Categories of Systems Design Global-Based Systems Group-Based Systems Local-Based Systems Global-Based Systems Large, Complex Information Systems that Process High Transaction Volumes Complete Overhaul or Replacement of Systems Design Components – Old output is changed from monthly tabular reports to online screen displays – New processes are developed – Input captured by scanning devices – Old hierarchical database is converted to new relational database with standard query language – Controls are installed – New technology platform composed of enterprise-wide network topology supports systems design components Group-Based Systems Serve a Single Department or other specific group of users – smaller than, connected to global-based system Local-Based Systems Concentration on Local Environment Rapid Application Development Joint Application Development (JAD) Specialists with Advanced Tools (SWAT) Computer-Aided Systems and Software Engineering (CASE Tools) Prototyping Design Approaches Process-Oriented Approach Data-Oriented Approach Object-Oriented Approach Design Principles Modularity – Maintainability – Reusability Libraries of object class catalogs – Reliability – Extendibility – Standardized – Independence – Variety in Use – Top-Down Design Start with Abstract Description of New System Refine View in Successive Steps – Bottom-Up Design Start with Objects and Assemble them to completed product Process-Oriented Approach Based upon Stable Set of Input, Process, and Output Transactions-Based Applications – – – – Accounts Payable Accounts Receivable Payroll Inventory Control Data-Oriented Approach Undefined Systems Processes Define All Needed Data Attributes Systems Analysts must determine, with users, how the system will be used Data-Oriented Approach: Steps Discuss potential decisions that will be made from system with users of system – Model the purchasing decision support system through use of flexible modeling tool – – Product Quality Past Performance Product Availability Divide Each Criterion into Attributes Develop Data Dictionary Size, Type, Description, Limits and Exceptions, Ranges, Security Level, Access Privileges Changes, Description, Order Object-Oriented Approach Catalog objects – Found by keywords – In a Library or Database Objects – Exhibit certain behaviors – Attributes and operations are encapsulated or pulled together – Operations describes how attributes are processed – Behave in certain ways in response to messages Object-Oriented Approach Classes – Set of Objects that share common structure and behavior Inheritance – Objects receive attributes and operations from other objects – Add more attributes and operations of their own Polymorphism – Ability of object to respond to and implement each object Object-Oriented Steps Identify Object Class Identify Relationships Identify Attributes Determine Inheritance Relationships Build Class Hierarchy – – – Order Transaction Process Tools Inventory Joint Application Development Conceptual Systems Design Model – – – – – Data Flow Diagram Entity Relationship Diagram Decision Table Screen Prototype Decision Tree SDLC Strengths Provide Control over Development Process Formality SDLC Weaknesses Increased Cost of Development Lengthened Development Time Difficult when Project is Hard to Define End-User Development Users Develop the Prototypes Fourth-Generation Languages CASE Tools Steps Toward Integration Windowing Operating System – – – OS/2 Presentation Manager Windows X-Windows (Sun) Transaction Processing Systems – – – – Payroll Services Sales Order Processing Systems Process Control Systems Corporate Accounting Systems Steps Toward Integration Multi-Tasking – – – – Allow Users to run different programs at the same time Windows OS/2 (Presentation Manager) XWindows Networks – Enable Dynamic Integration from Several Sources Integration Vertical – – Different Levels of Production ex: Oil Company Horizontal – – Retail Stores ex:Wal-Mart Object-Orientation Different than Transmitting Raw Bits of Data – Hardware Connections – Access Controls – Simple Data Formats Software Agents – object-oriented programs written to perform specific tasks in response to user requests – agents know how to exchange object attributes – agents have the ability to activate object functions in other agents Multimedia – Integration of Text, Video, Sound, Pictures, Animation Integration/Links Static – Hard-Coded – Import Dynamic – Linked – Dynamic Data Exchange (DDE) – Hot-Linked – Object-Linking and Embedding (OLE) Original Software Package Automatically started when chosen Systems Project Proposals Feasibility Factors – Technical – Economic – Legal – Operational – Schedule Strategic Factors – Productivity – Differentiation – Management Systems Plan Business Plan – Document Company’s Goals and Objectives – Align Systems Project with Company’s Business Plan Enterprise-Wide Model – Entity Relationship Diagram showing relationship between organization’s entities and their relationship to supporting strategies of Business Plan – View of Future Organization of Enterprise under a Business Plan Two Levels of Planning Systems Planning – – – Gives Managers, Users, and Information Systems Personnel Projects Establishes what should be done Sets a budget for the total cost of these projects Systems Project Planning – Setting a plan for the development of each specific systems project Systems Professional Skills Systems Planning – Form project team after proposed systems project is cleared for development Systems Analysis – Business Systems Analysts knowledgeable in business General Systems Design – Business Systems Analysts Systems Evaluation and Selection – Business Systems Analysts Detailed Systems Design – Wide Range of Systems and Technical Designers Systems Implementation – Systems analysts, programmers, and special technicians Effective Leadership Style Autocratic Style – Crisis-Style Management – Used to Correct Major Problem, such as Schedule Slippage Democratic Style – Team-oriented Leadership – Gives each team member the freedom to achieve goals which he/she helped set Laissez-Faire Style – Highly-motivated, Highly-Skilled Team Members – People who work best alone Project Management Skills Planning – States what should be done – Estimates how long it will take – Estimates what it will cost Leading – Adapts to dynamics of enterprise and deals with setbacks – Guides and induces people to perform at maximum abilities Controlling – Monitors Progress Reports and Documented Deliverables – Compares Plans with Actuals Organizing – Staffs a Systems Project Team – Brings together users, managers, and team members CASE Computer-Aided Systems and Software Engineering Increase Productivity of Systems Professionals Improve the Quality of Systems Produced Improve Software Maintenance Issue Includes: – workstations – central repository – numerous modeling tools – project management – Systems Development Life Cycle Support – Prototyping Applications – Software Design Features Central Repository Models Derived from Modeling Tools Project Management Elements Documented Deliverables Screen Prototypes and Report Designs Software Code from Automatic Code Generator Module and Object Libraries of Reusable Code Reverse Engineering, Reengineering, and Restructuring Features Software Maintenance Reverse Engineering – Extract original design from spaghetti-like, undocumented code to make maintenance change request – Abstract meaningful design specifications that can be used by maintenance programmers to perform maintenance tasks Reengineering – Examination and changing of a system to reconstitute it in form and functionality – Reimplementation Restructuring – Restructures code into standard control constructs sequence, selection, repetition Work Group Technologies Suite of Products GroupWare Examples of Suite of Products Microsoft Corporation – Word – Excel – PowerPoint Lotus Development Corporation – AmiPro – Lotus 1-2-3 – Freelance Novell/Borland – WordPerfect – Borland – dBaseIV Advantages of Suite of Products Integrated Document Economies of Scale Consolidated Training Shared Files Across Group Disadvantages of Suite of Products Choice Based upon Group Rather than Advantages of Individual Product “Locked In” to Product Company Difficulty in Matching Client Requirements Today’s Organization Enterprise-Wide Development Object-Oriented Definition Implementation of Suite Approach Unsuccessful Systems Systems were developed which did not support business strategies and objectives. Poor systems planning and inadequate project management. Failure to define or understand user requirements. Negligence in estimating costs and benefits of the systems project. Creation of a myriad of design defects and errors. Acquisition of computers and software that no one needs or knows how to use. Installation of incompatible or inadequate technology. Negligence in implementing adequate controls. Development of unstructured, unmaintainable software. Inadequate implementation tasks. PDM Productivity Differentiation Management Project Management Gantt Chart Pert Chart Gantt Chart Compares Planned Performance against actual performance to determine whether the project is ahead of, behind, or on schedule Schedule a complete systems project by phases PERT Chart Estimate, Schedule, and Control a network of interdependent tasks Shown by arrows, nodes, or circles Program, Evaluation and Renew Technique Determine minimum time needed to complete a project, phase, or task Critical Path – Minimum time needed to complete a project or phase – Total of the most time-consuming chain of events Four Steps – Identify Tasks – Determine Proper Sequence of Tasks – Estimate the Time Required to Perform each Task – Prepare Time-Scaled Chart of Tasks and Events to Determine the Critical Path