Chapter 1
The Systems Development Environment
Modern Systems Analysis and Design
Third Edition
دمتعملا جهنملا
ﺔﻣﺪﻘﻣ 1: The Systems Development Environment ﺔﺌﯿﺒﻟا
ﺔﻣﺪﻘﻣ 2: Succeeding as a Systems Analyst ﻢﻈ ﻨﻟا ﻞ ﻠﺤﻣ
ﺔﻣﺪﻘﻣ 3: Managing the Information Systems Project ﻊ ﯾر ﺎﺸﻤ ﻟاةر ادإ
ﺔﻣﺪﻘﻣ 4: Automated Tools for Systems Development ماﺪﺨ ﺘﺳ إ CASE
ر ﺎﯿﺘﺧ ا 5: Identifying and Selecting Systems Development Projects ر ﺎﯿﺘﺧﻻ او ﺪﯾﺪﺤ ﺘﻟا
ءﺪﺒﻟا 6: Initiating and Planning Systems Development Projects ﻂ ﯿﻄﺨ ﺘﻟاو ءﺪﺒﻟا
ﻞ ﯿﻠﺤ ﺗ 7: Determining System Requirements مﺎﻈ ﻨﻟا ت ﺎﺒﻠﻄ ﺘﻣ
ﻞ ﯿﻠﺤ ﺗ 8: Structuring System Requirements: Process Modelingت اء اﺮﺟﻹ ا
ﻞ ﯿﻠﺤ ﺗ 9: Structuring System Requirements: Logic Modeling ﻲ ﻘﻄ ﻨﻤ ﻟا ﻂﻄﺨﻤ ﻟا
ﻞ ﯿﻠﺤ ﺗ 10: Structuring System Requirements: Conceptual Data Modelingﻲ ﻟوﻷ ا ﻢﮭﻔﻟا
ﻞ ﯿﻠﺤ ﺗ 11: Selecting the Best Alternative Design Strategy ﺔﻘﯾﺮﻄ ﻟار ﺎﯿﺘﺧ ا
دمتعملا جهنملا –-
ﻞ ﯿﻠﺤ ﺗ 11: Selecting the Best Alternative Design Strategy ﺔﻘﯾﺮﻄ ﻟا ر ﺎﯿﺘﺧ ا
ﻢﯿﻤﺼ ﺗ 12: Designing Databases ت ﺎﻧﺎﯿﺒﻟا ةﺪﻋ ﺎﻗ ﻢﯿﻤﺼ ﺗ
ﻢﯿﻤﺼ ﺗ 13: Designing Forms and Reports ج ذﺎﻤﻨﻟاو ﺮ ﯾر ﺎﻘﺘﻟا ﻢﯿﻤﺼ ﺗ
ﻢﯿﻤﺼ ﺗ 14: Designing Interfaces and Dialogues ت ار اﻮﺤ ﻟاو ﺔﮭﺟ اﻮ ﻟا ﻢﯿﻤﺼ ﺗ
ﻢﯿﻤﺼ ﺗ 15: Finalizing Design Specifications ﻢﯿﻤﺼ ﺘﻟا ت ﺎﻔﺻ اﻮﻣ ءﺎﮭﻧإ
ﻢﯿﻤﺼ ﺗ 16: Designing Distributed and Internet Systems ﺖ ﻧﺮ ﺘﻧﻹ او ﺮﺸ ﻨﻠﻟ ﻢﯿﻤﺼ ﺘﻟا
ﺬﯿﻔﻨﺗ 17: System Implementation مﺎﻈ ﻨﻟا ﺬﯿﻔﻨﺗو ﻖ ﯿﺒﻄ ﺗ
ﺔﻧﺎﯿﺻ 18: Maintaining Information Systems مﺎﻈ ﻨﻟا ﺔﻧﺎﯿﺻ
ىﺮﺧ أ 19: Rapid Application Development ت ﺎﻘﯿﺒﻄ ﺘﻠﻟ ﻊ ﯾﺮﺴ ﻟا ﺮ ﯾﻮﻄ ﺘﻟا
ىﺮﺧ أ
20: Object-Oriented Analysis and Design ت ﺎﻨﺋﺎﻜﻟا ﺔﯿﺠﮭﻨﻤﺑ ﻢﯿﻤﺼ ﺘﻟاو ﻞ ﯿﻠﺤ ﺘﻟا
Introduction
• Information Systems Analysis and Design
– Complex process whereby computer-based information systems are developed and maintained
– Main goal is to improve employee efficiency by applying software solutions to key business tasks
– A structured approach must be used in order to ensure success
• Application Software
– Result of systems analysis and design
– Designed to support specific organizational functions or processes
• Systems Analyst performs analysis and design based upon:
– Understanding of organization’s objectives, structure and processes
Software Engineering Process
• A process used to create an information system
• Consists of:
– Methodologies
• A sequence of step-by-step approaches that help develop the information system
– Techniques
• Processes that the analyst follows to ensure thorough, complete and comprehensive analysis and design
– Tools
• Computer programs that aid in applying techniques
Data and Processes
• Three key components of an information system
– Data
– Data Flows
– Processing Logic
• Data vs. Information – Data
• Raw facts about people, objects, and events in an organization such as customer’s account number
– Information
• Data that have been processed and presented in a form that humans can understand
Data and Processes
• Data
– Understanding the source and kind of data a system uses is key to good system design
– Various techniques are used to describe data and the relationship among data
• Data Flow
– Groups of data that move and flow through the system from one place to another
– Include description of sources and destination for each data flow
• Processing Logic
– Describe steps in the transformation of data and events that trigger these steps
Approaches to Systems Development
• Process-Oriented Approach
– Focus is on how and when data are moved and transformation of data in an information system
– Involves creating graphical representations such as data flow diagrams and charts
– Data are tracked from sources, through intermediate steps and to final destinations
– Natural structure of data is not specified
– Disadvantage: existence of several data files each locked within different applications.
– To change a single data element all files has to be updated
Approaches to Systems Development
• Data-Oriented Approach
– Depicts ideal organization of data, independent of where and how data are used
– Data model describes kinds of data and business relationships among the data
– Business rules depict how organization captures and
processes the data
Databases and Application Independence
• Database
– Shared collection of logically related data
– Organized to facilitate capture, storage and retrieval by multiple users in an organization
– Centrally managed
– Designed around subjects
• Customers
• Suppliers
• Application Independence
– Separation of data and definition of data from applications
that use these data
Organizational Responsibilities in Systems Development
• Systems development is a team effort
• Systems Analysts work in a team – Project Based
– Includes
• IS Manager
• Programmers
• Users
• Other specialists
– Characteristics of Successful Teams
• Diversity of backgrounds
• Tolerance of diversity
• Clear and complete communication
• Trust
• Mutual Respect
• Reward structure that promotes shared responsibility
Organizational Responsibilities in Systems Development
• IS Manager
– May have a direct role in systems development if the organization is small
– Typically involved in allocating resources to and overseeing system development projects.
– May prescribe what methodologies, techniques and tools to be used
• Systems Analyst
– Key individuals in the systems development process
Organizational Responsibilities in Systems Development
• Skills of a Successful Systems Analyst – Analytical
• Understanding of organizations
• Problem solving skills
• System thinking
– Ability to see organizations and information systems as systems
– Technical
• Understanding of potential and limitations of technology
– Management
• Ability to manage projects, resources, risk and change
– Interpersonal
• Effective written and oral communication skills
Organizational Responsibilities in Systems Development
• Programmers
– Convert specifications into instructions that the computer understands
– Write program documentation and programs for testing systems
• Business Managers
– Have power to fund projects and allocate resources
– Set general requirements and constraints for projects
Organizational Responsibilities in Systems Development
• Other IS Managers / Technicians – Database Administrator
• Involved in design, development and maintenance of databases
– Network and telecommunications experts
• Develop systems involving data and/or voice communications
– Human Factors Specialists
• Involved in training users and writing documentation
– Internal Auditors
• Ensure that required controls are built into the system
Types of Information Systems and Systems Development
• Transaction Processing Systems (TPS)
– Automate handling of data about business activities (transactions)
• Management Information Systems (MIS)
– Converts raw data from transaction processing system into meaningful form
• Decision Support Systems (DSS)
– Composed of database designed to help decision makers – Provides interactive environment for decision makers to
manipulate data and models
• Expert Systems (ES)
– Codifies and manipulate knowledge instead of information
Systems Development Life Cycle
• System Development Methodology
– Standard process followed in an organization – Consists of:
– Analysis – Design
– Implementation – Maintenance
of information systems
Systems Development Life Cycle (SDLC)
• SDLC – traditional methodology used to develop, maintain, and replace information systems
• Consists of six phases:
– Project Identification and Selection – Project Initiation and Planning
– Analysis – Design
– Implementation
– Maintenance
Systems Development Life Cycle
– Phases are not necessarily sequential
– Each phase has a specific outcome and deliverable
– It is possible to complete some activities in one phase in parallel with some activities of another phase
– Sometimes life cycle is iterative – phases are repeated as required until acceptable system is found
– Sometimes life cycle is spiral – constantly cycle through the phases at different levels
– Individual companies use customized life cycles
spiral life cycle
Phases of the Systems Development Life Cycle
• Project Identification and Selection
– Two Main Activities
• Identify and analyze organizations information system needs
• Prioritization and translation of need into a development schedule
– Helps organization to determine whether or not resources should be dedicated to a project.
• Project Initiation and Planning
– Two Activities
• Formal preliminary investigation of the problem at hand
• Presentation of reasons why system should or should not be
developed by the organization
Systems Development Life Cycle
• Analysis
– Study of current procedures and information systems – Sub phases
• Determine requirements – Study current system
– Structure requirements and eliminate redundancies
• Generate alternative designs
• Compare alternatives
• Recommend best alternative
Systems Development Life Cycle
• Design – convert the description into logical and then physical system specifications
– Logical Design
• Concentrates on business aspects of the system
• Independent of any specific hardware or software platform – Physical Design
• Logical specifications are transformed into technical
specifications
Systems Development Life Cycle
• Implementation
– Information system is
• Coded – programmers write programs
• Tested – programmers and analysts test individual programs and entire system to find errors and correct
• Installed – application software is installed on hardware
• Supported – documentation and training programs are provided
• Maintenance
– Information system is systematically repaired and improved depending on organization’s needs over time
– Programmers modify the system to reflect changing business
conditions
Approaches to Development
• Prototyping
– Designing and Building a scaled-down working version of the system with any computer language (4GLs) or development tools (CASE)
– Advantages:
• Users are involved in design
• Captures requirements in concrete form