chapter 1 (systems, roles, and development) Flashcards
Need for Systems Analysis and Design
- Security is a critical factor and a challenge when
developing new systems - Installing a system without proper planning leads to great
user dissatisfaction and frequently causes the system to
fall into disuse - Systems analysis and design lends structure to the
analysis and design of information systems - User involvement throughout a systems project is critical
to the successful development of computerized systems
Roles of the Systems Analyst
Three primary roles:
– Consultant
– Supporting expert
– Agent of change
Qualities of a System Analyst
- Problem solver
- Communicator
- Strong personal and professional ethics
- Self-disciplined and self-motivated
Systems Development Life Cycle (SDLC)
- The systems development life cycle is a phased
approach to analysis and design processes - Developed through the use of a specific cycle of analyst
and user activities - Often referred to as the waterfall method
Identifying Problems, Opportunities, and
Objectives
* Activity:
– Interviewing user management
– Summarizing the knowledge obtained
– Estimating the scope of the project
– Documenting the results
- Output:
– Feasibility report containing problem definition and
objective summaries from which management can
make a decision on whether to proceed with the
proposed project
Determining Human Information
Requirements
* Activity:
– Interviewing
– Sampling and investing hard data
– Questionnaires
– Observe the decision maker’s behavior and
environment
– Prototyping
– Learn the who, what, where, when, how, and why of
the current system
- Output:
– Analyst understands how users accomplish their work
when interacting with a computer
– Begin to know how to make the new system more
useful and usable
– The analyst should also know the business functions
– Have complete information on the people, goals, data
and procedure involved
Analyzing System Needs
* Activity:
– Create data flow diagrams
– Complete the data dictionary
– Analyze the structured decisions made
– Prepare and present the system proposal
- Output:
– Recommendation on what, if anything, should be
done
Designing the Recommended System
* Activity:
– Design procedures to accurately enter data
– Design the human–computer interface (HCI)
– Design files and/or database
– Design backup procedures
- Output
– Model of the actual system
Developing and Documenting Software
* Activity:
– System analyst works with coders to develop any original
software needed
– Works with users to develop effective documentation
– Coder’s design, code, and remove syntactical errors from
computer programs
– Document software with procedure manuals, online help,
Frequently Asked Questions (FAQ) and Read Me files
- Output:
– Computer programs
– System documentation
Testing and Maintaining the System
* Activity:
– Test the information system
– System maintenance
– Maintenance documentation
- Output:
– Problems, if any
– Updated programs
– Documentation
Implementing and Evaluating the System
* Activity:
– Train users
– Plans the conversion from old system to new system
– Review and evaluate system
- Output:
– Trained personnel
– Installed system
The Impact of Maintenance
* Maintenance is performed for two reasons
– Correct software errors, and
– Enhance software’s capabilities in response to
changing needs
- Enhance software for three reasons
– Include additional features
– Address business changes over time
– Address hardware and software changes
Maintenance Impact
- Over time the cost of continued maintenance will be
greater than that of creating an entirely new system - At that point it becomes more feasible to perform a new
systems study
Case Tools
CASE (computer-aided software engineering) tools are
productivity tools for systems analysts that have been
created explicitly to improve their routine work through
the use of automated support
Reasons for using CASE tools:
– Improving Analyst–User Communication
– Help support modeling functional requirements
– Assist in drawing project boundaries
The Agile Approach
- The agile approach is a software development approach
based on:
– Values
– Principles
– Core practices