Fragility - software breaks in many places when changed
Immobility - inability to reuse software
Viscosity - hacks or changes that do not preserve the design
Systems Analysis
Professional discipline that studies systems and their environment to adapt them or conceives and builds a new system or systemic solution to reach business or functional goals
Systems Analyst
Individual who uses analysis and design techniques to solve business problems using IT
Acts as a bridge between technical team and end-users/stakeholders
Duties: identify organizational improvements, design systems to implement changes, train and motivate others to use the systems
Notable software glitches in 2010 occurred because analysts tried to build wonderful systems without clearly understanding how the system would support the organization's goals, improve business processes, and integrate with other information systems
A Systems Analyst's Skills
Technical - understand existing technical environment, new system's technology foundation, how both can be integrated
Business - understand how IT can be applied to business situations, ensure IT delivers real business value
Analytical - continuous problem solvers, put analytical skills to the test
Interpersonal - communicate effectively with users and business managers
Management - manage people, manage pressure and risks
Ethical - deal fairly, honestly, and ethically
Technical skills required for IT analysts
Fit into an integrated technical solution
Microsoft Access
Integrated development environments
Computer-supported system engineering (CASE) tools
Business skills required for IT analysts
Industry Understanding
Business Processes
Communication
Analytical skills required for IT analysts
Problem Identification
Requirement Analysis
Data Analysis
Risk Assessment
Interpersonal skills required for IT analysts
Need to communicate effectively, and one-on-one with users and business managers who often have little experience with technology and programmers
Management skills required for IT analysts
Need to manage people with whom they work, and they must manage the pressure and risks associated with unclear situations
Ethical skills required for IT analysts
Must deal fairly, honestly, and ethically with other project team members, managers, and system users. Must deal with confidential information. Analysts need to maintain confidence and trust with all people
Systems Development Life Cycle (SDLC)
Determining how an information system (IS) can support business needs, designing the system, building it, and delivering it to users
Fundamental phases of SDLC
Planning
Analysis
Design
Implementation
Planning phase
Fundamental process of understanding why we should build the system. Determines project goals and establishes a high-level plan for the intended project
Primary activities in planning phase
Identification of the system for development
Initiation
Feasibility assessment
Outputs of planning phase
System request
Feasibility study
Project plan
Project Identification
When someone in the organization identifies a business need to build a system
Project Initiation
When an organization creates and assesses the original goals and expectations for a new system
System Request Document (SRD)
Formal document that initiates a project, including elements like project description, business objectives, scope, and requirements
Elements of the System Request Document
Project description
Business objectives
Scope
Requirements
Assumptions and constraints
Anticipated benefits
Estimated costs
Feasibility Analysis
More detailed business case to understand the opportunities and limitations associated with the proposed project
Types of feasibility analysis
Technical feasibility
Economic feasibility
Organizational feasibility
Technical feasibility
Assesses the extent to which the system can be successfully designed, developed, and installed by the IT group
Factors in technical feasibility
Users and analysts' familiarity with the application
Users' familiarity with the technology
Project size
Compatibility with existing systems
Economic feasibility
Identifies the financial risk associated with the project by identifying costs and benefits, assigning values, and calculating cash flow and return on investment
Types of costs and benefits in economic feasibility
Development costs
Operational costs
Tangible benefits
Intangible benefits
Organizational feasibility
Assesses how well the system will be accepted by users and incorporated into the organization's operations
Factors in organizational feasibility
Strategic alignment
Stakeholder analysis
Project management
The process of planning and controlling the development of a system within a specified time frame at a minimum cost with the right functionality
Triple constraints of a project
Size of the system
Time to complete the project
Cost of the project
Key elements of project management
Selecting a project methodology
Creating the project work plan
Identifying project staffing requirements
Preparing to manage and control the project
Key stakeholders in project selection
IT Steering Committee
Approval committee
Ways to classify projects for selection
Strategic importance
Risk level
Complexity
Resource requirements
Project methodology options
Waterfall model
Parallel development model
V-model
Rapid application development (RAD)
Agile development model
Waterfall model
Project team proceeds sequentially from one phase to the next
Pros and cons of waterfall model
Provides a clear and structured approach
Requirements identified early
Limits requirement changes
Comprehensive documentation
Design must be complete before programming
Long time between analysis and delivery
Testing treated as afterthought
Costly to return and make changes
Higher risk of scope creep
Parallel development model
Project is divided into a series of subprojects that can be designed and implemented in parallel
Pros and cons of parallel development model
Reduces time to deliver system
Less impact from business environment changes
Early feedback from stakeholders
Coordination complexity
Integration challenges at end
model
Pays more explicit attention to testing, with testing activities linked to analysis and design phases