Monday, 2 April 2018

System Analysis and Design - Overview



System Analysis and Design - Overview

Systems development is systematic process which includes phases such as planning, analysis, design, deployment, and maintenance. Here, in this tutorial, we will primarily focus on −
  • Systems analysis
  • Systems design
Systems Analysis
It is a process of collecting and interpreting facts, identifying the problems, and decomposition of a system into its components.
System analysis is conducted for the purpose of studying a system or its parts in order to identify its objectives. It is a problem solving technique that improves the system and ensures that all the components of the system work efficiently to accomplish their purpose.
Systems Design
It is a process of planning a new business system or replacing an existing system by defining its components or modules to satisfy the specific requirements. Before planning, you need to understand the old system thoroughly and determine how computers can best be used in order to operate efficiently.
What is a System?
The word System is derived from Greek word Systema, which means an organized relationship between any set of components to achieve some common cause or objective.
A system is “an orderly grouping of interdependent components linked together according to a plan to achieve a specific goal.”
Elements of a System
Outputs and Inputs

·        The main aim of a system is to produce an output which is useful for its user.
·        Inputs are the information that enters into the system for processing.
·        Output is the outcome of processing.

Processor(s)
·        The processor is the element of a system that involves the actual transformation of input into output.
·        It is the operational component of a system. Processors may modify the input either totally or partially, depending on the output specification.
·        As the output specifications change, so does the processing. In some cases, input is also modified to enable the processor for handling the transformation.

Control
·        The control element guides the system.
·        It is the decision–making subsystem that controls the pattern of activities governing input, processing, and output.
·        The behavior of a computer System is controlled by the Operating System and software. In order to keep system in balance, what and how much input is needed is determined by Output Specifications.

Feedback
·        Feedback provides the control in a dynamic system.
·        Positive feedback is routine in nature that encourages the performance of the system.
·        Negative feedback is informational in nature that provides the controller with information for action.

Environment
·        The environment is the “supersystem” within which an organization operates.
·        It is the source of external elements that strike on the system.
·        It determines how a system must function. For example, vendors and competitors of organization’s environment, may provide constraints that affect the actual performance of the business.

Boundaries and Interface
·        A system should be defined by its boundaries. Boundaries are the limits that identify its components, processes, and interrelationship when it interfaces with another system.
·        Each system has boundaries that determine its sphere of influence and control.
·        The knowledge of the boundaries of a given system is crucial in determining the nature of its interface with other systems for successful design.
System Development Life Cycle
An effective System Development Life Cycle (SDLC) should result in a high quality system that meets customer expectations, reaches completion within time and cost evaluations, and works effectively and efficiently in the current and planned Information Technology infrastructure.
System Development Life Cycle (SDLC) is a conceptual model which includes policies and procedures for developing or altering systems throughout their life cycles.
SDLC is used by analysts to develop an information system. SDLC includes the following activities 
  • requirements
  • design
  • implementation
  • testing
  • deployment
  • operations
  • maintenance

Phases of SDLC
Systems Development Life Cycle is a systematic approach which explicitly breaks down the work into phases that are required to implement either new or modified Information System.

Feasibility Study or Planning
·        Define the problem and scope of existing system.
·        Overview the new system and determine its objectives.
·        Confirm project feasibility and produce the project Schedule.
·        During this phase, threats, constraints, integration and security of system are also considered.
·        A feasibility report for the entire project is created at the end of this phase.

Analysis and Specification
·        Gather, analyze, and validate the information.
·        Define the requirements and prototypes for new system.
·        Evaluate the alternatives and prioritize the requirements.
·        Examine the information needs of end-user and enhances the system goal.
·        A Software Requirement Specification (SRS) document, which specifies the software, hardware, functional, and network requirements of the system is prepared at the end of this phase.

System Design
·        Includes the design of application, network, databases, user interfaces, and system interfaces.
·        Transform the SRS document into logical structure, which contains detailed and complete set of specifications that can be implemented in a programming language.
·        Create a contingency, training, maintenance, and operation plan.
·        Review the proposed design. Ensure that the final design must meet the requirements stated in SRS document.
·        Finally, prepare a design document which will be used during next phases.

