Download as pdf or txt
Download as pdf or txt
You are on page 1of 155

Republic of the Philippines

POLYTECHNIC UNIVERSITY OF THE PHILIPPINES


INSTITUTE OF TECHNOLOGY
Management Technology Department

INSTRUCTIONAL MATERIALS
FOR
COMP 20243 SYSTEMS ANALYSIS AND DESIGN

COMPILED BY:

JOSEPHINE M. DELA ISLA, MBE,CPA


INTRODUCTION

This module will learn and apply numerous techniques, methods, tools, and approaches.
But when the time comes to interpret what is happening in the organization and to develop
meaningful information systems from the application of rules to your analysis, your training
combines with creativity to produce a system that is in some ways a surprise: It is structured, yet
intuitive; multilayered and complex, in keeping with the character of the organization and
uniquely reflective of you as a systems analyst and a human being. The students by providing
feedback and suggestions for improvements and asking for increased depth in certain topics.
Students rapidly put to use the new material on object-oriented systems analysis and design as
well as that on agile modeling which is the new techniques for designing a new system.

1 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


TABLE OF CONTENTS

MODULE I SYSTEMS ANALYSIS FUNDAMENTALS


Lesson 1. Systems, Roles and Development Methodologies …………………….. 4
Lesson 2. Understanding and Modeling Organizational Systems …………………. 11
Lesson 3: Project Management ……………………………………………………….. 20
MODULE II INFORMATION REQUIREMENTS ANALYSIS
Lesson 4: Information Gathering: Interactive Methods……………………………….. 34
Lesson 5: Information Gathering : Unobtrusive Methods…………………………….. 42
Lesson 6: Agile Modeling and Prototyping…………………………………………….. 49
MODULE III ANALYSIS PROCESS
Lesson 7: Using Data Flow Diagram……………………………………………………. 56
Lesson 8: Analyzing System Using Dictionaries………………………………………. 65
Lesson 9: Process Specification and Structured Decision…………………………... 75
Lesson 10: Object-Oriented System Analysis and Design Using UML……………... 81
MODULE IV The ESSENTIALS OF DESIGN
Lesson 11: Designing Effective Output………………………………………………… 94
Lesson 12: Designing Effective Input …………………………………………………. 102
Lesson 13: Designing Databases ……………………………………………………… 110
Lesson 14: Human-Computer Interaction…………………………………………….. 122
MODULE V: QUALITY ASSURANCE AND IMPLEMENTATION
Lesson 15: Designing Accurate Data Entry rocedures……………………………... 133
Lesson 16: Quality Assurance and Implementation………………………………….. 142

2 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


COURSE OUTCOMES:

At the end of the course, students should be able to:

1. Determine and analyze a problem in information systems.


2. Apply the different system analysis tools and programming techniques in system
designing.
3. Be able to generate alternative solutions to a problem.
4. Redesign the problem based on the chosen solution.
5. Appreciate with pride one’s ability to apply systems’ concepts and principles in
today’s e-business.
6. Exhibit one’s confidence in developing an efficient and effective information
system.
7. Develop positive attitudes toward computer learning.

MODULE I SYSTEMS ANALYSIS FUNDAMENTALS


Overview:

Introduces the systems development life cycle (SDLC), the fundamental four-phase
model (planning, analysis, design, and implementation) common to all information systems
development projects. It describes the evolution of system development methodologies and
discusses the roles and skills required of a systems analyst. This lesson overviews the basic
characteristics of object-oriented systems and the fundamentals of object-oriented systems
analysis and design and closes with a description of the Unified Process and its extensions and
the Unified Modeling Language. Part I shows how a variety of emerging information systems,
including mobile and wireless technologies, and enterprise systems integrate IT and fit into
organizations; how to determine whether a systems project is worthy of commitment;
ecommerce project management; and how to manage a systems project using special software
tools. The three roles of the systems analyst as consultant, supporting expert, and agent of
change are introduced, and ethical issues and professional guidelines for serving as a systems
consultant are covered. There is also material on virtual teams and virtual organizations, and
the concept of HCI is introduced. The use of open source software (OSS) is also introduced.
Lesson 2 includes how to initially approach an organization by drawing context-level data flow
diagrams, using entity-relationship models, and developing use cases and use case scenarios.
Lesson 3 introduces expanded material on creating the project charter and introduces writing
the systems proposal early in the process, no matter what method of analysis and design has
been chosen. Expanded coverage of evaluating software and hardware, and when to use COTS
(commercial off-the-shelf software), is included. This lesson teaches several methods for
forecasting costs and benefits, which are necessary to the discussion of acquiring software and
hardware.

3 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Lesson 1. Systems, Roles and Development Methodologies
Learning Outcomes:

After successful completion of this lesson, you should be able to:

• Recall the basic types of computer-based systems that a systems analyst needs to
address.
• Understand how users working in context with new technologies change the dynamics of
a system.
• Realize what the many roles of the systems analyst are.
• Comprehend the fundamentals of three development methodologies: SDLC, the agile
approach, and object-oriented systems analysis and design .
• Understand what CASE tools are and how they help a systems analyst.

Course Materials:

Systems Analysts Recommend, Design, and Maintain Many Types of Systems for Users

• Transaction Processing Systems (TPS)


• Office Automation Systems (OAS)
• Knowledge Work Systems (KWS)
• Management Information Systems (MIS)
• Decision Support Systems (DSS)
• Expert Systems (ES)
• Executive Support Systems (ESS)
• Group Decision Support Systems (GDSS)
• Computer-Supported Collaborative Work Systems (CSCWS)

Strategic Level
A systems analyst may be involved with any or
Higher Level all of these systems at each organization level.

Knowledge Level

Operational Level

Operational Level
• Transaction Processing System (TPS)
• Process large amounts of data for routine business transactions
• Boundary-spanning
• Support the day-to-day operations of the company
• Examples: Payroll Processing, Inventory Management
Knowledge Level

4 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Office Automation System (OAS)
• Supports data workers who share information, but do not usually create new knowledge
• Examples: word processing, spreadsheets, desktop publishing, electronic scheduling,
communication through voice mail, email, teleconferencing
• Knowledge Work System (KWS)
• Supports professional workers such as scientists, engineers, and doctors
• Examples: computer-aided design systems, virtual reality systems, investment
workstations
Higher Level

• Management Information System (MIS)


• Supports a broad spectrum of organizational tasks including decision analysis and
decision making
• Examples: profit margin by sales region, expenses vs. budgets
• Decision Support System (DSS)
• Aids decision makers in the making of decisions
• Examples: financial planning with what-if analysis, budgeting with modeling
• Expert System (ES) and Artificial Intelligence
• Captures and uses the knowledge of an expert for solving a particular problem which
leads to a conclusion or recommendation
• Researching understanding natural language and the ability to reason through a
problem to its logical conclusion
Strategic Level

• Executive Support System (ESS)


• Helps executives to make unstructured strategic decisions in an informed way
• Examples: drill-down analysis, status access
• Group Decision Support System (GDSS)
• Permit group members to interact with electronic support.
• Examples: email, Lotus Notes
• Computer-Supported Collaborative Work System (CSCWS)
• CSCWS is a more general term of GDSS.
• May include software support called groupware for team collaboration via network
computers
Example: video conferencing, Web survey system

Integrating New Technologies into Traditional Systems

• Ecommerce and Web Systems


• Enterprise Resource Planning Systems
• Wireless and Mobile Systems
• Open Source Software
• Need for Systems Analysis and Design

5 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Systems Analysts Need to Be Aware that Integrating Technologies Affects all Types of Systems
(Figure 1.2)

Ecommerce and Web Systems

• Benefits
• Increasing user awareness of the availability of a service, product, industry, person, or
group
• The possibility of 24-hour access for users
• Improving the usefulness and usability of interface design
• Creating a system that can extend globally rather than remain local, thus reaching
people in remote locations without worry of the time zone in which they are located
Enterprise Resource Planning Systems (ERP)

• Performs integration of many information systems existing on different management


levels and within different functions
• Example: SAP, Oracle

Wireless and Mobile Systems


• A system analyst may be asked to design standard or wireless and mobile
communication networks that integrate voice, video, and email into organizational
intranets or industry extranets.
• A system analyst may also be asked to develop intelligent agents.
• Example: iPhone, iPod, BlackBerry
• Wireless communication is referred to as m-commerce (mobile commerce).
Open Source Software
• An alternative of traditional software development where proprietary code is hidden from
the users
• Open source software is free to distribute, share, and modify.
• Characterized as a philosophy rather than simply the process of creating new software
• Example: Linux Operating System, Apache Web Server, Mozilla Firefox Web Browser

Need for Systems Analysis and Design


• Installing a system without proper planning leads to great user dissatisfaction and
frequently causes the system to fall into disuse.
• Lends structure to the analysis and design of information systems
• A series of processes systematically undertaken to improve a business through the use
of computerized information systems

6 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Roles of the Systems Analyst
• The analyst must be able to work with people of all descriptions and be experienced in
working with computers.
• Three primary roles:
• Consultant
• Supporting expert
• Agent of change
Qualities of the Systems Analyst

