Systems Analysis Book Outline/Checklist

Ch 1 The Modern Analyst

System Analyst - facilitates the study of the problems and needs of a business to determine how the business system and information technology can best solve the problems and accomplish improvements for the business. The product of this activity may be improved business processes, improved information systems, or new or improved computer applications - frequently all three. When information technology is used, the analyst is responsible fro the capture of data from its business source, the flow of data into the computer, and the flow of useful and timely information back to the business and itís people.

Systems development life cycle is a systematic and orderly approach to solving system problems. Usually incorporates following steps:

  1. Planning -identify scope and boundary of problem, and plan the development strategy and goals.
  2. Analysis - study & analyze the e problems, causes, and effects. Then identify & analyze reqmts. that must be fulfilled by any successful solution
  3. Design -
  4. Implementation
  5. Support

 

Ch 2 Information System Building Blocks

Types of systems:

Transaction processing systems

Management Information System - provides for management-oriented reporting

Decision Support System

Expert Systems

Office Information Systems

Personal and Work Group Information Systems

Information System Focuses: matrix of focuses (Data, Process, Interface, Geography) and people (System Owners, System Users, System Designers, System Builders)

Detailed Discussion of each of these pp. 50 - 66

 

Ch 3 Information System Development

PIECES Problem-solving framework (p. 81)

  • Performance
  • Information
  • Economics
  • Control
  • Efficiency
  • Service

Systems Development Phases (FAST Methodology) (p. 82-83)

  • Survey Phase - also sometimes called a preliminary investigation or feasibility study. It amounts to a Ď"quick-and-dirty" (usually two to three days) preliminary investigation of the problems, opportunities, Indoor directives that triggered project.
  • Study Phase -study and analyze the existing system, provides more thorough understanding of the problems, opportunities, and/or directives that triggered the project.
  • Definition Phase - define and prioritize the business requirements. It is sometimes called a requirements analysis phase or simply, the definition phase. Essentially, the purpose of requirements analysis is to identify the DATA, PROCESS, INTERFACE, and GEOGRAPHY requirements for the users of a new system. Most importantly, the purpose is to specify these requirements without expressing computer alternatives and technology details
  • Configuration Phase - identify candidate solutions, analyze those candidate solutions, and recommend a target system that will be designed and implemented.
  • Procurement Phase - research the information technology marketplace, solicit vendor proposals, and recommend to management the proposal that best fulfills the business and technology requirements.
  • Design Phase -transform the business requirements from the definition phase into a set of technical design blueprints for construction.
  • Construction Phase -: (1) to build and test a functional system that fulfills business and design requirements, and (2) to implement the interfaces between the new system and existing production systems.
  • Delivery Phase - install, deploy, and place the new system into operation or production.

Detailed discussion of Phases - (Purpose, Participants & roles, Prerequisites, Activities, Deliverables, Prerequisite & Feasibility Checkpoints)

  • Survey Phase (p. 84)
  • Study Phase (p. 87)
  • Definition Phase (p. 88)
  • Configuration Phase (p. 91)
  • Procurement Phase (p. 93)
  • Design Phase (p. 94)
  • Construction Phase (p. 96)
  • Delivery Phase (p. 98)

Discussion of CASE Tools

 

Ch 4 Systems Analysis

Systems analysis is the dissection of a system into its component pieces to study how those component pieces interact and work.

More Discussion of the Systems Analysis Phases & associated activities:

Survey Phase (128) (Dia 129)

Survey Problems, Opportunities, and Directives (129)
Negotiate Project Scope (p.132)
Plan Project (p. 134)
Present the Project (p. 135)

Study Phase (p. 137) (Dia 139)

Model the Current System (p. 139)
Analyze Business Processes (p. 142)
Analyze Problems and Opportunities (p. 143)
Establish System Improvement Objectives and Constraints (145)
Modify Project Scope and Plan (p. 147)
Present Findings & Recommendations (P. 149)

Definition Phase (p. 151) (Dia 153)

Outline Business Requirements (p. 151)

Model Business System Requirements (p. 154)

Build Discovery Prototypes OPT (p. 157)

Prioritize Business Requirements (p. 159)

Modify the Project Plan & Scope (p. 161)

 

Ch 5 Data Modeling

Logical Model p. 172 - show what a system is or does. They are implementation independent. Popular synonyms include essential Models conceptual model, and business model.

Physical Models p. 173 - show not only what a system is or does, but also bow the system is physically and technically implemented. Synonyms include implementation model and technical model.