Implementation
·        Implement the design into source code through coding.
·        Combine all the modules together into training environment that detects errors and defects.
·        A test report which contains errors is prepared through test plan that includes test related tasks such as test case generation, testing criteria, and resource allocation for testing.
·        Integrate the information system into its environment and install the new system.

Maintenance/Support
·        Include all the activities such as phone support or physical on-site support for users that is required once the system is installing.
·        Implement the changes that software might undergo over a period of time, or implement any new requirements after the software is deployed at the customer location.
·        It also includes handling the residual errors and resolve any issues that may exist in the system even after the testing phase.
·        Maintenance and support may be needed for a longer time for large systems and for a short time for smaller systems.
Role of System Analyst
The system analyst is a person who is thoroughly aware of the system and guides the system development project by giving proper directions. He is an expert having technical and interpersonal skills to carry out development tasks required at each phase.
He pursues to match the objectives of information system with the organization goal.
Main Roles
·        Defining and understanding the requirement of user through various Fact finding techniques.
·        Prioritizing the requirements by obtaining user consensus.
·        Gathering the facts or information and acquires the opinions of users.
·        Maintains analysis and evaluation to arrive at appropriate system which is more user friendly.
·        Suggests many flexible alternative solutions, pick the best solution, and quantify cost and benefits.
·        Draw certain specifications which are easily understood by users and programmer in precise and detailed form.
·        Implemented the logical design of system which must be modular.
·        Plan the periodicity for evaluation after it has been used for some time, and modify the system as needed.
Attributes of a Systems Analyst
Interpersonal Skills
  • Interface with users and programmer.
  • Facilitate groups and lead smaller teams.
  • Managing expectations.
  • Good understanding, communication, selling and teaching abilities.
  • Motivator having the confidence to solve queries.
Analytical Skills
  • System study and organizational knowledge
  • Problem identification, problem analysis, and problem solving
  • Sound commonsense
  • Ability to access trade-off
  • Curiosity to learn about new organization
Management Skills
  • Understand users jargon and practices.
  • Resource & project management.
  • Change & risk management.
  • Understand the management functions thoroughly.
Technical Skills
  • Knowledge of computers and software.
  • Keep abreast of modern development.
  • Know of system design tools.
  • Breadth knowledge about new technologies. 
System Analysis & Design - System Planning and Mutual Investigation
What is Requirements Determination?
A requirement is a vital feature of a new system which may include processing or capturing of data, controlling the activities of business, producing information and supporting the management.
Requirements determination involves studying the existing system and gathering details to find out what are the requirements, how it works, and where improvements should be made.
Major Activities in requirement Determination
Requirements Anticipation
·        It predicts the characteristics of system based on previous experience which include certain problems or features and requirements for a new system.
·        It can lead to analysis of areas that would otherwise go unnoticed by inexperienced analyst. But if shortcuts are taken and bias is introduced in conducting the investigation, then requirement Anticipation can be half-baked.
Requirements Investigation
·        It is studying the current system and documenting its features for further analysis.
·        It is at the heart of system analysis where analyst documenting and describing system features using fact-finding techniques, prototyping, and computer assisted tools.
Requirements Specifications
·        It includes the analysis of data which determine the requirement specification, description of features for new system, and specifying what information requirements will be provided.
·        It includes analysis of factual data, identification of essential requirements, and selection of Requirement-fulfillment strategies.
Information Gathering Techniques
The main aim of fact finding techniques is to determine the information requirements of an organization used by analysts to prepare a precise SRS understood by user.
Ideal SRS Document should −
  • be complete, Unambiguous, and Jargon-free.
  • specify operational, tactical, and strategic information requirements.
  • solve possible disputes between users and analyst.
  • use graphical aids which simplify understanding and design.
There are various information gathering techniques :

Interviewing
Systems analyst collects information from individuals or groups by interviewing. The analyst can be formal, legalistic, play politics, or be informal; as the success of an interview depends on the skill of analyst as interviewer.
It can be done in two ways −
·        Unstructured Interview − The system analyst conducts question-answer session to acquire basic information of the system.
·        Structured Interview − It has standard questions which user need to respond in either close (objective) or open (descriptive) format.

Advantages of Interviewing
·        This method is frequently the best source of gathering qualitative information.
·        It is useful for them, who do not communicate effectively in writing or who may not have the time to complete questionnaire.
·        Information can easily be validated and cross checked immediately.
·        It can handle the complex subjects.
·        It is easy to discover key problem by seeking opinions.
·        It bridges the gaps in the areas of misunderstandings and minimizes future problems.

