SOFTWARE DESIGN.docx

download SOFTWARE DESIGN.docx

of 61

Transcript of SOFTWARE DESIGN.docx

  • 7/29/2019 SOFTWARE DESIGN.docx

    1/61

    SOFTWARE DESIGN & PROJECT MANGEMENT

    MODULE 1: SYSTEM ANALYSIS & DESIGN:

    Overview of system analysis & Design: Introduction to different methodologies &

    Structured system analysisDetails of SDLC approach mini casesE-R diagrams

    DFD conceptsData dictionary concepts. Structure charts modular programming

    I/O & file design considerationEntity Life histories (ELH).

    Introduction to different methodologies &structured system analysis

    CHARACTERISTICS OF SYSTEM

    (a)Predetermined Objective:

    All systems have predetermined objectives. If any organization is working without

    predetermined objectives then it is not called a system. The objective is the goal of the

    system. It is the purpose of the system for which it is functioning. If the purpose of the

    system is not achieved then the system will fail. The system is said to be successfuland in working condition only if it achieves the predetermined objectives.

    System Objective

    Education System to convert empty brain to developedmindsAutomobile system totransport goods or people from one place to another Human body to live and be lively.

    Business system to achieve profit and maintain existence in the business world.

    (b)Set of Components:

    A system is not standing alone. It is a system because it contains a list of components

    inside it. A system is a group of components, if any component is missing then the

    system will fail. A system cannot work unless the components inside it donor work.Thus a systems existence is a result of the work of the components of the system.

    (c)Set of Process:

    A system is not only the set of components taken together but is also the process of

    the components. If we gather the raw material then the product is not going to get

    formed unless some process is applied to the raw material. Likewise collecting bricks,

    water, cement, worker and other component will not make the building (system) ready

    unless the process is applied to it.

    System Component Process

    Education TeacherStudentInstituteTeaching Process Learning Process AdmissionProcess Human Body StomachLungsDigestion Process Purification Process

    (d)Interrelated and Interdependence:

    All systems consist of interrelated and interdependent elements or components. For

    example, our biological system contains bones, organs and different biochemical.

    Similarly business system consists of organizational structures, people and other

    equipments, working together to earn profit. All the components are interrelated witheach other and they are interdependent on each other. For example, the blood carries

    oxygen from lungs to other parts of the body. That is blood, lungs, and other body

    parts are interrelated and interdependent on each other.

  • 7/29/2019 SOFTWARE DESIGN.docx

    2/61

    (e)Subsystem:

    A System can be further divided into sub system, each of which has their owncomponents and process. In practical world like components make one system which

    is a part of sum super system. This can be further easily being understood with the

    following table:

    System Subsystem

    Human Body Digestive system, Circulatory System, etc.Business System Accounting

    System, Purchase and Sale System, Production System,Etc.Automobile System

    Internal Combustion Engine, Fuel System, Weight Carrying System,etc. Education

    System Teaching Subsystem, Admission System, Exam System, Etc.The way each component of a system functions with the other components of a system

    is called interaction. The different subsystem of a system interacts with each other to

    achieve the objective of the system. In a business system, for example, marketing

    subsystem must interact with production subsystem and payroll sub system may

    interact with personnel sub system.

    (g)Integration:

    Interrelationship and interdependence must exist among the components; this isreferred to as integration. It is said for a system that the whole is greater than the sum

    of the parts, i.e. the components of a system work together to produce an effect

    which is greater than the sum of the effect which is greater than the sum of the effects

    of its components taken separately. The work done by individual sub system is

    integrated to achieve the central goal of the system. The goal of individual sub system

    is of lower priority than the goal of the system as whole

    Components of the System:

    The system contains the following components:

    1. Input 2. Process 3. Output 4. Control 5. Feedback System Environment, Subsystem and Supra System:

    System Environment

    All systems function within some sort of environment. The environment, like systems,

    is a collection of elements. These elements surround the system and often interact with

    it. For any given problem, there are many types of systems and many types of

    environments. Thus it is important to be clear about what constitutes of system and theenvironment of interest. The features that define and delineate a system, forms its

    boundary. The system is inside the boundary, the environment is outside theboundary. In some cases, it is fairly simple to define what part of the system is and

    what is not. In other cases, the person studying the system may arbitrarily define the

    boundaries. Some examples of boundaries are given in the following table.

    System BoundaryHuman Skin, hair, nails and all parts contained inside forms the system. All things

    outside is environment

    Automobile: The automobile body plus tires and all parts contained within form the

    system

  • 7/29/2019 SOFTWARE DESIGN.docx

    3/61

    Production machines inventory or work in process, production employees, procedure

    etc. form a system. The rest of the company forms its environmentA system and its environment can be described in many ways.

    A subsystem is a part of a larger system, each sub system. Being delineated by its

    boundaries. The interconnections and interactions between the sub systems are termed

    interface. Interface occurs at the boundary and take the forms of input and output. A

    supra system refers to the entity formed by a system and other equivalent system with

    which it interacts. For example, an organization may be subdivided into numerous

    functional areas such as marketing, finance, manufacturing, research and development

    and so on. Each of these functional areas can be viewed as a subsystem of a larger

    organizational system because each could be considered to be a system in and of it.For example, marketing may be viewed as a system that consists of elements such as

    market research, advertising, sales and so on. Collectively, these elements in the

    marketing area may be viewed as making up of the marketing supra system. Similarly

    various functional areas of an organization are elements in the same supra system

    within the organization.

    System entropy and system stressSystem can run down and decay or can become disordered or disorganized. Stated in

    system terminology, an increase in entropy takes place preventing or offsetting to

    maintain the system. This maintenance input is termed as negative entropy. Open

    systems require more negative entropy than relatively closed systems for keeping at a

    steady state of organization and operation.

    System Stress and System Change

    Systems whether they are living or artificial systems, organizational systems,

    information systems, or systems of controls, change because they undergo stress. A

    stress is a force transmitted by a systems supra system that causes a system to change,

    so that the supra system can better achieve its goals in trying to accommodate the

    stress, the system may impose stress on its subsystems and so on.

    Effects of stress: there are two effects of stresses, which can be imposed on a system,

    separately or concurrently :( i) a change in the goal set of the system. New goals

    maybe created or old goals may be eliminated. (ii)A change in the achievement levels

    desired for existing goals. The level of desired achievement may be increased or

    decreased.

    Type of System:

    There are following types of system:(a) Physical System(b) Abstract System(c) Open

    System(d) Closed System(e) Deterministic & Probabilistic System(f) Information

    System

    (a)Physical System:

    A physical System is a tangible or visible system. That is tangible system can be seen,

    touched and felt. Physical system may operate statically or dynamically. For example,

    a steel filing cabinet is a static physical system. An air conditioning unit is a dynamic

  • 7/29/2019 SOFTWARE DESIGN.docx

    4/61

    physical system which responds to the environment and stops or starts operating

    depending on the temperature.

    (b)Abstract System:

    Abstract systems are conceptual or non physical entities. Such systems just involve

    abstract conceptualization of the physical system. For example, a model is an abstract

    system as it is conceptualization and a representation. Another example of an abstract

    system is an algorithm or an equation. Abstract models are often used to understand

    physical systems, their components, interrelationships etc.

    (c)Open Systems:

    An open system is a system that interacts freely with its environment, taking input and

    returning output. When the environment changes, an open system must also change in

    order to adapt itself to the environment. Otherwise the system will be labelled as

    outdated. For example, our body system, educational system, business system and all

    other systems which take input and return output come in the category of open system.

    To achieve its goal the open system has to interact with the environment that liesoutside the boundaries of the system. Information systems are open systems since they

    accept inputs from the environment, and produce output.

    Characteristics of Open System:

    A good dynamic open system is a system that continues to function properly and

    usefully with passage of time even as the environment changes. It is such system that

    the process of system analysis and design aims at.

    Characteristics of good dynamic open systems are: .Open system reaches a steady

    state of equilibrium when they function properly. They are able to adjust themselves

    and regulate themselves. They resist entropy (growing disorder and loss of energy

    over time) by modifying their process or by seeking new input to return to the steady

    state. Have a useful process cycle and produce useful output... Are clear about the goal

    and may achievethe goal using any of the alternative paths and courses of action. Use

    focused specialized functions and greater differentiation between their components.

    Physical System: Construction of building, Dam, etc. An automobile system

    Abstract System Teaching / Training Systems, Learning Systems, Franchisee System,

    etc. Open System Almost all systems but to name a few: Recruiting System,

    Production System, Marketing System, etc.Closed System: A closed system is a system that is cut off from its

    environment and does not interact with it. That is, a closed system is isolated from its

    environment and remains unaffected by the changes in the environment. Very rare to

    find but to name a few: Teaching with defined syllabus, Raw Material orderingsystem, Payroll System of a firm.

    Deterministic Systems: A deterministic system operates in a predictable

    manner. If one knows the state of the system at a given point of time then it is a

    deterministic system. Production System, Cost Accounting System, Health andHygiene System, etc.

  • 7/29/2019 SOFTWARE DESIGN.docx

    5/61

    Probabilistic Systems: if one can predict the next state without error, then it is

    probabilistic system... Similarly, in an inventory system, average demand, lead timeetc. Are probabilistic. Marketing and Sales System, Economic forecasting system,

    Weather forecasting system, etc.

    Information System: Banking System, Placement Agency Systems, University

    admission System, etc.

    Closed systems are very rare. In our daily life, we will be mostly dealing with open

    systems.

    (e)Deterministic and Probabilistic System:

    Information System:

    An information system is a system which provides information for decision makingand /or control of the organization. Information is a material or non material entity

    which reduces uncertainty about a situation or about an event. For example,

    information that the weather will be fine tomorrow reduces our uncertainty about if

    the cricket match will be played or not. Organizations use information systems to

    process transactions, reduce costs and generate revenue. For example, banks use

    information systems to process customer cheques and produce statements.

    INFORMATION SYSTEM (IS) CONCEPTS

    (a)Understanding Data and InformationData: Consists of raw facts, such as an employees name and number of hours

    worked in a week, inventory part numbers, or sales orders.

    Data represents real-world things. As we have stated, data simply, raw facts has

    little value beyond its existence. For example, consider data as pieces of railroad

    track in a model railroad kit. In this state, each piece of track has little value beyond

    its inherent value as a single object. However, if some relationship is defined among

    the pieces of the track, they will gain value. By arranging the pieces of track in a

    certain way, a railroad layout begins to emerge

    Data is represented By Alphanumeric data, Numbers, letters, and other characters,

    Image data. Graphic images and pictures, audio data Sound, noise, or tones Video data

    Moving images or pictures

    Information: A collection of facts organized in such a way that they have

    Information is much the same. Rules and relationships can be set up to organize data

    into useful, valuable information. The type of information created depends on the

    relationship defined among existing data. For example, the pieces of track could bearranged in a different way to form different layouts adding new or different data

    means relationships can be redefined and new information can be created. Forinstance, adding new pieces to the track can greatly increase the value of the final

    product. We can now create a more elaborate railroad layout.

    Process:Turning Data into information is a process. A set of logically related tasks performed

    to achieve a defined outcome.

    Knowledge:

  • 7/29/2019 SOFTWARE DESIGN.docx

    6/61

    Awareness and understanding of a set of information and ways that information can

    be made useful to support a specific task or reach a decision. The Process ofTransforming Data into Information

    The Value of Information

    The value of information is directly linked to how it helps decision makers achieve

    their organizations goals. For example, the value of information might be measured

    in the time required to make a decision or in increased profits to the company. The

    characteristics of Valuable Information It is a set of interrelated elements or

    components that collect (input), manipulate (process), and disseminate (output) data

    and information and provide a feedback mechanism to meet an objective)

    Components of Information System:

    A component of an information system feedback is critical to the successful operation

    of a system.

    Processing Input to Output

    INPUT, PROCESSING, OUTPUT, AND FEEDBACK

    (i) InputIn information systems, input is the activity of gathering and capturing raw data. In

    producing pay checks, for example, the number of hours worked for every employee

    must be collected before pay checks can be calculated or printed. In university grading

    system, student grades must be obtained from instructors before a total summary of

    grades for the semester or quarter can be compiled and sent to the

    appropriatestudents.Input can take many forms. In an information system designed to

    produce pay checks, for example, employee timecards might be the initial input. In a

    911 emergency telephone system, an incoming call would be considered an input.

    Input

    To a marketing system might include customer survey responses. Notice that

    regardless of the system involved, the type of input is determined by the desired

    output. Input can be a manual process, or it may be automated. Scanner at a grocery

    store that reads bar codes and enters the grocery item and price into a computerized

    cash register is type of automated input process. Regardless of the input method,

    accurate input is critical to achieve the desired output.

    (ii)Processing

    In information systems processing involves converting or transforming data into

    useful outputs. Processing can involve making calculations making comparisons andtaking alternative actions, and storing data for future use. Processing can be done

    manually or with the assistance of computers. In the payroll application, the numberof hours worked for each employee must be converted into net pay. The required

    processing can first involve multiplying the numbers of hours worked by the

    employees hourly pay rate to get gross pay. If more than 40 weekly hours are

    worked, overtime pay may also be determined. Then deduction is subtracted fromgross pay to get net pay. For instance, federal and state taxes can be withheld or

    subtracted from gross pay; many employees have health and life insurance, savings

    plans, and other deductions that must also be subtracted from gross pay to arrive at net

    pay.

  • 7/29/2019 SOFTWARE DESIGN.docx

    7/61

    (iii) Output

    In information systems, output involves producing useful information usually in theform of documents and reports. Output can include pay checks for employees,

    reporters for managers, and information supplied to stockholders, banks government

    agencies, and other groups. In some cases, output from one system can become input

    for another. For example, output from a system that processes sales orders can be used

    as input to a customer billing system. Often output one system can be used as input to

    control other systems or devices. For instance, manufacturing office furniture is

    complicated with many variable s. thus, the salesperson, customer, and furniture

    designer go through several iteration of designing furniture to meet the customers

    needs. Special computer software and hardware is used to create the original designand rapidly revisit. Once the last design mock-up is approved, the design workstation

    software creates a bill of materials that goes to manufacturing to produce the order.

    Output can be produced in a variety of ways. For a computer, printers and display

    screens are common output devices. Output can also be a manual process involving

    handwritten reports and documents.

    (iv) Feedback

    In information systems, feedback is output that is used to make changes to input toprocessing activities. For example, errors or problems might make it necessary to

    correct input data or change a process. Consider a payroll example. Perhaps the

    number of hours an employee worked was entered into computer as 400 instead of 40

    hours. Fortunately, most information systems check to make sure that data falls within

    certain predetermined ranges. For number of hours worked, the range might be from 0

    to 100 hours. It is unlikely that an employee would work more than 100 hours for any

    given week. In this case, the information system would determine that 400hours is out

    of range and provide feedback, such as an error report. The feedback is used to check

    and correct the input on the number of hours worked to 40. If undetected, this error

    would result in a very high net pay printed on the pay check! Feedback is also

    important for managers and decision makers. For example, output from an

    information system might indicate that inventory levels for a few items are getting

    low. A manager could use this feedback to decide to order more inventories. The new

    inventory orders then become input to the system. In this case, the feedback system

    reacts to an existing problem and alerts a manager that there are too few inventory

    items on hand. In addition to this reactive approach, a computer system can also be

    proactive by predicting future events to avoid problems. This concept, often calledforecasting. Can be used to estimate future sales and order more inventory before

    shortage occurs.

    CATEGORIES OF INFORMATION SYSTEM

    Transaction Processing System:

    The most fundamental computer based system in an organization pertain to theprocessing of business transaction processing systems are aimed at expediting

    andimporvinghte routine business activities that all organization are engaged.

    Standard operating procedures which facilitate handling of transactions are often

    embedded in computer programs that control the entry of data, processing of detailsand search and presentation of data and information. The high volume of well

  • 7/29/2019 SOFTWARE DESIGN.docx

    8/61

    understood transaction associated with the operating level of an organization, as well

    as the ability for managers to develop specific procedures for handling them oftentrigger the need for computer assistance. Transaction processing system if

    computerized provides speed and accuracy and can be programmed to follow routines

    procedures without any variance. Systems analyst designs the systems and process to

    handle various activates.

    Management Information systems:

    Transaction processing are operations oriented. In contrast, IS assist managers in

    decision making and problem solving. They use results produced by the transaction

    processing system, but they may also use other information. In any organization,decision must be made on many issues that recur regularly and require a certain

    amount of information. Because the decision-making process is well understood, the

    managers can identify the information that will be needed for the purpose. In turn, the

    information system can be developed so that reports are prepared regularly to support

    these recurring decisions.

    Decision Support Systems:

    Not all decisions are of a recurring nature. Some occur only once or recurinfrequently. DSS are aimed at assisting managers who are faced with unique decision

    problems. Often an important aspect of this decision is determining what information

    is needed. In well structured situations, it is possible to identify information needs in

    advance, but in an unstructured environment, it is difficult to do so. As information is

    acquired, the managers may realize that additional information is required. In such

    cases, it is impossible to redesign systems report formats and contents. A decision

    support system must, therefore, have greater flexibility than other information

    systems. The decision support system is much more use when the decision are if an

    unstructured or semistructured nature.

    Executive Information Systems (EIS):

    They are designed primarily for the strategic level of management. They enable

    executive to extract summary data from the databases and model complex problems

    without the need to learn complex query languages, enter formula, use complex

    statistics, or have high computing skills. The systems are easy to use, incorporating

    touch screens in some instances, and being graphically based. High level summary

    data and trend analysis is provided at the touch of a button, using graphics as a way of

    presenting the information. There are standard templates for these the executive doesnot need to construct the query or model. For the executives PC, telecommunication

    slinks are often made to public database and the information superhighway, so thatexternal data can be browsed and incorporated into the models.

    Expert Systems:

    They are designed to replace the need for a human expert. They are particularly

    important where experience is scare and therefore expensive. This is not numbercrunching software, but software knowledge in terms of facts and rules. This

    knowledge will be in a specific area, and therefore experts systems are not general, as

    are most decision support systems, which can be applied to most scenarios. An expert

    system for oil drilling is not of much use in solving company taxation problems.Expert systems have arisen largely from academic research into artificial intelligence.

  • 7/29/2019 SOFTWARE DESIGN.docx

    9/61

    The expert system should be able to learn, i.e. change or add new rules. They are

    developed using very different programming languages such as PROLOG, which arereferred to as fifth generation languages or expert systems shells which can make the

    process quicker and easier. It has-been suggested that expert system would be of

    greater use in the tactical and strategic level. This has been the case in banking, where

    expert systems scrutinize applications for loans, and lower level staff accepts the

    systems decision. This has replaced the somewhat subjective decision making of

    more senior managers.

    Structured systems analysis and design methodology (SSADM) is a set of

    standards for systems analysis and application design. It uses a formal methodical

    approach to the analysis and design of information systems.

    SSADM follows the waterfall life cycle model starting from the feasibility study to

    the physical design stage of development. One of the main features of SSADM is the

    intensive user involvement in the requirements analysis stage. The users are made to

    sign off each stage as they are completed assuring that requirements are met. The

    users are provided with clear, easily understandable documentation consisting of

    various diagrammatic representations of the system. SSADM breaks up a

    development project into stages, modules, steps and tasks. The first and foremost

    model developed in SSADM is the data model. It is a part of requirements gathering

    and consists of well defined stages, steps and products. The techniques used in

    SSADM are logical data modelling, data flow modelling and entity behaviour

    modelling.

    Logical Data Modelling: This involves the process of identifying,modelling and documenting data as a part of system requirements

    gathering. The data are classified further into entities and relationships.

    Data Flow Modelling: This involves tracking the data flow in aninformation system. It clearly analyzes the processes, data stores, external

    entities and data movement.

    Entity Behaviour Modelling: This involves identifying and documentingthe events influencing each entity and the sequence in which these events

    happen.

    Some of the important characteristics of SSADM are:

    Dividing a project into small modules with well defined objectives Useful during requirements specification and system design stage Diagrammatic representation and other useful modelling techniques Simple and easily understood by clients and developers Performing activities in a sequence

    The stages of SSADM include:

    Determining feasibility Investigating the current environment Determining business systems options

  • 7/29/2019 SOFTWARE DESIGN.docx

    10/61

    Defining requirements Determining technical system options Creating the logical design Creating the physical design

    The termsoftware development methodology is used to describe a framework for the

    development of information systems. A particular methodology is usually associatedwith a specific set of tools, models and methods that are used for the analysis, design

    and implementation of information systems, and each tends to favour a particular

    lifecycle model. Often, a methodology has its own philosophy of system development

    that practitioners are encouraged to adopt, as well as its own system of recording and

    documenting the development process. Many methodologies have emerged in the past

    few decades in response to the perceived need to manage different types of project

    using different tools and methods. Each methodology has its own strengths and

    weaknesses, and the choice of which approach to use for a given project will depend

    on the scale of the project, the nature of the business environment, and the type of

    system being developed.

    Structured methodologies use a formal process of eliciting system requirements, both

    to reduce the possibility of the requirements being misunderstood and to ensure that

    allof the requirements are known before the system is developed. They also introduce

    rigorous techniques to the analysis and design process. SSADM is perhaps the most

    widely used of these methodologies, and is used in the analysis and design stages of

    system development. It does not deal with the implementation or testing stages.

    SSADM is an open standard, and as such is freely available for use by companies or

    individuals. It has been used for all government information systems development

    since 1981, when it was first released, and has also been used by many companies in

    the expectation that its use will result in robust, high-quality information systems.

    SSADM is still widely used for large scale information systems projects, and many

    proprietary CASE tools are available that support SSADM techniques.

    The SSADM standard specifies a number of modules and stages that should be

    undertaken sequentially. It also specifies the deliverables to be produced by each

    stage, and the techniques to be used to produce those deliverables. The systemdevelopment life cycle model adopted by SSADM is essentially the waterfall model,

    in which each stage must be completed and signed off before the next stage can begin.

    SSADM techniques

    SSADM revolves around the use of three key techniques that derive three different but

    complementary views of the system being investigated. The three different view of the

  • 7/29/2019 SOFTWARE DESIGN.docx

    11/61

    system are cross referenced and checked against each other to ensure that an accurate

    and complete overview of the system is obtained. The three techniques used are:

    Logical Data Modelling (LDM) - this technique is used to identify, model anddocument the data requirements of the system. The data held by an organisation isconcerned with entities (things about which information is held, such as customer

    orders or product details) and the relationships (or associations) between those

    entities. A logical data model consists of a Logical Data Structure (LDS) and its

    associated documentation. The LDS is sometimes referred to as an Entity Relationship

    Model (ERM). Relational data analysis (or normalisation) is one of the primary

    techniques used to derive the system's data entities, their attributes (orproperties),

    and the relationships between them.

    Data Flow Modelling - this technique is used to identify, model and document theway in which data flows into, out of, and around an information system. It modelsprocesses (activities that act on the data in some way), data stores (the storage areas

    where data is held), external entities (an external entity is either a source of data

    flowing into the system, or a destination for data flowing out of the system), and dataflows (the paths taken by the data as it moves between processes and data stores, or

    between the system and its external entities). A data flow model consists of a set of

    integrated Data Flow Diagrams (DFDs), together with appropriate supportingdocumentation.

    Entity Behaviour Modelling - this technique is used to identify, model and documentthe events that affect each entity, and the sequence in which these events may occur.

    An entity behaviour model consists of a set of Entity Life History (ELH) diagrams(one for each entity), together with appropriate supporting documentation.

    Activities within the SSADM framework are grouped into five mainmodules. Each module is sub-divided into one or more stages, each of

    which contains a set of rigorously defined tasks. SSADM's modules

    and stages are briefly described in the table below.

    Module 1 - the Feasibility Study

    Stage Title / description

    0 Feasibility

    The high level analysis of a business area to determine whether a proposed

    system can cost effectively support the business requirements identified. A

    Business Activity Model (BAM) is produced that describes the business

    activities

    and events, and the business rules in operation. Problems associated with the

    current system, and the additional services required, are identified. A high

    level

  • 7/29/2019 SOFTWARE DESIGN.docx

    12/61

    data flow diagram is produced that describes the current system in terms of its

    existing processes, data stores and data flows. The structure of the system data

    is also investigated, and an initial LDM is created.

    Module 2 - Requirements Analysis

    Stage Title / description

    1 Investigation of Current Environment

    The systems requirements are identified and the current business environment

    is modelled using data flow diagrams and logical data modelling.

    2 Business System Options

    Up to six business system options are presented, of which one will be adopted.

    Data flow diagrams and logical data models are produced to support eachoption.

    The option selected defines the boundary of the system to be developed.

    Module 3 - Requirements Specification

    Stage Title / description

    3 Definition of Requirements

    Detailed functional and non-functional requirements (for example, the levelsof

    service required) are identified and the required processing and system data

    structures are defined. The data flow diagrams and logical data model are

    refined,

    and validated against the chosen business system option. The data flow

    diagrams

    and logical data model are then validated against the entity life histories,which are

    also produced during this stage. Parts of the system may be produced as

    prototypes

    and demonstrated to the customer to confirm correct interpretation ofrequirements

    and obtain agreement on aspects of the user interface.

    Module 4 - Logical System Specification

    Stage Title / description

    4 Technical System Options

    Up to six technical options for the development and implementation of the

    system

    are proposed, and one is selected.

  • 7/29/2019 SOFTWARE DESIGN.docx

    13/61

    5 Logical Design

    In this stage the logical design of the system, including user dialogues and

    database enquiry and update processing, is undertaken.

    Module 5 - Physical Design

    Stage Title / description

    6 Physical Design

    The logical design and the selected technical system option provide the basis

    for

    the physical database design and a set of program specifications.

    SSADM is well-suited to large and complex projects where the

    requirements are unlikely to change significantly during the project's life

    cycle. Its documentation-oriented approach and relatively rigid structure

    makes it inappropriate for smaller projects, or those for which the

    requirements are uncertain, or are likely to change because of a volatilebusiness environment.

    Entity Life Histories

    The purpose of an information system is to provide up-to-date and accurate

    information. The information held on the system is constantly changing - the number

    and names of the patients on a hospital ward, for example, or the price of electronic

    components. The system must be able to keep track of such changes. An entity life

    history (ELH) is a diagrammatic method of recording how information may change

    over time, and models the complete catalogue of events that can affect a data entity

    from its creation to its deletion, the context in which each event might occur, and the

    order in which events may occur. The ELH represents every possible sequence of

    events that can occur during the life of the entity. Remember that, although data is

    changed by a system process, the occurrence of that process is triggered by someevent.

    It would obviously be an overwhelming task to model the all of the events that could

    affect the system data at the same time, so instead we examine just one entity within

    the logical data structure at a time. An entity life history will be produced for each

    entity in the logical data structure. Information from the individual life histories can be

    collated at a later time to produce an entity/event matrix.

    The diagram below shows how we might model the life history of a bank account

    entity.

  • 7/29/2019 SOFTWARE DESIGN.docx

    14/61

    An entity life history for the "Bank Account" entity

    The entity life history for "Bank Account" should accommodate any possible

    occurrence of that entity. All bank accounts must be opened, and money is either paid

    in or withdrawn. The diagram itself is read from left to right. If the structure branches

    downward, the branch must be followed down before moving on towards the right-

    hand side of the diagram. The first event to affect any occurrence of "Bank Account"

    will be the opening of the account. The account will have a life, which will consist ofa series of transactions. Transactions can include the deposit or withdrawal of funds,direct payments, or the cashing of cheques. After an unspecified number of

    transactions have occurred, the account will be closed, and eventually deleted. The

    entity life history elements featured in the above example are:

    Sequence - activities are undertaken in strict sequence,from left to right (for example, an account must be

    opened before any other event that will affect it can

    occur, and account closure must occur before account

    deletion). Iteration - the asterisk in the top right-hand corner of the

    Transaction box signifies that a transaction is an even

    that can occur repeatedly.

    Selection - boxes with small circles in their top right-hand corner represent alternative forms of transaction. A

    single transaction may be a deposit or a withdrawal of

    funds, a direct payment, of the cashing of a cheque.

    In the same way that an entity may be affected by several different events, a singleevent may affect more than one entity. When an instance of "Bank Account" is

  • 7/29/2019 SOFTWARE DESIGN.docx

    15/61

    created, for example, an instance of "Customer" must also be created. The interaction

    between an event and an entity is called an effect. Notice that elements that have aneffect on an entity have no other elements below them in the entity life history

    diagram. Elements that do have other elements below them are called nodes. They

    have no significance other specifying the sequence in which events may occur within

    the context of the entity's life history. The name of each element (shown as a label

    inside the box representing the entity) reflects the event affecting the entity (if the

    element is an effect) or a particular stage within the life history (if the element is a

    node).

    Although an entity life history can be constructed using only the elements sequence,iteration andselection, the representation of certain complex scenarios can be greatly

    simplified using two additional element types:

    parallel structures quit and resume

    Sequence

    A sequence consists of a series of nodes and/or effects reading from left to right, as

    shown below.

    Boxes A, B, C, and D represent a sequence

    In the above example, effect a will always occur first, followed by B, then C, then D.

    This is the only possible sequence. Although these sequential events will take placeover a period of time, the time intervals involved are unspecified, and could range

    from a few seconds to many years.

    Selection

    Aselection defines a number of nodes or effects that are alternatives to one another at

    a particular point in the entity's life history. A circle in the top right hand corner of the

    box representing the element indicates that it is one of several elements that could be

    chosen.

  • 7/29/2019 SOFTWARE DESIGN.docx

    16/61

    Boxes E, F and G represent the available options

    Because node A is the first element in the entity life history of "Entity X", an

    occurrence of the entity can only be created by event E, F or G. If we want to

    represent the fact that none of the available options have to be selected, we can

    include a nullbox, as shown below.

    A null box indicates that an option does not need to be selected

    Iteration

    If an event or node can occur repeatedly at the same point within an entity's lifehistory, the fact is signified by an asterisk in the top left-hand corner of the box

    representing the event or node. The only restriction on iterations is that a single

    occurrence of the iteration must be complete before the next one starts.

  • 7/29/2019 SOFTWARE DESIGN.docx

    17/61

    Event H may occur repeatedly

    Once "Entity X" has been created by event E, F or G under node a, event H can affectthe entity zero or more times the iteration symbol must not be used for events or nodes

    that occur only once, or not at all (use the nullbox instead).

    Parallel structures

    A parallel structure can be used if the sequence in which two nodes or events canoccur is unpredictable, or where they may occur concurrently. Such a structure is

    shown as two nodes or events connected by parallel horizontal lines, as illustrated

    below.

  • 7/29/2019 SOFTWARE DESIGN.docx

    18/61

    Nodes I and J form a parallel structure

    In the entity life history above, the events K, L and M may occur, in that order, under

    node I. At the same time event N, under node J, may occur zero or more times. NodesI and J (representing the sequence and the iteration respectively) are connected by a

    parallel bar to signify possible concurrency. The same situation could be modelled

    using only sequence, iteration and selection elements, but the resulting diagram would

    be far more complex and consequently more difficult to interpret.

    Quit and resume

    Occasionally, a situation can arise that cannot easily be modelled using the entity life

    history elements already described. In order to accommodate such situations withoutmaking the entity life history diagram unduly large or complex, the quit and resume

    facility allows the sequential progress of nodes or events to quitat one point in the

    entity life history and resume at another point. This concept is illustrated below.

  • 7/29/2019 SOFTWARE DESIGN.docx

    19/61

    Following event F, activity will continue at node C

    In the above example, event F has the label "Q1" immediately to its right, and node C

    has the label "R1" immediately to its right. Using this notation, we can signify that theevent or node that will follow event F is whichever element has the label R1 to its

    right, which in this case is node C. As with parallel structures, the same situation

    could be modelled using only sequence, iteration and selection elements, but the

    resulting diagram would be more complex and difficult to interpret.

    The example below shows how we can model a situation in which a bank account has

    been closed (but not deleted), and is then re-opened. The event Account Reopened

    (labelled Q1) causes a quit back to the nodeAccount Life (labelled R1).

  • 7/29/2019 SOFTWARE DESIGN.docx

    20/61

    Two possible uses of quit and resume

    The quit and resume facility also allows us to quit from the main structure altogether,and resume at a point in a stand-alone structure. This can be used in situations where

    an event that can occur at any time will alter the normal sequence of the life history.

    Since it is impossible to predict exactly where such an event might occur within theentity's life history, an appropriate instruction should be added to the diagram

    indicating the circumstances under which the quit might occur, and from where. In the

    above example, the death of a customer may occur at any time after an account is

    opened, triggering an immediate quit, followed by a resume at R2 (Death Structure).

    In circumstances such as the death of a customer, the normal sequence will no longer

    apply.

    Note that it is also possible to quit from a stand-alone structure back to the main

    structure in an entity life history. To avoid ambiguity, while there may be more than

    one quit point with the same identifier, there cannot be more than one resume point

    with that identifier.

    A data dictionary is a collection of data about the data. Its purpose is to rigorously

    define each and every data element, data structure, and data transform.

    Strengths, weaknesses, and limitations

    A data dictionary helps to improve communication between analysts and users and

    between technical personnel by establishing a set of consistent data definitions. If

    programmers develop data descriptions from a common data dictionary, severalpotentially serious module interface problems can be avoided. At a higher level,

  • 7/29/2019 SOFTWARE DESIGN.docx

    21/61

    different systems must often be linked or interfaced, and a common set of data

    definitions helps to minimize misunderstandings.

    By highlighting already existing data elements, a data dictionary helps the analystavoid data redundancy. If all programs using a given data element are cross-

    referenced in the data dictionary, assessing the ripple effects of a change in the data is

    simplified.

    Inputs and related ideas

    The first step in creating a data dictionary is to identify the systems data elements and

    composites, a key objective of the information gathering phase of the systemdevelopment life cycle .The data dictionary is an important adjunct to several analysis

    tools, such as data flow diagrams, entity-relationship diagrams, and data

    normalization. Creating a data dictionary is an important step in designing and

    developing traditional files or a database. The data dictionary often serves as afoundation for the requirements specification .Data structures are described in.

    Inverted-L charts and Warnier-Orr diagrams are useful for visualizing a data structure.

    Concepts

    A data dictionary is a collection of data about the data in which each and every data

    element, data structure, and data transform is rigorously defined.

    Data elements

    The data dictionary defines each data element, assigns it a meaningful name, specifies

    both its logical and physical characteristics, and records information concerning how

    it is used.

    a. Data names

    It is important to follow a consistent standard when assigning data names. For

    example, an organization might use the rules imposed by its primary programming

    language, database management system, data dictionary software, or CASE product.

    Some data elements are known by two or more names. This often happens when

    different groups use the same data for different purposes or when several analysts

    work concurrently on the system. Rather than creating redundant data dictionary

    entries, resolve any differences in the definitions of the equivalent data elements,

    merge them, and record the alias name on the primary description.

  • 7/29/2019 SOFTWARE DESIGN.docx

    22/61

    Information That Might Be Recorded for Each Data Element in a Data

    Dictionary(*)

    General Usage characteristics

    Data element name Range of valuesAliases or synonyms Frequency of use

    Definition Input/output/local

    Conditional values

    Format Limits

    Data type

    Length Relationships

    Picture Parent structures

    Units (meters, pounds, etc.) Child structures

    Composite description File or database

    Key

    Control Information Data flows

    Source Processes

    Change authorizations Reports

    Access authorizations Forms

    Security information Screens

    Authorized users

    Date of origin

    If two clearly different data elements have similar names, change at least one of thembecause similar names can be confusing.

    b. Definitions

    A good definition precisely indicates the data elements purpose and clearly

    distinguishes it from the systems other data elements. Examples are useful,

    particularly for identifying exceptions to a general rule.

    Data structures or composites

    Data structures also called group or composite data items are defined by showing the

    data elements and substructures that comprise them. The symbols depicted in Table

    (or their equivalents) are sometimes used to document (or partition) composite items.

    Figure shows how the data on a sales receipt might be defined using the symbols.

    Inverted-L charts and Warnier-Orr diagrams are other tools for visualizing a data

    structure.

    http://www.hit.ac.il/staff/leonidm/information-systems/ch25.html#table25.02http://www.hit.ac.il/staff/leonidm/information-systems/ch25.html#figure25.02http://www.hit.ac.il/staff/leonidm/information-systems/ch25.html#figure25.02http://www.hit.ac.il/staff/leonidm/information-systems/ch25.html#figure25.02http://www.hit.ac.il/staff/leonidm/information-systems/ch25.html#table25.02
  • 7/29/2019 SOFTWARE DESIGN.docx

    23/61

    Note that a data structure can contain both composite items and data elements. In the

    data dictionary, composite items are decomposed or partitioned down to the dataelement level, and each data element is fully defined

    c. Keys and relationships

    In a database, an entity is a thing about which data are stored and an occurrence is a

    single instance of an entity composed of data elements (or attributes).

  • 7/29/2019 SOFTWARE DESIGN.docx

    24/61

    Some typical data dictionary entries.

    These Symbols Can Be Used to Document a Data

    Structure

    Symbol Meaning

    = Contains, or is composed of

    + And

    [] Selection

    | Separator

    () Optional

    {} Repetition

    Fig .Documenting a data structure.

  • 7/29/2019 SOFTWARE DESIGN.docx

    25/61

    Physically, entities map to files, occurrences map to records, and attributes map to

    fields.

    Occurrences (records) are composite data structures. In addition to the attributes thatmake up the composite, the key (the attribute or group of attributes that uniquely

    distinguishes one occurrence of the entity) is documented in the data dictionary.

    A database is composed of a set of related files (or entities). Typically, the files are

    linked (or related) by storing an entitys key in the related entity. These relationships

    are also documented in the data dictionary.

    Transforms

    A transform is a process or operation that modifies data. Many data dictionary systems

    allow the analyst to name, define, and record data about the transforms in the data

    dictionary.

    Key terms

    AliasAn alternate name for a data element.

    AttributeA property of an entity.

    CompositeA set of related data elements.

    Data dictionaryA collection of data about the data.

    Data element

    An attribute that cannot be logically decomposed

    Data structureA set of related data elements

    DatabaseA set of related files

    Entity An object (a person, group, place, thing, or activity) about which data are

    stored

    FieldA data element physically stored on some medium

    FileA set of related records

    Foreign keyA key to some other entity stored with the target entity

    Key The attribute or group of attributes that uniquely distinguishes one occurrence

    of an entity

    Meta-datathe contents of the data dictionary

    OccurrenceA single instance of an entity

    RecordThe set of fields associated with an occurrence of an entity

    Relationship

    A link between two data structures

  • 7/29/2019 SOFTWARE DESIGN.docx

    26/61

    TransformA process or operation that modifies data.

    Structured English is a very limited, highly restricted subset of the English language

    used to plan, design, or document program routines, modules, and manual procedures.

    Strengths, weaknesses, and limitations

    Structured English is useful for planning or designing program routines, modules, andmanual procedures. It resembles a programming language, so programmers find it

    easy to understand. The base for structured English is, of course, English, so users find

    it easy to follow, too.

    Structured English is excellent for describing an algorithm, particularly when user

    communication is essential. If the main concern is communication with the

    programmers, however, pseudo code may be a better choice. Structured English is not

    a good choice for describing a high-level control structure or an algorithm in which

    numerous decisions must be made; logic flowcharts, decision tables, and decision

    trees are better for such tasks.

    60.3 Inputs and related ideasBefore writing structured English, the designer must understand the algorithm or

    procedure. The necessary information might be compiled from direct observation,

    extracted from existing documentation, or derived from the problem definition.

    And/or analysis stages of the system development life cycle.Other tools for documenting or planning routines or processes include logic

    flowcharts, Nassi-Schneiderman charts, decision trees, decision tables, pseudo code,

    and input/process/output (IPO) charts .A pseudo code routine usually exists in the

    context of a larger program. Tools for documenting or planning program structure

    include structure charts and HIPO.

    There are several variations of structured English, none of which can beconsidered a standard. Consequently, view this as a guideline.A good structured English statement reads like a short imperative sentence. By

    convention, only key words such as IF, THEN, SO, REPEAT, UNTIL, DO, and so on

    are capitalized; data names and the general English needed to complete a sentence or a

    phrase are lower case. Many sources recommend that a data name defined in a data

    dictionary be underlined, and that convention will be followed in the examples shown

    below.

    SequenceSequence statements begin with commands such as MOVE, GET, WRITE, READ, or

    COMPUTE followed by the name or names of the associated data elements or datastructures. For example,

    COMPUTE gross pay.

    ADD 1 to counter.

    MULTIPLY hours worked by pay rate to get gross pay.

    GET inventory record.

    MOVE customer name to invoice.

    WRITE invoice.

    Blocks of logicIt is often convenient to group several structured English statements into a block,assign a name to the block, and reference the block by coding a single sequence

  • 7/29/2019 SOFTWARE DESIGN.docx

    27/61

    statement. For example, all the instructions required to compute gross pay might be

    grouped in a block under the name compute gross pay. Subsequently, the statementDO compute gross pay.

    References the entire block.

    Note that a block can contain any combination of code, including decisions, repetitive

    logic, and even other blocks. Indentation should always be used to show the

    relationship between the parts of a block.

    Decision or selectionDecision (or selection) logic follows an IF-THEN-ELSE structure:

    IF condition

    THEN block-1

    ELSE (not condition)

    SO block-2.

    The key word IF is followed by a condition. If the condition is true, the block

    following THEN is executed. ELSE identifies the negative of the condition. SO

    precedes the block to be executed if the initial condition is false. For example,

    IF stock-on-hand is less than reorder-point

    THEN turn on reorder-flag

    ELSE (stock-on-hand not less than reorder-point

    SO turn off reorder-flag.

    Indenting makes the IF-THEN-ELSE logic easier to read. (Note: The negative

    condition following ELSE is often assumed and not explicitly coded.)Nested decisions are also supported:

    IF condition-1

    THEN IF condition-2THEN block-a

    ELSE (not condition-2)

    SO block-b

    ELSE (not condition-1)SO block-c.

    Note that any or all ofblock-a, block-b, orblock-c could contain yet another decision.

    Repetition or iterationRepetitive (or iterative) logic defines a block of structured English that is executedrepetitively until a terminal condition is reached. For example, such instructions as:

    REPEAT UNTIL condition-1Block-1Or

    FOR EACH TRANSACTION

    Block-a

    Imply both repetitive logic and the condition used to terminate that logic.

    Key terms

    ModuleA portion of a larger program that performs a specific task.

    ProcedureA set of guidelines, rules, and instructions for performing a task; often, a

    manualprocedure.

    RoutineA set of instructions that performs a specific, limited task.Structured English

  • 7/29/2019 SOFTWARE DESIGN.docx

    28/61

    A very limited, highly restricted subset of the English language used to plan, design,

    or document program routines, modules, and manual procedures.

    Software

    Few software tools are designed to produce structured English. Word processors and

    text editors are sometimes used.

    Structured English is the additional method which is used for overcoming the

    problems of the ambiguous language in stating the actions and conditions in making

    the decisions and formulating the procedures. The procedure is described in the

    narrative format using the Structured English. It doesn't show any decisions and rules

    but it states the rules.

    Structured English specifications require the analyst to identify the conditions which

    occur in a process and also identify the decisions which makes these conditions occur.

    It also forces the analyst to find alternative actions to be taken.

    In this method the steps are listed in a specific order in which they are to be taken. No

    special signs, symbols or any other format are used for the displaying of the steps

    involved like those involved in the decisions tree of decision tables.

    Since only Structured English statements are used it becomes easy for the analyst to

    state the entire procedure without wasting much time. The terminologies used in

    Structured English consist of mostly the data names of the elements and they are

    stored in the Data Dictionary.

    Developing Structure Statements-

    The process is defined by using three types of statements: sequence structure, decision

    structure and iteration structure.

    Sequence structure: It is the single stepped or action included in the process and it

    does not depend on the existence of any other condition but if it does encounter a

    condition, it is taken into consideration.

    Decision structure: It occurs when two or more actions take place depending on the

    value of the condition. The condition is expanded and the necessary decisions are

    taken.

    Iteration structure: It is commonly found that certain conditions occur commonly oroccur after certain conditions are executed. Iterative instructions help the analyst to

    describe these cases.

  • 7/29/2019 SOFTWARE DESIGN.docx

    29/61

    I/O & file design consideration

    SYSTEM DESIGN

    After the completion of requirement analysis for a system, system design activity

    takes place for the alternative which is selected by management.

    The system design phase usually consists of following three activities:-

    Reviewing the system information and functional requirements Developing a model of the new system, including logical and physical

    specification of outputs, inputs, processing, storage procedures and personnel.

    Reporting results to management.Distinguish between logical and physical design?

    The logical design of an information system is like an engineering blue print: it shows

    major features of the system and how they are related to one another. The reports and

    outputs of the system are like the engineers design components. Data and procedures

    are linked together to produce a working system. Physical construction, the activityfollowing logical design, produces, program software, files and a working system.

    Design specification instructs programmers about what the system should do. The

    programmers in turn write the programs that accept input from users, process data,

    produce the reports, and store data in the files.

    OBJECTIVES OF INPUT DESIGN

    It consists of developing specification and procedure for data preparation. Those steps

    necessary to put transaction data into a usable form for processing.

    There are main five objectives as follow:

    Controlling amount of input:Due to so many reasons, design should control the quantity of data for input.

    Reducing the data requirement can lower costs by reducing labour expense. Byreducing input requirement, the analyst can speed the entire process from data capture

    to providing results to user.

    Avoiding delay:A processing delay resulting from data preparation or data entry operation is called

    bottleneck. Avoiding bottleneck should always be one objective of the analyst in

    designing input.

    Avoiding errors in data:The third objective deals with errors. In one sense. The rate at which errors occurdepends on the quantity of data, since the smaller the amount of data to input, the

    fewer the opportunities for error.

    Avoiding extra steps:Sometimes the volume of transactions and amount of data preparation cannot be

    controlled When the volume of the transaction can note reduced, the analyst must be

    sure the process is as efficient as possible. For example, the effect of saving or adding

    a single step when feeding checks into the banking process is multiplied many times

    over in the course of working day.

    Keeping the process simple:

  • 7/29/2019 SOFTWARE DESIGN.docx

    30/61

    The best advice to analysis to achieve all of the objectives mentioned in the simplest

    manner possible. Users accept simplicity works, and it. Complexity should be avoidedwhen there are simple alternatives.

    Data capture guidelines:The analyst should capture only those items that must actually be input. There are two

    types of data that must be inputted when processing transactions as follow: Variable data:

    Those data items that change for each transaction handled or decision made.

    Identification data:The element of data that uniquely identifies the item being processed. The identifying

    data in each transaction record is called record key. What data the user should not

    enter at the time of input. This is also determines by the analyst.

    Some of those are as follow:

    Constant data: Data that is same for every record or entry. Details that system can

    retrieve. Stored data that are quickly retrieved from system files. Details that the

    system can calculate:

    Results that can be produced by the system, using the combination of stored data and

    entered data.

    Design of source document

    The source document is form on which the data are initially captured. To design the

    source document, the analyst must first decide what data must be captured. The

    analyst can be developed the layout of the document showing what items should beincluded and where they should beplaced. The documents includes not only a place

    for data, but also contains and information telling the user how to complete the form

    and what information to provide. Layout:The layout organizes the document by placing important information where it will be

    noticed and establishing the appropriate sequence of items. Most people fill in

    documenting from left to right and from top to bottom; the source document should bedesign in the same way. It should be possible for the user to provide information by

    following logical sequence rather the by having to skip to different locations on the

    document. A well-designed form will ask for each item of data only once, there arevery few occasions where user has to feed the same information more than once.

    Users will not complete forms that do not allow enough space to provide the

    information request correctly. The analyst must also consider how the form will becompleted in judging the amount of space between lines the actual document layout

    shows the position of each item of data and all headings and instructions to users.

    Captions:Captions on source document tell the user what data to provide and when they should

    be entered. The caption should be brief but easily understood, with the standard terms

    that all persons use the terms. Abbreviations generally should be avoided. Including a

    simple example will help the user how to feed the data. In other words supplying an

    example is a small price to pay for correctly supplied details. Well-designed document

    is easily completed and allows the process of actually recording the data to be rapid. If

    checkmarks and boxes will be sufficient for capturing data the respondents should notbe asked to write longer responds.

  • 7/29/2019 SOFTWARE DESIGN.docx

    31/61

    VARIOUS CODING TECHNIQUESSince information systems projects are designed with space, time, and cost saving inmind, coding methods, in which, words, ideas, or relationships are expressed by a

    code, are developed to reduce input control errors and speed the entire process. A code

    is a brief number, title or symbols used instead of more lengthy or ambiguous

    description. When an event occurs the details of the event often summarized by a

    code.

    The following are some coding techniques:

    Classification code:

    A classification code place separate entities, such as events, people or objects into

    distinct groups called classes. A code is used to distinguish one class from another.The user of records the code on the source document in online system it can be keyed

    directly into the system through a terminal. The use classifies the event into several

    possible categories and record code. For example in an admission system to enter the

    category, the it categorized as SC - 1, ST - 2, SE - 3 and GE 4 Classification

    code vastly simplifies the input process because only a single digit code is required.

    The need of writing lengthy descriptions or making judgment is eliminated.

    Function code:

    It states the activity or work to be performed without spelling it all the details in

    narrative statements. Analysts use this type of code frequently in transaction data to

    tell the system how to process the data. For example the design for file processing

    may specify the addition of records in one transaction by means of A, modification of

    transaction by M, Deletion of transaction bid, sorting of all the transaction by Sather

    particular function code may determine the contents of the input record whether data

    in the code are keyed or scanned.

    Sequence code:

    Sequence codes are either number or letters assigned in series. They tell the order in

    which events have occurred. For example the banking system must keep the track of

    the transaction so that it is clear which transactions to process first, which second and

    so on Therefore a sequence number is specified to every transactions.

    Carelessly assigned sequence numbers do not allow the insertion of new members

    between existing ones in the sequence. Therefore analyst often specifies the

    assignment

    Of sequence of number in intervals of 10 or 20 or some other range to allow later

    expansion.Significant digit subset codes:

    A well conceived coding scheme, using significant digit subset codes, could providewealth of information to user and management. The code can be divided into subsets

    or sub codes; characters that are part of identification number and that have special

    meaning. The sub code gives the user additional information. Consider the following

    example: Year Stream Student Number In the above figure first four boxes is for theyear, second to box for stream (i.e. science, commerce, etc.) and last four box are for

    student number. Using digits in an identification number to convey additional

    information does not add to the length of the data or to processing time.

    Mnemonic codes:

  • 7/29/2019 SOFTWARE DESIGN.docx

    32/61

    It uses letters and symbols from the product to describe it in a way that communicate

    visually. For example to describe a 21-inch colour monitor TV set successful code setus TV-BW-21. It is difficult to confuse the mnemonic TV with that of other products.

    University frequently uses mnemonics to code information MCA for Master of

    Computer Application. The data and transaction coding reduces the volume of data for

    input and simplifies the process, thus lessening the like hood of errors. Code selection

    depends on the nature and the objectives of the analyst

    Source data capture with key to storage:

    It includes the following steps: 1.Write the data on source document2.If necessary,

    code the data from the source document into a form acceptable for computer

    processing.3.Process the tape or disk of data directly. No extra steps are needed toenter data into the computer.4.Validate the data as they are read into the computer for

    processing.5.Process the data.

    Source data capture with scanner: Optical character processing of input data

    enables organizations to speed their input activities. A source document is directly

    used as an input document for scanning by the optical character reader. When

    transactions are occurred the data are written in scan able form. Validation of data isaccomplished as they entered in the computer.

    Direct entry through intelligent terminal:

    Intelligent terminals are similar to cathode ray terminals with built in processing

    capabilities. The use of intelligent terminal for data capture can even eliminate the

    need for source documents, unless a paper record of the transactions required. As a

    transaction is taken place the operator is keying the data directly through the

    intelligent terminals. The processor validates the data as they are entered. Unlike the

    other methods intelligent terminals can interact directly with the computer.

    INPUT VALIDATION

    Input designs are aimed at reducing the chance of mistakes or errors during the data

    entry. However the analyst must assume that the error will occur during the data entry.

    The general terms given to methods aimed at detecting errors in input are input

    validation.

    There are main three methods to validate the transactions as follow:

    Checking transaction:

    It is essential to identify any transactions that are not valid, that is not acceptableTransaction can be invalid because they are incomplete, unauthorized or even out of

    order. Batch control: In batch control all the similar transactions are cumulated.) Herethe size of the batch infixed. Transactions are accumulated in a batch of say 50,100etc.

    during the course of the business period more than one batch will be accumulate

    Therefore the management wants to know the each batch is proceed and that none of

    is lost or overlooked. In batch transaction batch size indicates whether all transactionsare in the batch, batch count indicates whether any batch has been lost or overlooked

    and the batch total indicates when all transactions in the batch have been processed

    properly.

    Sequence test:

  • 7/29/2019 SOFTWARE DESIGN.docx

    33/61

    Sequence test use code in the data - serial numbers - to test for either of two different

    conditions, depending on the characteristics of the application. In some system, theorder of the transaction is important. When processing bank checking deposits and

    withdrawals, it is important to ensure that each is processed in the order in which it

    arrived_ Sequence test also point out missing items. Without the numbers it is very

    much difficult to identify that all the transactions are there or not.

    Checking transaction data:

    Even valid transaction can contain invalid data. Therefore analyst should be sure to

    specify methods for validating the data when developing the input procedure. There

    are four validation methods:

    Existence test:

    Some data fields in transactions are designed to not be left empty or blank. Existence

    test examine those essential fields to determine that they contain data. For example in

    any system while entering the name it must never be empty. It is task of the analyst to

    learn when the data items must be present and when their absence is acceptable. This

    information belongs in the design specifications and should be passed along to the

    programmers.

    Limit and range test:

    These tests verify the reasonableness of the transaction data. Limit test validate either

    the minimum or maximum amount acceptable for an item. Range test validate both

    minimum and maximum values of an item.

    Combination test:

    It validate that several data items jointly have acceptable values that is the value for

    one element of data determines whether other data values are correct.

    Duplicate processing:

    In especially sensitive areas, it may be necessary to process data more than once,

    either on different equipment or in different ways. The result is then compared for

    agreement and accuracy. Duplicate processing ensures utmost accuracy.

    Changing the transaction data:

    A third of validate the data involves modifying the incorrect data themselves.

    Two methods are described as follow:

    Automatic correction:

    Sometimes analyst specifies that programs be written to correct errors in the data. This

    input validation method is used to minimize the number of separate error correction

    steps or rejections of transaction during processing. This method simply requiresdetecting an error and correcting the error automatically.

    Check digit:

    Most common error in handling data occurs with data that are captured correctly but

    entered incorrectly into the processing. Transcription errors occur if the data entry

    person for example a customer inadvertently copies data. Incorrectly number of 24589

    is transcribed incorrectly if its entered as 24587. Since the chance of these errorsoccurring is high, a special method has been devised to help, detect them during

    computer processing. This method called the check digit. It adds an additional digit to

    the original number being used for identification purpose. The check digit is added

    before the number is entered into the use. There are many different methods to add thecheck digit to the number. Module 11 is a widely use to add a check digit. The system

  • 7/29/2019 SOFTWARE DESIGN.docx

    34/61

    analyst should always assume that invalid data will be submitted for processing and

    develop methods for detecting them so that corrections can be made.

    SYSTEM OUTPUT:

    The term output applies to any information produced by an information system,

    whether printed or displayed. System output may be report, a document or a message.

    When analysts design computer output they identify the specific output that is needed

    to meet the information requirements, select methods for presenting information and

    create documents reports or other formats that contain information produced by the

    system.

    Important factors in output design:

    There are six important factors which should be considered by the system analyst

    while designing user outputs these are: content, form, volume, timeliness, media and

    format.

    Content:

    Content refers to the actual pieces of data included among outputs provided to users

    for example, the contents of weekly report to a sales manager might consist of

    salespersons name, sales calls made by each sales person during the week and theamount of each product sold by each salesperson to each major client category.

    Form:

    Form refers to the way content is presented to users. Content can be presented in

    various forms, quantitative, on quantitative, text, graphics, and video and audio for

    example, information on distribution channels may be more understandable to the

    concerned manager if it is prescribed in the form of a map with dots representing

    individual outlets for store.

    Output volume:

    The amount of data output required at any one time is known as output volume. It is

    better to use high speed printer of rapid retrieval display unit, which are fast and

    frequency used output devices in case the volume is heavy. Usually heavy output

    volume normally causes concern about paper cost. In such a case, alternative methods

    of output display such as COM (computer output medium) may be considered.

    Timeliness:

    Timelines refers to when users need outputs. Some outputs are required on a regular,

    periodic basis perhaps daily, weekly, monthly, at the end of a quarter or annually,

    other types of outputs are generated on request. A sales manager for example, may berequiring a weekly sales report. Other users, such as airline agents, are required both

    real time information and rapid responses times in order to render better client service.Hence, the system designer might require that display information be provided to the

    user very fast.

    Media:

    InputOutput medium refers to the physical device used for input, storage or output.A variety of output media are available in the market these days, which include paper,

    video display, microfilm, magnetic tapes and voice output. Many of these media are

    available in different forms. The system designer can select a medium. Which is best

    suited to the user requirements.Format:

  • 7/29/2019 SOFTWARE DESIGN.docx

    35/61

    The manner in which data are physically arranged is referred to as format. This

    arrangement is called output format when referring to data output on a printed reportor on a display screen. Traditionally, when formatting the printed report for managers

    or users, a design tool called a printer spacing chart is used. On the chart, title,

    headlines, columns of data and other types of report elements are set up in the manner

    described by users.

    TYPES OF OUTPUTWhether the output is a formatted report or a simple listing of the contents of a file, a

    computer process will produce the output. System output may be:

    A Report A Document

    A Message Depending upon the circumstances and the contents, the output may be

    displayed or printed. Output contents originate from the following sources

    Retrieval from a data store.

    Transmission from [process or system activity. Directly from an input source.

    What are different formats in which information can be presented?

    One of the most important features of an information system for users is the output it

    produces. Without quality output, the entire system may appear to be so unnecessary

    that users will avoid using it, possibly causing it to fail. The term output applies to any

    information produced by an information system, whether printed or displayed. When

    analyst design computer output they

    Identify specific output that is needed to meet the information requirements. Select methods for presenting information. Create document, report or other formats that contain information produced by

    the system.

    Objectives of output

    The output from an information system should accomplish one or more of the

    following objectives:

    Convey information about past activities, current status, or projection of thefuture.

    Signal important events, opportunities, problems or warnings. Trigger anaction.

    Confirm an action.Key output questions

    System analysts should answer these questions for every output requirements:

    What is its planned use? How much detail is needed? When and how often is the output needed? By what method?

  • 7/29/2019 SOFTWARE DESIGN.docx

    36/61

    TYPES OF OUTPUT PRESENTATION

    How to present information?

    How the information is presented will determine whether the output is clear and

    readable, the details convincing, and the decision making fat and accurate. Any

    information can be presented in the following manner:-Tabular format-Graphic format

    Tabular format:

    Naturally the user is normally habituated to receive the information in a table format

    generally the tabular format can be used under the following circumstances.

    Details dominate and few narrative comments or explanations are needed. Details are presented in discrete categories Each category must be labelled

    Total must be drawn or comparisons made between components .Certain information

    is more important and should be more visible than other information. But this concept

    is varying for each application.

    But in general we can be sure that the following items should be there:

    Major categories or groups of activities or entities.

    Summaries of major categories or activities. Unique identification information.

    Time-dependent entities the system analyst must design tabular output to achieve this

    objective. The first concern in designing output should be to ensure that unnecessary

    details should be avoided. The information should be presented in such a way so that

    the list detail should in some meaning full order. To differentiate heading and details,the dotted line should be put. When necessary add the subtotal, put page total on each

    page. Put the additional space between two lines.

    Graphic Format:

    Graphic systems area variable across a wide range of process and capabilities and forpersonal computers up to mainframes. Management presentations had been enhanced

    by graphics. Analyst has to determine when to use graphics and when to avoid them.

    The success of business graphics depends on the task for which they will be used andthe nature of the information shown. Business graphics uses various types charts i.e.

    pie charts, area chart, curve chart, step and bar charts, map chart. The chart should be

    annotated to indicate the scale used, the meaning each line or shape, and what thechart represents. Business graphics may not save decision making time or reduce the

    volume of information produced by the system. However, if properly designed,

    graphics are excellent supplements for tables and narrative reports.

    When to use graphics:Graphics are used for several reasons

    1. To improve the effectiveness of output reporting for the targeted recipients:

    Graphs are superior to tabular and narrative forms of information for detecting trends

    in business performance. Comparisons are also easier through graphics than through

    tabular data. It also facilitates remembering large amounts of data throughout a series

    of reports.2. To manage information volume:

  • 7/29/2019 SOFTWARE DESIGN.docx

    37/61

    Comparing large amount of data into graphics form does not reduce the amount of

    information. The real benefit of compression is that breaking information into smallerchunks allows it to be more easily understood and remembered. Fragmenting

    information isolates individual elements and eases their comparison

    3. To suit personal preference:

    Often people like to see information in graphics formats rather than in rows and

    columns. Well-prepared computer graphics have great eye appeal, but they do not

    automatically improve the effectiveness of the presentation.

    Standards in design of graphics:

    Each graphics report, whether printed or displayed, should include a title andthe date of preparation. For a series, page numbers are also important.

    Because text data will take longer to read the graphics, placement and legibilityare important. Labels for vertical data should be positioned horizontally, taking

    care to avoid excessive detail in grid scale. Consistent spacing in all labels and

    using a common family of fonts. Labels and data values can increase the readability. All vertical and horizontal axes should be proportional; as should their labels

    Bold and italics type or underlining can be used to emphasize key words or

    phrases. The use of all capital letters in long words, titles or footnotes impedes

    readability and thus should be avoided. Abbreviations should not be used.

    Using a common type of font assures consistency of graphics pages anddisplays design

    Icons:

    Icons are pictorial representations of entities described by the data. Icons are now

    commonly used in computer interfaces to represent documents, in-baskets, filedrawers, and printers. Properly selected icons communicate information immediately.

    Icons eliminates the necessity for users to learn abbreviations, notation. In addition,

    the images themselves do not add to the complexity of the other tasks. In contrast,

    taking time tread labels or footnotes usually contributes to complexity. Of course,most of us will remember a picture more easily than words and phrases.

    The icons should be used using following suggestion:

    Select icons that will be immediately recognized and understood by theanticipated users.

    If there is no familiar icon for the situation, use narrative labels, avoid requiringusers to learn and remember unfamiliar symbols or images.

    Use the same icons, the images itself should communicate its meaning clearlywithout requiring a label

    Use a layout that maintains space and avoids overcrowding between icons. Maintain a common size among different types of symbols.

    Colour presentation:

    With graphics, improper use of colour can hinder rather than help user and

    management productivity. Colour should enhance, not replace, good output design. In

    general, using four or fewer colours on a screen or reports recommended. The analyst

    must take