Data Modeling is a technique for organizing and documenting a systemís DATA. Data modeling is sometimes called database modeling because a data model is usually implemented as a database. It is sometimes called information modeling.

Entity Relationship diagram p. 175 There are several notations for data modeling. The actual model is frequently called an entity relationship diagram (ERD) Because it depicts data in terms of the entities and relationships described by the data We have adopted the Martin (information engineering notation

Entity p. 175 - An entity is something about which we want to store data. Synonyms include enmity ~Ai)e and entity class. An entity is a class of persons, places, objects, events, or concepts about which we need to capture and store data. An entity instance is a single occurrence of an entire.

Attribute - An attribute is a descriptive property or characteristic of an entity. Synonyms include element, property, and field. rye values for each attribute are defined in terms of three properties: data type, domain, and default.

Compound Attribute - is one that actual1y consists of more primitive attributes. Synonyms in different data modeling languages are numerous: concatenated attribute, composite attribute, and data structure.

The data type for an attribute defines what class of data can be stored in

that attribute,

Domains - The domain of an attribute defines what values an attribute can legitimately take on. The default value for an attribute is the value that will be recorded if not specified by the user.

Key - is an attribute, or a group of attributes, that assumes a unique value for each entity instance. It is sometimes called an identifier.

Concatenated Key - A group of attributes that uniquely identifies an instance of an entity is called a concatenated key. Synonyms include composite key and compound key.

Candidate Key - 179 - is a "candidate to become the primary identifier" of instances of an entity.

Primary Key - is the candidate key that will most commonly be used to uniquely identify a single entity instance.

Alternate Key - Any candidate key that is not selected to become the primary key is called an alternate key.

Subsetting criteria - is an attribute (or concatenated attribute) whose finite values divide all entity instances into useful subsets. Some methods call this an inversion entity.

Relationship p. 179 - is a natural business association that exists between one or more entities. The relationship may represent an event that links the entities or merely a logical affinity that exists between the entities.

Cardinality Notation Diagram Fig 5.3 p.180

Cardinality - defines the minimum and maximum number of occurrences of one entity for a single occurrence ofí the related entity. Because all relation- ships are bi-directional, cardinality must be defined in both directions for every relationship.

Degree - The degree of a relationship is the number of entities that participate in die relationship.

Recursive relationship - Relationships may also exist between different instances of the same entity. We call this a recursive relationship (sometimes called a unary relationship; degree =1)

Associative entity - is n entity that inherits its primary Key from more than one other entity (parents). Each part of that concatenated key points to one and only one instance of each of the connecting entities.

Foreign Keys - is a primary key of one entity that is contributed to (duplicated in) another entity to identify instances of a relationship. A foreign key (always in a child entity) always matches the primary key (in a parent entity).

Nonspecific relationship or many-to-many relationship - is one in which many instances of one entity are associated with many instances of another entity. Such relationships are suitable only for preliminary data models and should be resolved as quickly as possible. All nonspecific relationships can be resolved into a pair of one-to-many relationships.

Generalization p.183 - is a technique wherein the attributes that are common to several types of an entity are grouped into their own entity, called a super-type. The entity supertype will have one or more one-to-one relationships to entity sub-types.

More =>

The Process of Logical Data Modeling

Strategic Data Modeling

Data Modeling during Systems Analysis

Looking Ahead to Systems Configuration and Design

Fact-Finding and Information Gathering for Data Modeling

Computer-Aided Systems Engineering (CASE) for Data Modeling

How to Construct data Models

Entity Discovery - determine the entities

Context Data Model - construct using verb phrases

Key-Based Data Model - determine keys

Generalized Hierarchies -business hierarchies

Fully attributed Data Model - all attributes, named carefully

Fully described Model - add domains (acceptable values)

The Next Generation

 

Ch 6 Process Modeling

Steps in Process Modeling (P.237)

  1. Context Diagram - shows only systemís interfaces with its environment (p. 239)
  2. Functional Decomposition Diagram - partition system into logical subsystems/functions
  3. Event-Response List - (p. 243)
  4. Event Handler for each event (added to the Decomposition diagram) (p. 244)
  5. Event diagram (P.245) context diagram for a single event
  6. System Diagram (p. 247)
  7. Primitive diagram for each event process (p.250)

 

Ch 7 Network Modeling

No generally accepted network modeling standards

Location Decomposition diagram

Synchronization of System Models:

  • Data & Process Model Synchronization (Create, Read, Update, Delete)
    • Data to Process CDUD Matrix (P. 273)
  • Data & Network Model Synchronization
    • Data to location CRUD Matrix Ď
  • Process & Interface Model Synchronization
  • Process & Network Model Synchronization
    • Process to location association matrix

 

