Module 1-System Analysis Fundamentals-1
INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN
This section provides a foundational overview of System Analysis and Design (SAD), emphasizing its role in software development.
Definition of System Analysis and Design
SAD involves creating systems to solve problems.
It includes software development activities aimed at enhancing organizational efficiency.
System Analysis
Overview
System Analysis is the process of:
Collecting factual data.
Understanding business processes and information flow.
Identifying problems and proposing improvements.
Goals
Achieve organizational goals by:
Understanding the current system's weaknesses.
Gathering operational data to pinpoint bottlenecks.
Evolving solutions for better system functionality.
Major Objectives of Systems Analysis
Key questions to address in systems analysis include:
What is being done?
How is it being done?
Who is involved?
When are tasks performed?
Why are tasks performed?
How can processes be improved?
The objective is to create an efficient system that meets current and future needs.
System Design
System Design is based on user requirements and comprehensive analysis of existing systems.
Characteristics of a System
A system is defined as an interrelated set of business procedures working together for a purpose. Key characteristics include:
Components: Individual parts of a system.
Interrelated Components: Connections among components.
Boundary: Distinction between the system and its environment.
Purpose: Intended outcome or function of the system.
Environment: External factors influencing the system.
Interfaces: Points of interaction with other systems.
Constraints: Limitations affecting system performance.
Input/Output: Information entering and leaving the system.
Important System Concepts
Decomposition
Breaks down a system into manageable components, allowing for focused analysis and design.
Aids in understanding and managing complex systems by concentrating on individual subsystems.
Modularity
Involves dividing a system into modules, simplifying the design.
Coupling and Cohesion
Coupling: Degree of dependence between subsystems.
Cohesion: Focused functionality within a subsystem.
Roles of the Systems Analyst
Analysts must:
Collaborate with a variety of stakeholders.
Possess technical computer skills.
Primary roles include:
Consultant
Supporting expert
Agent of change
Qualities of the Systems Analyst
Must be:
A problem solver
Effective communicator
Ethical
Self-disciplined and motivated
The Systems Development Environment
Projects are initiated for:
Solving identifiable problems.
Exploring improvement opportunities.
Project Selection Criteria
Key criteria include:
Management support
Timeliness for resource commitment
Alignment with business goals
Practical feasibility
Relative importance over other projects
Organizational Structures
Flattening Organizations
Focuses on:
Separating work from location.
Redesigning workflows to increase flexibility.
Management Levels
Classic Management Pyramid: Traditional structure with three levels of management.
Flattened Management Pyramid: Reduces management layers, promoting a more agile structure.
Redesigned Workflows
Example in insurance underwriting illustrates streamlining through technology, reducing clerical tasks and increasing efficiency.
Basic Concepts for Understanding Systems
Key Elements
Input, interfaces, interrelationships, output, components, boundary, and environment.
System Outputs
Outputs from one department can serve as inputs for others, illustrating interrelationships among subsystems.
System Integration
Modern systems allow interaction between hardware and software from various vendors to improve efficiency.
Systems Development Life Cycle (SDLC)
Phases of SDLC
Identifying problems, opportunities, and objectives.
Determining human information requirements.
Analyzing system needs.
Designing the recommended system.
Developing and documenting software.
Testing and maintaining the system.
Implementing and evaluating the system.
Identifying Problems and Objectives
Activities
Involves interviewing management and summarizing findings.
Produces a feasibility report for decision-making.
Determining Human Information Requirements
Activities
Engages in various methods like interviews and observation to understand user needs.
Analyzing System Needs
Activities
Creation of diagrams and system proposals to guide recommendations.
Designing the Recommended System
Activities
Includes designing user interfaces, controls, databases, and backup procedures.
Developing and Documenting Software
Activities
Collaboration between system analysts and programmers to ensure effective documentation and coding.
Testing and Maintaining the System
Activities
Focuses on resolving issues and updating documentation as necessary.
Implementing and Evaluating the System
Activities
Training users and planning system transitions.
Maintenance of Systems
Significant time (up to 60%) is dedicated to maintaining systems, highlighting its importance.
Types of Information Systems
Categories
Transaction Processing Systems (TPS): Automates data handling for business activities.
Management Information Systems (MIS): Converts raw data into meaningful information.
Decision Support Systems (DSS): Assists decision-makers with data and interactive environments.
Information Architecture of the Organization
Encompasses the interaction of business processes and technology infrastructure across various levels.
New Technologies and Trends
Examples include e-commerce, ERP, mobile commerce, and the use of open-source software.
Traditional Waterfall SDLC
Description
Sequential phase completion with limitations on backtracking and flexibility.
Problems with Waterfall Approach
Issues with rigid requirements and limited user involvement.
Alternatives to Waterfall SDLC
Methodologies include:
Prototyping
CASE tools
Joint Application Design (JAD)
Rapid Application Development (RAD)
Agile Methodologies (e.g., eXtreme Programming)
Object-Oriented Analysis and Design
Centers around objects encapsulating attributes and behaviors along with the concept of inheritance.
Rational Unified Process (RUP)
Employs an iterative and incremental development approach.