Course Documents
Chapter Summary
Chapters 1 - 10
Chapter 1: Introduction to Systems Analysis and Design
The following objectives will be covered:
- Discuss the impact of information technology on business
- Define an information system and describe its components
- Use profiles and models to understand business functions and operations
- Understand the impact of the Internet on business
- Identify various types of information systems and explain who uses them
- Explain systems development tools, including modeling, prototyping, and CASE tools
- Distinguish between structured analysis and object-oriented methodology
- Describe the systems development life cycle
- Discuss the role of the information technology department and the systems analysts who work there
Chapter 2: Analyzing the Business Case
The following objectives will be covered:
- Explain the concept of a business case and how a business case affects an IT project
- Describe the strategic planning process and why it is important to the IT team
- Explain the purpose of a mission statement
- Describe the SDLC, and explain how it serves as a framework for systems development and business modeling
- List the reasons for information systems projects and the factors that affect such projects
- Explain the initial review of systems requests and the role of the systems review committee
- Define operational feasibility, technical feasibility, economic feasibility, and schedule feasibility
- Describe the steps in a preliminary investigation and the end product of an investigation
Chapter 3: Requirements Modeling
The following objectives will be covered:
- Explain systems analysis phase activities and the end product of the systems analysis
- Describe the Unified Modeling Language (UML) and explain use case diagrams and sequence
- List and describe system requirements, including outputs, inputs, processes, performance,
- Describe how to conduct a successful interview
- Explain when and how to use fact-finding techniques, including interviews, documentation
Chapter 4: Enterprise Modeling
The following objectives will be covered:
- Describe enterprise modeling concepts and tools,
including entity-relationship diagrams, data flow diagrams, a
data dictionary, and process descriptions
- Explain how entity-relationship diagrams provide an overview of system interactions
- Describe the symbols used in data flow diagrams and explain the rules for their use
- Draw data flow diagrams in a sequence, from general to specific
- Explain how to level and balance a set of data flow diagrams
- Describe how a data dictionary is used and what it contains
- Use process description tools, including structured English, decision tables, and decision trees
- Describe the relationship between logical and physical models
Chapter 5: Development Strategies
The following objectives will be covered:
- Describe software trends, including the concept of software as service
- Explain software acquisition alternatives, including traditional versus Web-based software development strategies
- Describe software outsourcing options, including the role of service providers
- Explain advantages and disadvantages of developing software in-house versus other alternatives
- Explain cost-benefit analysis and financial analysis tools
- Explain the differences between a request for proposal (RFP) and a request for quotation (RFQ)
- Describe the contents of the system requirements document
- Explain the transition from systems analysis to systems
design, and the difference between logical and physical design
- Explain the transition to systems design and the importance of prototyping
- Discuss guidelines for system design, and explain the importance of codes
Chapter 6: Data Design
The following objectives will be covered:
- Explain data design concepts and data structures
- Describe file processing systems and various types of files
- Understand database systems and define the components of a database management system (DBMS)
- Describe Web-based data design and characteristics
- Explain data design terminology, including entities, fields,
common fields, records, files, tables, and key fields
- Describe data relationships, draw an entity-relationship diagram, define cardinality and use cardinality notation
- Explain the concept of normalization
- Understand the steps in database design
- Describe hierarchical, network, relational, and object-oriented database models
- Explain data warehousing and data mining
- Differentiate between logical and physical storage and records
- Explain data control measures
Chapter 7: User Interface, Input, and Output Design
The following objectives will be covered:
- Explain the concept of user interface design and
human-computer interaction, including the basic principles of
user-centered design
- List specific guidelines for user interface design
- Describe user interface techniques, including screen elements and controls
- Explain input design concepts, techniques, and methods
- Describe guidelines for data entry screen design
- Use validation checks for reducing input errors
- Design effective source documents and input controls
- Discuss output design issues and various types of output
- Design various types of printed reports and suggest output controls and security
Chapter 8: System Architecture
The following objectives will be covered:
- Provide a checklist of items to consider when selecting a system architecture
- Describe servers, server-based processing, clients, and client-based processing
- Explain client/server architecture, including tiers, cost-benefit issues, and performance considerations
- Describe the impact of the Internet on system architecture
- Explain the difference between online and batch processing
- Define network topology, and provide examples of hierarchical, star, bus, and ring network models
- Explain network protocols and licensing issues
- Explain system management tools and techniques, including
performance management, system security, fault management,
backup, and disaster recovery
- Describe the systems design specification and explain the contents of each section
Chapter 9: Systems Implementation
The following objectives will be covered:
- Explain the importance of software quality assurance and software engineering
- Describe the application development process
- Draw a structure chart showing top-down design, modular design, cohesion, and coupling
- Explain the coding process and how code is generated
- Explain unit testing, integration testing, and system testing
- Differentiate between program, system, operations, and user documentation
- List the main steps in system installation and evaluation
- Develop an overall training plan with specific objectives for
each group of participants, compare in-house and outside
training providers, and describe effective training techniques
- Describe the data conversion process
- Identify and describe changeover methods
- Explain post-implementation evaluation
- Describe the final report to management
Chapter 10: Systems Operation and Support
The following objectives will be covered:
- Explain how the systems operation and support phase relates to the rest of the system development process
- Describe user support activities, including user training and help desks
- Discuss the four main types of system maintenance: corrective, adaptive, perfective, and preventive
- Explain techniques for managing systems operation and
support, including maintenance teams, maintenance request
procedures, configuration management, maintenance releases,
version control, and baselines
- Describe techniques for managing system performance,
including performance and workload measurement, and capacity
planning
- List factors indicating that a system has reached the end of its useful life
- Assess future challenges and opportunities that IT
professionals will face as technology continues to reshape the
workplace
Chapter 1
Discuss the impact of information technology on business
Information technology, or
IT, is
a term that refers to the combination of hardware and software products
and services that companies use to manage, access, communicate, and
share information. Most businesses give information technology a high
priority, and for good reason. A report generated by the U.S.
Department of Commerce,
Digital Economy 2002, stated that IT
has created a new economy and provides unprecedented benefits to
businesses and individuals around the world. This growth is primarily
driven by the explosion in Internet use, which is predicted to
increase by 60 percent between 2001 and 2004. During periods of
economic growth, companies work to stay ahead of the IT curve with the
most advanced hardware, software, and connectivity options. When the
economy is weak, many companies depend on IT to reduce operating costs
and improve business efficiency.
Define an information system and describe its components
An
information system combines information
technology, people, and data to support business requirements. An
information system has five key components. The first is
hardware,
which consists of everything in the physical layer of the information
system, such as servers, workstations, scanners, handheld computers,
and telecommunications equipment. The second component is
software, which refers to the programs that control the hardware and produce the desired information or results.
Data, the third component, refers to the raw material that is transformed into useful information. The fourth component,
processes,
describe the tasks and functions that users, managers, and IT staff
members perform to achieve specific business results. Processes
represent actual day-to-day business operations, and thus are referred
to as the building blocks of an information system. The final
component of an information system consists of the people who use the
information system, who are called
users, or
end users.
Use profiles and models to understand business functions and operations
A process called
business process modeling is used
by systems analysts to represent a company's operations and
information needs. In business processing modeling, the analyst's
first step is to create an overview that describes a company's overall
functions, which is called a
business profile. The
business profile often includes descriptions of the company's
processes, organization, products, services, customers, suppliers,
competitors, constraints, and future goals. After creating a business
profile, the analyst then creates a series of models that document
various business procedures. A
business model is a graphical representation of one or more business processes that a company performs. This
business process
describes a specific set of transactions, events, tasks, and results
carried out by the firm. For example, an analyst might create a
business model that represents how the company handles a sales order.
This model might include the event of receiving the sales order,
followed by processes for checking customer status, verifying customer
credit, and entering customer order data. The final step in this
model would be the desired result: the completed sales order.
Understand the impact of the Internet on business
Consumers can use the Internet to go online and purchase an
enormous variety of products and services. Internet-based commerce is
called
e-commerce (
electronic commerce) or
I-commerce (
Internet commerce).
Within the e-commerce shopping environment, consumers can use the
Internet to conduct research, compare prices and features, check
availability, arrange delivery, and choose payment methods, all in one
convenient session. These types of activities refer to the sector of
e-commerce called
B2C, or
business-to-consumer.
B2C activity is expected to grow dramatically in the coming years,
which has created strong competition among the Web designers who
create the sites that generate online sales. The other main e-commerce
sector is
B2B, or
business-to-business.
B2B allows companies to access the global marketplace, allowing
greater access to information and opportunities for cost control. Most
B2B transactions rely on individual data-sharing arrangements called
electronic data interchange (EDI), by which company computers transfer
data between companies over private telecommunications networks. In
the future, a substantial amount of EDI traffic will take place on the
Internet, making such arrangements accessible to more businesses. It
is predicted that B2B sales will increase to over $7 trillion by 2004.
Identify various types of information systems and explain who uses them
At one point, it was general practice for IT managers to divide
systems into categories based on the user group the system served.
Today, these traditional labels no longer apply, as information use
has changed in most companies. Thus, it makes more sense to identify
systems by their functions and features, rather than by who uses the
system.
Enterprise computing refers
to information systems that support company-wide operations and data
management requirements. Examples of such company-wide operations
include production, sales, services, inventory control, and
accounting. Enterprise computing integrates IT into a company's
primary functions to improve efficiency, reduce costs, and help
managers make key decisions.
Transaction processing (TP) systems
process data generated by day-to-day operations of a business, such
as accounts receivable, warranty claim processing, and customer order
processing.
Business support systems offer job-related
information support to users at all levels of a company. For example,
some companies use scanners to collect sales data that can update a
company-wide database immediately. Knowledge management systems, also
called expert systems, simulate human reasoning in order to provide
information.
Knowledge management systems combine a knowledge base and inference rules that determine how the knowledge is applied. A
knowledge base is a large database into which users enter keywords or questions in order to find information, and
inference rules are logical rules that identify data patterns and relationships.
User productivity systems
include e-mail, voice mail, fax, video conferencing, word processing,
automated calendars, database management, spreadsheets, and much
more. In short, user productivity systems are systems that are used by
employees at all levels to improve productivity.
Explain systems development tools, including modeling, prototyping, and CASE tools
Modeling is a systems development tool that
involves creating a graphical representation of a process or concept
that then can be analyzed, tested, and modified. An information system
can be described using a set of business, data, object, network, and
process models. A
business model, or
requirements model, describes the information a system must provide. A
data model describes the structure and design of data in the system. An
object model describes objects that combine data and processes, and a
network model describes the design of telecommunications links. Finally, a
process model describes the logic that programmers use to write programming code. Another systems development tool is
prototyping, which uses an early working version of an information system, called a
prototype,
to test and examine input, output, and user interfaces before final
decisions are made. Sometimes, a prototype can develop into the final
version of the system; other times, a prototype serves as an initial
model that is used as a benchmark in creating the finished system.
Computer-aided systems engineering, or
CASE,
is a technique that uses powerful software to assist systems analysts
in developing and maintaining information systems. This software is
called
CASE tools, and makes it easier to build an
information system by providing an overall framework for systems
development and supporting a wide variety of design methodologies used
by analysts.
Distinguish between structured analysis and object-oriented methodology
Structured analysis is the most popular method for developing computer-based information systems. It uses a series of phases, called the
systems development life cycle (SDLC),
to plan, analyze, design, implement, and support an information
system. Structured analysis is called a process-centered technique
because it uses a set of process models to describe a system
graphically. Structured analysis treats processes and data as separate
components; the process accepts input data and transforms it into
output data.
Object-oriented analysis (O-O), on the other hand, combines data and the processes that act on the data into one entity, which is called an
object.
O-O models real-world business processes and operations, with objects
representing actual people, things, transactions, and events. All
objects are members of a
class, which is a collection of similar objects. An object inherits
properties from its class, or can possess properties on its own. Built-in processes called
methods can change an object's properties. One object can send information to another object by using a
message,
which requests specific behavior or information from another object.
O-O takes advantage of object models to represent data and behavior,
and to show how objects can affect other objects.
Describe the systems development life cycle
The SDLC is a model that describes activities and functions that
all systems developers perform, regardless of which approach they use.
These steps include systems planning, systems analysis, systems
design, systems implementation, and systems operation and support. The
systems planning phase typically beings with a
formal request to the IT department that describes problems or desired
changes in an information system or a business process. The IT
department then performs a
preliminary investigation to identify the scope of the request, which often includes a
feasibility study that reviews anticipated costs and benefits of proposed changes. The next step in the SDLC is the
systems analysis phase, in which analysts build a logical model of the proposed new system. The purpose of the next phase, called the
systems design phase,
is to generate a blueprint that will satisfy all documented
requirements for the system. This phase involves the design of the
user interface and internal and external controls that ensure the
system will be reliable, accurate, maintainable, and secure. The
result of this phase is a document called the
systems design specification that is presented to managements and users for review. The next phase is called the
systems implementation phase,
in which the new system is constructed. The procedure for
constructing a new system is the same whether structured analysis or
O-O methodology is used; programs are written, tested, and documented,
and the system is installed. Final preparations including converting
data to the new system's files, training users, and undergoing the
transition to the new system. A formal assessment, called a
systems evaluations, is performed to determine whether the system acts as expected. The final stage of the SDLC is the
systems operation and support phase, in which the IT staff maintains and enhances the system as necessary.
Discuss the role of the information technology department and the systems analysts who work there
The function of a company's information technology (IT) department
is to develop and maintain the company's information systems. In large
companies, the IT department may be comprised of many people with
specialized skills; in a small firm, a single person might handle all
computer support activities and services. However structured, the IT
department provides technical support, which includes six functions. The
first is
application development, which refers to
system design, development and implementation. While the traditional
application development group within an IT department was comprised of
systems analysts and programmers, today, many companies use teams
consisting of users, managers, and IT staff members to perform
application development tasks. The second function of technical
support is
systems support, which provides hardware and
software support for information systems, which includes installation
and assistance. If a company does not have a separate application
development group, the systems support group coordinates the
development of new systems. The
user support function, which often is called a
help desk or
information center (IC),
provides users with necessary technical information, training, and
productivity support. In some cases, the user support team also
installs and configures software applications that are used within the
organization.
Database administration, imperative for
companies with mission-critical database applications, refers to
database design, management, security, backup and user access.
Network administration includes the hardware and software maintenance, support, and security that are associated with telecommunication networks.
Web support specialists, often called
webmasters,
support a firm's Internet and intranet operations by designing and
constructing Web pages, monitoring traffic, managing hardware and
software, and linking Web-based applications to other company
information systems.
Chapter 2
Explain the concept of a business case and how a business case affects an IT project
A
business case consists of the reasons, or
justification, of a proposal that is reviewed by a systems analyst. An
effective business case makes a suggestion for an IT project and
demonstrates that the company should pursue that suggestion, above
other options, because it would be in the firm's best interest to do
so. For each proposal, the systems analyst must consider the company's
overall mission, objectives, and IT needs. Evaluating the business
case occurs during a process referred to as systems development.
Systems development generally beings with a systems request, followed
by a preliminary investigation. The strength of the business case
determines if a project will move forward in the review process
Describe the strategic planning process and why it is important to the IT team
Strategic planning is the process of identifying
the long term goals, strategies, and resources of a business. By
understanding the strategic planning process, the IT team is able to
focus on the larger, strategic role of IT as they work on evaluating
and implementing a new system. The IT team should not only be
concerned with the immediate details of an IT project, but also have a
strong grasp of the long-term implications of the project and how it
helps the company achieve its objects three, five, or even 10 years
into the future. Top managers use a method called
SWOT analysis
to assist in the strategic planning process and identify technical,
human, and financial resources. SWOT analysis examines a company's
strengths (S), weaknesses (W), opportunities (O), and threats (T).
Each item in SWOT analysis is formed into a question, i.e., "What are
our major strengths, and how can we maximize them in the future?" The
answers to the questions lead to an IT-related issue, which then results
in further analysis and planning.
Explain the purpose of a mission statement
A
mission statement is a description of the company
that includes the company's overall purpose, products, services, and
values. The mission statement is useful because it briefly describes
the company's purpose and activities to its stakeholders.
Stakeholders
include all those affected by the work of the company, such as
employees, customers, stockholders, suppliers, and community members. A
mission statement provides the foundation for a company's day-to-day
operations, short-term objectives, and long-term goals.
List the reasons for information systems projects and the factors that affect such projects
There are five main reasons that motivate proposals for information
systems projects. The first is improved service. An information
systems project often aims to improve service to customers or employees.
The second reason is to improve performance. The current system may
not meet performance requirements and therefore needs to be
reconfigured in order to support the company's current needs and
future growth. The third reason is to provide more information to the
company. This is especially true in the area of marketing, as
companies grow and need to make major decisions based on the best
possible information they can obtain from their IT systems. The fourth
reason is to provide stronger controls, which ensure that data is
secure and accurate. The fifth reason is to reduce costs so that the
IT systems used by a company are the most cost-effective solutions.
Factors that affect IT systems projects can be categorized as internal
and external factors. Internal factors include the company's
strategic plan, top managers, user requirements, IT department, and
the company's existing systems. External factors include technology,
suppliers, customers, competitors, the economy, and the government.
Each of these factors can influence whether or not a
systems request, which is a formal request for IT support, is considered for further review.
Explain the initial review of systems requests and the role of the systems review committee
A
systems review committee, also called a
computer resources committee,
is made up of key managers and users within a company. A typical
committee consists of the IT director and several managers from other
departments. The systems review committee evaluates systems projects
based on the combined judgment and experience of the committee members.
Many firms streamline the systems request process by providing a
special form to be used to initiate a systems request. When a systems
request form is received, an IT manager or systems analyst examines it
to determine the time and staffing that are required for a
preliminary investigation of the request. The committee then decides
whether to proceed with the investigation. To make such a decision,
the committee must prioritize among all systems requests that they
receive. They must determine which project(s) should be pursued
further, and what criteria will be used to make further decisions.
While most large companies use a systems review committee to evaluate
systems requests, some smaller companies rely on one person to
evaluate systems requests. In this case, the individual must consult
closely with others in the company to make sure that the needs of
managers and users are considered carefully.
Define operational feasibility, technical feasibility, economic feasibility, and schedule feasibility
In order to determine whether a systems request is worthwhile to proceed further, it must pass several tests, called a
feasibility study, which evaluate operational feasibility, technical feasibility, economic feasibility, and schedule feasibility.
Operational feasibility
refers to whether a system will be used effectively after it has been
developed. Operational feasibility is based on issues such as manager
support, required training, workforce reduction, and adverse effects
to users and customers.
Technical feasibility
involves the technical resources that are needed to develop, purchase,
install, or operate the system. Technical feasibility considerations
include evaluation of hardware, software, and network resources,
company expertise, and capacity for future transaction volume and
company growth.
Economic feasibility evaluates whether
or not the projected benefits of the proposed system outweigh the
estimated costs of the system (often referred to as the
total cost of ownership, or
TCO).
Acquisition costs, maintenance costs, and ongoing support costs must
be evaluated against the tangible and intangible benefits of the
proposed system. Lastly,
schedule feasibility refers to whether a project can be implemented in an acceptable time frame.
Describe the steps in a preliminary investigation and the end product of an investigation
A preliminary investigation studies a systems request and
recommends a specific action. The first step in a preliminary
investigation is to understand the problem or opportunity at hand. A
systems analyst determines which departments, users, and business
processes are involved in a systems request, and then evaluate the
causes and effects related to the proposed system. The second step is
to define the project scope and constraints. The
project scope refers to the boundaries, or extent, of the project, being as specific as possible. The
constraints
are the requirements or conditions that the system must satisfy or an
outcome that the system must achieve. The third step is to perform
fact-finding in accordance with various techniques. Fact-finding
techniques include analyzing organization charts, conducting
interviews with users and managers, reviewing documentation, observing
operations, and conducting a user survey. The fourth step is to
evaluate feasibility, including operational, technical, economic, and
schedule feasibility. The fifth step is to estimate the time and cost of
project development. The sixth and final step is to present the
results and recommendations to management. A preliminary investigation
report is the end product of an investigation and includes an
evaluation of a systems request, an estimate of costs and benefits,
and the recommendation of the analyst presenting the report.
Chapter 3
Explain systems analysis phase and describe JAD
Systems analysis provides an understanding of the proposed project,
ensures it will meet business requirements, and details user
requirements that will be used as the starting point for systems design.
Requirements modeling is the first phase of systems
analysis and involves investigation and fact-finding to describe the
current system. The end product of systems analysis is the systems
requirements document, which includes the results of requirements,
data, process, and objects modeling. These activities, along with the
transition to systems design, comprise the major activities of systems
analysis.
Joint application development (JAD) uses a team of systems analysts, users, and managers to perform the processes of systems analysis.
Describe and develop effective documentation methods to use during systems development
Systems analysis requires a significant documentation of the
results of the various modeling activities. The Unified Modeling
Language (UML) provides an industry standard method of visualizing and
documenting software systems design. Two of the diagrams included in
UML are use case diagrams and sequence diagrams. A
use case diagram visually
represents the interactions between users and information systems. In
the use case diagram, the user is represented as an
actor with a specific role that describes how the user interacts with the system.
Sequence diagrams illustrate the timing of interactions between system components as they occur. A
functional decomposition diagram (FDD) provides
a graphical representation of the entire system. The FDD shows the
business functions and processes of the system in a top-down fashion.
List and describe system requirements, and explain TCO and the importance of scalability
The purpose of systems analysis is discovering and modeling
system requirements.
A system requirement is a characteristic or feature of the system
that must be included to satisfy business requirements and meet user
needs. System requirements can relate to outputs that the system
produces, inputs (how data is entered into the system), processes that
describe how data is transformed, performance, and controls related
to system security.
Scalability is a measure of how well the system can adjust to increased performance requirements after the system has been implemented.
Total cost of ownership (TCO) includes
all costs associated with a systems project including both direct
costs, such as the salary of programmers and the price of equipment,
and indirect costs, such as training and user support.
Describe how to conduct a successful interview
An
interview is a planned meeting where the systems
analyst questions a user or other knowledgeable party about how the
existing system works and what the requirements are for the new
system. For an interview to be successful, the systems analyst should
follow a sequenced set of actions. First, the analyst should determine
who should be interviewed. Prior to the interview, the analyst should
identify what his or her objectives are for each specific interview
and develop questions based on these objectives. During the interview,
the analyst needs to listen to the answers and not just ask
questions. Finally, document and evaluate the interview.
Explain when and how to use fact-finding techniques
Fact-finding focuses on current processes and procedures to provide
a base to analyze what should be done to support and improve these
processes. The primary tool in fact-finding is collecting information
from users and others involved in the operation of the current system
through
interviews and written
questionnaires. Document review can
facilitate an understanding of how the current system is supposed to
work by reviewing procedure manuals, forms, and related documentation.
Observation of actual operating procedures may
assist in identifying aspects of the current system that can be
changed to improve performance. Actual system inputs and outputs
should be examined.
Sampling techniques provide a
method for looking at only a small subset of inputs and outputs that
represent the entire collection. In addition,
research on the Internet or in a library may be used for fact-finding.
Chapter 4
Describe enterprise modeling concepts and tools, including
entity-relationship diagrams, data flow diagrams, a data dictionary,
and process descriptions
Many graphical techniques are used to describe an information system. An
entity-reltationship diagram (
ERD) is a model that shows the logical relationships among system entities. An
entity us a person, place, thing, or event for which data is collectred and maintained. A
data flow diagram (
DFD)
illustrates how data moves through an information system. DFDs do not
show logic or processing steps; they show what the system does, not
how it does it. A
data dictionary is a central
storehouse of information about the data in a system. A data
dictionary stores the details within the set of DFDs that make up the
logical model of the system. A
process description documents the details of a functional primitive, which represents a specific set of processing steps and business logic
Explain how entity-relationship diagrams provide an overview of system interactions
An
entity-relationship diagram recognizes the
relationships among nictitates, which helps you understand the
interaction among them. An entity-relationship diagram requires you to
categorize the type of relationships that exist, based on three basic
relationship types. The first is a
one-to-one relationship, abbreviated
1:1, which exists when exactly one of the second entity occurs for each instance of the first entity. A
one-to-many relationship, abbreviate
1:M,
is when one occurrence of the first entity can relate to many
instances of the second entity, but each instance of the second entity
can associate with only instance of the first entity. Finally, a
many-to-many relationship, abbreviated
M:N,
exists when once instance of the first entity can relate to many
instances of the second entity, and one instance of the second entity
can relate to many instances of the first entity.
Describe the symbols used in data flow diagrams and explain the rules for their use
Four based symbols are used in DFDs. These symbols represent processes, data flows, data stores, and entities. A
process
symbol represents the interaction between input data and output. The
symbol for a process is a rectangle with rounded corners, with the
name of the process inside the rectangle. The process name must
consist of a verb (and an adjective, if necessary), followed by a
singular noun. A process receives input data and produces output that
has a different content, form, or both. Processes contain the
business logic, also called the
business rules, that transform the data and produce the required output. A
data flow
symbol is used in a DFD to represent the path by which data moves from
one part of the information to another. The symbol for a data flow is a
line with a single or double arrowhead, with the data flow name
written above, below, or alongside the line. A
data store
symbol represents the data that the system stores because one or more
processes need to use the data at a later time. A data store must be
connected to a process with a data flow. An entity symbol is used to
represent external entities that provide data to the system or receive
output from the system. The symbol for an entity is a rectangle, with
the name of the entity written inside the rectangle.
Draw data flow diagrams in a sequence, from general to specific
The most general view of an information system is a
context diagram,
which is a top-level view of an information system tat shows the
system's boundaries and scope. The first step is to place a single
process symbol in the center of the page, which you identify as
process 0. This process represents the entire information system, and
is connected to other central processes using data flows. To show the
detail inside a context diagram, you create
diagram 0,
which shows major processes, data flows, and data stores. When you
explode a DFD to show a more detailed version of the process, the
higher-level diagram is called the
parent diagram, and the lower-level diagram is called a
child diagram.
Explain how to level and balance a set of data flow diagrams
Leveling a set of DFDs is the process of drawing a
series of increasingly detailed diagrams, until all functional
primitives are identified. Leveling allows an analyst to start with an
overall view, and then create more detail with diagram 0 and further
lower-level DFDs. Leveling is also called
decomposing,
exploding, or
partitioning.
Balancing
is the process of ensuring that input and output data flows align
properly, which maintains consistency among a set of DFDs. Balancing
ensures that all data flows of the parent DFD are maintained on the
child DFD.
Describe how a data dictionary is used and what it contains
A
data dictionary stores specific facts about the
system, including the contents of data flows, data stores, entities,
and processes. Furthermore, the data dictionary defines and describes
all data elements and the meaningful combinations of data elements.
For each data element, the data dictionary documents attributes such
as the name or label, alias, type and length, default value,
acceptable values, source, security information, response user(s), and
additional notes. The data dictionary stores detailed information
about data flows, such as the name or label for the data flow, its
description, alternate name(s), origin, destination, record, and volume
and frequency. Documenting data stores involves storing the data
store's name or label, description, alternate name(s), attributes, and
volume and frequency. Example characteristics of entities that are
stored in the data dictionary include the entity name, description,
alternate name(s), input data flows, and output data flows. Lastly,
the data dictionary contains information about each process, including
process name or label, description, process number, and process
description.
Use process description tools, including structured English, decision tables, and decision trees
A process description allows you to create a model tat is accurate,
complete, and concise. There are several process description tools
that allow you to document the details of a functional primitive.
Structured English
is a subset of standard English that describes logical processes
clearly and accurately. When using structured English, you should use a
limited vocabulary of standard terms used in the data dictionary, use
indentation to improve readability, and use only the three building
blocks of sequence, selection, and iteration.
Decision tables
show a logical structure, with all possible combinations of
conditions and resulting actions. Using a decision table to describe a
logical process ensures that you have not overlooked any logical
possibility of combining conditions and obtaining results A
decision tree
is a graphical representation of the conditions, actions, and rules
found in decision table. Graphically, a decision tree resembles a
horizontal tree with the roots at the left and the branches to the
right.
Describe the relationship between logical and physical models
Structured analysis tools can be used to develop physical models,
in addition to logical models. Studying a physical model of the current
system first allows you to understand how the system works, before
tackling how it will implement the requirements. Many systems analysts
create a physical model and logical model of the current system,
before creating a logical and physical model of the new system. This
method is called a
four-model approach, and it offers a clear picture of current system functions before any modifications or improvements to the system are made.
Chapter 5
Describe software trends, including the concept of software as service
Software acquisition has been greatly affected by the Internet, just as have all business methods and operations. The
Software and Information Industry Association (
SIIA),
an industry group that focuses on the digital economy, believes that
the concept of software as a service is redefining the way companies
develop their information systems. Many people in the industry expect
that traditional packaged applications will be replaced by Web-based
services. Web-based services will remove the responsibility for
installation, maintenance, and upgrades from a company's in-house
staff. The responsibilities will be outsourced to be handled by
outside firms and application service providers. The options for systems
development strategies are much greater today with choices including
application service providers, Web-hosted software options, and firms
that offer a variety of enterprise-wide software solutions.
Explain software acquisition alternatives, including traditional versus Web-based software development strategies
In the traditional model of software acquisition, software vendors
develop and sell application packages to customers. Now, the
marketplace includes many forms of acquiring software, including
application service providers and firm that offer Internet business
services. As Internet-based systems become more popular, systems
developers are focusing on
Web-based application,
which builds the Web into the application, rather than the other way
around. In traditional development, system designs is influenced by
compatibility issues, including existing hardware and software
platforms. Systems are designed to run on local and wide-area company
networks, and scalability can be limited by telecommunications
limitations and network constraints. Furthermore, Web-based features are
treated as enhancements rather than core elements of the design. In
Web-based development, the Web is treated as the platform, rather than
just a communication channel. Web-based systems are easily scalable,
and can run on many different hardware environments. While Web-based
development offers greater options and flexibility, there are some
risks involved as Web-based software requires additional layers,
called
middleware, to communicate with existing software and legacy systems.
Describe software outsourcing options, including the role of service providers
Outsourcing refers to the transfer of information
systems development, operation, or maintenance to an outside firm that
provides these services for a fee. Outsourcing can refer to minor
programming tasks, software rental, or the handling of a company's
entire IT function. A company that offers outsourcing solutions is
called a
service provider. An
application service provider (
ASP)
is a firm that delivers a software application, or access to an
application, by charging a usage or subscription fee. Another
outsourcing option involves firms that offer
Internet business services (
IBS), also called
managed hosting.
IBS provides Web-based support for transactions such as billing,
order processing, and customer relationship. Service providers use fee
structures that are based on how the application is used by customers
during a specific time period, such as a
fixed fee model, a
subscription model, and a
usage model.
Explain advantages and disadvantages of developing software in-house versus other alternatives
Developing
in-house software means that a company
chooses to develop its own systems, rather than purchase a software
package. Developing software in-house allows a company to satisfy
unique business requirements and meet constraints of existing systems
and technology. The firm will develop internal resources and
capabilities, which many companies consider to be an advantage, and
the development results in minimal changes in business procedures and
policies. However, there are disadvantages of developing software
in-house. It is less expensive and time-consuming to purchase
software, as opposed to developing the software in-house. Developing
in-house software requires more technical development staff and does not
have proven reliability and performance benchmarks that outsourcing
options provide.
Explain cost-benefit analysis and financial analysis tools
In order to determine economic feasibility of a proposed system,
you must conduct cost-benefit analysis to determine the best development
strategy for moving forward. There are three main cost analysis
tools: payback analysis, return of investment, and net present value.
Payback analysis specifies how long it takes an information system to pay for itself through increased benefits and reduced costs.
Return on investment (
ROI) is a percentage rate that compares the total net benefits received from a project to the total costs of the projects. The
net present value (
NPV)
of a project is the total value of the benefits minus the total value
of the costs. The most effective way to utilize these financial tools
is to develop a cost-benefit checklist that identifies all costs and
benefits for each alternative, considering factors such as
scalability, support costs, and licensing options.
Explain the differences between a request for proposal (RFP) and a request for quotation (RFQ)
To obtain the information you need in order to make a decision
about software acquisition, you prepare a request for proposal or a
request for quotation. A
request for proposal (
RFP)
is a document that describes the company, lists the IT services you
need, and specifies the features you require, such as service and
support levels. Vendors evaluate the RFP to determine if they have a
product that will meet your need. A
request for quotation (
RFQ)
is a document that you use to obtain price quotations or bids when
you already know the specific product or service you want. RFQs can
involve outright purchase or a variety of leasing options that can
include technical support and maintenance terms.
Describe the contents of the system requirements document
The
system requirements document contains the
requirements for the new system, describes all the alternatives that
were proposed and considered, and makes a specific recommendation to
management. This document acts like a contract that identifies what
the system developers must deliver to users, and therefore should be
written in a language that users can understand. The system
requirements document should be formatted so that it is easy to read,
and should include a cover page, table of contents, index, and
glossary of terms. In addition to the system requirements document,
you also should prepare a presentation to management at the end of the
systems analysis phase.
Explain the transition from systems analysis to systems design, and the difference between logical and physical design
A satisfactory transition from systems analysis to systems design
is largely dependent on an accurate and understandable system
requirements document, which is the starting point for the systems
design phase. At this point, you have a
logical design
of the information system, which defines the functions and features
of the system, as well as the relationship among its components. The
logical design defines
what must take place, and the
physical design of the information system explains
how
it will be accomplished physically. The physical design is a plan for
the actual implementation of the system, and is created during the
systems design phase of the SDLC. The goal of systems design is to
design a system that is effective, reliable, and maintainable, while
satisfying the requirements and constraints defined during the systems
analysis phase.
Explain the transition to systems design and the importance of prototyping
An early working version of the proposed information system is called a
prototype.
Prototyping
is the process that produces a prototype using a repetitive sequence
of analysis, design, modeling, and testing. Prototyping allows users
to test a model that accurately represents system outputs, inputs,
processes, and interfaces.
System prototypingproduces
a working model of the information system, which evolves into the final
version of the information system in the implementation phase of the
SDLC. This approach is especially useful in RAD. Another approach is
to use
design prototyping, or
throwaway prototyping,
which is a model that documents and benchmarks the features of the
finished system in order to be capture user approval while continuing
to develop the system. Design prototyping does not producing a
full-featured, working model of the system.
Discuss guidelines for system design, and explain the importance of codes
When starting the actual design process, the best place to begin
with data design, which defines the physical data structures, elements,
and relationship. Next, move to the user interface, which will
concurrently determine the design for specific input and output design
tasks. The last step is to work on the architecture that will
translate the design into code modules. A
code is a
set of letters or numbers that represents a data item. Codes are used
to simplify output, input, and data formats. Because codes are shorter
than the data they represent, they save storage space and costs, and
reduce the time it takes to enter and transmit data. Codes can be used
to reveal or conceal data, and using codes also reduces the occurrence
of data input errors, since coded data often is easier to remember
than the original source. Furthermore, codes can be limited so that
only certain valid codes are allowed, which also reduces the
opportunity for error. There are many different coding methods,
including
sequence codes,
block sequence codes,
alphabetic codes (including
category codes and
abbreviation codes),
significant digit codes,
derivation codes,
cipher codes,
action codes, and
self-checking codes.
Chapter 6
Explain data design concepts and data structures
Basic design concepts that must be understood prior to constructing
an information system include data structures and the characteristics
of file-oriented and database systems. A
data structure is a framework for storing and organizing data, which consists of one or more files or table. A
file or
table
holds information about people, places, things, or events that
interact with the system. An information system can be designed as
either a file-oriented system or a database management system. A
file-oriented system stores and manages data in separate files, while a
database system consists of linked files that form an overall data structure.
Describe file processing systems and various types of files
File processing is the method by which a
file-oriented system stores and manages data. Today, file processing is
less common than database systems, although in some cases, file
processing is more efficient and cost-effective. The potential
problems can occur in file processing systems: data redundancy, data
integrity, and rigid data structure. There are several kinds of files
used in a file-oriented information system. A
master file is used to store relatively permanent data about an entity. A
table file stores data that is referenced by the system. A
transaction file stores records of day-to-day business data. A
work file is a temporary file used by the system for a single task. A
security file is created by the system for backup and recovery purposes. A
history file is created to archive inactive files that can be used for queries or reports.
Understand database systems and define the components of a database management system (DBMS)
Database systems provide a framework for storing data within a
real-time, dynamic environment, without the risk of data redundancy. A
database management system (
DBMS)
is a collection of tools, features, and interfaces that allows users
to manage the contents of a database. A DBMS provides an interface
between a database and the users, database administrators (DBAs), and
the other systems with which the DBMS interacts. In addition to
interfaces, other DBMS components include a data manipulation
language, a schema, and a physical data repository. A
data manipulation language, or
DML, controls the operations of the database. A
schema
refers to the complete definition of a database, including descriptions
of all fields, tables, and relationships. A subschema defines only
portions of the database that a particular user or system can access. A
physical data repository contains the information in the data
dictionary, plus the schema and subschemas of the DBMS.
Describe Web-based data design and characteristics
In a Web-based design, the Internet serves as the interface for the
DBMS. Several characteristics of Web-based data design make it an
appealing option for many companies. Web-based design offers global
access via the existing infrastructure of the Internet. Web-based
design provides ease of use, as an Internet-based interface is
familiar and user-friendly. Web-based design can be run on multiple
platforms, and users world-wide need only a Web browser and an
Internet connection to access the database. Cost effectiveness is
another characteristic of Web-based design, since initial costs are
relatively low and the system is flexible, with few operating
requirements. Since a Web-based database uses the Internet as the
interface, it is important to address security issues with good
design, protective software, and controls such as passwords and user
identification. A final characteristic of Web-based data design is the
adaptability issues that are inherent when transferring a traditional
database design to the Web. This process may require additional
software, design modifications, and added financial expense.
Explain data design terminology, including entities, fields, common fields, records, files, tables, and key fields
An
entity is a person, place, thing, or event for which data is collected and maintained. A
field is a single fact or characteristic about an entity, which can also be called an
attribute. A
common field is an attribute that appears in more than one entity, can be used to link entities in relationships. A
record is a set of related fields that describe a single instance, or an occurrence of an entity. A
record is also called a tuple. A
table, also called a
file, contains a set of related records that store data about a specific entity.
Key fields are used to organize, access, and maintain data structures. For example, a
primary key
is a field or a combination of fields that uniquely identifies a
particular member of an identity. A candidate field refers to any
field that could serve as a primary key. A
foreign key
is a field in one file that must match a primary key value in another
file in order to establish a relationship between the two files. The
fourth type of key field is a
secondary key, which is a non-unique field or combination of fields that can be used to retrieve records.
Describe data relationships, draw an entity-relationship diagram, define cardinality and use cardinality notation
A
relationship is a logical link between entities that is based on how they interact. Systems analysts draw an
entity-relationship diagram (
ERD) to graphically depict the relationship among the entities of an information system.
Cardinality describes how instances of one entity relate to instances of another entity.
Cardinality notation is used to show relationships between entities using four basic symbols. Cardinality notation is often called
crow's foot notation because a crow's foot shape is used in combination with other shapes to depict the data relationships within a system.
Explain the concept of normalization
The process of creating table designs by assigning specific fields to each table in a database is called
normalization.
A table design specifies the fields and identifies the primary key in
a particular table. Normalization is used to help you identify and
correct problems and complexities in table designs by converting table
designs from one stage of normalization to the next stage. The first
stage of normalization is unnormalized design, in which you have a set
of one or more fields that can occur any number of times in a single
record, with each occurrence having different values. This set is
referred to as a repeating group. The second stage of the
normalization process is first normal form (1NF). A table is in 1NF if
it does not contain a repeating group. The next stage is second normal
form (2NF) , in which the table design is in 1NF and if all fields
that are not part of the primary key are functionally dependent on the
entire primary key. The last stage of the normalization process is
third normal form (3NF). A design is in 3NF if it is in 2NF and if no
nonkey field is dependent on another nonkey field.
Understand the steps in database design
There are four basic steps to create database and file designs. The
first step is to create an initial ERD, using DFDs and class diagrams
to identify the system entities. The second step is to assign all data
elements to entities, ensuring that every data element in the data
dictionary is associated logically with an entity. The third step is
to create 3NF designs for all tables. This allows you to create the
final ERD that includes all the new entities identified during the
normalization stages. Finally, verify that the data dictionary entries
for data stores, records, and data elements are documented correctly.
Describe hierarchical, network, relational, and object-oriented database models
A
hierarchical database model is organized like a family tree, with branches representing parent and child records. A
network database
is similar to a hierarchical design but it provides more flexibility.
In a hierarchical database, a parent record can have multiple child
records, but each child record can have only one parent. On the other
hand, a child record in a network database can have relationships with
more than one parent. A
relational database uses
common fields to establish relationships between tables. These
relationships between tables form an overall data structure for the
database. An
object-oriented database(
OODB)
is an extension of the object-oriented analysis process, which
describes systems in terms of objects. Each object in an OODB has a
unique
object identifier, which allows the object to form relationships with other objects, similar to the primary key in a relational database.
Explain data warehousing and data mining
Data warehousing is the act of organizing and storing data in
data warehouses,
which are integrated collections of data that offer an
enterprise-wide view of a company's database systems. Data warehousing
software can link various information systems and databases to collect
unrelated information, no matter where it is stored in the company.
Data mining
software searches for meaningful relationships among data. Data
mining often is used to analyze e-commerce trends, such as Web visitor
behavior and Web site traffic trends.
Differentiate between logical and physical storage and records
Logical storage refers to information as seen through a user's
eyes. When discussing logical storage, it does not matter how or where
the information actually is organized or stored. On the other hand,
physical storage involves the process of writing and writing binary
data to physical media, such as a CD-ROM or a hard drive. Portions of a
document might be stored in different physical locations on a hard
drive, which refers to physical storage. Logical storage describes the
fact that the document is one logical entity from the viewpoint of
the user, who sees a single document on his or her computer monitor.
Explain data control measures
Data control measures ensure that data storage is complete,
correct, and secure. A DBMS should have built-in control and security
features, such as subschemas, encryption, passwords, and backup and
recovery procedures. A subschema allows you to limit file access to
specific users in order to protect stored data.
Encryption is the process of converting data into unreadable characters in order to prevent unauthorized access to the data.
Backup copies of system files and databases should be made regularly and retained for a specific period of time.
Recovery procedures can be used to restore a file or database to its current state at the time the last backup was made.
Chapter 7
Explain the concept of user interface design and human-computer
interaction, including the basic principles of user-centered design
The
user interface, or
UI, describes how users interact with a computer system. A user interface is based on the basic principles of
human-computer interaction (
HCI).
The UI consists of the hardware, software, menus, screens, functions,
and features that are involved in two-way communications between the
user and the system. The main objective is to design a UI that is easy
for users to learn and use. In fact, experts say that the most effect
user interface is one that the user does not even notice. Good UI
design is based on eight basic principles of user-centered design,
which dictate that IT professionals should understand the underlying
business functions of a system, maximize graphical effectiveness,
profile the system's users, think like a user, use prototyping, design
a comprehensive interface, continue the feedback process, and
document the interface design.
List specific guidelines for user interface design
There are eight basic guidelines to follow when creating a user
interface. Focus on basic objectives of the system in order to improve
efficiency and minimize user errors. Build an interface that is easy to
learn and use through clear graphics, instructions, and easy
navigation. Provide features that promote efficiency such as
shortcuts, menu lists, search features, and natural language features.
Make it easy for users to obtain help or correct errors with data
confirmation prompts, hypertext links to Help topics, and
properly-labelled Help pages. Minimize input data problems with data
validation checks and event-driven messages and reminders. Provide
feedback to users so that they know if tasks or operations were
successful or not. Create an attractive layout and design to highlight
different areas of the screen and promote consistency throughout the
interface. Finally, use familiar terms and images to make the
interface clear and understandable.
Describe user interface techniques, including screen elements and controls
Control features allow users to interact with a system easily and
efficiently. Controls include menu bars, command buttons, dialog boxes,
text boxes, toggle buttons, list boxes, drop-down list boxes, option
buttons, check boxes, and calendar controls. These elements are used
in combination to create interfaces that are attractive, easy to use,
and workable. Keep in mind that the opening screen is especially
important because it introduces users to the application and the main
options of the interface.
Explain input design concepts, techniques, and methods
The main goal of input design is to ensure the quality, accuracy,
and timeliness of input data. IT professionals know that the best time
to avoid problems is when the data is entered, which is sometimes
referred to as the
garbage in, garbage out(
GIGO)
concept. One of the main objectives of input design is to select a
suitable input and data entry method. Input data can be captured, as
with a credit card scanner, or entered in the system in the form of
mouse clicks or keystrokes. Analysts must study business operations to
determine how and when data should enter the system, using methods
such as batch input and online data entry.
Batch input refers to data entry that is performed on a specified time schedule.
Online data entry is validated immediately as it is available.
Source data automation is a popular online input method that combines online data entry and automated data capture using input devices such as
swipe scanners or
magnetic data strips.
Other input design objectives include the following: reduce input
volume, design attractive data entry screens, use validation checks to
reduce input errors, design required source documents, and develop
effective input controls.
Describe guidelines for data entry screen design
Data entry screen design, which refers to systems that receive
repetitive data entry input from users, has special consideration. User
access should be restricted to screen locations where data is entered.
You should provide a descriptive caption for every field, and
indicate the location and length of each field with white boxes, video
highlighting, underscores, or other features. If the user must enter
values in a specific format, display a sample format that the user can
follow as a guide. Require an ending keystroke for every field, such
as the ENTER key or the TAB key, to signify the end of the field
entry. Do not require users to type leading zeroes for numeric fields
or trailing zeroes for numbers that include decimals. Display default
values so that users can press the ENTER key to accept a suggested
value, and use a default value when a field value will be constant for
successive records. Provide meaningful error messages if a user
enters an unacceptable value for a field, or provide a drop-down list
from which users may choose an acceptable value for the field. Provide
a way to exit the data entry screen at any time without entering the
current record into the system, and provide users with an opportunity
to confirm the accuracy of input data before entering it. Provide a
means for users to move among fields in a standard order, or in any
order they choose, and allow users to add, change, delete, and view
records. For consistency purposes, design the screen form layout to
match the layout of the source document. Finally, provide a method to
allow users to find specific information in the system.
Use validation checks for reducing input errors
A
data validation check tests the data and rejects
any entry that fails to meet specified conditions. There are at least
eight types of data validation checks, which include sequence checks,
existence checks, data type checks, range checks, reasonableness
checks, validity checks, combination checks, and batch controls.
Design effective source documents and input controls
A
source document is a form used to request and
collect input data, authorize an input action, and provide a record of
the original transaction. Good
form layout makes the
form easy to complete and provides adequate space for users to enter
data. Most source documents are organized into six zones that define
the placement of information on a form. These zones include the
heading zone,
control zone,
instruction zone,
body zone,
totals zone, and
authorization zone.
Input control refers to measures that ensure that input data is correct, complete, and secure. Input controls include
audit trails,
data security policies and procedures, and
records retention policies.
Discuss output design issues and various types of output
In order to design output, you must determine the purpose of the
output, how the output will be used and by whom, what information will
be included in the output, if the output will be printed, viewed
on-screen, or both, the necessary timing of output and updates, and
whether or not security or confidentiality issues exist? Types of
output include traditional screen and printed output, in addition to
output delivered by means of the Internet, e-mail,
audio output,
automated facsimile, computer output microfilm (COM)
computer output to laser disk (
COLD),
and other specialized methods. The type of output and the technology
needed is determined by the requirements of the user.
Design various types of printed reports and suggest output controls and security
Printed reports vary, dpending on their function. For example, a
detail report generates one or more lines of output for each record processed. An
exception report displays only records that meet a specific condition or conditions. A
summary report presents total figures, without including supporting details.
Output controls
are used to maintain output integrity and security. For example,
reports should include a title, report number or code, printing date,
the time period covered, consecutive page numbers, and a
clearly-labelled end of the report. Output security measures include
limiting the number of printed copies, tracking each copy, delivering
printed copies to authorized recipients only, storing printed copies
in secure areas, and shredding sensitive reports.
Chapter 8
Provide a checklist of items to consider when selecting a system architecture
Seven specific issues affect the choice of system architecture.
Enterprise resource planning (
ERP)
is the process that establishes a company-wide strategy for IT
resources. Total cost of ownership (TCO) evaluates the costs for
acquiring and maintaining the system, taking into account any new
information that has been gathered during the design process.
Scalability
is the measure of a system's ability to expand, change, or downsize in
order to meet the changing needs of the business. Web integration
refers to whether or not a system will need to work with Web-based
components, such as e-commerce. Legacy system interface requirements
refers to whether the new system will have to interface with older
systems that typically run on mainframe computers, called
legacy systems. In planning the architecture, designers also must consider system security needs and processing options.
Describe servers, server-based processing, clients, and client-based processing
A
server is a computer that supplies data,
processing services, or other support to one or more computers. The
computers that receive the services or support are called
clients.
Server-based processing allows users to enter and access data from
anywhere in the organization, regardless of where the centralized
computer is located. A firm might use a combination of PCs, handheld
computers, and other devices that allow users to interact with a
centralized server. In client-based processing, an individual LAN
client has copies of applications installed locally, while the data is
stored on a central file server. The user performs the processing
locally, but then returns the data file to the central file for
storing. This configuration is called a
file server design or a
file sharing architecture.
Explain client/server architecture, including tiers, cost-benefit issues, and performance considerations
Client/server architecture generally refers to systems that divide processing between a central server and one or more networked clients. Early
client/server designs were referred to as
two-tier
designs, which means that the client handles the user interface, the
data resides on the server, and application logic is run on either the
server, the client, or divided between the two. Another form of
client/server architecture recently has become possible, which
includes a middle layer between the client and server that provides the
application logic, or
business logic, required by the system. The middle layer is an
application server
that processes the client requests and translates them into data
access commands that can be understood by the server. Client/server
architecture of this form is called a
three-tier design, or, when more than one middle layer is used, an
n-tier design. Special utility software called
middleware
enables the tiers to communicate and pass data back and forth.
Client/server computing is cost-effective because it can work across
multiple platforms, reduces network load, and improves response times.
Furthermore, it is easier and less expensive to adjust the processing
functions of clients, rather than alter the capability of a
large-scale central server. While client/server architecture has many
cost-benefit issues, analysts should follow certain guidelines
pertaining to performance issues caused by the separation of server
and client functions. For example, systems should be designed so the
client contacts the server only when necessary, with as few trips as
possible. Furthermore, using a
distributed database management system (
DDBMS) often is an efficient way to store data in more than one location in client/server systems.
Describe the impact of the Internet on system architecture
The Internet has dramatically affected system architecture, and IT
groups must consider all options thoroughly when determining system
architecture for an e-commerce business. One option is to develop
e-business systems in-house, which can require a greater initial
investment, but provides more flexibility for a company that changes
quickly in an e-commerce environment. Another option is to select from
packaged solutions and e-commerce service providers. Many application
service providers (ASPs) offer complete Internet business services
for companies that opt to outsource these functions. A third option is
to work within the design of a
portal, which is an entrance to a multifunction Web site. A
corporate portal can provide access for customers, employees, and the public to navigate to a destination using various tools and features.
Explain the difference between online and batch processing
An
online system handles transactions when and where
they occur and provides output directly to users. It is interactive,
which means that it avoid delays and allows a constant dialog between
the user and the system. In a
batch processingsystem,
the data is collected in processed in groups. When large amounts of
data must be processed on a routine schedule, batch processing is more
efficient than interactive online processing.
Define network topology, and provide examples of hierarchical, star, bus, and ring network models
Network topology refers to the way a network is configured. In a
hierarchical network, one computer (a mainframe) controls the entire network. A
star network
has a central computer with network devices connected to it. The
central computer that manages the network, called the hub, is located
at the center of the star. A
bus network involves a single communication path that connects the mainframe computer, server, workstations, and peripheral devices. A
ring networkresembles
a circle of computer that communicate with each other, and the
processing is performed at local sites rather than at a central
location.
Explain network protocols and licensing issues
A network must use a
protocol, which is a set of standards that govern network data transmission.
Transmission Control Protocol/Internet Protocol (
TCP/IP)
is a popular network which is the backbone of the Internet. When
selecting software, it is important to take into account software
licensing restrictions. Some vendors limit the numbers of users or the
number of computers that can access the program simultaneously. It is
also important to ensure that the network software you are licensing
can handle the anticipated system activity and traffic.
Explain system management tools and techniques, including
performance management, system security, fault management, backup, and
disaster recovery
Performance management tools and techniques are designed to collect
information about system resources and activity levels. For example, a
performance management tool can monitor system usage, capacity, and
trends, while performance management techniques are used to fine-tune
the network configuration to optimize performance. System security
involves assigning controls, such as user IDs and passwords, to users.
Another aspect of system security is the capability to protect
against viruses and detect any unauthorized access to the system.
Fault management
is the process of monitoring the system for signs of trouble, logging
system failures, diagnosing system problems, and applying solutions.
System design must include a
disaster recovery plan, which includes provisions for data backup and recovery.
Backup which refers to copying data, while
recovery is the process of restoring the data and restarting the system after an interruption.
Describe the systems design specification and explain the contents of each section
The
systems design specification is a document that
presents the complete design for the new system. The executive summary
section provides a brief overview of the project for upper
management, outlining the development efforts to date, and summarizing
the current status. The system components section contains the
complete design for the new system, including the user interface,
outputs, inputs, files, databases, and network specifications. The
system environment section describes the constraints affecting the
system, including special requirements of the system. The
implementation requirements section specifies plans for startup
processing, initial data entry, user training, and software testing. The
time and cost estimates section provides detailed cost estimates,
schedules, and staff requirements for the systems development phase,
as well as current projects for the remainder of the SDLC. Finally,
any appendices include supplemental materials, such as reference
copies from the documents from the first three phases.
Chapter 9
Explain the importance of software quality assurance and software engineering
Software
quality assurance is vastly important in
today's competitive marketplace. Software engineering is a software
development process that stresses solid design, effective structure,
accurate documentation, and careful testing. The software engineering
approach improves the quality of the finished system. The
Software Engineering Institute (
SEI)
is a leader in software engineering and provides standards and
suggestions for software developers and systems analysts. Another
quality assurance framework is the set of guidelines released by the
International Organization for Standardization (ISO) for developing and
maintaining software, called ISO 9000-3.
Describe the application development process
Application development is the process of
constructing the programs and code modules that are the building
blocks of the information system. The first step in application
development is the documentation review. The documentation you have
made during prior SDLC is the basis for drawing structure charts. From
that point, the system can be broken into smaller pieces that
programmers can translate into programs and modules. A
module
consists of related program code that is organized into small units
that are easy to understand and maintain. The final steps in
application development include integration testing, system testing,
and documentation.
Draw a structure chart showing top-down design, modular design, cohesion, and coupling
A
structure chart shows the program modules and the
relationships among them. In a top-down design, also called modular
design, the analyst defines the overall objectives of the system and
then breaks them down into subsystems and modules. This process is
called
partitioning, and is similar to constructing a
leveled set of DFDs that show individual elements in a complete,
working structure. Cohesion measures a module's scope and processing
characteristic. A high degree of cohesion is desirable, which means
that a module that performs a single function, making it easier to code
and reuse.
Coupling describes the relationships and interdependence among modules. Modules that are independent are
loosely coupled, which is desirable. If one module refers to internal logic contained in another module, the modules are said to be
tightly coupled.
Tightly couple modules are less desirable because a logic error in
one module affects the other module's processing sequence.
Explain the coding process and how code is generated
Coding is the process of turning program logic
into specific instructions that the system can execute. A programmer
uses a system design as the basis from which to transform program
logic into code statements. Various tools can be used to produce code
directly from program design specifications, including application
generators, report writers, screen generators, fourth-generation
languages, and other CASE tools. There also are commercial
applications that can generate editable program code directly from
keystrokes, macros, or mouse actions. Each IT department has its own
programming environment that dictates what coding processes will be
used.
Explain unit testing, integration testing, and system testing
Unit testing refers to the testing of an
individual program or module in order to eliminate errors that could
have been missed during desk checking. Test data should contain both
correct and erroneous data and should test all possible situations
that could occur.
Integration testing, or
link testing,
refers to testing two or more programs that depend on each other.
Integration testing is important because testing independent programs
does not guarantee that the data passed between them is correct.
System testing
involves the entire information system. A system test includes all
typical processing situations in order to assure users, developers,
and managers that program meets all specifications.
Differentiate between program, system, operations, and user documentation
In order for a system to operate and be maintained successfully, there must be
documentation that explains the system and helps people interact with it.
Program documentation describes the inputs, outputs, and processing logic for all program modules.
System documentation summarizes the system's functions and how they are implemented.
Operations documentation contains all the information needed for processing and distributing printed output. Finally,
user documentation
includes the instructions and information for users who will use the
system, such as user manuals, Help screens, and tutorials.
List the main steps in system installation and evaluation
There are several system installation and evaluation tasks that
should be performed for every information systems project. The first
step is to prepare a separate operational and test environment.
Second, provide training for users, managers, and IT staff. Next,
perform data conversion and system changeover. Then, carry out a
post-implementation evaluation of the system. Finally, present a final
report to management.
Develop an overall training plan with specific objectives for each
group of participants, compare in-house and outside training
providers, and describe effective training techniques
The first step in creating a
training plan is to
identify who should receive training and what training is needed. The
three main groups for training are users, managers, and IT staff. The
objectives for each group are different. For example, managers do not
need to understand every single technical feature of the system, but
they do need a general overview of the system to ensure that users are
being trained properly. Users, on the other hand, need to know the
detailed system features that will allow them to perform their job
functions, but they do not need to know how the company allocates
system operational charges among user departments. IT staff people
must have a clear understanding of how the system functions, how it
supports business requirements, and the skills needed to operate the
system. The company can obtain training from outside training firms,
vendors, or in-house resources. Many hardware and software vendors
offer training programs free or at a nominal cost for the products
they sell. Independent training firms can be hired to present either
standardized or customized training packages. If training is to be
handled in-house, the IT staff and user departments often share
responsibility for developing and conducting the training programs.
Effective training techniques include training people in distinct,
logical groups, selecting an effective location for the training,
providing for learning by hearing, seeing, and doing, and preparing
effective training materials.
Describe the data conversion process
Existing data is loaded into the new system during the
data conversion process. Whenever possible, you should automate the conversion process by
exporting data in a standard format, such as ASCII or ODBC.
ODBC (
Open Database Connectivity)
is an industry-standard protocol that allows DBMSs from various
vendors to interact and exchange information. If a standard format is
not available, you must develop a program to export the data in an
acceptable format for the new system. If the new system replaces a
manual system, the data must be scanned or entered manually.
Identify and describe changeover methods
The process of putting the new system online and retiring the old system is referred to as
system changeover There are four main changeover methods. The first is
direct cutover, which causes the changeover to occur immediately when the new system becomes operational. The
parallel operation
changeover method requires that both the old and the new information
systems operate fully for a specified period so that output can be
compared between the two. The old system is retired when users,
management, and IT group are satisfied that the new system operated
correctly. The
pilot operation changeover method involves implementing the new system at a selected location of the company, which is called the
pilot site. Once the system proves successful at the pilot site, it is implemented in the rest of the organization. Finally, the
phased operation changeover method allows you to implement the new system in stages, giving a part of the system to all users at each stage.
Explain post-implementation evaluation
A
post-implementation evaluation assesses the
overall quality of the system by examining all aspects of the
development effort and the end product. You use the same fact-finding
techniques in a post-implementation evaluation you used to determine
the system requirements during the systems analysis phase. You should
interview managers and key users, objects users working with the new
system, read all documentation and training materials, examine all
source documents, output reports, and screen displays, use
questionnaires to gather feedback from large numbers of users, and
analyze the maintenance and help desk logs. For an objective evaluation,
it is best for people who were not directly involved in developing
the system to conduct the post-implementation evaluation.
Describe the final report to management
At the end of the systems implementation phase, you should submit a
report to management. The report should include final versions of all
systems documentation and a description of planned modifications and
enhancements to the system that have been identified. You should include
a recap of all systems development costs and schedules, and compare
the actual costs and schedules to the original estimates. Finally the
final report should include the post-implementation evaluation, if is
has been performed.
Chapter 10
Explain how the systems operation and support phase relates to the rest of the system development process
The systems operation and support phase begins when a system
becomes operational and continues until the system reaches the end of
its useful life. Throughout the system development process, the
objective has been to create an information system that is efficient,
easy to use, and affordable. Once operational, systems must be
maintained and improved continuously to continue to meet business
objectives, and users constantly require assistance. Therefore, the
role of the analyst is to support users and provide necessary
maintenance to keep the system operating properly.
Describe user support activities, including user training and help desks
Once a system is operational, further user training is necessary if
significant changes take place in the existing system. Training users
about system changes is similar to initial training, and may require a
user training package developed by the IT department. The package
could include online support via e-mail, a special Web site, a
revision to the user guide or training manual, or formal training
sessions. A
help desk, or
information center (
IC),
is a centralized resource staffed by IT professionals that provides
users with technical support. The objectives of a help desk include
showing people how to use system resources more efficiently, providing
answers to technical or operational questions, and teaching users how
to meet their own information needs.
Discuss the four main types of system maintenance: corrective, adaptive, perfective, and preventive
Corrective maintenance diagnoses and corrects errors
in an operational system. Corrective maintenance is needed to correct
errors in the original version of the system, as well as to resolve
issues created with previous maintenance changes.
Adaptive maintenance adds new capability and
enhancements to make the system easier to use.
Perfective maintenance
involves changing an operational system to make it more efficient.
While requests for corrective and adaptive maintenance usually come
from users, the IT department typically initiates perfective
maintenance.
Preventive maintenance involves system analysis to reduces possibility of system failure in the future.
Explain techniques for managing systems operation and support,
including maintenance teams, maintenance request procedures,
configuration management, maintenance releases, version control, and
baselines
A
maintenance team consists of one or more analysts
and programmers who prioritize maintenance requests and perform
maintenance tasks. Maintenance requests involve a series of steps: the
maintenance request from the user, an initial determination made by a
system administrator, final disposition of the
request made by the systems review committee, assignment of
maintenance tasks, and user notification.
Configuration management (
CM)
is a process for controlling changes in system requirements during
the development phases of the SDLC, as well as managing system changes
and costs after a system is operational. One way to coordinate
maintenance changes and updates is to use a
maintenance release methodology,
which means that all noncritical changes are implemented at the same
time. Each change is installed as a new version of the system called a
maintenance release. Version control is the process of
tracking system releases. Systems analysts use formal reference
points that measure system characteristics, called
baselines, as yardsticks to document features and performance during the systems development process.
Describe techniques for managing system performance, including performance and workload measurement, and capacity planning
There are several methods of measuring performance and workload.
Response time is the overall time between a request for system activity and the delivery of the response.
Bandwidth refers to the amount of data that the system can transfer in a fixed time period.
Throughput describes actual system performance under specific circumstances.
Turnaround time
applies to centralized batch processing operations, and measures the
time between submitting a request for information and the fulfillment of
the request.
Capacity planning is the process of
monitoring current activity and performance levels, anticipating
future activity, and predicting the resources that will be needed to
meet the needs of the company.
Capacity planning uses techniques such as what-if analysis to determine the required resources based on predictions of business trends.
List factors indicating that a system has reached the end of its useful life
When users no longer require a system's functions or when the
platform becomes outmoded, the system is said to be obsolete. Several
factors can indicate that a system has reached the end of its
economically useful life. For example, the system's maintenance
history may indicate that adaptive and corrective maintenance is
increasing, or operational costs or execution times may be increasing
rapidly. A more cost-effective software package may be available that
provides the comparable or additional services. New technology may
present ways to perform the same or additional functions more
efficiently. Maintenance changes and additions may becoming difficult
and expensive to perform, or users may request significant new features
to support business needs.
Assess future challenges and opportunities that IT professionals will face as technology continues to reshape the workplace
Advances in technology and how technology is applied in the
workplace will continue to trigger business growth and productivity. As
an IT professional, you should manage your career just as you manage
an IT project, creating a strategic plan and working backwards from
your long-term goals. In recent years, formal degrees, diplomas, or
certificates, known as
credentials, have become more
important to people in the IT industry. For example, individuals can
earn Microsoft Certified Professional (MCP) status by passing the
Microsoft 70-100 exam, which general requires two years of experience
prior to the test.