Ch 8 Object Modeling

Object Oriented Analysis (OOA) - used to 1) study existing objects to see if they can be reused or adapted for new uses and 2) define new or modified objects that will be combined with existing objects into a useful business computing application.

Object - something that is or is capable of being seen, touched, or otherwise sensed, and about which users store data and associate behavior.

Attributes are the data that represent characteristics of interest about an object.

Behavior refers to those things that the object can do and that correspond to functions that act on the objectís data (or attributes). In object-oriented circles, an objectís behavior is commonly referred to as a method or service.

Encapsulation is the packaging of several items together into one unit

Class is a set of objects that share common attributes and behavior. A class is sometimes referred to as an object class.

Inheritance means that methods and/or attributes defined in an object class can be inherited or reused by another object class.

Generalization/specialization is a technique wherein the attributes and behaviors that are common to several types of object classes are grouped into their own class, called a super type. The attributes and methods of the super type object class are then inherited by those object classes.

A class subtype is an object class whose instances inherit some common attributes from a class super type and then add other attributes that are unique to an instance of the subtype.

Object/class relationship is a natural business association that exists between one or more objects/classes.

Messages and Message sending - a message is passed when one object invokes one or more of another objectís methods (behaviors) to request information or some action.

Multiplicity defines the minimum and maximum number of occurrences of one object/class for a single occurrence of the related object/class.

Process of Object Modeling

Two general activities of Object Modeling

Finding and identifying the business objects

Organizing the objects and identifying their relationships

Use case modeling is the process of identifying and modeling business events, which initiated them, and how the system responds to them.

Use Case is a behaviorally related sequence of steps (a scenario), both automated and manual, for the purpose of completing a single business task.

An actor represents anything that needs to interact with the system to exchange information. An actor is a user or a role that could be in an external system or person.

Use Cases benefits:

  • Basis to help identify objects and their high-level relationships and responsibilities
  • A view of system behavior from an external personís viewpoint
  • An effective tool for validating requirements
  • An effective communication tool
  • As a basis for a test plan
  • As a basis for a userís manual

Steps:

  1. Identifying Actors and Use Cases - analyze the context model diagram
  2. Constructing the Use Case Model - Use Case Model Diagram
  3. Documenting the Use Case Course of Events
  4. Identifying Use Case Dependencies
  5. Documenting the Use Case Alternate Course of Events
  6. Finding the Potential Objects
  7. Selecting the Proposed Objects

Organizing the Objects and Identifying Their Relationships

An Object Association Model is used to graphically depict the objects and their relationships.

  1. Identifying Associations and Multiplicity
  2. Identifying Generalization/Specialization Relationships
  3. Identifying Aggregation Relationships
  4. Preparing the Object Association Model

 

Ch 9 Systems Design & construction - NR

Systems design is the evaluation of alternative solutions and the specification of a detailed computer-based solution. It is also called physical Design.

There are many strategies or techniques for performing systems design. They include modern structured analysis, information engineering, prototyping, JAD, RAD. and object-oriented design.

Modern structured Design is a process-oriented technique for hre~Ling up a large program into a hierarchy of modules that result in a computer pro- gram that is easier to implement and maintain (change). Synonyms (although technically inaccurate) are top-down program design and structured program m I)1,~.

Configuration Phase (319) (Dia 320)

Define Candidate Solutions (319)

Analyze Feasibility of Alternative Solutions (321)

Recommend a System Solution (324)

Procurement Phase (326) (Dia 328)

Research Technical Criteria and Options (324)

Solicit Proposals (or Quotes) from Vendors (329)

Validate Vendor Claims and Performance (330)

Evaluate and Rank Vendor Proposals (332)

Award Contract and Debrief Vendors (333)

Establish Integration Requirements (334)

Design and Integration Phase (335) (Dia 337)

Analyze and Distribute Data (336)

Analyze and Distribute Processes (339)

Design Databases (340)

Design Computer Outputs and Inputs (341)

Design On-Line User Interface (342)

Present and review design (343)

 

Ch 10 - Application Architecture and Process Design

Application architecture defines the technologies to be used by (and to build) one, more, or all information systems in terms of its data, process, interface, and network components. It serves as a framework for general design.

Client/server computing - systemís database, software, and interfaces are distributed across a network of client and servers that communicate and cooperate to achieve system objectives.

Centralized computing - multi-user computer hosts all above. User interacts with a terminal.

Distributed presentation

Distributed Data - two-tiered client/server - data on server and business logic and UI on the clients.

