System Analysis

System: a collection of related components which interact to accomplish some purpose.

System Analysis Boundary

System Components:

  • Boundary – defines system scope within the system
  • Environment – system existence in outside world
  • Interface – medium where system & environment interact
  • Input – captured by system from environment
  • Output – product of system sent to environment
  • Feedback – control element balancing actual & standard defined performance

Closed System: has no interaction with the environment
Open System: constantly interacts with the environment
Deterministic System: are predictable if rules of system behavior is known
Probabilistic / Stochastic System: probability of predicting

“Classic” / Waterfall Lifecycle

  • System Development Life Cycle (SDLC)
  • Phase by phase treatment of software development
  • System != Software

System

A set of processes produce some useful output. Eg. Video Rental Management System

Software

A possible way of implementing a process. (Other ways include a manual process, hardware driven process)

Video Rental Management System

  • Achieve system understanding first, and how software interacts with other many
    components of system.
  1. Systems Engineering:
    • Concerned with system perspective
  2. Requirement Analysis:
    • Concerned with software expectations
    • Software creation is a business transaction
    • Requirements Specification: formal contract between developer & user of software,
      stating in precise terms, the expected functional & performance characteristics of
      software.
    • Eg. Software can run on a minimum hardware configuration
      Eg. Software can generate a monthly salaries report. (mandatory)
      Therefore, Requirements Analysis determines what is required of the software.
  3. Design:
    • Implementation activities (high level, understood by humans)
    • Process that will translate user expectations (from R.A) into high level software
      representations
    • Eg Design Chart
  4. Coding:
    • Implementations activities (low level, specific to machine)
    • Process that will translate high level representations into a form specific to the machine, i.e. a computer
  5. Testing:
    • Activity that focuses on the specific identification or error. (!= making sure software
      works)
  6. Maintenance:
    • Changes made to the software after publication, e.g. due to changing expectations
Write a comment:

*

Your email address will not be published.

© 2014 - 2017 Naya Gupha | Made in the Den.