Questionnaires
This method is used by analyst to gather information about various issues of system from large number of persons.
There are two types of questionnaires −
·        Open-ended Questionnaires − It consists of questions that can be easily and correctly interpreted. They can explore a problem and lead to a specific direction of answer.
·        Closed-ended Questionnaires − It consists of questions that are used when the systems analyst effectively lists all possible responses, which are mutually exclusive.
Advantages of questionnaires
·        It is very effective in surveying interests, attitudes, feelings, and beliefs of users which are not co-located.
·        It is useful in situation to know what proportion of a given group approves or disapproves of a particular feature of the proposed system.
·        It is useful to determine the overall opinion before giving any specific direction to the system project.
·        It is more reliable and provides high confidentiality of honest responses.
·        It is appropriate for electing factual information and for statistical data collection which can be emailed and sent by post.
       
Review of Records, Procedures, and Forms
Review of existing records, procedures, and forms helps to seek insight into a system which describes the current system capabilities, its operations, or activities.
Advantages
·        It helps user to gain some knowledge about the organization or operations by themselves before they impose upon others.
·        It helps in documenting current operations within short span of time as the procedure manuals and forms describe the format and functions of present system.
·        It can provide a clear understanding about the transactions that are handled in the organization, identifying input for processing, and evaluating performance.
·        It can help an analyst to understand the system in terms of the operations that must be supported.
·        It describes the problem, its affected parts, and the proposed solution.

Observation
This is a method of gathering information by noticing and observing the people, events, and objects. The analyst visits the organization to observe the working of current system and understands the requirements of the system.
Advantages
·        It is a direct method for gleaning information.
·        It is useful in situation where authenticity of data collected is in question or when complexity of certain aspects of system prevents clear explanation by end-users.
·        It produces more accurate and reliable data.
·        It produces all the aspect of documentation that are incomplete and outdated.

System Analysis & Design - System Design

System design is the phase that bridges the gap between problem domain and the existing system in a manageable way. This phase focuses on the solution domain, i.e. “how to implement?”
It is the phase where the SRS document is converted into a format that can be implemented and decides how the system will operate.
In this phase, the complex activity of system development is divided into several smaller sub-activities, which coordinate with each other to achieve the main objective of system development.
Inputs to System Design
System design takes the following inputs −
·        Statement of work
·      Requirement determination plan
·     Current situation analysis
·  Proposed system requirements including a conceptual data model, modified DFDs, and Metadata (data about data).
Outputs for System Design
System design gives the following outputs −
·        Infrastructure and organizational changes for the proposed system.
·     A data schema, often a relational schema.
·     Metadata to define the tables/files and columns/data-items.
·     A function hierarchy diagram or web page map that graphically describes the program       structure.
·     Actual or pseudocode for each module in the program.
·     A prototype for the proposed system. 

Types of System Design
Logical Design
Logical design pertains to an abstract representation of the data flow, inputs, and outputs of the system. It describes the inputs (sources), outputs (destinations), databases (data stores), procedures (data flows) all in a format that meets the user requirements.
While preparing the logical design of a system, the system analyst specifies the user needs at level of detail that virtually determines the information flow into and out of the system and the required data sources. Data flow diagram, E-R diagram modeling are used.
Physical Design
Physical design relates to the actual input and output processes of the system. It focuses on how data is entered into a system, verified, processed, and displayed as output.
It produces the working system by defining the design specification that specifies exactly what the candidate system does. It is concerned with user interface design, process design, and data design.
It consists of the following steps −
  •     Specifying the input/output media, designing the database, and specifying backup procedures.
  •       Planning system implementation.
  •    Devising a test and implementation plan, and specifying any new hardware and   software.
  •       Updating costs, benefits, conversion dates, and system constraints.

Architectural Design
It is also known as high level design that focuses on the design of system architecture. It describes the structure and behavior of the system. It defines the structure and relationship between various modules of system development process.
Detailed Design
It follows Architectural design and focuses on development of each module.
                                                                                           By
                                                                                            Ms.J.SasiRekha
                                                                                           Assistant Professor of CA Dept