Distributed Data and Logic - Three tiered/n-tiered client/server computing - distributes databases and business logic to separate servers.

Internet and Intranets

Well-designed network provides connectivity and interoperability

Connectivity - how computers are connected to talk to one another

Interoperability - ideal state in which connected computers cooperate with one another in a manner that is transparent to their users.

Network topology describes how a network provides connectivity between the computers on that network. Types: ring, star, hierarchical (multiple star)

Data Architectures for distributed relational databases

Distributed relational database distributes or duplicates tables to multiple database servers

Data distribution partitions data to one or more database servers.

Data replication duplicates data on one or more database servers

Interface Architectures - Inputs, Outputs, and Middleware

Types of input:

Batch I/O - scheduled basis

On-line processing, provide for a conversational dialog between the user and computer

Remote Batch, - combines the best aspects of batch and on-line I/O. Distributed on-line computers handle data input and editing. Edited transactions are collected into a batch file for later transmission to the host that process the file a batch.

Keyless OCR &OMR (optical mark reading) Also auto-identification (Bar coding)

Pen Input

GUI

Electronic Messaging and workgroup technology

Electronic data interchange - electronic flow of business transactions btw customers and suppliers

Imaging and Document Interchange

Middleware -utility software that interfaces systems built with incompatible technologies.

Systems Integration - is the process of making heterogeneous information systems (and computer systems) interoperate

Process Architecture - Software Development Environment & System Management

Software Development environment is a language and tool kit for constructing information systems applications. Different SDEs for: Centralized Computing and distributed processing, 2-Tier Client/server, Multiple tier Client/server, Internet and Intranet Client/Server

Application Architecture Strategies and Design Implications

Enterprise Application Architecture Strategy - The IT architecture defines

  • Approved network, data, interface, and processing technologies
  • Strategy for integrating legacy systems and technologies into the application architecture
  • Ongoing process for reviewing the application architecture for currency and appropriateness
  • Ongoing process for researching emerging technologies and making recommendations for their inclusion in the application architecture

Tactical Application Architecture Strategy - check for feasibility: technical, operational, economic

Build vs. Buy - most companies purchase those applications that do not significantly add competitive advantage to the business. Purchase of application changes the methodology of systems analysis. P.372.

Modeling Application Architecture and Information Systems Processes

Physical Data Flow Diagrams - model the technical and human design decision. Physical data flow represents

planned implementation of an input to or output form a physical process. Or

Database actions

Import of data from or the export to another information system across a network

Data flows between two modules or subroutines within the same program

System flowcharts are diagrams that show the flow of control through a system while specifying all programs, inputs, outputs, and file/database accesses and retrievals. Still used although on the decline.

Designing the application Architecture and the Information System Processes

Drawing Physical DFD

Prerequisites

Network Topology DFD

Data Distribution and Technology Assignments

Process Distribution and Technology Assignments

Person/Machine Boundaries

 

 

Ch 11 - Database Design

Fields p. 398

Primary Keys

Secondary Keys

Foreign Keys

Descriptive Fields

Record

Data Architecture p. 401

Data Analysis (p. 408) is process that prepares a data model for implementation as a simple, non-redundant, flexible, and adaptable database. The specific technique is called normalization.

Normalization is a technique that organizes data attributes such that they are grouped to form stable, flexible, and adaptive entities.

First Normal Form (1NF) - if there are no attributes that can have more than one value for a single instance of the entity (frequently called repeating groups). Any attributes that can have multiple values actually describe a separate entity, possibly an entity (and relationship) that we havenít yet included in our data model.

Second Normal Form (2NF) - if it is already in 1NF and if the values of all non-primary key attributes are dependent on the full primary key - not just part of it. Any non-key attributes that are dependent on only part of the primary key should be moved to any entity where that partial key becomes the full key. Again, this may require creating a new entity and relationship to the model.

Third Normal Form (3NF) - if it is already in 2NF and if the values of its non-primary key attributes are not dependent on any other non-primary key attributes. Any non-key attributes that are dependent on other non-key attributes must be moved or deleted. Again, new entities and relationships may have to be added to the data model.

Ch 12 - Input Design and Prototyping

Ch 13 - Output Design and Prototyping

Ch 14 - User Design Interface and Prototyping

Ch 15 - Software Design

Ch 16 - Object Oriented Design

 

Ch 17 - Systems Implementation

Construction Phase (557)(Diagram 559)

Build and Test Networks (if necessary) (557)

Build and Test Databases (560)

Install and test new software package (561)

Write and Test new Programs (562)

Delivery Phase (564) (Diagram 566)

