Systems Analysis and Design Study Notes

Information Systems and Systems Analysis Overview

  • Information Technology (IT) combines hardware, software, data, processes, and people to manage, communicate, and share information.

  • Systems analysis and design is a step-by-step process for developing high-quality information systems that support business goals.

  • Systems analysts transform business requirements into IT projects, acting as communicators between users, managers, and programmers.

  • Business information systems include Enterprise Resource Planning (ERP), Transaction Processing (TP) systems, Business Support Systems, Knowledge Management Systems, User Productivity Systems, Digital Assistants, and Systems Integration.

Systems Planning

  • Strategic planning identifies long-term organizational goals using mission statements, critical success factors, and SWOT analysis (Strengths, Weaknesses, Opportunities, Threats).

  • Systems requests initiate projects to address business needs such as stronger controls, reduced costs, more information, better performance, improved customer service, or support for new products and services.

  • Feasibility studies evaluate systems requests using four criteria: operational, economic, technical, and schedule feasibility.

  • Preliminary investigations evaluate project requests, define project scope and constraints, perform fact-finding, and recommend a course of action.

  • Project management uses Work Breakdown Structures (WBS), Gantt charts, and PERT/CPM charts to plan, schedule, monitor, and report on project cost, scope, and time.

  • Expected task duration is calculated using a weighted formula: Expected Duration=B+4P+W6\text{Expected Duration} = \frac{B + 4P + W}{6}

Systems Analysis

  • Requirements engineering gathers, represents, validates, and verifies functional requirements (system services) and non-functional requirements (system constraints).

  • Fact-finding techniques include interviews, document review, observation, questionnaires/surveys, brainstorming, sampling, and research.

  • Team-based methodologies include Joint Application Development (JAD), Rapid Application Development (RAD), and Agile methods (such as Scrum and Extreme Programming).

  • Modeling techniques include Functional Decomposition Diagrams (FDDs), Business Process Modeling Notation (BPMN), Data Flow Diagrams (DFDs), and Unified Modeling Language (UML) diagrams.

  • Data dictionaries serve as central repositories for all data elements, data flows, data stores, processes, entities, and records.

Systems Design

  • User interface (UI) design focuses on human-computer interaction (HCI), user-centered design, usability, input validation rules, and effective source document and screen layout.

  • Data design utilizes Relational Database Management Systems (DBMS) to organize data into normalized tables (1NF, 2NF, 3NF) linked by primary, foreign, and candidate keys while enforcing referential integrity.

  • Entity-Relationship Diagrams (ERDs) depict logical relationships and cardinality (1:1, 1:M, M:N) between system entities.

  • System architecture defines the physical system blueprint, including client/server architecture (two-tier, three-tier/n-tier), web-based and cloud computing architectures, and network topologies (bus, star, ring, mesh, hierarchical).

Systems Implementation

  • Application development translates system designs into code modules using structured analysis, object-oriented development, or agile development methods.

  • Quality assurance relies on software engineering principles, Capability Maturity Model Integration (CMMI), and ISO standards (such as ISO 9000-3:2014).

  • Testing follows a sequence of unit testing (including desk checking and stub testing), integration testing, and system/acceptance testing.

  • Documentation includes program, system, operations, and user documentation.

  • Installation tasks include setting up separate test and operational environments, data conversion, user training, and system changeover (direct cutover, parallel operation, pilot operation, or phased operation).

Systems Support and Security

  • User support encompasses help desks, ongoing training, and technical assistance.

  • System maintenance consists of four categories: corrective (fixing errors), adaptive (adding enhancements), perfective (improving efficiency), and preventive (avoiding future failures).

  • System security protects information using the CIA triangle (Confidentiality, Integrity, Availability) across six levels: physical, network, application, file, user, and procedural security.

  • Risk management involves risk identification, risk assessment, and risk control strategies (avoidance, mitigation, transference, acceptance).

  • Backup and business continuity strategies include full, differential, incremental, or continuous backups, along with disaster recovery plans and hot sites.

  • System retirement occurs when an information system reaches the end of its economically useful life.