Unit 2: Analysis Techniques & Tools




Analysis Techniques & Tools in System Development

System analysis is a critical phase in system development that involves understanding existing systems, gathering requirements, and designing solutions. Effective analysis ensures that the developed system meets business needs and user expectations.

Study of Existing Systems

Before designing a new system, analysts study current processes and systems to identify inefficiencies and gaps.

Key Techniques:

  1. Observation: Watch daily operations to understand workflows.
  2. Interviews: Talk to users, managers, and stakeholders to gather insights.
  3. Questionnaires/Surveys: Collect quantitative data from a large user base.
  4. Document Review: Analyze existing manuals, reports, and records.
  5. Work Measurement: Evaluate process timings, resource usage, and bottlenecks.

Goal: Identify strengths, weaknesses, and improvement opportunities in the current system.

Information Requirement Analysis

  • Process of determining the information needed by users to perform tasks efficiently.

Steps:

  • Identify stakeholders and users.
  • Determine data inputs, outputs, and processing needs.
  • Analyze decision-making requirements.
  • Prioritize requirements based on importance and feasibility.
Tip: Use techniques like Interviews, Questionnaires, and Observation to gather accurate requirements.

System Documentation

System documentation ensures that all aspects of the system are recorded for future reference, maintenance, and audits.

Types of Documentation:

  1. User Documentation: Manuals, tutorials, and help guides for end-users.
  2. Technical Documentation: System specifications, database schemas, code comments, and system architecture.
  3. Process Documentation: Workflow diagrams, operating procedures, and standard operating instructions (SOPs).

Key Idea: Good documentation reduces errors, aids maintenance, and ensures knowledge transfer.

Structured Analysis

Structured analysis is a methodical approach to study and model a system using graphical tools and standard concepts.

Data Flow Tools

Data Flow Diagrams (DFD)

  • Graphical representation of how data moves through a system.
  • Shows sources, processes, storage, and destinations of data.
  • Levels: Context Diagram (high-level) → Level 1, Level 2 DFDs (detailed).

Data Dictionary

  • Repository of all data elements, their definitions, formats, and relationships.
  • Ensures standardization and clarity for developers and analysts.

Benefits of Structured Analysis

  • Provides clear visual representation of system processes.
  • Facilitates communication between developers and stakeholders.
  • Helps identify redundancies, bottlenecks, and errors early in development.


Summary Table

Technique / ToolPurposeKey Points / Examples
Study of Existing SystemsUnderstand current workflowsObservation, interviews, document review
Information Requirement AnalysisIdentify user & system needsInputs, outputs, decision-making requirements
System DocumentationRecord system detailsUser manuals, technical specs, SOPs
Data Flow Diagram (DFD)Visualize data movementContext level → Level 1 → Level 2
Data DictionaryStandardize data elementsNames, types, formats, relationships

Developing information systems efficiently requires prototyping, computer-aided tools, and careful project planning. These concepts are essential for MBA IT students to manage software projects effectively.

Application Prototype Development

Prototyping is creating an early model of a system to understand requirements, gather feedback, and refine functionality before full-scale development.

Steps in Prototype Development

  1. Requirement Identification: Collect key requirements from users.
  2. Quick Design: Develop a simple design focusing on core features.
  3. Prototype Construction: Build a functional prototype (low-fidelity or high-fidelity).
  4. User Evaluation: Present the prototype to users for feedback.
  5. Refinement: Modify and improve the system based on feedback.
  6. Implementation: Develop the final system after iterations.

Uses of Prototyping

  • Clarifies requirements for both users and developers.
  • Reduces development risks and errors.
  • Enhances user involvement and satisfaction.
  • Speeds up development by avoiding misunderstandings.

Tools for Prototype Development

  • Low-Fidelity Tools: Paper sketches, mockups, wireframes (Balsamiq, Figma).
  • High-Fidelity Tools: Interactive prototypes (Axure, Adobe XD, Sketch).
  • Rapid Development Platforms: Power Apps, Zoho Creator, OutSystems.

Strategies

  • Throwaway Prototyping: Prototype is discarded after requirements are clarified.
  • Evolutionary Prototyping: Prototype is refined continuously to become the final system.
  • Incremental Prototyping: Build system modules one at a time and integrate.

Key Idea: Prototyping reduces risk, improves accuracy, and ensures stakeholder alignment.

Computer-Aided System Tools (CASE)

CASE tools are software applications that assist in system analysis, design, and development.

Functions of CASE Tools

  • Diagramming tools for DFDs, ERDs, flowcharts.
  • Code generation and repository management.
  • Project management support (scheduling, resources, and documentation).
  • Testing and debugging support.

Types of CASE Tools

  1. Upper CASE Tools: Focus on system analysis and design (DFDs, ERDs, modeling).
  2. Lower CASE Tools: Focus on programming, testing, and implementation.
  3. Integrated CASE Tools: Support entire system development life cycle (SDLC).

Examples: Rational Rose, Oracle Designer, Visual Paradigm, SmartDraw.

Tip: CASE tools improve productivity, accuracy, and documentation quality.

Project Planning Fundamentals

Effective project planning ensures on-time delivery, within budget, and meets quality standards.

A. Cost Estimation

  • Predicting the total cost of software development.

Methods:

  1. Expert Judgment: Based on past projects and experience.
  2. Analogous Estimation: Using costs of similar projects.
  3. Parametric Estimation: Using metrics like cost per function point or LOC (Lines of Code).
B. Work and Resource Estimation
  • Work Estimation: Determining time and tasks required for project completion.
  • Resource Estimation: Allocating human, hardware, software, and financial resources.
  • Techniques: Work Breakdown Structure (WBS), Gantt charts, Critical Path Method (CPM).

C. Risk Analysis in Software Projects

  • Identifying potential risks that may delay, increase cost, or reduce quality.

Types of Risks

  1. Technical Risk: Technology may fail or be unsuitable.
  2. Schedule Risk: Delays in development or testing.
  3. Resource Risk: Lack of skilled personnel or budget constraints.
  4. Operational Risk: Process or organizational failures.

Risk Mitigation Strategies

  • Contingency planning.
  • Incremental development and prototyping.
  • Regular monitoring and review.

Summary Table

TopicKey PointsExamples / Tools
Application Prototype DevelopmentEarly system model to clarify requirementsBalsamiq, Figma, Axure, OutSystems
CASE ToolsAid system analysis, design, coding, testingRational Rose, Visual Paradigm
Project Planning: Cost EstimationPredict development costExpert judgment, parametric, analogous
Project Planning: Work & Resource EstimationAllocate time, tasks, resourcesWBS, Gantt charts, CPM
Project Planning: Risk AnalysisIdentify & mitigate project risksTechnical, schedule, resource, operational

Exam Tips

  1. Relate prototyping and CASE tools to reducing errors and improving system quality.
  2. Provide examples from real-life IT projects (ERP, CRM, mobile apps).
  3. Use tables and diagrams for cost estimation, resource allocation, and risk planning.
  4. Highlight the link between project planning and successful system deployment.