Conduct System Test (564)

Prepare Conversion Plan (566)

Install Databases (569)

Train System Users (569)

Convert to New System (521)

 

Ch 18 - Systems Support

 

App A - Project and Process Management Techniques

Project - sequence of unique, complex, and connected activities having one goal or purpose and that must be completed by specific time, within budget and according to specification.

Project Management is process of defining, planning, directing, monitoring and controlling the development of an acceptable system at a minimum cost within a specified time frame.

Problems:

Scope Creep

Feature Creep

Cost overruns

Functions of Project manager: planning, staffing, organizing, scheduling, directing, and controlling.

Scoping the Project. Project definition should include:

  • Project champion and executive sponsor
  • Statement of the problem or opportunity to be addressed by the project
  • Project goal
  • Project objectives - dated and measurable actions
  • Project assumptions and constraints

Process management is the planning, selection, deployment, and consistent application of standard system development methods, tools, techniques, and technologies to all information system projects.

Methodologies

Quality - must be managed. Need internal standards for:

  • Standards for project deliverables
  • Modeling techniques and standards
  • Naming standards for models, objects, programs, databases, etc.
  • Quality checkpoints, deliverables, and sign-offs at various stages of the projects
  • Technology standards such as approved GUI components and placement
  • Testing procedures and tolerances
  • Acceptance criteria for system implementation

Project Mgmt tools and techniques

Gantt Chart - activities as horizontal bars

Forward and Reverse scheduling

Calendars

WBS - hierarchical decomposition of project into phases, activities and tasks

Milestones

Effort and Duration - Expected Duration function of Optimistic Time and Most Likely Time

Predecessors and Constraints

Critical Path and Slack Resources

Pert Charts - Project Evaluation and Review Technique

Graphical Networking Technique, Not calendar format, shows intertask relationships very effectively.

Expectations Mgmt

Expectations Management Matrix

Priorities

Measures of Success

Max or Min

Constrain

Accept

Cost

     

Schedule

     

Scope and/or Quality

     

Record 3 Xs one in each row, no column can contain more than one X

Whenever min/max measure begins to slip there is a potential mgmt expectations problem

Only system owner can initiate priority migration

People Management: Author recommends The One Minute Manager by Blanchard and Johnson

 

 

App B - Fact-Finding and Information Gathering

Fact Finding is the formal process of using research, interviews, questions, sampling, and other techniques to collect information about systems, requirements, and preferences. It is also called information gathering or data collection.

Fact Finding Methods Available:

  • Sampling of existing Documentation, forms, and databases
    • Determine sample size
    • Select Ample: randomization and stratification, p. 625
  • Research and site visits
  • Observation of the work environment
    • Advantages and Disadvantages p. 629
  • Questionnaires
    • Advantages and Disadvantages, p. 630
    • Types of questionnaires: Fixed format and Free format
    • Fixed Format: Multiple choice and rating type
  • Interviews
    • Advantages and Disadvantages, p. 632
    • Types: Unstructured and structures
    • Select interviewees, prepare w/interview guide, conduct
  • Rapid Application Development - quickly create mock forms and tables to simulate the implemented system, get feedback from users.
  • Joint Application Development

Fact Finding Strategy

  • Learn all possible from existing documentation, forms, reports and files
  • Observe the system in action, if appropriate
  • Develop and distribute questionnaire based on everything so far
  • Conduct interviews
  • Follow up. Use appropriate techniques to verify facts

 

App C - Feasibility and Cost-Benefit Analysis

Feasibility is measure of how beneficial or practical the development of an information system will be to an organization

Select checkpoints throughout the project to evaluate feasibility

Four test for feasibility:

  • Operational - Is the problem worth solving or will the solution to the problem work Use PIECES framework
    • Usability Analysis - Users
  • Technical -
    • Is the proposed technology of solution practical?
    • Do we currently possess the necessary technology?
    • Do we possess the necessary technical expertise, and is the schedule reasonable?
  • Schedule
  • Economic

Cost-Benefit Techniques

How much will the system cost: personnel, computer usage, training, supply-duplication& equipment, cost of any new computer equipment and software.

Lifetime benefits must recover both the developmental and operating costs.

What benefits will the system provide, both tangible and intangible

Is the proposed system cost-effective: Use Time Value of Money

  • Payback Analysis
  • Return-on-investment Analysis
  • Net Present Value

Feasibility Analysis of Candidate Systems - Candidate Systems Matrix

See example p.658

 

App D - Joint Application Development

 

App E - Interpersonal Skills and Communications

Make people feel at ease