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:
Ch 2 Information System Building Blocks
Types of systems:
Transaction processing systems
Management Information System - provides for management-oriented reporting
Decision Support System
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)
Systems Development Phases (FAST Methodology) (p. 82-83)
Detailed discussion of Phases - (Purpose, Participants & roles, Prerequisites, Activities, Deliverables, Prerequisite & Feasibility Checkpoints)
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)
Negotiate Project Scope (p.132)
Plan Project (p. 134)
Present the Project (p. 135)
Study Phase (p. 137) (Dia 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
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.
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)
Ch 7 Network Modeling
No generally accepted network modeling standards
Location Decomposition diagram
Synchronization of System Models:
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:
Organizing the Objects and Identifying Their Relationships
An Object Association Model is used to graphically depict the objects and their relationships.
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 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)
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
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
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
Network Topology DFD
Data Distribution and Technology Assignments
Process Distribution and Technology Assignments
Ch 11 - Database Design
Fields p. 398
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.
Functions of Project manager: planning, staffing, organizing, scheduling, directing, and controlling.
Scoping the Project. Project definition should include:
Process management is the planning, selection, deployment, and consistent application of standard system development methods, tools, techniques, and technologies to all information system projects.
Quality - must be managed. Need internal standards for:
Project Mgmt tools and techniques
Gantt Chart - activities as horizontal bars
Forward and Reverse scheduling
WBS - hierarchical decomposition of project into phases, activities and tasks
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 Management Matrix
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:
Fact Finding Strategy
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:
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
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