Chapter 1 - The Systems Development Environment

advertisement
MidTerm Exam Review
[This document is a combination of the outline of all class lecture slides and my notes added in brackets.
I've added notes to emphasize what I expect you know about a slide or to add information discussed in
class for which you are also responsible. Unless I explicitly tell you otherwise, you're responsible for all
information on all these slides. You're also responsible for text material on the topics addressed in these
slides. In contrast, you are not responsible for topics in the text which are not included in the slides or
my comments.]
Chapter 1 - The Systems Development Environment
[What is Systems Analysis & Design, why is it complex, what is the issue about "change." What is
meant by the term "Information System" = Total IS.]
Systems Analysis & Design


Complex organizational process whereby Info Systems are developed & maintained
Organizational improvement process
 Led by Systems Analyst as “Change Agent”
 People-intensive; Team-based
 Results in a “Total IS” - application software, hardware, systems software,
documentation, training, people, and revised org processes
[Know the basic types of information systems, and be able to recognize their definitions.]
The Product - Types of Information Systems



Transaction Processing Systems

Expert Systems
 Artificial Intelligence & Agent-based Systems



Management Information Systems
Decision Support Systems
 Executive Information Systems
Enterprise Resource Planning (ERP) Systems
Office Automation Systems
Scientific or Technical Systems
[What does the term stakeholder mean? Know who the key IS stakeholders are & be able to explain their
roles in IS development. Who are some of the other IS Managers/Technicians who may be involved?
What is the role of the Systems Analyst? Why is the SA shown where it is in this list? ]
The People - IS Stakeholders


Business Managers
End Users




Systems Analysts
IS Managers
Programmers
Other IS Managers/Technicians
The Process - Systems Analysis Layers
[Know the following terms & how they are related (i.e., what the figure represents)]


Tools - Computer programs that make it easy to use & benefit from techniques and/or
faithfully follow a methodology, e.g., CASE or Visual development tools. [What use to do]
Techniques - Particular processes that an analyst will follow to ensure work well thoughtout, complete, and comprehensible to others. [How do it]

Methodologies - Comprehensive, multi-step approach to systems development to guide your
work and influence the quality of the final product - the information system. [What do,
When]

Quality - The culture which forms the foundation for the systems analysis process. [Why]
[Understand what is meant by Process and Data Oriented approach, be able to compare/constrast them
(see Table 1-1), and explain problems of Process-oriented approach which drove us to a Data-oriented
approach. What is an object-oriented approach? Which one/ones do we use now?]
The Process - Systems Analysis Approaches

Process-Oriented
 Focus on flow, use, and transformation of data, e.g., Structured Systems Analysis &
Design

Data-Oriented
 Focus on separating “organizational” view of data from how data used, e.g., Information
Engineering