• Problem solver
• Communicator
• Strong personal and professional ethics
• Self-disciplined and self-motivated
Systems Development Life Cycle (SDLC

• The systems development life cycle is a phased approach to solving business problems.
• Developed through the use of a specific cycle of analyst and user activities
• Each phase has unique user activities.

The Seven Phases of the Systems Development Life Cycle (Figure 1.3)

Incorporating Human-Computer Interaction (HCI) Considerations

• The demand for analysts who are capable of incorporating HCI into the systems
development process keeps increasing, as companies begin to realize that the quality of
systems and the quality of work life can be improved by taking a human-centered
approach at the outset of a project.
Identifying Problems, Opportunities, and Objectives

• Activity:
• Interviewing user management
• Summarizing the knowledge obtained
• Estimating the scope of the project

7 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Documenting the results
• Output:
• Feasibility report containing problem definition and objective summaries from which
management can make a decision on whether to proceed with the proposed project
Determining Human Information Requirements

Activity

• Interviewing
• Sampling and investing hard data
• Questionnaires
• Observe the decision maker’s behavior and environment.
• Prototyping
• Learn the who, what, where, when, how, and why of the current system.
Output:

The analyst understands how users accomplish their work when interacting with
a computer; and begin to know how to make the new system more useful and usable.
The analyst should also know the business functions and have complete information on
the people, goals, data, and procedure involved
Analyzing System Needs

• Activity:
• Create data flow, activity, or sequence diagrams.
• Complete the data dictionary.
• Analyze the structured decisions made.
• Prepare and present the system proposal.
• Output:
• Recommendation on what, if anything, should be done
Designing the Recommended System

• Activity:
• Design procedures for data entry.
• Design the human-computer interface.
• Design system controls.
• Design database and/or files.
• Design backup procedures.
Output

• Model of the actual system


Developing and Documenting Software

• Activity:
• System analyst works with programmers to develop any original software.
• Works with users to develop effective documentation.

8 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Programmers design, code, and remove syntactical errors from computer programs.
• Document software with help files, procedure manuals, and Web sites with Frequently
Asked Questions.
• Output:
• Computer programs
• System documentation

Testing and Maintaining the System


• Activity:
• Test the information system.
• System maintenance.
• Maintenance documentation.
• Output:
• Problems, if any
• Updated programs
• Documentation
Implementing and Evaluating the System
• Activity:
• Train users.
• Analyst plans smooth conversion from old system to new system.
• Review and evaluate system.
• Output:
• Trained personnel
• Installed system

The Impact of Maintenance


• Maintenance is performed for two reasons:
• Removing software errors
• Enhancing existing software
• Over time the cost of continued maintenance will be greater than that of creating an
entirely new system. At that point it becomes more feasible to perform a new systems
study.
Approaches to Structured Analysis and Design and to the Systems Development Life
Cycle
• Traditional systems development life cycle
• CASE systems development life cycle
• Object-oriented systems analysis and design
Case Tools
• CASE tools are productivity tools for systems analysts that have been created explicitly to
improve their routine work through the use of automated support.
• Reasons for using CASE tools
• Increasing analyst productivity
• Improving analyst-user communication
• Integrating life cycle activities

Case Tool Classifications


• Upper CASE tools perform analysis and design.
• Lower CASE tools generate programs from CASE design
Upper CASE Tools
• Create and modify the system design.
• Help in modeling organizational requirements and defining system boundaries.

9 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Lower CASE Tools
• Lower CASE tools generate computer source code from the CASE design.
• Source code is usually generated in several languages.
• Decreases maintenance time
• Generates error-free code

The Agile Approach


• Based on:
• Values
• Principles
• Core practices
Agile Values
• Communication
• Simplicity
• Feedback
• Courage
Four Agile Resources
• Resources are adjusted to ensure successful project completion.
• Time
• Cost
• Quality
• Scope
Five Stages of Agile Development
• Exploration
• Planning
• Iterations to the first release
• Productionizing
• Maintenance
Object-Oriented (O-O) Systems Analysis and Design
• Alternate approach to the structured approach of the SDLC that is intended to facilitate
the development of systems that change rapidly in response to dynamic business
environments
• Analysis is performed on a small part of the system followed by design and
implementation.
• The cycle repeats with analysis, design, and implementation of the next part and this
repeats until the project is complete.
• Examines the objects of a system
Unified Modeling Language (UML) Phases
• Define the use case model:
• Use case diagram
• Use case scenarios
• Create UML diagrams.
• Develop class diagrams.
• Draw statechart diagrams.
• Modify the UML diagrams.
• Develop and document the system.
Choosing a Method
• Choose either:
• SDLC
• Agile

10 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Object-oriented methodologies
When to Use SDLC
• Systems have been developed and documented using SLDC.
• It is important to document each step.
• Upper level management feels more comfortable or safe using SDLC.
• There are adequate resources and time to complete the full SDLC.
• Communication of how new systems work is important.

When to Use Agile


• There is a project champion of agile methods in the organization.
• Applications need to be developed quickly in response to a dynamic environment.
• A rescue takes place (the system failed and there is no time to figure out what went wrong).
• The customer is satisfied with incremental improvements.
• Executives and analysts agree with the principles of agile methodologies.
When to Use Object-Oriented
• The problems modeled lend themselves to classes.
• An organization supports the UML learning.
• Systems can be added gradually, one subsystem at a time.
• Reuse of previously written software is a possibility.
• It is acceptable to tackle the difficult problems first.
Read
Lesson 1. Systems, Roles and Development Methodologies

Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessments:
1. Define a system. Explain the components of a system.
2. How do you explain system development life cycle?
3. Discuss the importance of system analysis and design in the
development of a system
4. List three roles that the systems analyst is called upon to play.
Provide a definition for each one
5. What personal qualities are helpful to the systems analyst? List them.
6. Describe the different phases and related activities of system development life cycle.

Lesson 2. Understanding and Modeling Organizational Systems

Learning Outcomes:

After successful completion of this lesson, you should be able to:

• Understand that organizations and their members are systems and that analysts need to
take a systems perspective.
• Depict systems graphically using context-level data flow diagrams, and entity-
relationship models, use cases, and use case scenarios.
• Recognize that different levels of management require different systems.
• Comprehend that organizational culture impacts the design of information systems.

Course Materials:

11 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Three Main Forces Interacting to Shape Organizations
• Levels of management
• Design of organizations
• Organizational cultures

Organizations Are Composed of Interrelated Subsystems


• Influenced by levels of management decision makers that cut horizontally across the
organizational system
Operations
Middle management
Strategic management
• Influenced by organizational cultures and subcultures

Organizations as Systems

• Conceptualized as systems designed to accomplish predetermined goals and objectives


• Composed of smaller, interrelated systems serving specialized functions
• Specialized functions are reintegrated to form an effective organizational whole.

Interrelatedness and Independence of Systems


• All systems and subsystems are interrelated and interdependent.
• All systems process inputs from their environments.
• All systems are contained by boundaries separating them from their environments.
• System feedback for planning and control
• An ideal system self-corrects or self-regulates itself.
System Outputs Serve as Feedback that Compares Performance with Goals (Figure 2.1)

Organizational Environments

• Community
Physical location
Demographic profile (education, income)
• Economic
Market factors
Competition
• Political
State and local government
• Legal
Federal, state, regional, local laws, and guidelines

Openness and Closedness

• Open

12 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Free flow of information
Output from one system becomes input to another
• Closed
Restricted access to information
Limited by numerous rules
Information only on a “need to know” basis

Virtual Organizations and Virtual Teams


• A virtual organization has parts of the organization in different physical locations.
• Computer networks and communications technology are used to bring virtual teams
together to work on projects.

Benefits of Virtual Organizations and Teams

• Possibility of reducing costs of physical facilities


• More rapid response to customer needs
• Helping virtual employees to fulfill their familial obligations to children or aging parents

Taking a Systems Perspective


• Allows system analyst to understand businesses before they begin their tasks
• It is important that members of subsystems realize that they are interrelated with other
subsystems.
• Problems occur when each manager thinks that his/her department is the most
important.
• Bigger problems may occur when that manager rises through the ranks

Taking a Systems Perspective (Figure 2.2)

Enterprise Resource Planning


• Enterprise Systems or Enterprise Resource Planning (ERP) describes an integrated
organizational information system.
• Software that helps the flow of information between the functional areas within the
organization
Depicting Systems Graphically
• Context-level data flow diagrams
• Entity-relationship model
• Use case modeling
Context-Level Data Flow Diagrams

• Focus is on the data flowing into and out of the system and the processing of the data.
• Shows the scope of the system:
What is to be included in the system.
The external entities are outside the scope of the system.

13 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


The Basic Symbols of a Data Flow Diagram (Figure 2.4)

Airline Reservation System (Figure 2.5)

Entity-Relationship Model
• Focus is on the entities and their relationships within the organizational system
• Another way to show the scope of a system
Relationships
• Relationships show how the entities are connected.
• Three types of relationships:
• One-to-one
• One-to-many
• Many-to-many
Entity-Relationship Example (Figure 2.7)

An entity-relationship diagram
showing a many-to-one relationship

Examples of Different Types of Relationships in E-R Diagrams (Figure 2.8)

14 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Entities
• Fundamental entity
• Associative entity
• Attributive entity

Three Different Types of Entities Used in E-R Diagrams (Figure 2.9)

Attributes

• Data attributes may be added to the diagram.

Patron Name
Patron Patron address
Patron phone
Patron credit card
Creating Entity-Relationship Diagrams
• List the entities in the organization.
• Choose key entities to narrow the scope of the problem.
• Identify what the primary entity should be.
• Confirm the results of the above through data gathering.

A More Complete E-R Diagram Showing Data Attributes of the Entities (Figure 2-12 )

15 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Use Case Modeling
• Describes what a system does without describing how the system does
A logical model of the system
• Use case is a view of the system requirements
• Analyst works with business experts to develop requirements
Use Case Diagram
• Actor
Refers to a particular role of a user of the system
Similar to external entities; they exist outside of the system
• Use case symbols
An oval indicating the task of the use case
• Connecting lines
Arrows and lines used to diagram behavioral relationships
Actor
• Divided into two groups
Primary actors:
Supply data or receive information from the system.
Provide details on what the use case should do.
Supporting actors:
Help to keep the system running or provide help.
The people who run the help desk, the analysts, programmers, and so on.

A Use Case Always Provides Three Things


• An actor that initiates an event
• The event that triggers a use case
• The use case that performs the actions triggered by the event

Use Case Relations


• Behavioral relationships
Communicates
Used to connect an actor to a use case
Includes
Describes the situation in which a use case contains behavior that is common to
more than one use case
• Behavioral relationships (continued)
Extends
Describes the situation in which one use case possesses the behavior that allows
the new case to handle a variation or exception from the basic use case
Generalizes

16 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Implies that one thing is more typical than the other thing

Some Components of Use Case Diagrams Showing Actors, Use Cases, and
Relationships for a Student Enrollment Example (Figure 2.13)\

Examples of Use Cases, Behavioral Relationships for Student Enrollment (Figure


2.14)

Scope

• System scope defines its boundaries:


What is in or outside the system
Project has a budget that helps to define scope
Project has a start and an end time
• Actors are always outside of scope
• Communication lines are the boundaries and define the scope

Developing Use Case Diagrams

• Review the business specifications and identify the actors involved.


• May use agile stories.
• Identify the high-level events and develop the primary use cases that describe those
events and how the actors initiate them.
• Review each primary use case to determine the possible variations of flow through the
use case.
• The context-level data flow diagram could act as a starting point for creating a use case.

17 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


A Use Case Diagram Representing a System Used to Plan a Conference (Figure 2.15 )

Developing the Use Case Scenarios

• The description of the use case


Three main areas:
• Use case identifiers and initiators
• Steps performed
• Conditions, assumptions, and questions
Use Case Header Area
• Has a name and a unique ID.
• Include application area.
• List actors.
• Include stakeholders.
• Include the level.
• Has a brief description of the use case.

Use Case Levels


• Use case levels describe how global or detailed the use case description is:

White (like clouds): enterprise level


Kite: business unit or department level
Blue (sea level): user goals
Indigo (or fish): functional or subfunctional
Black (or clam): most detailed

Alternative Scenarios
• Extensions or exceptions to the main use case
• Number with an integer, decimal point, integer
• Steps that may or may not always be used

Use Case Footer Area


• Preconditions—need to be met before use case can be performed
• Postconditions or the state of the system after the use case has finished
• Assumptions
• Minimal guarantee
• Success guarantee
• Outstanding issues
• Optional priority and risk

18 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Four Steps Used to Create Use Cases
• Use agile stories, problem definition objectives, user requirements, or a features list.
• Ask about the tasks that must be done.
• Determine if there are any iterative or looping actions.
• The use case ends when the customer goal is complete.

Why Use Case Diagrams Are Helpful


• Identify all the actors in the problem domain.
• Actions that need to be completed are also clearly shown on the use case diagram.
• The use case scenario is also worthwhile.
• Simplicity and lack of technical detail

The Main Reasons for Writing Use Cases Are Their Effectiveness in Communicating with Users
and Their Capturing of User Stories (Figure 2.18)

Operations Control
• Make decisions using predetermined rules that have predictable outcomes.
• Oversee the operating details of the organization.
Managerial Planning and Control
• Make short-term planning and control decisions about resources and organizational
objectives.
• Decisions may be partly operational and partly strategic.
Strategic Management
• Look outward from the organization to the future.
• Make decisions that will guide middle and operations managers.
• Work in highly uncertain decision-making environment.
• Define the organization as a whole.
Managerial Levels
• Different organization structure
• Leadership style
• Technological considerations
• Organization culture
• Human interaction
• All carry implications for the analysis and design of information systems
Organizational Culture
• Organizations have cultures and subcultures.
• Learn from verbal and nonverbal symbolism.

Verbal Symbolism

19 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Myths
• Metaphors
• Visions
• Humor
Nonverbal Symbolism
• Shared artifacts
Trophies, etc.
• Rites and rituals
Promotions
Birthdays, etc.
• Clothing worn
• Office placement and decorations

Read
Lesson 2 Understanding and Modeling Organizational Systems
Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessments:
1. What are the three groups of organizational fundamentals that carry implications for the
development of information systems?
2. What are enterprise systems?
3. What is ERP, and what is its purpose?
4. What problems do analysts often encounter when they try to implement an
ERPpackage?
5. What is an entity on a data flow diagram?
6. What is meant by the term entity-relationship diagram?
7. What symbols are used to draw E-R diagrams?
8. List the types of E-R diagrams.

Problem:

Draw an entity-relationship diagram of a patient–doctor relationship.


a. Which of the types of E-R diagrams is it?
b. In a sentence or two, explain why the patient–doctor relationship is diagrammed in this way.

Lesson 3: Project Management

Learning Outcomes:

After successful completion of this lesson, you should be able to:

• Understand how projects are initiated and selected, define a business problem, and
determine the feasibility of a proposed project.
• Inventory and appraise current and proposed hardware and software and the way it
supports human interactions with technology.

20 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Evaluate software by addressing the tradeoffs among creating custom software,
purchasing COTS software, and outsourcing to an application service provider.
• Forecast and analyze tangible and intangible costs and benefits.
• Plan a project by identifying activities and scheduling them.
• Manage team members and analysis and design activities so that the project objectives
are met while the project remains on schedule.
• Professionally write and present an effective systems proposal, concentrating on both
content and design.

Course Materials:

Project Management Fundamentals

• Project initiation
• Determining project feasibility
• Activity planning and control
• Project scheduling
• Managing systems analysis team members

Project Initiation

• Problems in the organization


Problems that lend themselves to systems solutions
• Opportunities for improvement
Caused through upgrading, altering, or installing new systems

Checking Output, Observing Employee Behavior, and Listening to Feedback Are all Ways to
Help the Analyst Pinpoint Systems Problems and Opportunities (Figure 3.1)

Problem Definition
• Problem statement
Paragraph or two stating the problem or opportunity
• Issues
Independent pieces pertaining to the problem or opportunity
• Objectives
Goals that match the issues point-by-point
• Requirements
The things that must be accomplished along with the possible solutions, and constraints,
that limit the development of the system
• Use the problem definition to create a preliminary test plan.
Problem Definition Steps

21 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Find a number of points that may be included in one issue.
• State the objective.
• Determine the relative importance of the issues or objectives.
• Identify which objectives are most critical.
Selection Of Projects
• Backing from management
• Appropriate timing of project commitment
• Possibility of improving attainment of organizational goals
• Practical in terms of resources for the system analyst and organization
• Worthwhile project compared with other ways the organization could invest resources
Selection of Projects: Improving Attainment of Organizational Goals
• Improving corporate profits
• Supporting the competitive strategy of the organization
• Improving cooperation with vendors and partners
• Improving internal operations support
• Improving internal decision support so that decisions are more effective
• Improving customer service
• Increasing employee morale
Defining Objectives

Many possible objectives exist including:


• Speeding up a process
• Streamlining a process
• Combining processes
• Reducing errors in input
• Reducing redundant storage
• Reducing redundant output
• Improving system and subsystem integration
Determining Feasibility
• Defining objectives
• Determining resources
• Operationally
• Technically
• Economically
The Three Key Elements of Feasibility Include Technical, Economic, and Operational Feasibility
(Figure 3.3)

Technical Feasibility
• Can current technical resources be upgraded or added to in a manner that fulfills the
request under consideration?
• If not, is there technology in existence that meets the specifications?

22 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Economic Feasibility
• Economic feasibility determines whether value of the investment exceeds the time and
cost.
• Includes:
o Analyst and analyst team time
o Business employee time
o Hardware
o Software
o Software development
Operational Feasibility
• Operational feasibility determines if the human resources are available to operate the
system once it has been installed.
• Users that do not want a new system may prevent it from becoming operationally
feasible.

Ascertaining Hardware and Software Needs


Steps used to determine hardware and software needs:
• Inventory computer hardware currently available
• Estimate current and future system workloads
• Evaluate available hardware and software
• Choose the vendor
• Acquire the computer equipment

Steps in Choosing Hardware and Software (Figure 3.4)

Inventorying Computer Hardware


• Type of equipment
• Operation status of the equipment
• Estimated age of equipment
• Projected life of equipment
• Physical location of equipment
• Department or person responsible for equipment
• Financial arrangement for equipment
Estimating Workloads
• Systems analysts formulate numbers that represent both current and projected
workloads for the system so that any hardware obtained will possess the capability to
handle current and future workloads.

Comparisons of Workloads between Existing and Proposed Systems (Figure 3.5 )

23 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Evaluating Hardware
• Time required for average transactions
• Total volume capacity of the system
• Idle time of the CPU or network
• Size of memory provided
People that Evaluate Hardware
• Management
• Users
• Systems analysts
Acquisition of Computer Equipment
• Purchasing
• Leasing
• Rental
Purchasing, Leasing, and Renting Advantages and Disadvantages (Figure 3.6)

Evaluating Vendor Support


• Hardware support
• Software support
• Installation and training support
• Maintenance support

Evaluating Vendor Support (Figure 3.8)

24 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Other Considerations
• Possibility of adding on to the system
• Interfacing with equipment from other vendors
• Adding more memory
• Corporate stability of the vendor
Software Alternatives
• Created custom software
• Purchased as COTS (commercial off-the-shelf) software
• Provided by an application service provider (ASP)

Software Alternatives (Figure 3.9)

Software Evaluation
• Performance effectiveness
• Performance efficiency
• Ease of use
• Flexibility
• Quality of documentation
• Manufacturer support

Guidelines for Evaluating Software (Figure 3.10)

25 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Activity Planning and Control
• Planning includes:
o Selecting a systems analysis team
o Estimating time required to complete each task
o Scheduling the project
• Control includes:
o Comparing the plan for the project with its actual evolution
o Taking appropriate action to expedite or reschedule activities

Identifying and Forecasting Costs and Benefits

• Judgment methods
o Estimates from the sales force
o Surveys to estimate customer demand
o Delphi studies
o Creating scenarios
o Drawing historical analogies
• If historical data are available
o Conditional:
▪ There is an association among variables in the model.
o Unconditional:
o Do not need to find or identify any relationships

Estimation of Trends
• Graphical judgment
• Moving averages

Identifying Benefits and Costs


• Tangible benefits are advantages measurable in dollars through the use of the
information system.
• Intangible benefits are difficult to measure.
• Tangible costs are accurately projected by the systems analyst and accounting
personnel.
• Intangible costs are difficult to estimate and may not be known.

Tangible Benefits
• Advantages measurable in dollars that accrue to the organization through the use of the
information system

26 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Examples:
o Increase in the speed of processing
o Access to otherwise inaccessible information
o Access to information on a more timely basis
o The advantage of the computer’s superior calculating power
o Decreases in the amount of employee time needed to complete specific tasks

Intangible Benefits
Intangible benefits are benefits from use of the information system that are difficult to measure.
• Examples:
o Improving the decision-making process
o Enhancing accuracy
o Becoming more competitive in customer service
o Maintaining a good business image
o Increasing job satisfaction
Tangible Costs
• Those that can be accurately projected by systems analysts and the business’
accounting personnel
• Examples:
o Cost of equipment
o Cost of resources
o Cost of systems analysts’ time
o Cost of programmers’ time
o Employees’ salaries

Intangible Costs
• Those that are difficult to estimate and may not be known
• Examples:
o Losing a competitive edge
o Losing the reputation of being first
o Declining company image
o Ineffective decision making

Comparing Costs and Benefits


• Break-even analysis
• Payback
• Cash-flow analysis
• Present value analysis

Break-Even Analysis
• The point at which the total cost of the current system and the proposed system intersect
• Useful when a business is growing and volume is a key variable in costs
• Disadvantage:
Benefits are assumed to remain the same
• Advantage:
• Can determine how long it will take for the benefits of the system to pay back the
costs of developing it

Break-Even Analysis (Figure 3.11)

27 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Break-Even Analysis Showing a Payback Period of Three and a Half Years (Figure 3.12)

Cash-Flow Analysis
• Examines the direction, size, and pattern of cash flow that is associated with the
proposed information system
• Determines when cash outlays and revenues will occur for both; not only for the initial
purchase, but over the life of the information system

Cash-Flow Analysis for the Computerized Mail-Addressing System (Figure 3.13)

Present Value Analysis


• Way to assess all the economic outlays and revenues of the information system over its
economic life, and to compare costs today with future costs and today’s benefits with
future benefits
• Presents the time value of the investment in the information system as well as the cash
flow

Present Value Analysis (Figure 3.15)


• Taking into account present value, the conclusion is that the costs are greater than the
benefits.
• The discount rate, i, is assumed to be .12 in calculating the multipliers in this table.

28 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Guidelines for Analysis
• Use break-even analysis if the project needs to be justified in terms of cost, not benefits.
• Use payback when the improved tangible benefits form a convincing argument for the
proposed system.
• Use cash-flow analysis when the project is expensive, relative to the size of the company.
• Use present value when the payback period is long or when the cost of borrowing money is
high.

Estimating Time
• Project is broken down into phases.
• Further project is broken down into tasks or activities.
• Finally project is broken down into steps or even smaller units.
• Time is estimated for each task or activity.
• Most likely, pessimistic and optimistic estimates for time may be used.

Beginning to Plan a Project by Breaking it into Three Major Activities (Figure 3.16)

Refining the Planning and Scheduling of Analysis Activities by Adding Detailed Tasks and
Establishing the Time Required to Complete the Tasks (Figure 3.17)

29 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Project Scheduling

• Gantt Charts
o Simple
o Lends itself to end user communication
o Drawn to scale
• PERT diagrams
Useful when activities can be done in parallel

Using a Two-Dimensional Gantt Chart for Planning Activities that Can Be Accomplished
in Parallel (Figure 3.18)

A Completed PERT Diagram for the Analysis Phase of a Systems Project (Figure 3.22)

PERT Diagram Advantages


• Easy identification of the order of precedence
• Easy identification of the critical path and thus critical activities
• Easy determination of slack time

Project Due Dates


• Estimating models
o Costar
o Construx
• Function point analysis
Helps the analyst quantitatively estimate the overall length of software development
efforts
Managing Analysis and Design Activities
• Team management
o Assembling a team
o Team communication strategies
o Project productivity goals
o Team member motivation
Assembling a Team

30 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Shared value of team work
• Good work ethic
• Honesty
• Competency
• Readiness to take on leadership based on expertise
• Motivation
• Enthusiasm for the project
• Trust of teammates

Communication Strategies
• Teams often have two leaders:
o Task leader: leads members to accomplish tasks
o Socioemotional leader: concerned with social relationships
• The systems analyst must manage:
o Team members
o Their activities
o Their time and resources

Project Productivity Goals and Motivation

• Successful projects require that reasonable productivity goals for tangible outputs and
process activities be set.
• Goal-setting helps to motivate team members.

Ecommerce Project Management

Ecommerce and traditional software project management differences:


• The data used by ecommerce systems is scattered across the organization.
• Ecommerce systems need a staff with a wide variety of skills.
• Partnerships must be built externally and internally well ahead of implementation.
• Security is of utmost importance.

Project Charter
• Describes in a written document what the expected results of the systems project
are and the time frame for delivery

Project Charter Clarifies these Questions


• What does the user expect of the project?
• What is the scope of the project?
• What analysis methods will the analyst use to interact with users?
• Who are the key participants?
• What are the project deliverables?
• Who will evaluate the system and how will they evaluate it?
• What is the estimated project timeline?
• Who will train the users?
• Who will maintain the system?

Project Failures
• Project failures may be prevented by:
o Training

31 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


o Experience
o Learning why other projects have failed
o Fishbone diagram systematically lists all of the possible problems that can occur

Fishbone Diagram (Figure 3.23)

The Systems Proposal


• Cover letter
• Title page of project
• Table of contents
• Executive summary
• Outline of systems study with appropriate documentation
• Detailed results of the systems study
• Systems alternatives
• Systems analysts recommendations
• Summary
• Appendices

Using Figures for Effective Communication


• Effective use of tables
• Effective use of graphs

Effective Use of Tables


• Integrate into the body of the proposal
• Try to fit the entire table vertically on a single page.
• Number and title the table at the top of the page.
• Label each row and column.
• Use a boxed table if room permits.
• Use footnotes if necessary to explain detailed information contained in the table.

Effective Use of Graphs


• Choose a style of graph that communicates your intended meaning well.
• Integrate the graph into the body of the proposal.
• Give the graph a sequential figure number and a meaningful title.
• Label each axis, and any lines, columns, bars, or pieces of the pie on the graph.
• Include a key to indicate differently colored lines, shaded bars, or crosshatched area

Read:
Lesson 3 Project Management

32 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:

1. What are the five major project fundamentals?


2. List three ways to find out about problems or opportunities that might call for a systems
solution.
3. List the five criteria for systems project selection.
4. Define technical feasibility.
5. Define economic feasibility.
6. Define operational feasibility.
7. List four criteria for evaluating system hardware.
8. What are the three main options for the acquisition of computer hardware?
9. What is a Gantt chart?
10. When is a PERT diagram useful for systems projects?
11. List three advantages of using a PERT diagram over a Gantt chart for scheduling systems
projects.

Problem:

Glenn’s Electronics, a small company, has set up a computer service. The table that follows
shows the revenue expected for the first five months of operation, in addition to the costs for
office remodeling, and so on. Determine the cash flow and accumulated cash flow for the
company. When is Glenn’s expected to show a profit?

July August September October November


$57,000
Revenue $35,000 $36,000 $42,000 $48,000
Costs Office
25,000 $$8,000
Remodeling
$16,000
Salaries 11,000 12,100 $13,300 $14,600
Training 6,000 6,000
Equipment
8,000 8,480 9,000 9,540 10,110
Lease
Supplies 3,000 3,150 3,300 3,460 3,630

MODULE II INFORMATION REQUIREMENTS ANALYSIS

Overview:

Module II (Lesson 4–6) emphasizes the use of systematic and structured methodologies
for performing information requirements analysis. Attention to analysis helps analysts ensure
that they are addressing the correct problem before designing the system. Lesson 4 introduces
a group of interactive methods, including interviewing, joint application design (JAD), and

33 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


constructing questionnaires. Lesson 5 introduces a group of unobtrusive methods for
ascertaining information requirements of users. These methods include sampling, investigating
hard and archival data, and observation of decision makers’behavior and their physical
environment. Lesson 6 on agile modeling and prototyping is innovative in its treatment of
prototyping as another data-gathering technique that enables the analyst to solve the right
problem by getting users involved from the start. Agile approaches have their roots in
prototyping, so this chapter begins with prototyping to provide a proper context for
understanding, and then takes up the agile approach. The values and principles, activities,
resources, practices, processes, and tools associated with agile methodologies are presented.
This chapter also includes material on rapid application development (RAD) for human
information-requirements gathering and interface design.

Lesson 4: Information Gathering: Interactive Methods

Learning Outcomes:

After successful completion of this lesson, you should be able to:


• Recognize the value of interactive methods for information gathering.
• Construct interview questions to elicit human information requirements.
• Structure interviews in a way that is meaningful to users.
• Understand the concept of JAD and when to use it.
• Write effective questions to survey users about their work.
• Design and administer effective questionnaires.

Course Materials:

• Interviewing
• Interview preparation
• Question types
• Arranging questions
• The interview report

• Joint Application Design (JAD)


• Involvement
• Location
• Questionnaires
• Writing questions
• Using scales
• Design
• Administering
Interviewing
• Interviewing is an important method for collecting data on human and system
information requirements.
• Interviews reveal information about:
• Interviewee opinions
• Interviewee feelings

34 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Goals
• Key HCI concerns
Interview Preparation
• Reading background material
• Establishing interview objectives
• Deciding whom to interview
• Preparing the interviewee
• Deciding on question types and structure
Question Types
• Open-ended
• Closed
Open-Ended Questions

• Open-ended interview questions allow interviewees to respond how they wish, and to
what length they wish.
• Open-ended interview questions are appropriate when the analyst is interested in
breadth and depth of reply.
Advantages of Open-Ended Questions
• Puts the interviewee at ease
• Allows the interviewer to pick up on the interviewee’s vocabulary
• Provides richness of detail
• Reveals avenues of further questioning that may have gone untapped
• Puts the interviewee at ease
• Allows the interviewer to pick up on the interviewee’s vocabulary
• Provides richness of detail
• Reveals avenues of further questioning that may have gone untapped

Disadvantages of Open-Ended Questions


• May result in too much irrelevant detail
• Possibly losing control of the interview
• May take too much time for the amount of useful information gained
• Potentially seeming that the interviewer is unprepared
• Possibly giving the impression that the interviewer is on a “fishing expedition”

Closed Interview Questions


• Closed interview questions limit the number of possible responses.
• Closed interview questions are appropriate for generating precise, reliable data
that is easy to analyze.
• The methodology is efficient, and it requires little skill for interviewers to
administer.

Benefits of Closed Interview Questions


• Saving interview time
• Easily comparing interviews
• Getting to the point
• Keeping control of the interview

35 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Covering a large area quickly
• Getting to relevant data
Disadvantages of Closed Interview Questions
• Boring for the interviewee
• Failure to obtain rich detailing
• Missing main ideas
• Failing to build rapport between interviewer and interviewee

Attributes of Open-Ended and Closed Questions (Figure 4.5)

Bipolar Questions
• Bipolar questions are those that may be answered with a “yes” or “no” or “agree” or
“disagree.”
• Bipolar questions should be used sparingly.
• A special kind of closed question
Probes
• Probing questions elicit more detail about previous questions.
• The purpose of probing questions is:
• To get more meaning
• To clarify
• To draw out and expand on the interviewee’s point
• May be either open-ended or closed
Arranging Questions
• Pyramid
• Starting with closed questions and working toward open-ended questions
• Funnel
• Starting with open-ended questions and working toward closed questions
• Diamond
• Starting with closed, moving toward open-ended, and ending with closed
questions
Pyramid Structure:
• Begins with very detailed, often closed questions
• Expands by allowing open-ended questions and more generalized responses
• Is useful if interviewees need to be warmed up to the topic or seem reluctant to address
the topic
Pyramid Structure for Interviewing Goes from Specific to General Questions (Figure 4.7 )

36 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Funnel Structure
• Begins with generalized, open-ended questions
• Concludes by narrowing the possible responses using closed questions
• Provides an easy, nonthreatening way to begin an interview
• Is useful when the interviewee feels emotionally about the topic
Funnel Structure for Interviewing Begins with Broad Questions then Funnels to Specific
Questions (Figure 4.8)

Diamond Structure

• A diamond-shaped structure begins in a very specific way.


• Then more general issues are examined
• Concludes with specific questions
• Combines the strength of both the pyramid and funnel structures
• Takes longer than the other structures
Diamond-Shaped Structure for Interviewing Combines the Pyramid and Funnel
Structures (Figure 4.9)

Closing the Interview


• Always ask “Is there anything else that you would like to add?”
• Summarize and provide feedback on your impressions.

37 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Ask whom you should talk with next.
• Set up any future appointments.
• Thank them for their time and shake hands.
Interview Report
• Write as soon as possible after the interview.
• Provide an initial summary, then more detail.
• Review the report with the respondent.
Joint Application Design (JAD)
• Joint Application Design (JAD) can replace a series of interviews with the user
community.
• JAD is a technique that allows the analyst to accomplish requirements analysis and
design the user interface with the users in a group setting.

Conditions that Support the Use of JAD


• Users are restless and want something new.
• The organizational culture supports joint problem-solving behaviors.
• Analysts forecast an increase in the number of ideas using JAD.
• Personnel may be absent from their jobs for the length of time required.

Who Is Involved
• Executive sponsor
• IS analyst
• Users
• Session leader
• Observers
• Scribe
Where to Hold JAD Meetings
Offsite
• Comfortable surroundings
• Minimize distractions
Attendance
• Schedule when participants can attend
• Agenda
• Orientation meeting

Benefits of JAD
• Time is saved, compared with traditional interviewing
• Rapid development of systems
• Improved user ownership of the system
• Creative idea production is improved
Drawbacks of Using JAD
• JAD requires a large block of time to be available for all session participants.
• If preparation or the follow-up report is incomplete, the session may not be successful.
• The organizational skills and culture may not be conducive to a JAD session.
Questionnaires

38 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Questionnaires are useful in gathering information from key organization
members about:
• Attitudes
• Beliefs
• Behaviors
• Characteristics
Planning for the Use of Questionnaires
• Organization members are widely dispersed.
• Many members are involved with the project.
• Exploratory work is needed.
• Problem solving prior to interviews is necessary.
Question Types
Questions are designed as either:

Open-ended
• Try to anticipate the response you will get.
• Well suited for getting opinions.
Closed
• Use when all the options may be listed.
• When the options are mutually exclusive.
Tradeoffs between the Use of Open-Ended and Closed Questions on Questionnaires

(Figure 4.12)

Questionnaire Language

• Simple
• Specific
• Short
• Not patronizing
• Free of bias
• Addressed to those who are knowledgeable
• Technically accurate
• Appropriate for the reading level of the respondent
Measurement Scales
The two different forms of measurement scales are:
• Nominal
• Interval
Nominal Scales
• Nominal scales are used to classify things.

39 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• It is the weakest form of measurement
• Data may be totaled

Interval Scales

• An interval scale is used when the intervals are equal.


• There is no absolute zero.
• Examples of interval scales include the Fahrenheit or Centigrade scale

Validity and Reliability

• Reliability of scales refers to consistency in response—getting the same results if


the same questionnaire was administered again under the same conditions.
• Validity is the degree to which the question measures what the analyst intends to
measure.
Problems with Scales
• Leniency
• Central tendency
• Halo effect
Leniency
• Caused by easy raters
• Solution is to move the “average” category to the left or right of center
Central Tendency
• Central tendency occurs when respondents rate everything as average.
• Improve by making the differences smaller at the two ends.
• Adjust the strength of the descriptors.
• Create a scale with more points.
Halo Effect
• When the impression formed in one question carries into the next question
• Solution is to place one trait and several items on each page
Designing the Questionnaire
• Allow ample white space.
• Allow ample space to write or type in responses.

40 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Make it easy for respondents to clearly mark their answers.
• Be consistent in style.
Order of Questions
• Place most important questions first.
• Cluster items of similar content together.
• Introduce less controversial questions first.

When Designing a Web Survey, Keep in Mind that There Are Different Ways to Capture
Responses (Figure 4.13)

Methods of Administering the Questionnaire

• Convening all concerned respondents together at one time


• Personally administering the questionnaire
• Allowing respondents to self-administer the questionnaire
• Mailing questionnaires
• Administering over the Web or via email
Electronically Submitting Questionnaires
• Reduced costs
• Collecting and storing the results electronically

Read:
Lesson 4: INFORMATION GATHERING: INTERACTIVE METHODS
Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/ Assessment:
1. What kinds of information should be sought in interviews?
2. List the five steps in interview preparation.
3. Define what is meant by open-ended interview questions. Give eight benefits and five
drawbacks of using them.
4. When are open-ended questions appropriate for use in interviewing?
5. Define what is meant by closed interview questions. Give six benefits and four

41 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


drawbacks of using them.
6. When are closed questions appropriate for use in interviewing?
7. What is a probing question? What is the purpose of using a probing question in
interviews?
8. Define what is meant by pyramid structure. When is it useful to employ it in
interviews?
9. Define what is meant by funnel structure. When is it useful to employ it in interviews? 10.
Define what is meant by diamond-shaped structure. When is it useful to employ it in
interviews?
11. Define joint application design (JAD).
12. List the situations that warrant use of JAD in place of personal organizational
interviews.
13. List the potential benefits of using joint application design.
14. List the three potential drawbacks of using JAD as an alternative to personal
interviews.
15. What kinds of information is the systems analyst seeking through the use of
questionnaires or surveys?
16. List four situations that make the use of questionnaires appropriate.
17. What are the two basic question types used on questionnaires?
18. List two reasons why a systems analyst would use a closed question on a
questionnaire.
19. List two reasons why a systems analyst would use an open-ended question on a
questionnaire.
20. What are the seven guidelines for choosing language for the questionnaire?

Problems:

The following is the first interview report filed by one of your systems analysis team
members: “In my opinion, the interview went very well. The subject allowed me to talk with him
for an hour and a half. He told me the whole history of the business, which was very interesting.
The subject also mentioned that things have not changed all that much since he has been with
the firm, which is about 16 years. We are meeting again soon to finish the interview, because
we did not have time to go into the questions I prepared.”

a. In two paragraphs, critique the interview report. What critical information is missing?
b. What information is extraneous to the interview report?
c. If what is reported actually occurred, what three suggestions do you have to help your
teammate conduct a better interview next time?

Lesson 5: Information Gathering : Unobtrusive Methods

Learning Outcomes:

After successful completion of this lesson, you should be able to:

• Recognize the value of unobtrusive methods for information gathering.


• Understand the concept of sampling for human information requirements analysis.

42 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Construct useful samples of people, documents, and events for determining human
information requirements.
• Create an analyst’s playscript to observe decision-maker activities.
• Apply the STROBE technique to observe and interpret the decision-maker’s environment
and their interaction with technologies.
Course Materials:

Unobtrusive Methods

• Less disruptive
• Insufficient when used alone
• Multiple methods approach
• Used in conjunction with interactive methods
Sampling
• A process of systematically selecting representative elements of a population
• Involves two key decisions:
• What to examine
• Which people to consider
Need for Sampling
The reasons systems analysts do sampling are:

• Containing costs
• Speeding up the data gathering
• Improving effectiveness
• Reducing bias
Sampling Design
To design a good sample, a systems analyst must follow four steps:
• Determining the data to be collected or described
• Determining the population to be sampled
• Choosing the type of sample
• Deciding on the sample size
Four Main Types of Samples the Analyst Has Available (Figure 5.1)

The Sample Size Decision


• Determine the attribute.
• Locate the database or reports in which the attribute can be found.
• Examine the attribute.
• Make the subjective decision regarding the acceptable interval estimate.
• Choose the confidence level.
• Calculate the standard error.
• Determine the sample size.

43 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


A Table of Area under a Normal Curve Can Be Used to Look up a Value Once the
Systems Analyst Decides on the Confidence Level
(Figure 5.2)

Calculate the Standard Error of the Proportion

sp = i/z

i = interval estimate

z = confidence coefficient found in the confidence level lookup table

Determine the Sample Size

Example: Assembly Company


• Determine that you are looking for orders with mistakes .
• Locate order forms from the past six months.
• Examine order forms and conclude that p=5%.
• Subjective decision of acceptable interval i = ± 0.02
• Look up confidence coefficient z-value = 1.96.
• Calculate sp = i / z = 0.02/1.96 = 0.0102.
• Determine n; n = 458.
Investigation
• The act of discovery and analysis of data
• Hard data
• Quantitative
• Qualitative
Analyzing Quantitative Documents
• Reports used for decision making
• Performance reports
• Records
• Data capture forms
• Ecommerce and other transactions

44 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Reports Used for Decision Making
• Sales reports
• Production reports
• Summary reports
A Manually Completed Payment Record (Figure 5.4)

Data Capture Forms

• Collect examples of all the forms in use.


• Note the type of form.
• Document the intended distribution pattern.
• Compare the intended distribution pattern with who actually receives the form.
Questions to Ask about Official and Bootleg Forms that Are Already Filled out(Figure 5.5)

Analyzing Qualitative Documents

• Key or guiding metaphors


• Insiders vs. outsiders mentality
• What is considered good vs. evil
• Graphics, logos, and icons in common areas or Web pages
• A sense of humor
Analyzing Qualitative Documents
• Email messages and memos
• Signs or posters on bulletin boards
• Corporate Web sites
• Manuals
• Policy handbooks
Analysis of Memos Provides Insight into the Metaphors that
Guide the Organization’s Thinking
(Figure 5.6)

45 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Observation

• Observation provides insight on what organizational members actually do.


• See firsthand the relationships that exist between decision makers and other
organizational members
• Can also reveal important clues regarding HCI concerns
Analyst’s Playscript
• Involves observing the decision-makers behavior and recording their actions using a
series of action verbs
• Examples:
• Talking
• Sampling
• Corresponding
• Deciding

A Sample Page from the Analyst’s Playscript Describing Decision Making


(Figure 5.7)

STROBE

STRuctured OBservation of the Environment—a technique for observing the decision-maker’s


physical environment

STROBE Elements
• Office location
• Desk placement
• Stationary equipment
• Props
• External information sources
• Office lighting and color
• Clothing worn by decision makers
Office Location
• Accessible offices
• Main corridors, open door

46 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Major traffic flow area
• Increase interaction frequency and informal messages
• Inaccessible offices
• May view the organization differently
• Drift apart from others in objectives
Desk Placement
• Visitors in a tight space, back to wall, large expanse behind desk
• Indicates maximum power position
• Desk facing the wall, chair at side
• Encourages participation
• Equal exchanges
Stationary Office Equipment
File cabinets and bookshelves:
• If not present, person stores few items of information personally
• If an abundance, person stores and values information
Props
• Calculators
• Personal computers
• Pens, pencils, and rulers
• If present, person processes data personally
External Information Sources
• Trade journals or newspapers indicate the person values outside information.
• Company reports, memos, and policy handbooks indicate the person values internal
information.
Office Lighting and Color
• Warm, incandescent lighting indicates:
• A tendency toward more personal communication
• More informal communication
• Brightly lit, bright colors indicate:
• More formal communications (memos, reports)
Clothing
• Male
• Formal two-piece suit—maximum authority
• Casual dressing (sport jacket/slacks)—more participative decision making
• Female
• Skirted suit—maximum authority
Observe a Decision Maker’s Office for Clues Concerning His or Her Personal Storage,
Processing, and Sharing of Information (Figure 5.9)

47 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Applying STROBE

• The five symbols used to evaluate how observation of the elements of STROBE
compared with interview results are:
• A checkmark means the narrative is confirmed.
• An “X” means the narrative is reversed.
• An oval or eye-shaped symbol serves as a cue to look further.
• A square means observation modifies the narrative.
• A circle means narrative is supplemented by observation.
An Anecdotal List with Symbols for Use in Applying STROBE
(Figure 5.11)

Read:
Lesson 5 INFORMATION GATHERING: UNOBTRUSIVE METHODS
Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:
1. Define what is meant by sampling.
2. List four reasons why the systems analyst would want to sample data or select
representative people to interview.
3. What are the four steps to follow to design a good sample?
4. List the three approaches to complex random sampling.
5. Define what is meant by stratification of samples.
6. What effect on sample size does using a greater confidence level have when sampling
attribute data?
7. What information about the decision maker does the analyst seek to gain from
observation?
8. List five steps to help the analyst observe the decision maker’s typical activities.
9. In the technique known as the analyst’s playscript, who is the actor?
10. In the analyst’s playscript, what information about managers is recorded in the right-
hand column?

48 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Lesson 6: Agile Modeling and Prototyping
Learning Outcomes:
After successful completion of this lesson, you should be able to:

• Understand the roots of agile modeling in prototyping and the four main types of
prototyping.
• Be able to use prototyping for human information requirements gathering.
• Understand the concept of RAD for use in human information requirements gathering
and interface design.
• Understand agile modeling and the core practices that differentiate it from other
development methodologies.
• Learn the importance of values critical to agile modeling.
• Understand how to improve efficiency for users who are knowledge workers using either
structured methods or agile modeling.

Course Materials:
Agile Modeling, but First Prototyping
• Agile modeling is a collection of innovative, user-centered approaches to systems
development.
• Prototyping is an information-gathering technique useful in seeking user reactions,
suggestions, innovations, and revision plans.
Patched-Up Prototype
• A system that works but is patched up or patched together.
• A working model that has all the features but is inefficient.
• Users can interact with the system.
• Retrieval and storage of information may be inefficient.
Nonoperational Scale Models
• A nonworking scale mode that is set up to test certain aspects of the design.
• A nonworking scale model of an information system might be produced when the coding
required by the application is too expensive to prototype but when a useful idea of the
system can be gained through prototyping of the input and output only.
First-of-a-Series Prototype
• Creating a pilot
• Prototype is completely operational
• Useful when many installations of the same information system are planned
• A full-scale prototype is installed in one or two locations first, and if successful,
duplicates are installed at all locations based on customer usage patterns and other key
factors.

Selected Features Prototype


• Building an operational model that includes some, but not all, of the features that the
final system will have
• Some, but not all, essential features are included
• Built in modules
• Part of the actual system

49 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Four Kinds of Prototypes Clockwise, Starting from the Upper Left
(Figure 6.1)

Prototyping as an Alternative to the Systems Life Cycle


• Two main problems with the SDLC
• Extended time required to go through the development life cycle
• User requirements change over time
• Rather than using prototyping to replace the SDLC use prototyping as a part of the
SDLC
Guidelines for Developing a Prototype
• Work in manageable modules.
• Build the prototype rapidly.
• Modify the prototype in successive iterations.
• Stress the user interface.
Disadvantages of Prototyping
• It can be difficult to manage prototyping as a project in the larger systems effort.
• Users and analysts may adopt a prototype as a completed system.
Advantages of Prototyping
• Potential for changing the system early in its development
• Opportunity to stop development on a system that is not working
• Possibility of developing a system that more closely addresses users’ needs and
expectations
Prototyping Using COTS Software
• Sometimes the quickest way to prototype is through the modular installation of COTS
software.
• Some COTS software is elaborate and expensive, but highly useful.
Users’ Role in Prototyping
• Honest involvement
• Experimenting with the prototype
• Giving open reactions to the prototype
• Suggesting additions to or deletions from the prototype

Rapid Application Development (RAD)


• An object-oriented approach to systems development that includes a method of
development as well as software tools
RAD Phases
• Requirements planning
• RAD design workshop
• Implementation

50 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


The RAD Design Workshop Is the Heart of the Interactive Development Process
(Figure 6.4)

Requirements Planning Phase


• Users and analysts meet to identify objectives of the application or system.
• Orientation is toward solving business problems.
RAD Design Workshop
• Design and refine phase.
• Use group decision support systems room if available.
• Users respond to actual working prototypes.
• Analysts refine designed modules based on user responses.
Implementation Phase
• As the systems are built and refined, the new systems or part of systems are tested and
then introduced to the organization.
• When creating new systems, there is no need to run old systems in parallel.
Comparing RAD to the SDLC
• RAD software tools are used to generate screens and exhibit the overall flow of the
running of the application.
• RAD users are signing off on a visual model representation.
• RAD implementation is less stressful because users have helped to design the business
aspects of the system.
The RAD Design Workshop and the SDLC Approach Compared
(Figure 6.5)

When to Use RAD


• The team includes programmers and analysts who are experienced with it.
• There are pressing reasons for speeding up application development.
• The project involves a novel ecommerce application and needs quick results.
• Users are sophisticated and highly engaged with the goals of the company.
Disadvantages of RAD
• Trying to hurry the project too much

51 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Lack of documentation
Agile Modeling
• Agile methods are a collection of innovative, user-centered approaches to systems
development.
Values and Principles of Agile Modeling
• Communication
• Simplicity
• Feedback
• Courage

Values Are Crucial to the Agile Approach


(Figure 6.6)

The Basic Principles of Agile Modeling


• Satisfy the customer through delivery of working software.
• Embrace change, even if introduced late in development.
• Continue to deliver functioning software incrementally and frequently.
• Encourage customers and analysts to work together daily.
• Trust motivated individuals to get the job done.
• Promote face-to-face conversation.
• Concentrate on getting software to work.
• Encourage continuous, regular, and sustainable development.
• Adopt agility with attention to mindful design.
• Support self-organizing teams.
• Provide rapid feedback.
• Encourage quality.
• Review and adjust behavior occasionally.
• Adopt simplicity.
Activities, Resources, and Practices of Agile Modeling
• Coding
• Testing
• Listening
• Designing
Four Resource Control Variables of Agile Modeling
• Time
• Cost
• Quality
• Scope
Four Core Agile Practices
• Short releases
• 40-hour work week
• Onsite customer
• Pair programming
The Agile Development Process
• Listen for user stories.
• Draw a logical workflow model.

52 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Create new user stories based on the logical model.
• Develop some display prototypes.
• Create a physical data model using feedback from the prototypes and logical workflow
diagrams.
Writing User Stories
• Spoken interaction between developers and users
• Seeking first and foremost to identify valuable business user requirements
• The goal is prevention of misunderstandings or misinterpretations of user requirements.
User Stories Can Be Recorded on Cards: The User Story Should Be Brief Enough for an
Analyst to Determine What Systems Features Are Needed
(Figure 6.8)

Scrum
• Begin the project with a high-level plan that can be changed on the fly.
• Success of the project is most important.
• Individual success is secondary.
• Project leader has some (not much) influence on the detail.
• Systems team works within a strict time frame.
• Product backlog
• Sprint backlog
• Sprint
• Daily scrum
• Demo
Lessons Learned from Agile Modeling
• Short releases allow the system to evolve.
• Pair programming enhances the overall quality.
• Onsite customers are mutually beneficial to the business and the agile development
team.
• The 40-hour work week improves worker effectiveness.
• Balanced resources and activities support project goals.
• Agile values are crucial to success.
There Are Six Vital Lessons that Can Be Drawn from the Agile Approach to Systems
(Figure 6.9)

Comparing Agile Modeling and Structured Methods

53 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Improving the efficiency of systems development
• Risks inherent in organizational innovation
Strategies for Improving Efficiency Can Be Implemented Using
Two Different Development Approaches
(Figure 6.10)

Adopting New Information Systems Involves Balancing Several Risks


(Figure 6.11)

Risks When Adopting New Information Systems


• Fit of development team culture
• Best time to innovate
• Training cost for analysts and programmers
• Client’s reaction to new methodology
• Impact of agile methodologies
• Programmers/Analysts individual rights
• Dangers to adopting innovative approaches

Read:
Lesson 6 AGILE MODELING AND PROTOTYPING
Systems Analysis and Design by Kendall & Kendall 8th ed.
Activities/Assessments:
1. What four kinds of information is the analyst seeking through prototyping?
2. What is meant by the term patched-up prototype?
3. Define a prototype that is a nonworking scale model.
4. Give an example of a prototype that is a first full-scale model.
5. Define what is meant by a prototype that is a model with some, but not all, essential
features.

54 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


6. List the advantages and disadvantages of using prototyping to replace the traditional
SDLC.
7. Describe how prototyping can be used to augment the traditional SDLC.
8. What are the criteria for deciding whether a system should be prototyped?
9. List four guidelines the analyst should observe in developing a prototype.
10. What are the two main problems identified with prototyping?
11. List the three main advantages in using prototyping.
12. How can a prototype mounted on an interactive Web site facilitate the prototyping
process? Answer in a paragraph.
13. What are three ways that a user can be of help in the prototyping process?
14. Define what is meant by RAD.
15. What are the three phases of RAD?
16. What are the four values that must be shared by the development team and business
customers when taking an agile approach?
17. What are agile principles? Give five examples.
18. What are the four core practices of the agile approach?
19. Name the four resource control variables used in the agile approach.
20. Outline the typical steps in an agile development episode
21. What is a user story? Is it primarily written or spoken? State your choice, then defend
your answer with an example.
22. List software tools that can aid the developer in doing a variety of tests of code.
23. What is scrum?
24. Name the seven strategies for improving efficiency in knowledge work.
25. Identify six risks in adopting organizational innovation.

Problem:
Harold, a district manager for the multioutlet chain of Sprocket’s Gifts, thinks that
building a prototype can mean only one thing: a nonworking scale model. He also believes that
this way is too cumbersome to prototype information systems and thus is reluctant to do so.
a. Briefly (in two or three paragraphs) compare and contrast the other three kinds of
prototyping that are possible so that Harold has an understanding of what prototyping can
mean.
b. Harold has an option of implementing one system, trying it, and then having it
installed in five other Sprocket locations if it is successful. Name a type of prototyping that would
fit well with this approach, and in a paragraph defend your choice.

MODULE III ANALYSIS PROCESS

Overview:
Module III (Lesson 7–10) details the analysis process. It builds on the previous two parts
to move students into analysis of data flows as well as structured and semistructured decisions.
It provides step-by-step details on how to use structured techniques to draw data flow diagrams
(DFDs). Lesson 7 provides coverage of how to create child diagrams; how to develop both
logical and physical data flow diagrams; and how to partition data flow diagrams. Lesson 8

55 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


features material on the data repository and vertical balancing of data flow diagrams. Also
includes extensive coverage of extensible markup language (XML) and demonstrates how to
use data dictionaries to create XML. Lesson 9 includes material on developing process
specifications. A discussion of both logical and physical process specifications shows how to
use process specifications for horizontal balancing. Lesson 9 also covers how to diagram
structured decisions with the use of structured English, decision tables, and decision trees. In
addition, the chapter covers how to choose an appropriate decision analysis method for
analyzing structured decisions and creating process specifications. Push technologies are also
introduced.

Concludes with Lesson 10 on object-oriented systems analysis and design. This lesson
includes an in-depth section on using unified modeling language (UML). There is detailed
coverage of the use case model, creating the class model diagram with UML, sequence
diagrams, creating gen/spec diagrams, use case scenarios, and activity diagrams. Through
several examples and Consulting Opportunities, this Lesson demonstrates how to use an
object-oriented approach, diagrams, and problems enable students to learn and use UML to
model systems from an object-oriented perspective. Students learn the appropriate situations
for using an object-oriented approach.

Lesson 7: Using Data Flow Diagram


Learning Outcomes:
After successful completion of this lesson, you should be able to:

• Comprehend the importance of using logical and physical data flow diagrams (DFDs) to
graphically depict movement for humans and systems in an organization.
• Create, use, and explode logical DFDs to capture and analyze the current system
through parent and child levels.
• Develop and explode logical DFDs that illustrate the proposed system.
• Produce physical DFDs based on logical DFDs you have developed.
• Understand and apply the concept of partitioning of physical DFDs.
Course Materials:
Data Flow Diagrams
• Graphically characterize data processes and flows in a business system.
• Depict:
• System inputs
• Processes
• Outputs

56 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Advantages of the Data Flow Approach
• Freedom from committing to the technical implementation too early
• Understanding of the interrelatedness of systems and subsystems
• Communicating current system knowledge to users
• Analysis of the proposed system
Basic Symbols
• A double square for an external entity
• An arrow for movement of data from one point to another
• A rectangle with rounded corners for the occurrence of a transforming process
• An open-ended rectangle for a data store

The Four Basic Symbols Used in Data Flow Diagrams, Their Meanings, and Examples
(Figure 7.1)

External Entities
• Represent another department, a business, a person, or a machine
• A source or destination of data, outside the boundaries of the system
• Should be named with a noun

Data Flow
• Shows movement of data from one point to another
• Described with a noun
• Arrowhead indicates the flow direction
• Represents data about a person, place, or thing

Process
• Denotes a change in or transformation of data
• Represents work being performed in the system
• Naming convention:
• Assign the name of the whole system when naming a high-level process.
• To name a major subsystem attach the word subsystem to the name.
• Use the form verb-adjective-noun for detailed processes.
Data Store
• A depository for data that allows examination, addition, and retrieval of data
• Named with a noun, describing the data
• Data stores are usually given a unique reference number, such as D1, D2, D3
• Represents a:
• Database
• Computerized file
• Filing cabinet

57 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Steps in Developing Data Flow Diagrams (Figure 7.2)

Creating the Context Diagram


• The highest level in a data flow diagram
• Contains only one process, representing the entire system
• The process is given the number 0
• All external entities, as well as major data flows are shown
Basic Rules
• The data flow diagram must have one process.
• Must not be any freestanding objects
• A process must have both an input and output data flow.
• A data store must be connected to at least one process.
• External entities should not be connected to one another.
Context Diagram (Figure 7.3)

Drawing Diagram 0
• The explosion of the context diagram.
• May include up to nine processes.
• Each process is numbered.
• Major data stores and all external entities are included.
• Start with the data flow from an entity on the input side.
• Work backwards from an output data flow.
• Examine the data flow to or from a data store.
• Analyze a well-defined process.
• Take note of any fuzzy areas.
Note Greater Detail in Diagram 0
(Figure 7.3)

58 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Data Flow Diagram Levels
• Data flow diagrams are built in layers.
• The top level is the context level.
• Each process may explode to a lower level.
• The lower level diagram number is the same as the parent process number.
• Processes that do not create a child diagram are called primitive.
Creating Child Diagrams
• Each process on diagram 0 may be exploded to create a child diagram.
• A child diagram cannot produce output or receive input that the parent process does not
also produce or receive.
• The child process is given the same number as the parent process.
• Process 3 would explode to Diagram 3.
• Entities are usually not shown on the child diagrams below Diagram 0.
• If the parent process has data flow connecting to a data store, the child diagram may
include the data store as well.
• When a process is not exploded, it is called a primitive process.
Differences between the Parent Diagram (above) and the Child Diagram (below) (Figure 7.4)

Checking the Diagrams for Errors (Figure 7.5)


• Forgetting to include a data flow or pointing an arrow in the wrong direction

59 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Connecting data stores and external entities directly to each other

• Incorrectly labeling processes or data flow


• Including more than nine processes on a data flow diagram
• Omitting data flow
• Creating unbalanced decomposition (or explosion) in child diagrams
Typical Errors that Can Occur in a Data Flow Diagram (Payroll Example)
(Figure 7.5)

Logical and Physical Data Flow Diagrams


• Logical
• Focuses on the business and how the business operates
• Not concerned with how the system will be constructed
• Describes the business events that take place and the data required and
produced by each event
• Physical
• Shows how the system will be implemented
• Depicts the system
Features Common of Logical and Physical Data Flow Diagrams
(Figure 7.7)

60 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Developing Logical Data Flow Diagrams
• Better communication with users
• More stable systems
• Better understanding of the business by analysts
• Flexibility and maintenance
• Elimination of redundancy and easier creation of the physical model
Developing Physical Data Flow Diagrams
• Clarifying which processes are performed by humans and which are automated
• Describing processes in more detail
• Sequencing processes that have to be done in a particular order
• Identifying temporary data stores
• Specifying actual names of files and printouts
• Adding controls to ensure the processes are done properly
Physical Data Flow Diagrams Contain Many Items Not Found in
Logical Data Flow Diagrams(Figure 7.10)

Event Modeling and Data Flow Diagrams


• An input flow from an external entity is sometimes called a trigger because it starts the
activities of a process.
• Events cause the system to do something and act as a trigger to the system.
• An approach to creating physical data flow diagrams is to create a data flow diagram
fragment for each unique system event.

Event Response Tables


• An event table is used to create a data flow diagram by analyzing each event and the
data used and produced by the event.
• Every row in an event table represents a data flow diagram fragment and is used to
create a single process on a data flow diagram.

61 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


An Event Response Table for an Internet Storefront(Figure 7.12)

Data Flow Diagrams for the First Three Rows of the Internet
Storefront Event Response Table (Figure 7.13)

Use Cases and Data Flow Diagrams


• Each use case defines one activity and its trigger, input, and output.
• Allows the analyst to work with users to understand the nature of the processes and
activities and then create a single data flow diagram fragment

Partitioning Data Flow Diagrams


• Partitioning is the process of examining a data flow diagram and determining how it
should be divided into collections of manual procedures and computer programs.
• A dashed line is drawn around a process or group of processes that should be placed in
a single computer program.

Reasons for Partitioning


• Different user groups
• Timing
• Processes may be separated into different programs for security
• Similar tasks
• Efficiency
• Consistency
• Security
Partitioning Web Sites
• Improves the way humans use the site
• Improves speed of processing
• Ease of maintaining the site
• Keep the transaction secure
Communicating Using Data Flow Diagrams

62 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Use unexploded data flow diagrams early when ascertaining information requirements.
• Meaningful labels for all data components
Read:
Lesson 7 USING DATA FLOW DIAGRAM
Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:
1. What is one of the main methods available for the analyst to use when analyzing data-
oriented systems?
2. What are the four advantages of using a data flow approach over narrative explanations
of data movement?
3. What are the four data items that can be symbolized on a data flow diagram?
4. What is a context-level data flow diagram? Contrast it to a level 0 DFD.
5. Define the top-down approach as it relates to drawing data flow diagrams
6. Describe what “exploding” data flow diagrams means.
7. What are the trade-offs involved in deciding how far data streams should be exploded?
8. Why is labeling data flow diagrams so important? What can effective labels on data flow
diagrams accomplish for those unfamiliar with the system?
9. What is the difference between a logical and physical data flow diagram?
10. List three reasons for creating a logical data flow diagram.
11. List five characteristics found on a physical data flow diagram that are not on a logical
data flow diagram.
12. When are transaction files required in the system design?
13. How can an event table be used to create a data flow diagram?
14. List the major sections of a use case.
15. How can a use case be used to create a data flow diagram?
16. What is partitioning, and how is it used?
17. How can an analyst determine when a user interface is required?
18. List three ways of determining partitioning in a data flow diagram.
19. List three ways to use completed data flow diagrams.

Problems:
1. One common experience that students in every college and university share is enrolling
in a college course.
a. Draw a level 1 data flow diagram of data movement for enrollment in a college course.
Use a single sheet and label each data item clearly.
b. Explode one of the processes in your original data flow diagram into
subprocesses, adding data flows and data stores.
c. List the parts of the enrollment process that are “hidden” to the outside observer
and about which you have had to make assumptions to complete a second-level
diagram.
2. Figure 7.EX1 is a level 1 data flow diagram of data movement in a Niagara Falls tour
agency called Marilyn’s Tours. Read it over, checking for any inaccuracies.
a. List and number the errors that you have found in the diagram.
b. Redraw and label the data flow diagram of Marilyn’s so that it is correct. Be sure that
your new diagram employs symbols properly so as to cut down on repetitions and
duplications where possible.

63 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Figure 7.EX1

D1 COST OF TOUR
PRIVATE
TRAVEL
AGENT

1 2
CHECK DETERMINE
AIRLINE CREDIT TOURIST
TOUR
TRAVEL
AGENT
DESIRED

CASH
TOURIST WITH PAYING 3
CHARGE CARD TOURIST
D2 TRAVEL BROCHURE MAKE
RESERV
D3 TRAVEL ITENERARY ATION

D4 CREDIT HISTORY

64 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Lesson 8: Analyzing System Using Dictionaries

Learning Outcomes:
After successful completion of this lesson, you should be able to:

• Understand analysts use of data dictionaries for analyzing data-oriented systems.


• Create data dictionary entries for data processes, stores, flows, structures, and logical
and physical elements of the systems being studied, based on DFDs.
• Understand the concept of a repository for analysts’ project information and the role of
CASE tools in creating them.
• Recognize the functions of data dictionaries in helping users update and maintain
information systems.

Course Materials:
Cataloging
• Data flow diagrams can be used to catalog:
• Data processes
• Flows
• Stores
• Structures
• Elements
• Cataloging takes place with the data dictionary
The Data Dictionary
• A reference work of data about data (metadata)
• Collects and coordinates data terms, and confirms what each term means to different
people in the organization

Need for Understanding the Data Dictionary


• Provide documentation.
• Eliminate redundancy.
• Validate the data flow diagram.
• Provide a starting point for developing screens and reports.
• Determine the contents of data stored in files.
• To develop the logic for DFD processes.
• Create XML.

The Data Repository


• A data repository is a large collection of project information.
• It includes:
• Information about the data maintained by the system
• Procedural logic and use cases
• Screen and report design
• Data relationships
• Project requirements and final system deliverables
• Project management information
How Data Dictionaries Relate to Data Flow Diagrams (Figure 8.1)

65 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Data Dictionary Categories
• Data flows
• Data structures
• Elements
• Data stores

Defining the Data Flow


• ID—identification number
• Unique descriptive name
• A general description of the data flow
• The source of the data flow
• The destination of the data flow
• Type of data flow
• The name of the data structure describing the elements
• The volume per unit time
• An area for further comments and notations

An Example of a Data Flow Description from World’s Trend Catalog Division


(Figure 8.3)

Describing Data Structures


• Data structures are made up of smaller structures and elements.
• An algebraic notation is used to describe data structures.
Algebraic Notation
• Equal sign, meaning “is composed of”
• Plus sign, meaning “and”

66 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Braces {} meaning repetitive elements
• Brackets [] for an either/or situation
• Parentheses () for an optional element

Data Structure Example for Adding a Customer Order at World’s Trend Catalog Division
(Figure 8.4)

Structural Records
• A structure may consist of elements or structural records.
• These are a group of elements, such as:
• Customer name
• Address
• Telephone
• Each of these must be further defined until they are broken down into their component
elements.
Structural Records Used in Different Systems
• Structural records and elements that are used within many different systems are given a
non-system-specific name, such as street, city, and zip.
• The names do not reflect a functional area.
• This allows the analyst to define them once and use in many different applications.
Structural Record Example

Logical and Physical Data Structures


• Logical:
• Show what data the business needs for its day-to-day operations.
• Physical:
• Include additional elements necessary for implementing the system.
Physical Data Structures
• Key fields used to locate records
• Codes to identify record status
• Transaction codes to identify different record types
• Repeating group entries

67 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Limits on items in a repeating group
• Password
An Element Description Form Example from World’s Trend Catalog Division
(Figure 8.6)

Data Element Characteristics


• Element ID
• The name of the element
• Aliases
• A short description of the element
• Element is base or derived
• Element length
• Type of data
• Input and output formats
• Validation criteria
• Default value
• An additional comment or remark area
Element ID
• Optional entry
• Allows the analyst to build automated data dictionary entries
The Name of the Element
• Should be:
• Descriptive
• Unique
• Based on what the element is commonly called in most programs or by the major user of
the element
Aliases
• Synonyms or other names for the element
• Names used by different users in different systems
• A CUSTOMER NUMBER may also be called a RECEIVABLE ACCOUNT NUMBER or a
CLIENT NUMBER.
Short Description of the Element
• An example might be:
• Uniquely identifies a customer who has made any business transactions within
the last five years
• Element Is Base or Derived
A base element is one that has been initially keyed into the system.
• A derived element is one that is created by a process, usually as the result of a
calculation or a series of decision-making statements.
Element Length
What should the element length be?
• Some elements have standard lengths, state abbreviations, zip codes, or
telephone numbers.

68 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• For other elements, the length may vary and the analyst and user community
must decide the final length.

Element Length Considerations


• Numeric amount lengths
• Name and address fields
• Other fields
Name and Address Length
Percent of data that will
Element Length fit (United States)
Last Name 11 98
First Name 18 95
Company Name 20 95
Street 18 90
City 17 99

Data Truncation
• If the element is too small, the data will be truncated.
• The analyst must decide how this will affect the system outputs.
• If a last name is truncated, mail would usually still be delivered.
• A truncated email address or Web address is not usable.
Type of Data
• Alphanumeric or text data
• Formats
• Mainframe: packed, binary, display
• Microcomputer (PC) formats
• PC formats, such as Currency, Number, or Scientific, depend on how the data
will be used
Some Examples of Data Formats Used in PC Systems(Figure 8.7)

69 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Format Character Codes (Figure 8.8)

Validation Criteria
• Ensure that accurate data are captured by the system
• Elements are either:
• Discrete, meaning they have fixed values
• Continuous, with a smooth range of values
Default Value
• Include any default value the element may have
• The default value is displayed on entry screens.
• Reduces the amount of keying
• Default values on GUI screens
• Initially display in drop-down lists
• Are selected when a group of radio buttons are used
Comment or Remarks Area
• This might be used to indicate the format of the date, special validation that is required,
the check-digit method used, and so on
Data Stores
• Data stores are created for each different data entity being stored.
• When data flow base elements are grouped together to form a structural record, a data
store is created for each unique structural record.
• Because a given data flow may only show part of the collective data that a structural
record contains, many different data flow structures may need to be examined to arrive
at a complete data store description.
Describing the Data Store
• The data store ID
• The data store name
• An alias for the table

70 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• A short description of the data store
• The file type
• File format
• The maximum and average number of records on the file as well as the growth per year
• The file or data set name specifies the file name, if known.
• The data structure should use a name found in the data dictionary.
• Primary and secondary keys
• Comments
Example of a Data Store Form for World’s Trend Catalog Division(Figure 8.9)

Creating the Data Dictionary


• Data dictionary entries
• Created after the data flow diagram is completed or
• Created as the data flow diagram is being developed
• Created using a top-down approach
Two Data Flow Diagrams and Corresponding Data Dictionary
Entries for Producing an Employee Paycheck(Figure 8.11)

Analyzing Input and Output


• A descriptive name for the input or output
• The user contact responsible
• Whether the data is input or output

71 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• The format of the data flow
• Elements indicating the sequence of the data on a report or screen
• A list of elements
An Example of an Input/Output Analysis Form for World’s Trend Catalog Division (Figure
8.12)

Developing Data Stores


• Represent data at rest.
• Contain information of a permanent or semipermanent (temporary) nature.
• When data stores are created for only one report or screen, we refer to them as “user
views”.
Using the Data Dictionary
• To have maximum power, the data dictionary should be tied into a number of systems
programs.
• May be used to
• Create screens, reports, and forms
• Generate computer language source code
• Analyze the system design, detecting flaws and areas that need clarification
Create Screens, Reports, and Forms
• Use the element definition and their lengths.
• Arrange the elements in a pleasing and functional way using design guidelines and
common sense.
• Repeating groups become columns.
• Structural records are grouped together on the screen, report, or form.
Analyze the System Design, Detecting Flaws and Areas that Need Clarification
• All base elements on an output data flow must be present on an input data flow to the
process producing the output.
• A derived element should be created by a process and should be output from at least
one process into which it is not input.
• The elements that are present in a data flow coming into or going out of a data store
must be contained in the data store.
Using Data Dictionaries to Create XML
• XML is used to exchange data between businesses.
• XML addresses the problem of sharing data when users have different computer
systems and software or different database management systems.
• XML documents may be transformed into different output formats.

72 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• XML is a way to define, sort, filter, and translate data into a universal data language that
can be used by anyone.
• XML may be created from databases, a form, software programs, or keyed directly into a
document, text editor, or XML entry program.
• The data dictionary is an ideal starting point for developing XML content.
• A standard definition of the data is created using a set of tags that are included before
and after each data element or structure.
• XML elements may also include attributes.
• The XML document tends to mirror the data dictionary structure.

Using a Data Dictionary Entry to Develop XML Content: The


XML Document Mirrors the Data Dictionary Structure(Figure 8.16)

XML Document Type Definitions


• Used to determine if the XML document content is valid
• DTDs may be created using the data dictionary.
• DTD may be used to validate the XML document.
A Document Type Definition for the Customer XML Document(Figure 8.17)

XML Schemas
• A more precise way to define the content of an XML document
• Includes exact number of times an element may occur
• Includes type of data within elements
Read:
Lesson 8 ANALYZING SYSTEM USING DICTIONARIES
Systems Analysis and Design by Kendall & Kendall 8th ed.

73 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Activities/Assessments:
1. Define the term data dictionary. Define metadata.
2. What are four reasons for compiling a complete data dictionary?
3. What information is contained in the data repository?
4. What is a structural record?
5. List the eight specific categories that each entry in the data dictionary should contain.
Briefly give the definition of each category.
6. What are the basic differences among data dictionary entries prepared for data stores,
data structures, and data elements?
7. Why are structural records used?
8. What is the difference between logical and physical data structures?
9. Describe the difference between base and derived elements.
10. How do the data dictionary entries relate to levels in a set of data flow diagrams?
11. List the four steps to take in compiling a data dictionary.
12. Why shouldn’t compiling the data dictionary be viewed as an end in itself?
13. What are the main benefits of using a data dictionary?
14. What does extensible markup language (XML) describe?
15. What is a document type definition?
16. How does a document type definition help to ensure that an XMLdocument contains all
necessary elements?
17. When should attributes be used in an XMLdocument?
18. What does an ID attribute ensure?
19. What does an IDREF attribute validate?

Activity:
Based on Figure 7.EX1 in Chapter 7, Joe, one of your systems analysis team members, made
the following entry for the data dictionary used by Marilyn’s Tours:
DATA ELEMENT
TOURIST* * * * PAYMENT ALIAS
TOURIST PAY CHARACTERS
12–24 RANGE
$5.00–$1,000 VARIABLES
$5.00, $10.00, $15.00 up to $1,000, and anything in between in dollars and cents.
TO CALCULATE=TOTAL COST OFALLTOURS,ANYAPPLICABLE N.Y. STATE TAX, minus
any RESERVATION DEPOSITS made.
a. Is this truly a data element? Why or why not?
b. Rewrite the data dictionary entry for TOURIST PAYMENT, reclassifying it if necessary. Use
the proper form for the classification you choose.

74 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Lesson 9: Process Specification and Structured Decision

Learning Outcomes:
After successful completion of this lesson, you should be able to:

• Understand the purpose of process specifications.


• Recognize the difference between structured and semistructured decisions.
• Use structured English, decision tables, and decision trees to analyze, describe, and
document structured decisions.
• Choose an appropriate decision analysis method for analyzing structured decisions and
creating process specifications.

Course Materials:
Logic of Decisions
• Documenting and analyzing logic:
• Structured English
• Decision tables
• Decision trees
• Logic and structured decisions are distinguishable from semistructured decisions.
• Structured decision analysis methods promote completeness, accuracy, and
communication.
Process Specifications
• Sometimes called minispecs
• Created for primitive processes as well as for some higher level processes on a data
flow diagram
• Created for class methods in object-oriented design and for the steps in a use case
Goals of Producing Process Specifications
• Reduce process ambiguity.
• Obtain a precise description of what is accomplished.
• Validate the system design.
Process Specifications Are Not Created
• Processes that represent physical input and/or output
• Processes that represent simple data validation
• Processes that use prewritten code

How Process Specifications Relate to the Data Flow Diagram(Figure 9.1)

Process Specification Format Information


• The process number
• The process name
• Description of what the process accomplishes
• A list of input data flow

75 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Output data flows
• Type of process
• Uses prewritten code
• Process logic description
• Logic method reference
• List any unresolved issues
The Process Number
• Must match the process ID on the data flow diagram
• Allows the analyst to work on or review any process, and to locate the data flow diagram
containing the process easily
The Process Name
• The same as displays within the process symbol on the DFD
Description of What the Process Accomplishes
• Example:
Determine if an item is available for sale. If it is not available, create a backordered item
record. Determine the quantity available.
List of Input Data Flow
• Uses the names found on the data flow diagram
• Data names used in the formula or logic should match the data dictionary, for
consistency and good communication.
Output Data Flows
• Uses data flow diagram and data dictionary names
Type of Process
• Batch
• Online
• Require screen designs
• Manual
• Should have well-defined procedures for employees performing the process
tasks
Uses Prewritten Code
• Include the name of the subprogram or function containing the code.
Process Logic Description
• This should state policy and business rules, not computer language pseudocode
• Business rules are the procedures that allow a corporation to run its business.
Common Business Rule Formats
• Definitions of business terms
• Business conditions and actions
• Data integrity constraints
• Mathematical and functional derivations
• ogical inferences
• Processing sequences
• Relationships among facts about the business
Logic Method Reference
• If there is not enough room for a complete structured English description include a
reference to the structured English description, decision table, or tree depicting the logic.
List Any Unresolved Issues
• Incomplete portions of logic
• These issues form the basis of the questions used for follow-up interviews with users or
business experts you have added to your project team

76 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


An Example of a Completed Process Specification Form for
Determining Whether an Item Is Available(Figure 9.2)

Structured English
• Used when the process logic involves formulas or iteration, or when structured decisions
are not complex
• Based on structured logic and simple English statements such as add, multiply, and
move
Writing Structured English
• Express all logic in terms of sequential structures, decision structures, case structures,
or iterations.
• Use and capitalize accepted keywords such as IF, THEN, ELSE, DO, and PERFORM.
• Indent blocks of statements to show their hierarchy (nesting) clearly.
• Underline words or phrases that have been defined in a data dictionary.
• Clarify the logical statements.
Examples of Logic Expressed in a Sequential Structure, a Decision Structure,
a Case Structure, and an Iteration(Figure 9.3)

Advantages of Structured English


• Clarifying the logic and relationships found in human languages
• An effective communication tool, it can be taught to and understood by users in the
organization

77 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Data Dictionary and Process Specification
• The data dictionary is a starting point for creating structured English:
• Sequence—a simple sequence of statements MOVE, ADD, and
SUBTRACT
• Selection—[] entries become IF…THEN...ELSE statements
• Iteration { } entries become DO WHILE, DO UNTIL, or PERFORM UNTIL.

Decision Tables
• A table of rows and columns, separated into four quadrants:
• Conditions
• Condition alternatives
• Actions to be taken
• Rules for executing the actions

Standard Format Used for Presenting a Decision Table(Figure 9.7)

Constructing a Decision Table for Deciding Which Catalog to Send to


Customers Who Order Only from Selected Catalogs(Figure 9.9)

Developing Decision Tables


• Determine conditions that affect the decision.
• Determine possible actions that can be taken.
• Determine condition alternatives for each condition.
• Calculate the maximum number of columns in the decision table.
• Fill in the condition alternatives.
• Complete table by inserting an X where rules suggest actions.
• Combine rules where it is apparent.
• Check for impossible situations.
• Rearrange to make more understandable.
Checking for Completeness and Accuracy

78 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Four main problems:
• Incompleteness
• Impossible situations
• Contradictions
• Redundancy
Checking the Decision Table for Inadvertent Contradictions and
Redundancy Is Important(Figure 9.13)

Decision Table Advantages


• Help the analysis ensure completeness
• Easy to check for possible errors
• Impossible situations
• Contradictions
• Redundancy
Decision Trees
• Decision trees are used when complex branching occurs in a structured decision
process.
• Trees are also useful when it is essential to keep a string of decisions in a particular
sequence.
Drawing Decision Trees
• Identify all conditions and actions and their order and timing (if they are critical).
• Begin building the tree from left to right, making sure you list all possible alternatives
before moving to the right.
Drawing a Decision Tree to Show the Noncash Purchase
Approval Actions for a Department Store(Figure 9.14)

Decision Tree Advantages


• The order of checking conditions and executing actions is immediately noticeable.
• Conditions and actions of decision trees are found on some branches but not on others.

79 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Compared to decision tables, decision trees are more readily understood by others in
the organization.

Selecting a Structured Decision Analysis Technique


• Use structured English when there are many repetitious actions or when communication
to end users is important.
• Use decision tables when a complex combination of conditions, actions, and rules are
found or you require a method that effectively avoids impossible situations,
redundancies, and contradictions.
• Use decision trees when the sequence of conditions and actions is critical or when not
every condition is relevant to every action (the branches are different).

• Actions are repeated and when communicating with others is important.


• Decision tables provide complete analysis of complex situations while limiting the
need for change attributable to impossible situations, redundancies, or
contradictions
• Decision trees are important when proper sequencing of conditions and actions
is critical and when each condition is not relevant to each action.
Read:
LESSON 9 PROCESS SPECIFICATION AND STRUCTURED DECISION
Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessments:
1. List three reasons for producing process specifications.
2. Define what is meant by a structured decision.
3. What four elements must be known for the systems analyst to design systems for
structured decisions?
4. What are the two building blocks of structured English?
5. List five conventions that should be followed when using structured English.
6. What is the advantage of using structured English to communicate with people in the
organization?
7. Which quadrant of the decision table is used for conditions? Which is used for condition
alternatives?
8. What is the first step to take in developing a decision table?
9. List the four main problems that can occur in developing decision tables.
10. What is one of the major advantages of decision tables over other methods of decision
analysis?
11. What are the main uses of decision trees in systems analysis?
12. List the four major steps in building decision trees.
13. What three advantages do decision trees have over decision tables?
14. In which two situations should you use structured English?
15. In which two situations do decision tables work best?
16. In which two situations are decision trees preferable?

80 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Activity :

A computer supplies firm called True Disk has set up accounts for countless businesses in
Dosville. True Disk sends out invoices monthly and will give discounts if payments are made
within 10 days. The discounting policy is as follows: If the amount of the order for computer
supplies is greater than $1,000, subtract 4 percent for the order; if the amount is between $500
and $1,000, subtract a 2 percent discount; if the amount is less than $500, do not apply any
discount. All orders made via the Web automatically receive an extra 5 percent discount. Any
special order (computer furniture, for example) is exempt from all discounting.
a. Develop a decision table for True Disk discounting decisions, for which the condition
alternatives are limited to Yand N.
b. Develop an extended-entry decision table for the True Disk company discount
policy described in Problem 1.
c. Develop a decision tree for the True Disk company discount policy in Problem 1.
d. Write structured English to solve the True Disk company situation in Problem 1.

Lesson 10: Object-Oriented System Analysis and Design Using UML


Learning Outcomes:
After successful completion of this lesson, you should be able to:

• Understand what object-oriented systems analysis and design is and appreciate its
usefulness.
• Comprehend the concepts of unified modeling language (UML), the standard approach
for modeling a system in the object-oriented world.
• Apply the steps used in UML to break down the system into a use case model and then
a class model.
• Diagram systems with the UML toolset so they can be described and properly designed.
• Document and communicate the newly modeled object-oriented system to users and
other analysts.
Course Materials:
Object-Oriented Analysis and Design
• Works well in situations where complicated systems are undergoing continuous
maintenance, adaptation, and design
• Objects, classes are reusable
• The Unified Modeling Language (UML) is an industry standard for modeling object-
oriented systems.
• Reusability
• Recycling of program parts should reduce the costs of development in computer-
based systems.
• Maintaining systems
• Making a change in one object has a minimal impact on other objects.

An Example of a UML Class: A Class Is Depicted as a Rectangle Consisting of the Class


Name, Attributes, and Methods(Figure 10.1)

81 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Inheritance
• When a derived class inherits all the attributes and behaviors of the base class
• Reduces programming labor by using common objects easily
• A feature only found in object-oriented systems
A Class Diagram Showing Inheritance (Figure 10.2)
Car and truck are specific examples of vehicles and inherit the characteristics of the more
general class vehicle.

CRC Cards and Object Think


• CRC
• Class
• Responsibilities
• Collaborators
• CRC cards are used to represent the responsibilities of classes and the interaction
between the classes.

Four CRC Cards for Course Offerings Show How Analysts Fill in the Details for Classes,
Responsibilities, and Collaborators, as well as for
Object Think Statements and Property Names (Figure 10.3)

Interacting during a CRC Session


• Identify all the classes you can.
• Create scenarios.
• Identify and refine responsibilities.

82 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


The Unified Modeling Language (UML) Concepts and Diagrams
• Things
• Relationships
• Diagrams
Things
• Structural things are
• Classes, interfaces, use cases, and other elements that provide a way to create
models
• They allow the user to describe relationships
• Behavioral things
• Describe how things work
• Interactions and state machines
• Group things
• Used to define boundaries
• Annotational things
• Can add notes to the diagrams
Relationships
• Structural relationships
• Tie things together in structural diagrams
• Behavioral relationships
• Used in behavioral diagrams
Structural Relationships
• Dependencies
• Aggregations
• Associations
• Generalizations
Behavioral Relationships
• Communicates
• Includes
• Extends
• Generalizes
Diagrams
• Structural diagrams
• Used to describe the relation between classes
• Behavior diagrams
• Used to describe the interaction between people (actors) and a use case (how
the actors use the system)
Structural Diagrams
• Class diagrams
• Object diagrams
• Component diagrams
• Deployment diagrams
Behavioral Diagrams
• Use case diagrams
• Sequence diagrams
• Collaboration diagrams
• Statechart diagrams
• Activity diagrams

83 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


An Overall View of UML and its Components: Things, Relationships, and Diagrams
(Figure 10.4)

Commonly Used UML Diagrams


• Use case diagram
• Describing how the system is used
• The starting point for UML modeling
• Use case scenario
• A verbal articulation of exceptions to the main behavior described by the primary
use case
• Activity diagram
• Illustrates the overall flow of activities
• Sequence diagrams
• Show the sequence of activities and class relationships.
• Class diagrams
• Show classes and relationships.
• Statechart diagrams
• Show the state transitions.
An Overview of UML Diagrams Showing How Each Diagram Leads to the
Development of Other UML Diagrams(Figure 10.5)

Use Case Modeling


• Describes what the system does, without describing how the system does it
• Based on the interactions and relationships of individual use cases
• Use case describes
• Actor
• Event
• Use case

84 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


A Use Case Example of Student Enrollment(Figure 10.6)

A Use Case Scenario Is Divided into Three Sections: Identification and Initiation,
Steps Performed, and Conditions, Assumptions, and Questions (Figure 10.7)

Activity Diagrams
• Show the sequence of activities in a process, including sequential and parallel activities,
and decisions that are made.
• Symbols
• Rectangle with rounded ends
• Arrow
• Diamond
• Long, flat rectangle
• Filled-in circle
• Black circle surrounded by a white circle
• Swimlanes
Specialized Symbols Are Used to Draw an Activity Diagram(Figure 10.8)

Creating Activity Diagrams


• Created by asking what happens first, what happens second, and so on
• Must determine what activities are done in sequence or in parallel
• The sequence of activities can be determined from physical data flow diagrams.

85 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Can be created by examining all the scenarios for a use case
Swimlanes
• Useful to show how the data must be transmitted or converted
• Help to divide up the tasks in a team
• Makes the activity diagram one that people want to use to communicate with others
This Activity Diagram Shows Three Swimlanes: Client Web Page, Web Server, and
Mainframe (Figure 10.9)

Activity Diagrams and Test Plans


• Activity diagrams may be used to construct test plans.
• Each event must be tested to see if the system goes to the next state.
• Each decision must be tested.
Activity Diagrams Not Created for All Use Cases
• Use an activity diagram when:
• It helps to understand the activities of a use case
• The flow of control is complex
• There is a need to model workflow
• When all scenarios for a use case need to be shown
Sequence Diagrams
• Illustrate a succession of interactions between classes or object instances over time
• Often used to show the processing described in use case scenarios
• Used to show the overall pattern of the activities or interactions in a use case
Specialized Symbols Used to Draw a Sequence Diagram(Figure 10.10)

A Sequence Diagram for Student Admission: Sequence Diagrams


Emphasize the Time Ordering of Messages(Figure 10.11)

86 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Communication Diagrams
• Describes the interactions of two or more things in the system that perform a behavior
that is more than any one of the things can do alone
• Shows the same information as a sequence diagram, but may be more difficult to read
• Emphasizes the organization of objects
• Made up of objects, communication links, and the messages that can be passed along
those links
A Communication Diagram for Student Admission(Figure 10.12)

Communication diagrams show the same information that is depicted in a sequence diagram
but emphasize the organization of objects rather than the time ordering.
Class Diagrams
• Show the static features of the system and do not represent any particular processing.
• Show the nature of the relationships between classes.
• Show data storage requirements as well as processing requirements.
• Classes
• Attributes
• Private
• Public
• Protected
• Methods
• Standard
• Custom

A Class Diagram for Course Offerings: The Filled-In Diamonds Show Aggregation
and the Empty Diamond Shows a Whole-Part Relationship(Figure 10.13)

87 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Method Overloading
• Including the same method (or operation) several times in a class
• The same method may be defined more than once in a given class, as long as the
parameters sent as part of the message are different.
Types of Classes
• Entity classes
• Interface classes
• Abstract classes
• Control classes
Entity Classes
• Represent real-world items
• The entities represented on an entity-relationship diagram
Interface or Boundary Classes
• Provide a means for users to work with the system.
• Human interfaces may be a display, window, Web form, dialogue box, touch-tone
telephone, or other way for users to interact with the system.
• System interfaces involve sending data to or receiving data from others.
Abstract Classes
• Linked to concrete classes in a generalization/specialization relationship
• Cannot be directly instantiated
Control Classes
• Used to control the flow of activities
• Many small control classes can be used to achieve classes that are reusable.
Presentation, Business, and Persistence Layers
• Sequence diagrams may be discussed using three layers:
• Presentation layer, what the user sees, corresponding to the interface or
boundary classes.
• Business layer, containing the unique rules for this application, corresponding
roughly to control classes.
• Persistence or data access layer, for obtaining and storing data, corresponding to
the entity classes.
Defining Messages and Methods
• Each message may be defined using a notation similar to that described for the data
dictionary.
• The methods may have logic defined using structured English, a decision table, or a
decision tree.
A Sequence Diagram for Using Two Web Pages: One for Student
Information, One for Course Information(Figure 10.15 )

88 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Associations Create Sequence Diagrams
• Include the actor from the use case diagram.
• Define one or more interface classes for each actor.
• Each use case should have one control class.
• Examine the use case to see what entity classes are required.
• The sequence diagram may be modified when doing detailed design.
Creating a Test Plan from a Sequence Diagram
• Does each method return correct results?
• Ensure that entity classes store or obtain the correct attribute values.
• Verify that all JavaScript paths work correctly.
• Ensure that the server control classes work correctly.
• Ask, “What may fail?”
• Determine what to do if something can fail.
Relationships
• The connections between classes
• Associations
• Whole/part

An Example of an Associative Class in Which a Particular Section Defines the


Relationship between a Student and a Course
(Figure 10.18)

• The simplest type of relationship


• Association classes are those that are used to break up a many-to-many association
between classes.
• An object in a class may have a relationship to other objects in the same class, called a
reflexive association.
Whole/Part Relationships
• When one class represents the whole object, and other classes represent parts
• Categories
• Aggregation

89 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Collection
• Composition
Aggregation
• A “has a” relationship
• Provides a means of showing that the whole object is composed of the sum of its parts
Collection
• Consists of a whole and its members
• Members may change, but the whole retains its identity
• A weak association
Composition
• The whole has a responsibility for the parts, and is a stronger relationship.
• If the whole is deleted, all parts are deleted.

An Example of Whole-Part and Aggregation Relationships


(Figure 10.19)

Generalization/Specialization Diagrams
• Generalization
• Inheritance
• Polymorphism
• Abstract classes
• Messages
Generalization
• Describes a relationship between a general kind of thing and a more specific kind of
thing
• Described as an “is a” relationship
• Used for modeling class inheritance and specialization
• General class is a parent, base, or superclass
• Specialized class is a child, derived, or subclass
Inheritance
• Helps to foster reuse
• Helps to maintain existing program code
Polymorphism
• The capability of an object-oriented program to have several versions of the same
method with the same name within a superclass/subclass relationship
• The subclass method overrides the superclass method.
• When attributes or methods are defined more than once, the most specific one is used.

Abstract Classes
• Abstract classes are general classes.
• No direct objects or class instances, and is only used in conjunction with specialized
classes

90 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Usually have attributes and may have a few methods
A Generalization/Specification Diagram Is a Refined
Form of a Class Diagram(Figure 10.20)

Finding Classes
• During interviewing or JAD sessions
• During facilitated team sessions
• During brainstorming sessions
• Analyzing documents and memos
• Examining use cases, looking for nouns
Determining Class Methods
• Standard methods
• Examine a CRUD matrix
Messages
• Used to send information by an object in one class to an object in another class
• Acts as a command, telling the receiving class to do something
• Consists of the name of the method in the receiving class, as well as the attributes that
are passed with the method name
• May be thought of as an output or an input

State chart Diagrams


• Used to examine the different states that an object may have
• Created for a single class
• Objects are created, go through changes, and are deleted or removed.
• Objects
• States
• Events
• Signals or asynchronous messages
• Synchronous
• Temporal events
• Created when:
• A class has a complex life cycle.
• An instance of a class may update its attributes in a number of ways through the
life cycle.
• A class has an operational life cycle.
• Two classes depend on each other.
• The object’s current behavior depends on what happened previously.

A Statechart Diagram Showing How a Student Progresses from a


Potential Student to a Graduated Student

91 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


(Figure 10.22)

Packages
• Containers for other UML things
• Show system partitioning
• Can be component packages
• Can be physical subsystems
• Use a folder symbol
• May have relationships
Use Cases Can Be Grouped into Packages(Figure 10.23)

Putting UML to Work


The steps used in UML are:
• Define the use case model.
• Continue UML diagramming to model the system during the systems analysis
phase.
• Develop the class diagrams.
• Draw statechart diagrams.
• Begin systems design by refining the UML diagrams.
• Document your system design in detail.
Read:
LESSON 10 OBJECT-ORIENTED SYSTEM ANALYSIS AND DESIGN USING UML
Systems Analysis and Design by Kendall & Kendall 8th ed.

92 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Activities/Assessment:
1. List two reasons for taking an object-oriented approach to systems development.
2. Describe the difference between a class and an object.
3. Explain the concept of inheritance in object-oriented systems.
4. What does CRC stand for?
5. Describe what Object Think adds to the CRC card.
6. What is UML?
7. What are the three major elements of UML?
8. List what the concept of structural things includes.
9. List what the concept of behavioral things includes.
10. What are the two main types of diagrams in UML?
11. List the diagrams included in structural diagrams.
12. List the diagrams included in behavioral diagrams.
13. What is it that a use case model describes?
14. Would you describe a use case model as a logical or physical model of the system? Defend
your answer in a paragraph.
15. Define what an actor is in a use case diagram.
16. What three things must a use case always describe?
17. What does an activity diagram depict?
18. Write a paragraph that describes the use of swimlanes on activity diagrams.
19. What can be depicted on a sequence or communication diagram?
20. Why is defining classes such an important object-oriented analysis task?
21. What can be shown on a class diagram?
22. Define method overloading.
23. List the four categories into which classes fall.
24. What are the steps for creating a sequence diagram?
25. What are the two categories of relationships between classes?
26. What are gen/spec diagrams used for?
27. What is another term for polymorphism?
28. What is depicted by a statechart diagram?
29. What is a package in UML approach?
30. Why is using UML for modeling important?

Problems:
1. Write a sample use case scenario for a patient who sees a physician in the Kirt Clinic.
2. Woody’s Supermarket, a small chain of grocery stores, is building a Web site to allow
customers to place orders for groceries and other items they sell. The customer places a
Web order, the customer master is updated, and an order record is created. The order
prints at a local store, and the goods are picked from the shelves by the store
employees. Customers are sent an email notification that their order is ready. When they
pick up the order, frozen goods, chilled products, and other items are assembled.
a. Draw an activity diagram showing the customer using the Web site to place an order,
verification of the order, order confirmation, order details sent to the local store, and
a customer email sent to the customer.

93 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


MODULE IV The ESSENTIALS OF DESIGN
Overview:

Module IV (Lesson 11–14) covers the essentials of design. It begins with designing
output, because many practitioners believe systems to be output driven. The design of Web-
based forms is covered in detail. Particular attention is paid to relating output method to content,
the effect of output on users, and designing good forms and screens. Lesson 11 compares
advantages and disadvantages of output, including Web displays, audio, DVD, and electronic
output such as email and RSS feeds. Designing a Web site for ecommerce purposes is
emphasized, and output production and XML is covered. Lesson 12 includes innovative material
on designing Web-based input forms, as well as other electronic forms design. Also included is
computer-assisted forms design. Lesson 12 features in-depth coverage of Web site design,
including guidelines on when designers should add video, audio, and animation to Web site
designs. The lesson also covers uses of Web push and pull technologies for output designs.
There is detailed consideration of how to create effective graphics for corporate Web sites and
ways to design effective onscreen navigation for Web site users. Coverage of intranet and
extranet page design is also included.

Consideration of database integrity constraints has been included as well, in addition to


how the user interacts with the computer and how to design an appropriate interface. The
importance of user feedback is also found in Module IV. How to design accurate data entry
procedures that take full advantage of computer and human capabilities to assure entry of
quality data is emphasized here. Lesson 13 demonstrates how to use the entity-relationship
diagram to determine record keys, as well as providing guidelines for file/database relation
design. Students are shown the relevance of database design for the overall usefulness of the
system, and how users actually use databases. Lesson 14 emphasizes Human–Computer
Interaction (HCI), especially as it relates to interface design. It introduces HCI, discussing its
importance in designing systems that suit individuals and assisting them in achieving personal
and organizational goals through their use of information technology. The concepts of usability,
fit, perceived usefulness, and perceived ease of use are introduced, as is the Technology
Acceptance Model (TAM), so that systems students can knowledgeably incorporate HCI
practices into their designs. Lesson 14 also features material on designing easy onscreen
navigation for Web site visitors.

Lesson 11: Designing Effective Output


Learning Outcomes:

After successful completion of this lesson, you should be able to:

• Understand the objectives for effective output design.


• Relate output content to output methods inside and outside the organizational
context.
• Realize how output bias affects users.
• Design display output.

94 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Design dashboard, widgets, and gadgets.
• Design a Web site for ecommerce
Course Materials:

Output

• Information delivered to users


• Output forms
• Hard-copy—printed reports
• Soft-copy—computer screens, microforms, and audio
• To create output, the analyst works interactively with the user until the output is
satisfactory.
Output Design Objectives

• Serve a specific user or organizational purpose


• Meaningful to the user
• Deliver the appropriate quantity of output
• Make sure the output is where it is needed
• Provide output on time
• Choosing the most effective output method
Relating Output Content to Metho

• Content of output must be considered as interrelated to the output method.


• External—going outside the business
• Internal—staying within the business
External Output

• Examples:
• Utility bills
• Advertisements
• Paychecks
• Differs from internal output in:
• Distribution
• Design
• Appearance
• Internal Output
• Examples:
• Summary reports
• Detailed reports
• Historical reports
• Exception reports
• Might consist of material available on an intranet
Output Technologies

• Printers

95 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Display screen
• Video, audio, and podcasts
• DVD and CD-ROM
• Electronic output
Printers

• The trend in printers is toward increased flexibility.


• Key factors of printers:
• Reliability
• Compatibility with software and hardware
• Manufacturing support
Display Screen

• Advantages:
• Result in cost savings
• May be desirable from the user’s standpoint
• Easier to keep up to date
• Disadvantages:
• Different screen resolutions
• Fonts
Video, Audio, and Animation

• Video
o Combines the impact of audio with a visual channel
• Audio
o Transient, usually output for the benefit of one user
• Animation
o The presentation of different images in a series, one at a time
Video Clips

• Supplementing static, printed output


• Distance collaboration
• Showing how to perform an action
• Providing brief training episodes
• Shifting the time of an actual event by recording it for later output
• Preserving an important occasion
Audio

• Sound
• Music
• Sound effects
• Telephone
• Podcasting
• Technique of putting downloadable voice files on the Web as RSS files

Animation

• Animation is composed of four elements:

96 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Elemental symbols
• Spatial orientation
• Transition effects
• Alteration effects
CD-ROMs and DVDs

• Less vulnerable to damage from human handling


• Can include full-color text and graphics as well as audio and video
Electronic Output

• Email
• Faxes
• Bulletin board messages
RSS (Really Simple Syndication)

• A way of gathering and distributing news and other content from multiple sources
• RSS news readers can either stand alone or be integrated with your browser as plug-ins.
• Has the advantage of efficiently organizing news and other information from a variety of
sources chosen by the user
Push and Pull Technology

• Pull technology allows the user to take formatted data from the Web.
• Push technology sends solicited or unsolicited information to a customer or client.
A Comparison of Output Methods
(Figure 11.2)

Factors to Consider When Choosing Output Technology

• Who will use the output?


• How many people need the output?
• Where is the output needed?
• What is the purpose?
• What is the speed with which output is needed?
• How frequently will the output be accessed?
• How long will the output be stored?
• Regulations depicting output produced, stored, and distributed
• Initial and ongoing costs of maintenance and supplies
• Human and environmental requirements

97 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Output Bias

• Analysts must avoid unnecessarily biasing output and make users aware of the possible
biases in output.
• Bias is introduced in three main ways:
• How information is sorted
• Setting of acceptable limits
• Choice of graphics
Avoiding Bias in the Design Output

• Be aware of the sources of bias.


• Design of output that includes users.
• Work with users so that they are informed of the output’s biases.
• Creating output that is flexible and allows users to modify limits and ranges.
• Train users to rely on multiple output for conducting “reality tests” on system
output.
Designing Printed Output

• Detailed reports
• Print a report line for every record on the master file.
• Exception reports
• Print a line for all records that match a certain condition.
• Summary reports
• Print one line for a group of records that are used to make decisions.
Report Design Conventions

• Constant information remains the same whenever the report is printed.


• Variable information can vary each time the report is printed.
• Paper quality, type, and size
Designing Printed Reports

• Functional attributes
• Stylistic and aesthetic considerations
• Well organized
Designing Output for Displays

• Keep the display simple.


• Keep the presentation consistent.
• Facilitate user movement among displayed output.
• Create an attractive and pleasing display.

Graphical Output in Screen Design

• The purpose of the graph


• The kind of data to be displayed
• The audience
• The effects on the audience of different kinds of graphical output
Dashboards

98 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Make sure the data has context.
• Display the proper amount of summarization and precision.
• Choose appropriate performance measures for display.
• Present data fairly.
• Choose the correct style of graph or chart for display.
• Use well-designed display media.
• Limit the variety of item types.
• Highlight important data.
• Arrange the data in meaningful groups.
• Keep the screen uncluttered.
• Keep the entire dashboard on a single screen.
• Allow flexibility.

Widgets and Gadgets

• Can be any type of a program that may be useful to any person interacting with a
computer
• Can empower users to take part in design of their own desktop
Designing a Web Site

• Use professional tools.


• Study other sites.
• Use Web resources.
• Examine the sites of professional Web site designers.
• Use the tools you’ve learned.
• Consult the books.
• Examine poorly designed Web sites.
Designing a Web Site (Continued)

• Creating Web templates


• Style sheets allow you to format all Web pages in a site consistently.
• Using plug-ins, audio, and video sparingly
Designing a Web Site (Continued)

• Plan ahead, pay attention to:


• Structure
• Content
• Text
• Graphics
• Presentations style
• Navigation
• Promotion
Structure

• One of the most important steps in developing a professional Web site


• Each page in the Web structure should have a distinct message.
• Can benefit from using Web site diagramming and mapping tools
Content

99 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Appropriate content is needed to keep the user interested
• Use a metaphor or images that provide metaphor for your site
• Should include a FAQ page
• May take advantage of prewritten software
Text

• Each Web page should have a title.


• Place meaningful words in the first sentence appearing on your Web page.
• Clear writing is important.
Graphics

• Use either JPEG or GIF formats.


• Keep the background simple and readable.
• Create a few professional-looking graphics for use on your pages.
• Keep images small and reuse bullet or navigational buttons.
• Include text in what is called a Title or ALT attribute for images and image hot spots.
• Examine your Web site on a variety of displays and screen resolutions.
Presentation Style

• Provide a home page.


• Keep the number of graphics to a reasonable minimum.
• Use large and colorful fonts for headings.
• Use interesting images and buttons for links.
• Use CSS to control the formatting and layout of the Web page.
Presentation Style (Continued)

• Use divisions and cascading styles or tables to enhance a layout.


• Use the same graphics image on several Web pages.
• Use Javascript to enhance Web page layout.
• Avoid overusing animation, sound, and other elements.
Navigation

• The three-clicks rule


• Promote the Web site
Promotion

• Promote your site.


• Submit often to search engines.
• Include key words in metatags.
• Encourage your readers to bookmark your Web site.
Maintaining Web Sites

• Ecommerce sites require frequent updating.


• Content management systems (CMS)
• Software tools
• Enable the analyst to develop and maintain Web sites
Creating Blogs (Web Logs)

• Permalink specific for the blog post


• The headline or title of the post
• The primary link

100 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• An optional summary
• The blog text or commentary
• An optional image
• A block quote
• Links for comments from other people
• Other blog software features
Output Production and XML

• An XML document may be transformed into different output media types.


• Methods:
• Extensible Style Language Transformations (XSLT)
• Ajax
• Cascading style sheets (CSS)
Extensible Style Language Transformations (XSLT)

XSLT allows you to:

• Select XML elements


• Sort sequence
• Selection of data
Extensible Style Language Transformation (XSLT) Software Can Be Used to Transform XML
Documents into Many Different Formats for a Variety of Platforms (Figure 11.17)

Ajax

• Uses both JavaScript and XML to obtain small amounts of data from a server
without leaving the Web page
• The user does not have to wait for a new Web page to display after making a
selection.
Read:

Lesson 11 DESIGNING EFFECTIVE OUTPUT


Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:

1. List six objectives the analyst pursues in designing system output.

101 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


2. Contrast external outputs with internal outputs produced by the system. Remember to
consider differences in external and internal users.
3, What are three situations that point to printers as the best choice for output technology?
4. Give two instances that indicate that display output is the best solution for the choice of
output technology.
5. List potential electronic output methods for users.
6. What are the drawbacks of electronic and Web-based output?
7, List 10 factors that must be considered when choosing output technology.
8, What output type is best if frequent updates are a necessity?
9, What kind of output is desirable if many readers will be reading, storing, and reviewing
output over a period of years?
10, What are two of the drawbacks to audio output?
11, List three main ways in which presentations of output are unintentionally biased.
12, What are five ways the analyst can avoid biasing output?
13, What is the difference between constant and variable information presented on a report?
14, Why is it important to show users a prototype output report or display?
15, List six functional elements of printed reports.
16, List five stylistic or aesthetic elements of printed reports.
17. In what ways do displays, printed output, and Web-based documents differ?
18. List four guidelines to facilitate the design of good display output. List seven guidelines for
creating good Web sites.
19, List five guidelines for using graphics in designing Web sites.
20 List seven ideas for improving the presentation of corporate Web sites that you design.

Problem:

Elonzo’s Department Stores is a chain of about 50 retail stores, specializing in kitchen, bath,
and other household items, including many decorative and fashionable items. Recently Elonzo’s
decided to automate its gift registry to allow wedding and other event guests to be able to
browse for items that were selected by the wedding couple or others.

a. Design a Web page that would allow customers to enter a zip code and find the nearest
store.

b. Design a Web page for customers to browse gifts and order them online. Do not include the
actual ordering forms, simply the products. What sort of options should be available for
customers? Include buttons or links to change the sort sequence in your design.

c. Design a printed list that customers could request when they go to one of the stores. What
sequences would be optimal for a customer trying to find items? Would all items requested by
the wedding couple be included on the list? (Hint: Some may have been purchased already.)

Lesson 12: Designing Effective Input


Learning Outcomes:

After successful completion of this lesson, you should be able to:

102 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Design input forms for users of business systems.
• Design engaging input displays for users of information systems.
• Design useful input forms for people interacting on the Web.
• Design useful input pages for users of intranets and the Internet.

Course Materials:

Input Design Objectives

• The quality of system input determines the quality of system output.


• Input design objectives:
• Effectiveness
• Accuracy
• Ease of use
• Consistency
• Simplicity
• Attractiveness
Good Form Design

• Make forms easy to fill in.


• Ensure that forms meet the purpose for which they are designed.
• Design forms to assure accurate completion.
• Keep forms attractive.
Make Forms Easy to Fill in

• Form flow
• Seven sections of a form
• Captioning
Form Flow

• Can minimize the time and effort expended by employees in form completion
• Should flow from left to right and top to bottom

Seven Sections of a Form


• Heading
• Identification and access
• Instructions
• Body
• Signature and verification
• Totals
• Comments
Caption Types

• Line caption
o Putting the caption on the same line or below the line
• Boxed caption
o Providing a box for data instead of a line
• Check off caption
o Lining up choices or alternatives vertically
• Horizontal check off caption
o Lining up choices or alternatives horizontally

103 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Table caption
o Work well in the body of a form
• Combination
Major Captioning Alternatives
(Figure 12.2)

Meeting the Intended Purpose

• Systems analysts may use different types of specialty forms for different purposes.
• Specialty forms
• Multiple-part
• Continuous-feed
• Perforated
Ensuring Accurate Completion

• To reduce error rates associated with data collection, forms should be designed to
assure accurate completion.
• Design forms to make people do the right thing with the form.
Keeping Forms Attractive

• Aesthetic forms draw people into them and encourage completion.


• Forms should look uncluttered, and elicit information in the expected order.
• Using different fonts and line weights within the same form can help make it more
attractive for users.
Computer-Assisted Form Design

• Numerous form design packages are available for PCs.


• There are tools to set up:
• Fields
• Check boxes
• Lines
• Boxes
Omniform from ScanSoft Allows the User to Take an Existing Form, Scan it into the Computer,
and Define Fields so the Form Can Be Easily Filled out on a PC (Figure 12.3)

104 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Controlling Business Forms

• Make sure that each form in use fulfills its specific purpose.
• Make sure that the specified purpose is integral to organizational functioning.
• Prevent duplication of information collected and of the forms that collect it.
• Design effective forms.
• Decide on how to reproduce forms in the most economical way.
• Establish procedures that make forms available, at the lowest possible cost.
Good Display and Web Forms Design

• Keep the display simple.


• Keep the display presentation consistent.
• Facilitate user movement among display screens and pages.
• Create an attractive and pleasing display.
Keeping the Display Simple

• Heading
• Body
• Comments and instructions
Keeping the Display Consistent

• Locate information in the same area each time a new display is accessed.
• Information that logically belongs together should be consistently grouped
together.
• Information should not overlap from one group to another.
Facilitating Movement

• The three-clicks rule says that users should be able to get to the screens they need within
three mouse or keyboard clicks.
• Movement among screens:
• Scrolling by using arrows or PgDn keys
• Context-sensitive pop-up windows
• Onscreen dialogue
Designing an Attractive and Pleasing Display

• Should draw users into them and hold their attention

105 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Use logical flows in the plan to your display pages
• Color or shaded boxes and creating three-dimensional boxes and arrows
Using Icons in Screen Design

• Icons are pictorial, onscreen representations symbolizing computer actions that


users may select using a mouse, keyboard, lightpen, touch screen, or joystick.
• Shapes should be readily recognizable.
• Icons for a particular application should be limited to 20 recognizable shapes.
• Use icons consistently throughout.
Graphical User Interface (GUI) Controls

• Text boxes
• Check boxes
• Option or radio buttons
• List and drop-down list boxes
• Sliders and spin buttons
• Image maps
• Text area
• Message boxes
The Designer Has Many GUI Components that Allow Flexibility in Designing Input Screens for
the Web or Other Software Packages: This Example Is from Microsoft Access (Figure 12.4)

Text Boxes

• Text boxes should be large enough to accommodate all the characters.


• Captions should be to the left of the text box.
• Character data is left-aligned within the box.
• Numeric data is right-aligned.
Check Boxes

• Check boxes are used for nonexclusive choices.


• Check box text or label is placed to the right of the check box.
• If there are more than ten check boxes, group together in a bordered box.
Option Buttons

• Option or radio buttons are used for exclusive choices.


• Choices are listed to the right of the button, in some sequence.
• Often they are placed in a rectangle called an option group.
• If more than six option buttons are used, a list box or drop-down list box should
be implemented.

106 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


List and Drop-Down List Boxes

•Used when there is little room available on the page


•If there is a commonly selected choice, it is usually displayed in the drop-down
list by default.
Tab Control Dialogue Boxes

• Create a separate tab for each unique feature.


• Place the most commonly used tabs in front and display them first.
• Consider including three basic buttons in your design:
• OK
• Cancel
• Help
Sliders, Spin Buttons, and Image Maps


Sliders and spin buttons are used to change data that have a continuous range
of values.
• Image map fields are used to select values within an image.
Sliders and Spin Buttons Are Two Additional GUI Components the Analyst Can Use to
Design Input Screens (Figure 12.5)

Text Area

• A text area is used for entering a larger amount of text.


• Can view data larger then the box area
• Handling text:
• Hard return is used to force new lines.
• Use word wrap within the text area.
Message Boxes and Command Buttons

• Message boxes are used to warn users and provide feedback messages in a dialog
box.
• Command buttons perform an action when the user selects it.
Form Controls and Values

• Each control in a GUI interface stores data associated with the control.

107 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Web pages use a name and value pair that are transmitted to the server or in an email
sent along with the form.
Hidden Fields

• Not visible to the viewer


• Do not take up any space on the Web page
• Can only contain a name and value
• Used to store values sent from one Web form to the server
Event-Response Charts

• Used to:
• List the variety of events that can occur.
• Show what should happen.
• Build a Web form that requires minimal action from the user.
• Explore improvements to the Web page.
• Events may be used to:
• Control navigation between Web pages.
• Change the contents of drop-down lists.
Dynamic Web Pages

• Web pages that change themselves as the result of some user action
• Advantage
• Modify themselves quickly
• Disadvantage
• Will not work if JavaScript is turned off
• Dynamic Web pages may not be compliant with the American Disabilities Act.
Three Dimensional Web Pages

• Use stacked layers.


• Code is moved in front of the Web page.
• Code may be created using JavaScript.
• Analyst must determine when to use layers.
Three Dimensional Web Pages

• Analyst must determine:


• How is the layer built?
• What events cause the layer to be created?
• What events remove the layer?
• Where should the block be placed?
• The size of the block?
• How to frame the region?
• What happens when an option is selected?
Ajax (Asynchronous JavaScript and XML)

• Uses JavaScript and XML


• Allows Web developers to build a Web page that works like a traditional desktop
program

108 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• The data may be either a small text file or an XML document containing many customers
or repeating data.
• Has the advantage of making the Web work faster and of providing a smoother viewing
experience for users
• The disadvantages are that JavaScript must be enabled and the Web page may violate
the American Disabilities Act.
• Color
• The five most legible foreground/background color combinations:
• Black on yellow
• Green on white
• Blue on white
• White on blue
• Yellow on black
Intranet and Internet Page Design

• Provide clear instructions.


• Demonstrate a logical entry sequence for fill-in forms.
• Use a variety of text boxes, push buttons, radio buttons, drop-down lists, and other GUI
features.
• Provide a scrolling text box if you are uncertain how much text will be entered.
• Include two basic buttons: Submit and Clear.
• If the form is lengthy, divide it into several simpler forms on separate pages.
• Create a feedback screen that lists error messages if a form has not correctly been filled
out.
Ecommerce Applications

• Ecommerce applications involve more than just good designs of Web sites.
• Customers need to feel confident in the site
• Shopping cart
Read:

Lesson 12 DESIGNING EFFECTIVE INPUT


Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:
1. What are the design objectives for paper input forms, input screens, or Web-based fill-in
forms?
2. List the four guidelines for good form design.
3. What is proper form flow?
4. What are the seven sections of a good form?
5. List four types of captioning for use on forms.
6. What is a specialty form? What are some disadvantages of using specialty forms?
7. List the four guidelines for good display design.
8. What are the three sections useful for simplifying a display?
9. What are the advantages of using onscreen windows?
10. What are the disadvantages of using onscreen windows?
11. List two ways display screens can be kept consistent.
12. Give three ways to facilitate movement between display pages.

109 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


13. List four graphical interface design elements. Alongside each one, describe when it would
be appropriate to incorporate each of them in a display design or on a Web-based fill-in form.
14. When should check boxes be used?
15. When should option buttons be used?
16. What are two different ways that form values are used?
17. What are hidden fields used for on a Web form?
18. List four different types of events.
19. What are dynamic Web pages?
20. What are three-dimensional Web pages?
21. How does Ajax improve a Web page that changes based on user actions?
22. List the five most legible foreground and background color combinations for display use.
23. Define what is meant by the term skins when used in Web design.
24. What are four situations in which color may be useful for display and Web-based fill-in form
design?
25. List seven design guidelines for a Web-based fill-in form.

Activity:

Here are captions used for a U.S. state census form:

Name _____________________________________

Occupation _____________________________________

Address _____________________________________

Zip code _____________________________________

Number of people in household _____________________________________

Age of head of household _____________________________________

a. Redo the captions so that the state census bureau can capture the same information
requested on the old form without confusing respondents.
b. Redesign the form so that it exhibits proper flow. (Hint: Make sure to provide an access and
identification section so that the information can be stored in the state’s computer system.)

Lesson 13: Designing Databases


Learning Outcomes:

After successful completion of this lesson, you should be able to:

• Understand database concepts.


• Use normalization to efficiently store data in a database.
• Use databases for presenting data.
• Understand the concept of data warehouses.
• Comprehend the usefulness of publishing databases to the Web.

110 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Course Materials:

Data Storage

• The data must be available when the user wants to use them.
• The data must be accurate and consistent.
• Efficient storage of data as well as efficient updating and retrieval
• It is necessary that information retrieval be purposeful.
• There are two approaches to the storage of data in a computer-based system:
• Store the data in individual files, each unique to a particular application.
• Store data in a database.
• A database is a formally defined and centrally controlled store of data
intended for use in many different applications.
Databases

• Effectiveness objectives of the database:


•Ensuring that data can be shared among users for a variety of applications
•Maintaining data that are both accurate and consistent
•Ensuring data required for current and future applications will be readily available
•Allowing the database to evolve as the needs of the users grow
•Allowing users to construct their personal view of the data without concern for the
way the data are physically stored
Reality, Data, and Metadata

• Reality
• The real world
• Data
• Collected about people, places, or events in reality and eventually stored in a file
or database
• Metadata
• Information that describes data
Reality, Data, and Metadata (Figure 13.1)

Entities

• Any object or event about which someone chooses to collect data


• May be a person, place, or thing
• May be an event or unit of time

111 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Entity Subtype

• An entity subtype is a special one-to-one relationship used to represent additional


attributes, which may not be present on every record of the first entity.
• This eliminates null fields stored on database tables.
• For example, students who have internships: the STUDENT MASTER should not have
to contain information about internships for each student.
Relationships

• Relationships
• One-to-one
• One-to-many
• Many-to-many
• A single vertical line represents one.
• A crow’s foot represents many.
Entity-Relationship Diagrams Associations
(Figure 13.2)

Entity-relationship (E-R) diagrams can show one-to-one, one-to-many, or many-to-many


associations.

Entity-Relationship Symbols and Their Meanings (Figure 13.3)

112 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


The Entity-Relationship Diagram for Patient Treatment (Figure 13.4)

Attributes, Records, and Keys

• Attributes represent some characteristic of an entity.


• Records are a collection of data items that have something in common with the entity
described.
• Keys are data items in a record used to identify the record.
Key Types

• Key types are:


• Primary key—unique attribute for the record
• Candidate key—an attribute or collection of attributes, that can serve as a primary key
• Secondary key—a key which may not be unique, used to select a group of records
• Composite key—a combination of two or more attributes representing the key
Metadata

• Data about the data in the file or database


• Describe the name given and the length assigned each data item
• Also describe the length and composition of each of the records

Metadata (Figure 13.7)

Metadata includes a description of what the value of each data item looks like.

113 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Files

• A file contains groups of records used to provide information for operations, planning,
management, and decision making.
• Files can be used for storing data for an indefinite period of time, or they can be used to
store data temporarily for a specific purpose.
File Types

• Master file
• Table file
• Transaction file
• Report file
Master and Table Files

• Master files:
• Contain records for a group of entities
• Contain all information about a data entity
• Table files:
• Contains data used to calculate more data or performance measures
• Usually read-only by a program
Transaction and Report Files

• Transaction records:
• Used to enter changes that update the master file and produce reports
• Report files:
•Used when it is necessary to print a report when no printer is available
•Useful because users can take files to other computer systems and output to
specialty devices
Relational Databases

• A database is intended to be shared by many users.


• There are three structures for storing database files:
• Relational database structures
• Hierarchical database structures
• Network database structures
Database Design (Figure 13.8)

Database design includes synthesizing user reports, user views, and logical and physical
designs.

114 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Relational Data Structure (Figure 13.9)

In a relational data structure, data are stored in many tables.

Normalization

• Normalization is the transformation of complex user views and data stores to a set of
smaller, stable, and easily maintainable data structures.
• The main objective of the normalization process is to simplify all the complex data items
that are often found in user views.
Normalization of a Relation Is Accomplished in Three Major Steps (Figure 13.10)

Data Model Diagrams

• Shows data associations of data elements

115 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Each entity is enclosed in an ellipse.
• Arrows are used to show the relationships.
Drawing Data Model (Figure 13.13)
Drawing data model diagrams for data associations sometimes helps analysts appreciate the
complexity of data storage.

First Normal Form (1NF)

• Remove repeating groups.


• The primary key with repeating group attributes are moved into a new table.
• When a relation contains no repeating groups, it is in first normal form.
The Original Unnormalized Relation (Figure 13.16)

The original unnormalized relation SALES-REPORT is separated into two relations,


SALESPERSON (3NF) and SALESPERSON-CUSTOMER (1NF).

Second Normal Form (2NF)

• Remove any partially dependent attributes and place them in another relation.
• A partial dependency is when the data are dependent on a part of a primary key.
• A relation is created for the data that are only dependent on part of the key and another
for data that are dependent on both parts.
Second Normal Form (Figure 13.18 )

116 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


The relation SALESPERSON-CUSTOMER is separated into a relation called CUSTOMER-
WAREHOUSE (2NF) and a relation called SALES (1NF).

Third Normal Form (3NF)

• Must be in 2NF
• Remove any transitive dependencies.
• A transitive dependency is when nonkey attributes are dependent not only on the
primary key, but also on a nonkey attribute.
Third Normal Form (Figure 13.20)

The relation CUSTOMER-WAREHOUSE is separated into two relations called CUSTOMER


(1NF) and WAREHOUSE (1NF).

Using the Entity-Relationship Diagram to Determine Record Keys

• When the relationship is one-to-many, the primary key of the file at the one end of the
relationship should be contained as a foreign key on the file at the many end of the
relationship.
• A many-to-many relationship should be divided into two one-to-many relationships with
an associative entity in the middle.
Guidelines for Master File/Database Relation Design

117 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Each separate data entity should create a master database table.
• A specific data field should exist on one master table.
• Each master table or database relation should have programs to create, read, update,
and delete the records.
Integrity Constraints

• Entity integrity
• Referential integrity
• Domain integrity
Entity Integrity

• The primary key cannot have a null value.


• If the primary key is a composite key, none of the fields in the key can contain a null
value.
Referential Integrity

• Referential integrity governs the nature of records in a one-to-many relationship.


• Referential integrity means that all foreign keys in the many table (the child table) must
have a matching record in the parent table.
Referential integrity implications:

• You cannot add a record in the child (many) table without a matching record in the
parent table.
• You cannot change a primary key that has matching child table records.
• You cannot delete a record that has child records.
Implemented in two ways:

• A restricted database updates or deletes a key only if there are no matching child
records.
• A cascaded database will delete or update all child records when a parent record is
deleted or changed.
Domain Integrity

• Domain integrity rules are used to validate the data.


• Domain integrity has two forms:
• Check constraints, which are defined at the table level.
• Rules, which are defined as separate objects and can be used within a number
of fields.
Anomalies

• Data redundancy
• Insert anomaly
• Deletion anomaly
• Update anomaly
Data Redundancy

• When the same data is stored in more than one place in the database
• Solved by creating tables that are in third normal form
Insert Anomaly

118 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


•Occurs when the entire primary key is not known and the database cannot insert a
new record, which would violate entity integrity
• Can be avoided by using a sequence number for the primary key
Deletion Anomaly

• Happens when a record is deleted that results in the loss of other related data
Update Anomaly

• When a change to one attribute value causes the database to either contain inconsistent
data or causes multiple records to need changing
• May be prevented by making sure tables are in third normal form
Retrieving and Presenting Database Data

• Choose a relation from the database.


• Join two relations together.
• Project columns from the relation.
• Select rows from the relation.
• Derive new attributes.
• Index or sort rows.
• Calculate totals and performance measures.
• Present data.
Denormalization

• Denormalization is the process of taking the logical data model and transforming it into
an efficient physical model.
Data Warehouses

• Used to organize information for quick and effective queries


Data Warehouses and Database Differences

• In the data warehouse, data are organized around major subjects.


• Data in the warehouse are stored as summarized rather than detailed raw data.
• Data in the data warehouse cover a much longer time frame than in a traditional
transaction-oriented database.
• Data warehouses are organized for fast queries.
• Data warehouses are usually optimized for answering complex queries, known as
OLAP.
• Data warehouses allow for easy access via data-mining software.
• Data warehouses include multiple databases that have been processed so that data are
uniformly defined.
• Data warehouses usually include data from outside sources.
Online Analytic Processing

• Online analytic processing (OLAP) is meant to answer decision makers’ complex


questions by defining a multidimensional database.
Data Mining

119 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Data mining, or knowledge data discovery (KDD), is the process of identifying patterns
that a human is unable to detect.
Data-Mining Decision Aids

• Software
• Statistical analysis
• Decision trees
• Neural networks
• Intelligent agents
• Fuzzy logic
• Data visualization
Data-Mining Patterns

• Associations—patterns that occur together


• Sequences—patterns of actions that take place over a period of time
• Clustering—patterns that develop among groups of people
• Trends—the patterns that are noticed over a period of time

Data Mining (Figure 13.27)

Data mining collects personal information about customers in an effort to be more


specific in interpreting and anticipating their preferences.

Data-Mining Problems

• Costs may be too high to justify


• Has to be coordinated
• Ethical aspects
Read:

Lesson 13 DESIGNING DATA BASES


Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:

1. What are the advantages of organizing data storage as separate files?

120 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


2. What are the advantages of organizing data storage using a database approach?
3. What are the effectiveness measures of database design?
4. List some examples of entities and their attributes.
5. What is the difference between a primary key and an object identifier?
6. Define the term metadata. What is the purpose of metadata?
7. List types of commonly used conventional files. Which of these are temporary files?
8. Name the three main types of database organization.
9. Define the term normalization.
10. What is removed when a relation is converted to the first normal form?
11. What is removed when a relation is converted from 1NF to 2NF?
12. What is removed when a relation is converted from 2NF to 3NF?
13. List the three entity constraints. In a sentence, describe the meaning of each entity
constraint.
14. Describe the four anomalies that may occur when creating database tables.
15. List the eight steps for retrieving, presorting, and presenting data.
16. What does join do? What is projection? What is selection?
17. Define denormalization.
18. Explain the differences between traditional databases and data warehouses.
19. Define what software does when used in data mining.
Activities:

1. Given the following file of renters:

Record Last Name Apartment Rent Lease


Number Number Expires

41 Warkentin 102 550 4/30

42 Buffington 204 600 4/30

43 Schuldt 103 550 4/30

44 Tang 209 600 5/31

45 Cho 203 550 5/31

46 Yoo 203 550 6/30

47 Pyle 101 500 6/30

a. Show an example of projection.


b. Show an example of selection.
c. Show two different examples of sorting rows.
d. Show an example of calculating totals.
2.The following is an example of a grade report for two students at the University of Southern
New Jersey:

121 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


USNJ Grade Report

Spring Semester 2010

Name: I. M. Smarte Major: MIS


Student: 053-6929-24 Status: Senior

Professor’s
Course Number Course Title Professor Department Grade

MIS 403 Systems Analysis Diggs, T. MIS A

MIS 411 Conceptual Foundations Barre, G. MIS A

MIS 420 Human Factors in IS Barre, G. MIS B

CIS 412 Database Design Menzel, I. CIS A

DESC 353 Management Models Murney, J. MIS A

USNJ Grade Report

Spring Semester 2010

Name: E.Z. Grayed Major: MIS


Student: 472-6124-59 Status: Senior

Professor’s
Course Number Course Title Professor Department Grade

MIS 403 Systems Analysis Diggs, T. MIS B

MIS 411 Conceptual Foundations Barre, G. MIS A

Note: there is no question asked for problem 2. It is used in problems 3 and 4.

a. Draw a data model diagram with associations for the user view in Problem 2.

Lesson 14: Human-Computer Interaction


Learning Outcomes:

After successful completion of this lesson, you should be able to:

122 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Understand human-computer interaction.
• Design a variety of user interfaces.
• Design effective dialog for HCI.
• Understand the importance of user feedback.
• Articulate HCI implications for designing ecommerce Web sites.
• Formulate queries that permit users to search the Web.
Course Materials:

Human-Computer Interaction

• Awareness of HCI
• Existence of HCI in organizational settings
• Need to master the concepts surrounding HCI
• Guidelines for usability
Understanding Human-Computer Interaction

• Knowledge about the interplay among users, tasks, task contexts, IT, and the
environments in which the systems are used comprises the basis of human-computer
interaction.
Fit

• The “fit” between the HCI elements of the human, the computer, and the task that needs
to be performed leads to performance and well-being.
The “Fit” among the Human, Computer, and Task Affects Performance and Well-Being (Figure
14.1)

Task

• Complex tasks that require human, system, and task interaction are supported by
ecommerce and Web systems, ERP systems, and wireless systems inside and outside
of the organization.
• Can be structured and routine or ill-defined and without apparent structure.
Performance

• A combination of the efficiency involved in performing a task and the quality of the work
that is produced by the task

123 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Well-Being

• Concern for a human’s overall comfort, safety, and health


• Psychological attitudes are also important.
The Technology Acceptance Model (TAM) and Attitude

• A way for analysts to organize their thinking about whether users will accept and use
information technology
• Can be used to shape training after a system has been developed
• Can be used to garner user reactions to prototypes
• Examines perceived usefulness and perceived ease of use
• Attitudes
• Satisfaction
• Anxiety
• Enjoyment
• Playfulness
Usability

• A way for designers to evaluate the systems and interfaces they create with an eye
toward addressing as many HCI concerns as thoroughly as possible
• Usability standards
• Usability heuristics
Designing for Cognitive Styles of Individual Users

• Making sure data is made available in different forms


• Tables
• Graphs
• Text
• Different times
Pivot Tables

• Allows a user to arrange data in a table in any way they choose


• Gives users greater control over how they look at data in different ways within a table

A Pivot Table Template Can Make It Easier for Users to See Information Displayed in Different
Ways (Figure 14.3)

124 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Visual Analysis of Databases

• Support visual thinking.


• Extend the user’s cognitive capabilities.
• Increase the changes of making an appropriate decision.
When Different Graphs or Tables Are Displayed on the Same Page, It Resembles a
Dashboard (Figure 14.7)

Physical Considerations in HCI Design

• Vision
• Hearing
• Touch
Considering Human Limitations, Disabilities, and Design

• An individual with a disability is a person who:


• Has a physical or mental impairment that substantially limits one or more major life
activities
• Has a record of such impairment
• Is regarded as having such an impairment

The HCI Approach to Systems Design Emphasizes the Fit among the Human, Computer,
and Task (Figure 14.8)

Interface Design Objectives

• Match the user interface to the task.


• Make the user interface efficient.
• Provide appropriate feedback to users.
• Generate usable queries.
• Improve productivity of computer users.

125 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Types of User Interfaces

• Natural-language interfaces
• Question-and-answer interfaces
• Menus
• Form-fill interfaces
• Command-language interfaces
• Graphical User Interfaces (GUIs)
• Web interfaces
Natural-Language Interfaces

• Permit users to interact with the computer in their everyday or “natural” language.
• Implementation problems and extraordinary demand on computing resources have so
far kept natural-language interfaces to a minimum.
Question-and-Answer Interfaces
• The computer displays a question to the user on the display.
• The user enters an answer.
• The computer acts on that input information in a preprogrammed manner.
• Users unfamiliar with applications may find question-and-answer interfaces the most
comfortable.
Menus
• Provides the user with an onscreen list of available selections
• Not hardware dependent
• Can be put aside until the user wants to use them
• Can be nested within one another to lead a user through options in a program
• GUI menus
• Object menu
• Form-Fill Interfaces
(Input/Output Forms)

• Onscreen forms or Web-based forms displaying fields containing data items or


parameters that need to be communicated to the user
Advantage

• The filled-in form provides excellent documentation.


Disadvantage

• Users experienced with the system or application may become impatient.


An Example of the Form-Fill Interface from Form Flow by Jetform (Figure 14.12)

126 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Command-Language Interfaces

• Allows the user to control the application with a series of keystrokes, commands,
phrases, or some sequence of these
• Affords the user more flexibility and control
• Require memorization of syntax rules
• May be an obstacle for inexperienced users
Graphical User Interfaces

• Provide users constant feedback on task accomplishment


• An appropriate model of reality or an acceptable conceptual model of the representation
must be invented
Other User Interfaces

• Pointing devices
• Touch-sensitive screens, also called touch screens or touch pads
• Speech recognition and synthesis
Speech Recognition and Synthesis

• The user speaks to the computer, and the system is able to recognize an individual’s
vocal signals, convert them, and store the input.
• Continuous speech systems
• Speaker independence
Voice Recognition Example (Figure 14.14)

Using software such as Dragon NaturallySpeaking by Nuance, a user can speak commands to
their computer. In this example, the user corrects a word by pulling up a menu of alternative
words that sound the same.

Evaluating Interfaces

• Training period for users should be acceptably short.


• Users early in their training should be able to enter commands without thinking about
them, or referring to a help menu or manual.
• The interface should be seamless so that errors are few, and those that do occur are not
occurring because of poor design.
• Time that users and the system need to bounce back from errors should be short.
• Infrequent users should be able to relearn the system quickly.
Guidelines for Dialog Design

• Meaningful communication

127 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Minimal user action
• Standard operation and consistency
Meaningful Communication

• The system should present information clearly to the user.


• Users with less skill with a computer require more communication.
• Easy to use help screens
Minimal User Action

• Keying codes instead of whole words


• Entering data that are not already stored on files
• Supplying the editing characters
• Using default values for fields on entry screens
• Designing an inquiry, change, or delete program so that the user needs to enter only the
first few characters of a name or item description
• Providing keystrokes for selecting pull-down menu options
• Use radio buttons and drop-down lists to control displays of new Web pages or to
change Web forms
• Provide cursor control for Web forms and other displays so the cursor moves to the next
field when the right number of characters has been entered
Standard Operation and Consistency

• Locating titles, date, time, and operator and feedback messages in the same places on
all displays
• Exiting each program by the same key or menu option
• Canceling a transaction in a consistent way
• Obtaining help in a standardized way
• Standardizing the colors used for all displays or Web pages
• Standardizing the use of icons for similar operations when using graphical user interface
• Using consistent terminology in a display or Web site
• Providing a consistent way to navigate through the dialog
• Using consistent font alignment, size, and color on a Web page
Feedback for Users

• All systems require feedback to monitor and change behavior.


• Feedback compares current behavior with predetermined goals and gives back
information describing the gap between actual and intended performance.

Types of Feedback

• Acknowledging acceptance of input


• Recognizing that input is in the correct form
• Notifying that input is not in the correct form
• Explaining a delay in processing
• Acknowledging that a request is completed
• Notifying that a request was not completed
• Offering the user more detailed feedback
Including Feedback in Design

• Can be a powerful reinforcer of users’ learning processes.


• Serve to improve user performance with the system.

128 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Increase their motivation to produce.
• Improve the fit among the user, task, and the technology.
A Variety of Help Options

• Pressing a function key, such as F1


• A GUI pull-down menu
• Context-sensitive help
• Icon mouse hover help
• Wizards
• Online help or help lines
• Software forums
Soliciting Feedback from Ecommerce Web Site Customers

• Launch the user’s email program.


• Take users to a blank message template when they click on “feedback”.
Easy Navigation for Ecommerce Web Sites (One-Click Navigation)

• Creating a rollover menu


• Building a collection of hierarchical links
• Placing a site map on the home page and emphasizing the link to it
• Placing a navigational bar on every inside page that repeats the categories used on the
entry screen
Easy Navigation for Ecommerce Web Sites (Other Considerations)

• Search function
• Creating flexibility
• Creating for users with different cognitive processing, or interests
• Keeping the customers on the Web site
Mashups

• Combine two or more application programming interfaces (API).


• An API is a small set of programs and protocols.
• A building block approach to building Web sites
Designing Queries

• Help reduce users’ time spent in querying the database.


• Help them find the data they want.
• Result in a smoother user experience overall.

• Query Types
• Query Type 1
• What is the value of a specified attribute for a particular entity?
• Query Type 2
• What entity has a specified value for a particular attribute?
• Query Type 3
• What attribute(s) has (have) a specified value for a particular entity?
• Query Type 4
• List all the values for all the attributes for a particular entity.
• Query Type 5
• List all entities that have a specified value for all attributes.
• Query Type 6

129 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• List all the attributes that have a specified value for all entities.
It Is Possible to Perform Six Basic Types of Queries on a Table that Contains Entities,
Attributes, and Values (Figure 14.19)

Query Notation

V is value, E is entity, A is attributes, variables in parentheses are given:

• Query type 1: V  (E, A)


• Query type 2: E  (V, A)
• Query type 3: A  (V, E)
• Query type 4: all V  (E, all A)
• Query type 5: all E  (V, all A)
• Query type 6: all A  (V, all E)
Building More Complex Queries

• Arithmetic operations are performed first:


• Exponentiation
• Either multiplication or division
• Addition or subtraction
• Comparative operations are performed:
• GT, LT, and others
• Boolean operations are performed:
• First AND and then OR
Query Methods
• Query By Example (QBE)—the database fields are selected and displayed in a grid, and
requested query values are either entered in the field area or below the field.
• Structured Query Language (SQL)—uses a series of words and commands to select the
rows and columns that should be displayed in the resulting table.
Query By Example Using Microsoft Access (Figure 14.21)

130 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Structured Query Language (SQL) for the CUSTOMER NAME Parameter Query (Figure 14.23)

Read:

Lesson 2 Human Computer Interaction


Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:

1. Define HCI.
2. Explain how fit among the HCI elements of the human, the computer, and the tasks to
be performed leads to performance and well-being.
3. What are the components of the term performance in the HCI context?
4. What is meant by the word well-being when used in an HCI approach?
5. What are the two variables of the Technology Acceptance Model (TAM)?
6. List five of the eleven usability heuristics for judging the usability of computer systems
and ecommerce Web sites provided by Nielsen and others.
7. Describe some of the ways that a pivot table allows a user to arrange data.
8. List three physical considerations that HCI design addresses.
9. List three ways that analysts can improve task or interface design to help, respectively,
a person who is visually impaired, hearing impaired, or mobility impaired.
10. What are the five objectives for designing user interfaces?
11. Define natural-language interfaces. What is their major drawback?
12. Explain what is meant by question-and-answer interfaces. To what kind of users are
they best suited?
13. Describe how users use onscreen menus.
14. What is a nested menu? What are its advantages?
15. Define onscreen input/output forms. What is their chief advantage?
16. What are the advantages of Web-based fill-in forms?
17. What are the drawbacks of Web-based form-fill interfaces?
18. Explain what command-language interfaces are. To what types of users are they best
suited?
19. Define graphical user interfaces. What is the key difficulty they present for
programmers?
20. For what type of user is a GUI particularly effective?
21. What are the three guidelines for designing good screen dialog?
22. What are the roles of icons, graphics, and color in providing feedback?
23. List eight ways for achieving the goal of minimal operator action when designing a user
interface.
24. List five standards that can aid in evaluating user interfaces.
25. What are the seven situations that require feedback for users?
26. What is an acceptable way of telling the user that input was accepted?

131 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


27. When a user is informed that his or her input is not in the correct form, what additional
feedback should be given at the same time?
28. List three ways to notify a Web user that the input is not in the correct form.
29. Why is it unacceptable to notify the user that input is not correct solely through the use of
audible beeping or buzzing?
30. When a request is not completed, what feedback should be provided to the user?
31. Describe two types of Web site designs for eliciting feedback from customers.
32. List four practical ways that an analyst can improve the ease of user navigation and the
stickiness of an ecommerce Web site.
33. What are hypertext links? Where should they be used?
34. Describe what a mashup is.
35. List in shorthand notation the six basic query types.
Activity:

Nick, a celebrity chef/restaurant owner from Williamsburg, New York, wants to be able to
receive clear feedback on the systems used to manage his many “show place” restaurants.

Design a display that provides appropriate feedback for a user whose command cannot be
executed.
Design a screen for a payroll software package that displays information telling Nick
from Problem 1 how to get more detailed feedback.
Design a Web-based display that shows an acceptable way to tell Nick that input to his
system was accepted.
There are three types of feedback messages:

A. Action successful
B. An error in the user entry
C. Please wait messages, indicating that a response time of more than 5 to 10
seconds will elapse.
The Web screen should include messages, such as those shown on the next pages,
along with an image that reinforces the message. Designs will vary widely from student
to student.

MODULE V: QUALITY ASSURANCE AND IMPLEMENTATION


Overview:

Module V (Lesson 15 and 16) Lesson 15 focuses on designing accurate data entry
procedures and includes material on managing the supply chain through the effective design of
business-to-business (B2B) ecommerce. Lesson 16 emphasizes taking a total quality approach
to improving software design and maintenance. In addition, material on system security and
firewalls is included. Testing, auditing, and maintenance of systems are discussed in the context
of total quality management. This lesson helps students understand how service-oriented
architecture (SOA) and cloud computing are changing the nature of information systems design.
In addition, students learn how to design appropriate training programs for users of the new

132 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


system, how to recognize the differences among physical conversion strategies, and how to be
able to recommend an appropriate one to a client. Lesson 16 also presents techniques for
modeling networks, which can be done with popular tools such as Microsoft Visio. Material on
security and privacy in relation to designing ecommerce applications is included. Coverage of
security, specifically firewalls, gateways, public key infrastructure (PKI), secure electronic
translation (SET), secure socket layering (SSL), virus protection software, URL filtering
products, email filtering products, and virtual private networks (VPN), is included. Additionally,
current topics of interest to designers of ecommerce applications, including the development
and posting of corporate privacy policies, are covered. Important coverage of how the analyst
can promote and then monitor a corporate Web site is included in this section, which features
Web activity monitoring, Web site promotion, Web traffic analysis, and audience profiling to
ensure the effectiveness of new ecommerce systems. Techniques for evaluating the completed
information systems project are covered systematically as well.

Lesson 15: Designing accurate Data Entry Procedures

Learning Outcomes:

After successful completion of this lesson, you should be able to:

• Understand the uses of effective coding to support users in accomplishing their tasks.
• Design effective and efficient data capture approaches for people and systems.
• Recognize how to ensure data quality through validation.
• Articulate accuracy advantages of user input on ecommerce Web sites.
Course Materials:

Accurate Data-Entry Objectives

Effective Coding

• Data that are coded require less time to enter.


• Coding helps to reduce the number of items entered.
• Coding can help in sorting of data during the data transformation process.
• Coded data can save valuable memory and storage space.
Human Purposes for Coding

• Keeps track of something


• Classifies information
• Conceals information
• Reveals information
• Requests appropriate action
Keeping Track of Something

• Simple sequence code


• Alphabetic derivation codes
Simple Sequence Codes

A number that is assigned to something if it needs to be numbered

133 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


No relation to the data itself
Using a simple sequence code to indicate the sequence in which orders enter a
custom furniture shop (Figure 15.1)

Simple Sequence Codes (Advantages)

• Eliminates the possibility of assigning the same number


• It gives users an approximation of when the order was received
Simple Sequence Codes (Disadvantages)

• When you do not wish to have someone read the code to figure out how many numbers
have been assigned
• When a more complex code is desirable to avoid a costly mistake
Alphabetic Derivation Codes

• A commonly used approach in identifying an account number


Identifying the account of a magazine subscriber with an alphabetic derivation code
(Figure 15.2)

Alphabetic Derivation Codes (Disadvantages)

• When the alphabetic portion is small or when the name contains fewer consonants than
the code requires
Names like ROE—become RXX
Some of the data may change
Classification Information

• Affords the ability to distinguish between classes of items

134 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Must be mutually exclusive
• Classification codes
• Block sequence code
Classification Codes

• Used to distinguish one group of data with special characteristics from another
• Can consist of either a single letter or a number
• A shorthand way of describing a person, place, thing, or event
• Listed in manuals or posted so that users can locate them easily
• Use a single letter for a code
Grouping tax-deductible items through the use of a one-letter classification code
(Figure 15.3)

Block Sequence Codes

• An extension of the sequence code


• Data are grouped according to common characteristics.
• Simplicity of assigning the next available number (within the block) to the next item
needing identification

Using a Block Sequence Code to Group Similar Software Packages (Figure 15.5)

Concealing Information

• Codes may be used to conceal or disguise information.


• Cipher Codes
Cipher Codes

The direct substitution of one letter for another, one number for another, or one letter for
a number

135 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Encoding Markdown Prices with a Cipher Code Is a Way of Concealing Price
Information from Customers(Figure 15.6)

Revealing Information

• Sometimes it is desirable to reveal information to specific users through a code.


• Makes the data entry more meaningful for humans
• Significant-digit subset codes
• Mnemonic codes
• Unicode
Significant-Digit Subset Codes

• Used to help describe a product by virtue of its membership in many subgroups


• Possible to locate items that belong to a certain group or class
• Inquiries may be performed on a portion of the code
• Useful for a marketing product

Using a Significant-Digit Subset Code Helps Employees Locate Items Belonging to a


Particular Department(Figure 15.7)

Mnemonic Codes

• A mnemonic (pronounced nî-môn'-ïk) is a human memory aid.


• Any code that helps the data-entry person remember how to enter the data or the user
remember how to use the information is a mnemonic.
• Using a combination of letters and symbols affords a clear way to code a product so that
the code is easily seen and understood.

Mnemonic Codes Function as Memory Aids by Using a Meaningful Combination of


Letters and Numbers (Figure 15.8)

136 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Unicode

Requesting Appropriate Action

• Instruct either the computer or the decision maker about what action to take.
• Function codes
Function Codes
• Short numeric or alphanumeric codes used to spell out precisely what activities are to be
accomplished
Function Codes Compactly Capture Functions that the Computer Must Perform
(Figure 15.9)

General Guidelines for Coding


• Be concise.
• Keep the codes stable.
• Ensure that codes are unique.
• Allow codes to be sortable.
• Avoid confusing codes.
• Keep the codes uniform.
• Allow for modification of codes.
• Make codes meaningful.
Be Concise

137 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Overly long codes mean more keystrokes and consequently more errors.
• Long codes also mean that storing the information in a database will require more
memory.
• Short codes are easier for people to remember and easier to enter.
• If codes must be long, they should be broken up into subcodes.
Keep the Codes Stable

• Stability means that the identification code for a customer should not change each time
new data are received.
• Don’t change the codes in a mnemonic system.
Ensure that Codes Are Unique

• For codes to work, they must be unique.


• Do not assign the same code number or name to the same items.
Allow Codes to Be Sortable

• Make sure that users can do what you intend to do with the codes you create.
• Numerical codes are much easier to sort than alphanumeric data.
Avoid Confusing Codes

• Avoid using coding characters that look or sound alike.

Combining Look-Alike Characters in Codes Can Result in Errors (Figure 15.12)

Keep the Codes Uniform


• Need to follow readily perceived forms.
• Keep codes uniform among as well as within programs.
Allow for Modification of Codes
• The system will evolve over time.
• The coding system should be able to encompass change
Make Codes Meaningful
• Effective codes contain information.
• Should make sense to people using them
• Easier to understand, work with, and recall
Using Codes
• Validation programs
• Report and inquiry programs
• GUI programs
Effective and Efficient Data Capture
• Deciding what to capture
• Letting the computer do the rest
• Avoiding bottlenecks and extra steps

138 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Starting with a good form
• Choosing a data-entry method
Deciding What to Capture
• Data that change or vary with every transaction
• Data that concisely differentiate the particular item being processed from all other items
Letting the Computer Do the Rest
• Recording the time of the transaction
• Calculating new values from input
• Storing and retrieving data on demand
Avoiding Bottlenecks and Extra Steps
• Data are poured rapidly into the wide mouth of the system only to be slowed in its “neck”
because of an artificially created instance of insufficient processing for the volume or
detail of the data being entered.
• The fewer steps involved in inputting data, the fewer chances there are for the
introduction of errors.
Starting with a Good Form
• With effective forms, it is not necessary to reenter information that the computer has
already stored, or data such as time or date of entry that the computer can determine
automatically
Choosing a Data-Entry Method

• Keyboards
• Optical character recognition
• Magnetic ink character recognition
• Mark-sense forms
• Bar codes
• RFID
Keyboards
• Special function keys to open programs
• Keys used to scroll and explore the Web
• Keys that can be programmed with macros to reduce the number of keystrokes required
• Ergonomic keyboards and infrared or Bluetooth-enabled keyboards
Optical Character Recognition
• Increased speed
• Eliminates many of the time-consuming and error-fraught steps of other input devices
• Decentralizes responsibility for quality data directly to the unit that is generating it
• The transformation of faxes into documents that can be edited
Magnetic Ink Character Recognition
• A reliable and high-speed method that is not susceptible to accepting stray marks
• If it is required on all withdrawal checks, it serves as a security measure against bad
checks
• Data entry personnel can see the numbers making up the code if it is necessary to verify
it.
Mark-Sense Forms
• Little training of entry personnel is necessary.
• A high volume of forms can be processed quickly.
• Stray marks on form can be entered as incorrect data.
• Choices are limited to the answers provided.
• Difficulty in capturing alphanumeric data.
• Easy to get confused and put a mark in an incorrect position
Bar Codes

139 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Affords a high degree of accuracy for data entry
• Saves labor costs
• Allows the automatic capturing of data
• Tracking of credit card purchases
Bar Coding, as Shown on this Label for a Grocery Product, Affords Highly Accurate Data
Entry (Figure 15.15)

RFID
• Allows the automatic collection of data using RFID tags that contain a chip and an
antenna
• Passive RFID tags
• Active RFID tags
• Privacy is a concern
Ensuring Data Quality through Input Validation
• The critical importance of catching errors during input, prior to processing and storage
cannot be overemphasized.
• Potential problems
o Validating input transactions
o Validating input data
Validating Input Is Important to Ensure that Most Potential Problems with Data Are
Eliminated Early (Figure 15.16)

Validating Input Transactions


• Submitting the wrong data
• Submitting of data by an unauthorized person
• Asking the system to perform an unacceptable function
Validating Input Data
• Test for missing data.
• Test for correct field length.
• Test for class or composition.
• Test for range or reasonableness.
• Test for invalid values.
• Cross-reference checks.
• Test for comparison with stored data.
• Set up self-validating codes (check digit).

140 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Steps in Converting a Five-Digit Number to a Six-Digit Number Containing a Check Digit
(Figure 15.17)

The Process of Validation


• Check first for missing data.
• Check the syntax.
• Check the semantics.
• GUI screens can help to reduce the number of human input errors when they
incorporate radio buttons, check boxes, and drop-down lists.
• Regular expressions
• Validating XML documents
• DTD
• Schema
These Characters Are Used in Regular Expression (Pattern) Validation (Figure 15.20)

Accuracy Advantages in Ecommerce Environments


• Customers generally key or enter data themselves.
• Data entered by customers are stored for later use.
• Data entered at the point of sale are reused throughout the entire order fulfillment
process.
• Information is used as feedback to customers.

Read :

Lesson 15 Designing accurate Data Entry Procedures


Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:
1. What are the four primary objectives of data entry?

141 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


2. List the five general purposes for coding data.
3. Define the term simple sequence code.
4. When is an alphabetic derivation code useful?
5. Explain what is accomplished with a classification code.
6. Define the term block sequence code.
7. What is the simplest type of code for concealing information?
8. What are the benefits of using a significant-digit subset code?
9. What is the purpose of using a mnemonic code for data? 1
10. Define the term function code.
11. List the eight general guidelines for proper coding.
12. What are changeable data?
13. What are differentiation data?
14. What is one specific way to reduce the redundancy of data being entered?
15. Define the term bottleneck as it applies to data entry.
16. What three repetitive functions of data entry can be done more efficiently by a computer
than by a data entry operator?
17. List six data entry methods.
18. List the three main problems that can occur with input transactions.
19. Define RFID. What are the differences between active and passive RFID tags?
20. Give two examples of the use of RFID tags in process or inventory management in retail
or health care environments.
21. What are the eight tests for validating input data?
22. Which test checks to see whether data fields are correctly filled in with either numbers or
letters?
23. What common error is missed by the Luhn formula?
24. Which test ensures data accuracy by the incorporation of a number in the code itself?
25. List four improvements to data accuracy that transactions conducted over ecommerce
Web sites

Problem:
A small, private university specializing in graduate programs needs to keep track of the list of
students who (a) apply, (b) are accepted, and (c) actually enroll in the university. For security
purposes the university also must send a report to the government with a list of foreign students
who enroll but fail to register. Suggest a kind of code for this purpose, and give an example of
its use in the university that demonstrates its appropriateness. What are its advantages?

Lesson 16: Quality Assurance and Implementation


Learning Outcomes:

After successful completion of this lesson, you should be able to:

• Recognize the importance of users and analysts taking a total quality approach to
improve the quality of software design and maintenance.
• Realize the importance of documentation, testing, maintenance, and auditing.
• Understand how service-oriented architecture and cloud computing is changing the
nature of information system design.
• Design appropriate training programs for users of the new system.

142 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Recognize the differences among physical conversion strategies, and be able to
recommend an appropriate one to a client.
• Address security, disaster preparedness, and disaster recovery concerns for traditional
and Web-based systems.
• Understand the importance of evaluating the new system, and be able to recommend a
suitable evaluation technique to a client.
Course Materials:

Six Sigma

• A culture built on quality


• Uses a top-down approach
• Project leader is called a Black Belt.
• Project members are called Green Belts.
• Master Black Belts have worked on many projects and are available as a resource to
project teams
Every Systems Analyst Should Understand the Methodology and Philosophy of Six
Sigma (Figure 16.1)

Responsibility for Total Quality Management

• Full organizational support of management must exist.


• Early commitment to quality from the analyst and business users
Structured Walkthroughs

• One of the strongest quality management actions is to do structured walkthroughs


routinely.
• Use peer reviewers to monitor the system’s programming and overall development.
• Point out problems.
• Allow the programmer or analyst to make suitable changes.
Involved in Structured Walkthroughs
• The person responsible for the part of the system being reviewed
• A walkthrough coordinator
• A programmer or analyst peer
• A peer who takes notes about suggestions

143 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


The Top-Down Approach
• Top-down design allows the systems analyst to ascertain overall organizational
objectives and how they are best met in an overall system.
• The system is divided into subsystems and their requirements.
Advantages of the Top-Down Approach

• Avoiding the chaos of attempting to design a system all at once


• Enables separate systems analysis teams to work in parallel on different but necessary
subsystems
• Prevents losing sight of what the system is suppose to do
Modular Development
• Breaking the programming into logical, manageable portions or modules
• Works well with top-down design
• Each individual module should be functionally cohesive, accomplishing only one
function.

Advantages of Modular Programming


• Modules are easier to write and debug.
• Modules are easier to maintain.
• Modules are easier to grasp because they are self-contained subsystems.
Guidelines for Modular Programming
• Keep each module to a manageable size.
• Pay particular attention to the critical interfaces.
• Minimize the number of modules the user must modify when making changes.
• Maintain the hierarchical relationships set up in the top-down phases.
Using Structure Charts to Design Systems
• The recommended tool for designing a modular, top-down system is a structure chart.
• A structure chart is simply a diagram consisting of rectangular boxes, representing the
modules, and connecting lines.
• Hollow circle arrows represent data being passed up and down the structure.
• Filled-in circle arrow represents a control switch or flag.
A Structure Chart for Changing a Customer Record (Figure 16-3)

Service Oriented Architecture (SOA)


• The SOA approach is to make individual SOA services that are unassociated or only
loosely coupled to one another.
• Each service executes one action.
• Each service can be used in other applications within the organization or even in other
organizations.
• A service can use certain defined protocols so that it can communicate with other
services.
• The burden of connecting services in a useful fashion, is a process called orchestration.

144 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• This can even be accomplished by selecting services from a menu of services and
monitoring them by setting up an SOA dashboard.
• In order to set up a SOA, services must be:
• Modular
• Reusable
• Work together with other modules (interoperability)
• Able to be categorized and identified
• Able to be monitored
• Comply with industry-specific standards

How Services Are Called upon Throughout the System (Figure 16.4)

System Documentation
• Procedure manuals
• The FOLKLORE method
Procedure Manuals
• The English-language component of documentation
• Key sections:
Introduction
How to use the software
What to do if things go wrong
A technical reference section
An index
Information on how to contact the manufacturer
• Procedure manual complaints:
They are poorly organized.
It is hard to find needed information.
The specific case in question does not appear in the manual.
The manual is not written in plain English.

The FOLKLORE Method


• Collects information in categories:
Customs
Tales
Sayings
Art forms
Customs, Tales, Sayings, and Art Forms Used in the FOLKLORE Method of
Documentation Apply to Information Systems (Figure 16.5)

145 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Choosing a Design and Documentation Technique
• Is it compatible with existing documentation?
• Is it understood by others in the organization?
• Does it allow you to return to working on the system after you have been away from it for
a period of time?
• Is it suitable for the size of the system you are working on?
• Does it allow for a structured design approach if that is considered to be more important
than other factors?
• Does it allow for easy modification?
Testing, Maintenance, and Auditing
• The testing process
• Maintenance practices
• Auditing
The Testing Process
• Program testing with test data
• Link testing with test data
• Full system testing with test data
• Full system testing with live data
Programmers, Analysts, Operators, and Users All Play Different Roles in Testing
Software and Systems(Figure 16.6)

Program Testing with Test Data


• Desk check programs
• Test with both valid and invalid data.
• Check output for errors and make any needed corrections.
Link Testing with Test Data
• Also referred to as string testing
• Checks to see if programs that are interdependent actually work together as planned
• Test for normal transactions.
• Test with invalid data.

146 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Full System Testing with Test Data
• Adequate documentation in procedure manuals
• Are procedure manuals clear enough?
• Do work flows actually “flow”?
• Is output correct and do users understand this output?
Full System Testing with Live Data
• Comparison of the new system’s output with what you know to be correctly processed
output
• Only small amounts of live data are used
Maintenance Practices
• Reduce maintenance costs.
• Improve the existing software.
• Update software in response to the changing organization.
• Ensure channels for feedback.
Auditing
• Having an expert who is not involved in setting up or using the system examine
information in order to ascertain its reliability
• There are internal and external auditors.
• Internal auditors study the controls used in the information system to make sure that
they are adequate.
• External auditors are used when the information system processes data that influences
a company’s financial statements.
Implementing Distributed Systems
• Can be conceived of as an application of telecommunications
Includes work stations that can communicate with each other and with data
processors
May have different hierarchical architectural configurations of data processors
that communicate with one another
Client-Server Technology
• The client-server model refers to a design model that can be thought of as applications
running on a network.
• The client is a networked computer that uses small programs to do front-end processing,
including communicating with the user.
Client-Server Model Advantages, Disadvantages
• Advantage—greater computer power and greater opportunity to customize applications
• Disadvantage—more expensive and applications must be written as two separate
software components each running on separate machines
A Client/Server System Configuration (Figure 16.7)

147 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Cloud Computing
• Organizations and individual users can use:
Web services
Database services
Application services over the Internet
• Done without having to invest in corporate or personal hardware, software, or software
tools
Cloud Computing (Figure 16.8)

Cloud Computing
• Jointly bear the lowered cost.
• Realize increases in peak-load capacity.
• Companies also hope to improve their ability to perform disaster recovery.
Network Modeling
• Draw a network decomposition diagram to provide an overview of the system.
• Draw a hub connectivity diagram.
• Explode the hub connectivity diagram to show the various workstations and how they
are connected.
Use Special Symbols when Drawing Network Decomposition and Hub Connectivity
Diagrams
(Figure 16.9)

A Network Decomposition Diagram for World’s Trend (Figure 16.10)

148 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


A Hub Connectivity Diagram for World’s Trend (Figure 16.11)

A Workstation Connectivity Diagram for World’s Trend (Figure 16.12)

There Are Five Main Advantages to Creating Distributed Systems (Figure 16.13)

There Are Four Chief Disadvantages to Creating Distributed Systems (Figure 16.14)

149 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Training
• Who to train
• People who train users
• Training objectives
• Training methods
• Training sites
• Training materials
Who to Train
• All people who will have primary or secondary use of the system
• Ensure that users of different skill levels and job interests are separated.
People Who Train Users
• Vendors
• Systems analysts
• External paid trainers
• In-house trainers
• Other system users
Appropriate Training Objectives, Methods, Sites, and Materials Are Contingent on Many
Factors (Figure 16.15)

Conversion Strategies
• Direct changeover
• Parallel conversion
• Gradual or phased conversion
• Modular prototype conversion
• Distributed conversion
Five Conversion Strategies for Information Systems (Figure 16.16)

150 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


Direct Changeover
• Old system stops, new one starts
• Needs extensive testing
• Risky approach to conversion
• Users may resent being forced into using an unfamiliar system without recourse.
• No adequate way to compare new results to old
Parallel Conversion
• Run the old and new systems at the same time.
• The advantage is that you can check new data against old data.
• The disadvantage is doubling employees’ workloads.
Gradual Conversion
• Combines best features of parallel and direct conversion
• Volume of transactions is gradually increased
• Advantage is that users get involved with the system gradually
• Agile methodologies use this conversion approach.
Modular Prototype Convers
• Each module is tested and put into use.
• The advantage is that each module is thoroughly tested before being used.
• Users are familiar with each module as it becomes operational.
• Object-oriented methodologies often use this approach.
Distributed Conversion
• When there are many installations of the same system, such as at branch offices
• Install software at one office
• Advantage is that problems can be detected and contained
• Disadvantage is that even when one conversion is successful, each site will have its own
peculiarities to work through
Other Conversion Considerations
• Ordering equipment
• Ordering any external materials supplied to the information system
• Appointing a manager to supervise the preparation of the installation site
• Planning, scheduling, and supervising programmers and data entry person

Organizational Metaphors May Contribute to the Success or Failure of an Information


System
(Figure 16.17)

Security Concerns
• Physical security
• Logical security
• Behavioral security
• Physical security is securing the computer facility, its equipment, and software through
physical means.
• Logical security refers to logical controls in the software itself.

151 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• Behavioral security is building and enforcing procedures to prevent the misusing of
computer hardware and software.
Special Security Considerations for Ecommerce
• Virus protection software
• Email filtering products
• URL filtering products
• Firewalls, gateways, and virtual private networks
• Intrusion detection products
• Vulnerability management products
• Security technologies such as secure socket layering (SSL) for authentication
• Encryption technologies
• Public key infrastructure (PKI) use and obtaining a digital certificate
Privacy Considerations for Ecommerce
• Start with a corporate policy on privacy.
• Only ask for information required to complete the transaction.
• Make it optional for customers to fill out personal information on the Web site.
• Use sources that allow you to obtain anonymous information about classes of
customers.
• Be ethical.
Disaster Recovery Planning
• Identify teams responsible for managing a crisis.
• Eliminate single points of failure.
• Determine data replication technologies that match the organization’s timetable.
• Create detailed relocation and transportation plans.
• Provide recovery solutions that include an off-site location.
• Ensure the physical and psychological well-being of employees and others.
Identify Who Is Responsible
• Whether business operations will continue
• How to support communications
• Where people will be sent if the business is uninhabitable
• Where personnel will go in an emergency
• Seeing to the personal and psychological needs
• Restoring the main computing and working environments
Single Points of Failure and Data Replication Technologies
• Redundancy of data provides the key for servers running Web applications
• SNAs and data mirroring
Relocation and Transportation Plans
• Send employees home.
• Remain on site.
• Relocate to a recovery facility.
Communication Channels
• Email
• Emergency information Web page
• Emergency hotline
• Emergency response agencies
Recovery Solutions and Support for the Well-Being of Employees
• Recovery involves an off-site location and converting paper documents to digital formats.
• Well-being of employees might include providing water or safety kits
Evaluation Techniques
• Cost-benefit analysis
• Revised decision evaluation approach

152 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


• User involvement evaluations
• The information system utility approach
Information System Utility Approach
• Possession
• Form
• Place
• Time
• Actualization
• Goal
• Possession utility answers the question of who should receive output.
• Goal utility answers the why of information systems by asking whether the output has
value in helping the organization achieve its objectives.
• Place utility answers the question of where information is distributed.
• Form utility answers the question of what kind of output is distributed to the decision
maker.
• Time utility answers the question of when information is delivered.
• Actualization utility involves how the information is introduced and used by the decision
maker.
Web Site Evaluation
• Know how often the Web site is visited.
• Learn details about specific pages on the site.
• Find out more about the Web site’s visitors.
• Discover if visitors can properly fill out the forms you designed.
• Find out who is referring Web site visitors to the client’s site.
• Determine what browsers visitors are using.
• Find out if the client’s Web site visitors are interested in advertising.

Read:

Lesson 16 Quality Assurance and Implementation


Systems Analysis and Design by Kendall & Kendall 8th ed.

Activities/Assessment:
1. What are the three broad approaches available to the systems analyst for attaining
quality in newly developed systems?
2. Who or what is the most important factor in establishing and evaluating the quality of
information systems or decision support systems? Why?
3. Define the total quality management (TQM) approach as it applies to the analysis and
design of information systems.
4. What is meant by the term Six Sigma?
5. What is an IS quality circle?
6. Define what is meant by doing a structured walkthrough. Who should be involved? When
should structured walkthroughs be done?
7. List the advantages of taking a top-down approach to design.
8. Define modular development.
9. List four guidelines for correct modular programming.
10. Name the two types of arrows used in structure charts.
11. What is service-oriented architecture?
12. Give two reasons that support the necessity of well-developed systems and software
documentation.
13. In what four categories does the FOLKLORE documentation method collect information?

153 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN


14. List six guidelines for choosing a design and documentation technique.
15. Whose primary responsibility is it to test computer programs?
16. What is the difference between test data and live data?
17. What are the two types of systems auditors?
18. List the four approaches to implementation.
19. Describe what is meant by a distributed system.
20. What is the client-server model? 2
21. Describe how a client is different from a user.
22. What are the advantages of using a client/server approach?
23. What are the disadvantages of using a client/server approach?
24. Who should be trained to use the new or modified information system?
25. List the five possible sources of training for users of information systems.
26. List the five conversion strategies for converting old information systems to new ones.
27. Define what encryption software means.
28. What is a firewall or firewall system?
29. List five of the several measures an analyst can take to improve the security, privacy,
and confidentiality of data, systems, networks, individuals, and organizations that use
ecommerce Web applications.

Problem:
1. One of your systems analysis team members has been discouraging user input on
quality standards, arguing that because you are the experts, you are really the only ones
who know what constitutes a quality system. In a paragraph, explain to your team
member why getting user input is critical to system quality. Use an example.

Course Grading System


Class Standing
• Quizzes ……………………………50
• Exercises/Problem……………………..20
• Case Study…………………………… ..30
100 X70% 70%

Midterm / Final Examinations 30%


Total 100%

Midterm Grade + Final Term Grade = FINAL GRADE


2

References:

Systems Analysis and Design by Kendall & Kendall 8th ed.


Modern Systems Analysis and Design by Jeffrey A. Hoffer Joey F. GeorgeJoseph S.
Valacich, Sixth Edition
Satzinger, Jackson, Burd; Systems Analysis & Design In A Changing Word; Fifth Edition
Yourdon, E. Modern Structured Analysis. Englewood Cliffs, NJ: Prentice Hall, 1989.
http://www.umsl.edu/~sauterv/analysis/prototyping/proto.html
Wikipedia, the free encyclopedia, “Cloud Computing.” Last accessed August 26, 2009. Zmud, R.
W., and J. F. Cox. “The Implementation Process: A Change Approach.” MIS Quarterly, Vol. 3,
No. 2, 1979,

154 | COMP 2043 SYSTEMS ANALYSIS AND DESIGN

You might also like