Object-Oriented
Figure 1.1 - Differences Among Data
Figure 1.2 - Traditional Relationship
[Know the definitions of systems development methodology, systems development life cycle, and how
they are different. Understand the major types of SDLC's, their strengths & weaknesses, & when use.]
The Systems Development Process

Systems Development Methodology
 A standard set of activities (steps), milestones, and deliverables used by an organization
to develop & support Information Systems
 [Alternative: The procedures, techniques, and processes used to direct the activities of
each phase of a system development life cycle.]
 [Alternative: Physical implementation of the logical life cycle which incorporates (1) step-

by-step activities for each phase, (2) individual and group roles, (3) deliverables and
quality standards, (4) tools and techniques to be used.]
Systems Development Life Cycle
 Traditional systems development methodology
 Many alternative & adaptable SDLCs
 Often non-sequential (iterative, parallel, etc.)
 [Alternative: A work break down structure]
 [Alternative: The logical process by which systems analysts, software engineers,
programmers, and end users build an information system to solve business problems and
needs.]
Figure 1-5 - The Systems Development Life Cycle [Know the basic phases, their
purpose, and main deliverables (see Table 1-4)]
Figure 1-7 - Evolutionary model
Figure 1-8 - Seer Technologies [You can ignore this one]
Figure 1-6 - Rapid Application
Figure 1-9 - Prototyping Methodologies
Generic Life-Cycle
Build-and-Fix
The Systems Development Process



Other alternative approaches
 Joint Application Design
 Participatory Design
Each approach/methodology has its advantages and disadvantages
The most common approach is “Build and Fix”
Chapter 2 - Succeeding as a Systems Analyst
[You should know the basic skills needed for success as a systems analyst and when you may need them
during the systems development life cycle.]


Skills needed by Systems Analysts
 Analytical
 Technical
 Management
 Interpersonal
Systems analysis as a profession
Figure 2-1 - The Relationship between a Systems Analyst’s Skills and the
Development Life Cycle
[Know what is meant by systems thinking, what a system is, and what the nine parts of a system are.]
Analytical: Systems Thinking


System
 Inter-related set of components,
 With an identifiable boundary,
 Working together for some purpose
Open system
 Interacts freely with environment via inputs & outputs; must adapt to env. changes
Figure 2-2 - A General Depiction of a System [Pay attention to my change for "environment"]
[Know the definition of these systems concepts and the difference between logical & physical
descriptions.]
Analytical: Systems Thinking



Systems Concepts
 Decomposition, Modularity
 Coupling & Cohesion
Logical vs. Physical system descriptions
Information Systems
 Subsystems in larger organizational systems, with input/output from/to org. environment
Analytical



Organizational Knowledge (Table 2-1, p.49)
 Work processes, Internal politics, Org strategies, Competitive & regulatory environment
Problem Identification
 Compare current situation to desired one
 May be problems, opportunities or directives
Problem Analyzing & Solving
 Intelligence, Design, Choice, Implementation (Simon, 1960)
Figure 2-8 - The Systems Development Life Cycle and Simon’s ProblemSolving Model
Technical





Knowledge of hardware/software technologies & potential/limitations
Understand alternative technologies
Adept at different system modeling/ representation techniques
Versitile; focus on concepts vs. tools
Committed to continuous learning
Management


Systems analysts are members of or lead project teams
Leadership requires management skills
 Resource Management
 Project Management
 Risk Management
 Change Management
Interpersonal Skills




Communication
 Interviewing, Listening, Questionnaires
 Written & Oral Presentations
Working alone & with a team
Facilitating groups
Managing expectations
The Profession



Standards of Practice
Ethics
Career Paths
Chapter 3 - Managing the Info Systems Project

Chapter 3 - IS Project Management
 Read pp. 69-90, 99-100; Skim pp. 91-98
Project Management


Project
 A planned undertaking of a sequence of related activities having one objective, that must
be completed by a specific time, within budget & according to specification
Project Management
 Process of planning, directing, & controlling development to ensure an acceptable system
at a minimum cost within a specified time
Poor Project Management Can Cause Project Failures

Poor leadership/management






Taking shortcuts in SDLC/Methodology
Expectations mismanagement
Uncontrolled scope/feature creep
Poor estimating techniques or unreasonably precise early cost/time estimates
Poor people management
 The “Mythical Man-Month”
Changing nature of business (& priorities)
Figure 3-4 - A Project Manager Juggles Numerous Items during a Project
Approaches to Project Mgt




Assign to Senior Systems Analyst
Appoint a Project Manager from the ranks of team (self-managing team)
Hire/develop professional Project Managers
Regardless of approach, a Project Manager requires a diverse set of skills (Table 3-1)
 Field Exercise # 1 - PM Skills (p. 104)
Project Management Activities and the SDLC [see figure in notes]
Project Planning

Project Planning Activities
 Parallel Project Initiation & Planning Activities (Chapter 6)
 Summarized in Table 3-3
 Field Exercise # 2 - Planning Activities (p. 104)
Figure 3-7 - Level of Detail in a Project Plan [Understand basic concept that level of
project planning detail increases as move later in the systems development life cycle.]
[Know definition & difference between estimation & measurement & when you would use it. Know
some different types of estimation approaches.]
Estimation & Measurement


Estimation: Approximating time, effort, costs, and benefits of developing systems.

Measurement: Measuring/analyzing developer productivity and quality
Estimation Approaches:
 Guesstimates
 Base on experience and data
 Model, e.g. using COCOMO
 Calculate using Function Points
[Know basic steps you would go through to develop a Project Plan]
Developing a Project Plan


Identify each activity/task in project


Determine task sequence & dependencies
Estimate Expected Completion Time (ET)
 Estimate Optimistic Time (OT), Pessimistic Time (PT), Realistic Time (RT)
 Calculate ET = ((OT + 4*RT + PT)/6)
Draw Gantt & PERT Charts [You don't have to draw a PERT Chart]
[Know what a Gantt chart is, its basic components, and how to draw/construct one.]
Gantt Chart


Simple horizontal bar chart that depicts project tasks against a calendar
 Each bar represents a named project task
 Length of bar reflects task duration
 Tasks listed vertically in the left-hand column
 Horizontal axis is a calendar timeline
 Task progress shown with solid line in task bar
Most commonly used project scheduling & progress evaluation tool in use
Figure 3-22 - Gantt Chart showing Progress on Activities vs Planned
Durations [Use this as an example of how to draw a Gantt chart.]
[Know what a PERT chart is, its basic components, and how to read one. You do not have to construct
one or calculate times for one.]
PERT Charts


Project Evaluation and Review Technique (PERT) Chart graphically depicts project tasks &
their inter-relationships
Supports identification of Critical Path
 Derive Earliest Completion Time (ECT) & Latest Completion Time (LCT)
 Calculate Slack Time (= LCT - ECT)
 Identify Critical Path(s) (Path w/no slack time)
Figure 3-17 - PERT Chart for the SPTS Project
Figure 3-10b: A PERT Chart (with Microsoft Project)
[Know each method's strengths/weaknesses and when you might use each.]
PERT vs. Gantt Charting

PERT Charts
 Useful for large projects w/high task dependencies
 Shows task sequence & dependencies (not task duration)
 Emphasizes critical path identification


Gantt Charts
 Often recommended for simpler projects
 Shows overlapping tasks & task duration
 Provides simple, graphical tracking of progress
Best Approach: Use Both!
Expectations Management [See chart in PPT slides, Understand why expectations
management is important & how this chart can be used to help.]
[Know what process management is and be able to compare it to project management.]
Process Management

Process Management
 Planning, selection, deployment, and consistent application of standard system
development methods, tools, techniques, & technologies to all IS projects


Prerequisite to Project Management
Software Engineering Institute’s Capability Maturity Model (CMM) evaluates Process
Maturity
Summary




Effective project management essential to success of IS development projects
Emphasis on project management training & certification is increasing
Process management also critical
All systems analysts need at least basic understanding of project management tools &
techniques
Chapter 4 - Automated Tools for Systems Development
[Know how CASE tools can support the different phases of the SDLC. Know what is meant by upperCASE and lower-CASE tools, e.g., what phases do they support.]
Figure 4-3 - The Relationship between CASE Tools and the Systems
Development Life Cycle
[Know the types of capabilities/functions CASE tools can provide in support of IS development.]
Types of CASE Tools



Diagramming tools
Form/Report prototype generators
Analysis tools




Documentation generators
Code generators
Central repositorities
Other features (e.g., import/export, mult-user support, version control)
Use of CASE in Organizations [Class discussion and hand-out only; no PPT slides. You
should know the objectives of CASE (Table 4-1), Impacts on individuals (Table 4-2 as modified by our
class discussion, Driving & Resisting Forces for CASE (Table 4-3, 4-4, and hand-out from Software
Development Magazine), and Implementation Issues/Strategies (Table 4-5).]
Chapter 5 - Identifying & Selecting System Dev Projects
Figure 5-4 - Information Systems Development Projects Come from Both
Top-Down and Bottom-Up Initiatives [Know the alternative methods for identifying &
selection IS projects and the strengths/weaknesses of each (Table 5-1 & class discussion).]
Figure 5-3 - Project Selection Decisions [Know the different types of factors which must
be considered when making a Project Selection Decision. Also know the different types of possible
outcomes.]
[Know alternative evaluation criteria (see Table 5-2) & their strengths/weaknesses.]
Possible Evaluation Criteria


IS-Centric Criteria
 Solves business problems (“putting out fires”)
 Resource Availability
 Project Size/Duration/Technical Difficulty/Risks
 Potential Information Systen Benefits
Organization-Centric Criteria
 Value Chain Analysis
 Strategic Alignment
 Critical Success Factor Analysis
Figure 5-2 - Organizational Value Chain [Know what it is and be able to recognize/read a
value chain analysis chart like this.]
Corporate Strategic Planning [See chart in PPT slides for definitions of Mission, Vision,
Goals, Objectives, and Critical Success Factors. Know what these are, how they are related, and why
they are important in corporate strategic & IS planning.]
Figure 5-11 - Parallel Activities of Corporate Strategic Planning and
Information Systems Planning [Understand how these parallel/complement each other.]
[Know what these techniques are, will not have to do them. Know what is included in an IS Plan.]
Information Systems Planning



Develop Information Systems Architecture (Figure 5-10, p. 171 & Table 5-4, p. 172) [See
class hand-out with revised Architecture.]
Construct Planning Matrices, then use Affinity Clustering (Figure 5-16, p. 177)
Document Information Systems Plan
 Identify org. mission & role of IS in business
 Define IS needs, Long-range strategy, and Short-term plan
Chapter 6 - Initiating & Planning Systems Dev Projects

Chapter 6 - Planning Systems Dev Projects
 Read pp. 191-202, 206-220; Skim pp. 203-205
 Group Discussion - Field Exercise #2
[Know what this phase, what activities are performed in this phase, why they are performed, and what
the major deliverables are. Also be able to explain why I don't like the name of this phase, what I think
is really important in the phase, and what some alternative names may be.]
Initiating & Planning Systems Development Projects


First phase of SDLC focusing on one specific systems development project
Goals:
Understand Project Scope
Assess Project Feasibility
Document Project Initiation (table 6-1) & Planning (table 6-2) activity results in Baseline
Project Plan & SOW
[Know what is meant by project scope, why it's important, and what some of the questions are they need
to be answered to determine scope. Also, what's scope creep and why is it a problem?]
Scope of the Project





What problem(s) trying to solve?
What opportunities or directives exist?
What business functions, organizational units, and stakeholders affected?
What is the objective of the project?
What system capabilities will be considered?


What systems will be changed/impacted?
Ref: Figure 6-11 & 6-12, p. 214-5
Figure 6-12 - Context-Level Data Flow Diagram Showing Project Scope [Know
that this is an alternative way to display scope & be able to read, don't need to be able to develop one on
your own yet.]
[Know the different types of feasibility which much be assessed, what is involved in each, and why each
are important in their own right.]
Assessing Project Feasibility






Economic
Technical
Operational
Schedule
Legal & Contractual
Political
Economic Feasibility


Goal: To identify project Benefits & Costs, i.e., to conduct a Cost-Benefit Analysis

Costs (of IS and its development)
 Tangible vs. intangible
 One-time vs. recurring
 Fixed vs. variable



Benefits
 Tangible - Measurable in dollars
 Intangible - Not easily measured
Cost-Benefit Analysis Techniques [Know what these are, don't have to calculate.]
 Net Present Value (NPV)
 Return on Investment (ROI)
 Break-Even Analysis (BEA)
Project Planning Phase: Identify benefits & costs, perform high-level analysis
Analysis Phase: Conduct detailed analysis, may need to meet organization thresholds
Figure 6-8 - Break-Even Analysis for the Customer Tracking System [Just
graphically displays what this is, you don't have to draw; just be able to read/explain BEA.]
Technical Feasibility

Goal: To assess development organization’s ability to construct proposed system


Factors:
 Project size - larger projects riskier
 Project structure - Unclear requirements riskier
 Development group’s experience with target hardware & software - new/inexperienced
riskier
 User group’s experience - inexperienced riskier
See Project Risk Matrix (Fig 6-9, p. 209)
Operational/Political Feasibility


To measure how well the solution will work in the organization

Political Feasibility
 To determine how people/key stakeholders feel about the proposed system/project
Operational Feasibility
 To assess whether proposed system solves business problem(s)
Other Feasibility Concerns


Schedule Feasibility
 To assess likelihood that project dates will be met & that they meet organizational needs
Legal/Contractual Feasibility
 To assess potential legal (e.g., copyright, privacy) and contractual (e.g., licensing)
ramifications of proposed system
[You may have to do something like this, so may want to think about what we did in class.]
Feasibility Field Exercise





Field Exercise #2 (p. 223)
Break into Groups
Choose a personal or professional project (Buying a new vehicle/SUV)
Assess feasibility of the project
Report group results to class
[Know what a BPP is, when/why it's used, what's included, and what types of info I added to the book's
BPP & why.]
Baseline Project Plan


Introduction (~Executive Summary)
 Project Overview & Recommendation
System Description
 Current system/problems
 Alternatives (scope, platforms, acquisition)



 Proposed system description
Feasibility Assessment
Management Issues
See Sample BPP (fig 6-10) & Project RFP
[Know what a SOW is, what's in it, when it's used, and what type of circumstances it may more or less
formal.]
Statement of Work (SOW)



Prepared for Customer
High-level description of project, work required & deliverables; summary of BPP
May be formal or informal; can serve as contract basis
[Know the different types of end-of-phase reviews, how/why they are done.]
End-of-Phase Reviews

BPP Walk-Through
 Structured peer review of BPP, SOW, & other project documentation before formal
review

End-of-Phase Review
 Formal review and approval required for project continuation to next phase;
“Incremental Commitment”
Chapter 7 - Determining Systems Requirements
Part III Overview - Analysis

Analysis - To determine what information/ info system is needed to support the objectives &
functions of the organization

Analysis Steps
 Requirements Determination (Ch. 7)
 Requirements Structuring (Ch. 8-10)
 Alternative Generation & Selection (Ch. 11)
Requirements Determination

To gather information about:
 Current system
 Organization the new system will support
 User requirements/expectations for new system
 Ref: Questions on p. 236, 242

Understanding current system essential, but must avoid “analysis paralysis”
Rqmts Determination Methods [Be able to fill out this diagram identifying the different
traditional requirements determination methods, what is done during each, and their pros & cons.]
Download