Software Application Categories


Software may be applied in any situation for which a pre specified set of procedural steps has been defined. Information content and determinacy are important factors in determining the nature of a software application. Content refers to the meaning and form of incoming and outgoing information and Information determinacy refers to the predictability of the order and timing of information.

Software may be used for business application to run a device, for scientific use, real time application and to run a system. An engineering analysis program accepts data that a pre defined order, executes the program without interruption and produces resultant data in report format.

Following are the main application areas of software :

  1. System Software : System software is a collection of programs written to service other programs. Some system software (e.g. compilers, editors, and file management utilities) process complex information structures. Systems software area is characterized by heavy interaction with hardware and users. System software also performs various tasks e.g. concurrent operation, multiple external interfaces, process management etc.
  2. Business Software : Business information processing is the largest single software application area. Business application has a very broad area such as payroll, account receivable, account payable, inventory, purchase, marketing Applications in this area restructure existing data in a way that facilitates business operations. These applications are also used for management decision-making. Now days, business applications are playing very important role for providing the information.
  3. Embedded Software : Intelligent consumer products are becoming very popular in industrial market. Embedded software can perform very limited Embedded software resides in read only memory and is used for to control products for the consumer and industrial markets. Consumer products have embedded software are microwave oven, washing machine, digital functions in an automobile such as fuel control, dashboard displays etc.
  4. Personal Computer Software : Personal computer software may be said to be a small business application, which is used for single user or personal user. This type of application may have word processing, spread sheets, small database management, small business financial application etc.
  5. Scientific Software :•Applications range from astronomy to volcanology, from automotive stress analysis to space shuttle orbital dynamics and from molecular biology to automated manufacturing. There are number of software which are used only for scientific use. Computer aided design, computer aided manufacturing, and simulations are also used for engineering and scientific applications.
  6. Real-time Software : Software that monitor real world events as they occur are called real-time software. Elements of real-time software include a data gathering component that collects and formats information from an external environment, an analysis component that transforms information as required by the application. A real-time system must respond within strict time constraints. If the response time of a real time system exceeds, it can cause disastrous results but in an interactive system, the response time can normally be exceeded without disastrous results.
  7. Web-based Software : The web-pages retrieved by browser are software that incorporate executable instruction(e.g. CGI, HTML, Perl or java) and data(e.g. hypertext and variety of visual and audio formats). Web-based software can be used for E-Commerce and Internet banking. Marketing has become very easy with the use of web-based software.

Software Package Evaluation and Acquisition

Software packages are developed by the outside agencies as per requirement ad the express of the user organization, the proprietary rights in the package remains with original developer. This means that software packages developed by outside agencies can only be licensed for use. The mode of payment for the purpose can be possible in one of the following ways :

  • Acquisition of the right to use a package by means of a monthly or periodical license fee.
  • Off-the-shelf acquisition of programs in the floppy or in a plug-in ROM model.
  • One-off payment for affixed period.
  • Lump-sum payment in the beginning and periodical service charges later on.

Technical Aspect of Proprietary Software

While consideration of acquisition of a proprietary software package, following technical characteristics must be taken into account:

  1. Memory Size : Amount of memory required when resident in the CPU.
  2. Run time : Some programs may occupy lesser memory but much large run times.
  3. Adaptability Ability to mix into a multi-programming environment and to utilize the existing resources such as peripherals, operating systems, various utility programs etc.
  4. File Storage : File storage requirements and how efficiently it can store and retrieve data.
  5. Modularity : A package with a high degree of modularity has the capacity to operate on various machines with different configurations.
  6. Expandability : It emphasizes the sensitivity of a software package to handle an increased volume of transactions or to integrate with other programs.
  7. Reliability : Reliability related aspect include the extent to which a package can still be used when a particular module fails.
  8. Efficiency : This aspect encompasses capability of the package to perform under peak load condition. Efficiency of a package must depend on the language in which it is written and the operating system used.
  9. Ease of Implementation : Implementation of an application package refers to all the implementation associated activities and vendor support up to the point where the package satisfies user needs and the user can run it independently.
  10. Usability : It refers to the effort required to operate, prepare the input and interpret the output of a program.
  11. Vendor Support : This is critically important in such areas as documentation, software, maintenance and educating the user staff at different levels- technical, operational and managerial.
  12. Security : This refers to the in-built capability of the package to prevent unauthorized access to software and data to maintain proper integrity of the system.

Approaches to Software Evaluation

For software evaluation, following approaches have been considered :

  1. Bench marking : Benchmark is a sample program specially designed to evaluate the comparative performance of hardware or software.
  2. Experience of other users : vendors give a list of users who are satisfied with their work. But it is advisable to seek the opinion independently from the existing users whose configuration and operational environment is closely identical.
  3. Report of independent research organization : Now a days, many research organization undertake project of evaluating the proprietary software offered by various software agencies. They publish the report at regular interval. The prospective buyer of a software package can have faith in their evaluation.

Database Management System


A DBMS is specialized computer software, available from computer vendors that is used to create, access, control and manage the database. The core of the DBMS is often called its database engine. The engine responds to specific commands to create database structure and then to create, read, update and delete records in the’database. The database management system is purchased from a database technology vendor such as Oracle, IBM, Microsoft or Sybase.

  • Data Definition Language (DDL) : is used by the DBMS to physically

establish the record types, fields, and structural relationships. Additionally, DDL defines views of the database. Views restrict the portion of the database that may be used or accessed by different users and programs.

  • Data Manipulation Language (DML) : A DML is used to create, read, update and delete records in the database and to navigate between records and types of records — for e.g., from a CUSTOMER record to the ORDER record for that customer. The DBMS and DML hides and details concerning how records are organized and allocated to the disk.

In general, DML is very flexible in that it may be used by itself to create, read, update and delete records.

Goals and Prerequisites of Database Design

The goals of database are as follows :

  1. The database should provide for the efficient storage, update and retrieval of data.
  2. A database should be reliable — the stored data should have high integrity to promote user trust in the data.
  3. A database should be adaptable and scalable to new and unforeseen requirements and applications.
  4. A database should support the business requirements of the information system.


The purpose of design reviews is to ensure that the design satisfies the requirements and is of “good quality”. If errors are made during the design process, they will ultimately reflect themselves in the code and the final system. As the cost of removing faults caused by errors that occur during design increases with the delay in detecting the errors, it is best if design errors are detected early, before they manifest themselves in the system. Detecting errors in the design is the aim of design reviews.

The system design review process is similar to the other reviews, in that groups of people get together to discuss the design with the aim of revealing design errors or undesirable properties. The review group must include a member of both the system design team, the author of the requirement’s document, the author responsible for maintaining the design document, and an independent software quality engineer.

Each member studies the design before the meeting, and with the aid of a checklist, marked items that the reviewer feels are incorrect or need clarification. The member asks questions and the chief designer tries to explain the situation.

As with any review, the aim of the meeting is to uncover design errors not to try to fix them; fixing is done later. The meeting ends with a list of action items, which are later acted on by the design team. Further, reviews may be organized, if needed.

During reviews, element of design that are not conducive to modification and expansion or elements that fail to conform to design standards should also be considered “errors”.


The review process was started with the purpose of detecting defects in the code. Though design reviews substantially reduce defects in code, reviews are still very usefult and can enhance reliability and reduce efforts during testing. Code reviews are designed to detect defects that originate during the coding process, although they can also detect defects in detailed design.

Code inspections are usually held after code has been successfully completed and other forms of static tools have been applied but before any testing has been performed. Therefore, activities like code reading, symbolic execution and static analysis should be performed, and defects found by these techniques corrected before code reviews are held. The main motivation for this is to save human time and effort, which would otherwise be spent detecting errors that a compiler or static analyzer can detect.

The documentation to be distributed to the review team members includes the code to be reviewed and the design document. The review team for code reviews should include the programmer, the designer, and the tester. The review starts with the preparation for the review and ends with a list of action items.

The aim of reviews is to detect defects in code. One obvious coding defect is that the code fails to implement the design. This can occur in many ways. The function implemented by a module may be different from the function actually defined in the design or the interface of the modules may not be the same as the interface specified in the design.

Database Concepts


A field is the physical implementation of a data attribute. Fields are the smallest unit of meaningful data to be stored in file or database. There are 3 types of fields that can be stored : primary keys, secondary keys, foreign key, and descriptive fields.

A primary keys is a field whose values identify one and only one record in a data entity. For e.g., customer—Id uniquely identifies a single CUSTOMER record in a database.

secondary key is an alternate identifiers for a database. A secondary key’s values may identify either a single record or a subset of all records. A single file in a database may have only one primary key, but it may have several secondary keys.

Foreign keys are pointers to the records of a different file in a ddtabase. Foreign keys enable the database to link the records of one type of those of another types.

For e.g., an ORDER RECORD contains the foreign key customer—Id to ‘identify’ or `point to’ the customer record that is associated with the ORDER.


Fields are organized into records. Records are common to both files and databases. A record is a collection of fields arranged in a predefined format.

During system design, records will be classified as either fixed length or variable length records.

Most database technologies impose a fixed-length record structure, meaning that each record instance has the same fields, same number of fields, and same logical size.

Variable record structure allow different records in the same file to have different lengths.


In database systems, A file is a set of all occurrence of a given record structure. A table is the relational database equivalent of a file. Some types of conventional files and tables are :

  • Master Files : or tables contains records that are relatively permanent. Thus, once a record has been added to a master file, it remains in the system The values of fields for the record will change over its lifetime, but the individual records are retained indefinitely.
  • Transaction Files : or tables contain records that describe business events. The data describing these events normally has a limited useful lifetime. In information system, transaction records are frequently retained online for some period of time.
  • Document Files : and tables contains stored copies of historical data for easy retrieval and review without the overhead of regenerating the document.
  • Archival Files : and tables contains master and transaction file records that have been deleted from online storage. Thus, records are rarely deleted, they are merely moved from online storage to offline storage.
  • Audit Files : are special records of updates of other files, especially master and transaction files., Audit trails are built into better database technologies.

Structured Walkthrough


The development process must include checks throughout the process to ensure that the final product meet the original user requirements.

Quality assurance thus becomes an important component of the development process : The Quality Assurance program includes

  • Validation of the system against requirements.
  • Checking of errors in design documents and in system itself.
  • Checking for qualitative features such as portability and flexibility.
  • Checking for usability.

Since the goal of quality assurance is to look at earlier work, designers are required to prepare for a review, inspection or walkthrough and be ready for carrying out any checks or follow-up work needed.

Walkthrough : The walkthrough is a procedure that is used to check the correctness of models produced by structured analysis, although its techniques are applicable to other design methodologies. Such checking has always been necessary in system analysis and design.

Specific tasks are allocated to various members of the walkthrough team and require documentation to be produced during and after the walkthrough.

The team must check that the model :

  • meets system objectives.
  • is a correct representation of the system.
  • has no omissions or ambiguities;
  • null do the job it is supposed to do.
  • is easy to understand.

Walkthroughs are one important method used in quality assurance. Another important feature of walkthrough is that no actual design or system alteration takes place during the walkthrough.

When are walkthroughs Carried Out ?

Walkthrough can take place throughout system development. In structural systems analysis, they begin when the physical and logical models of the existing system have been completed. The first walkthrough checks the existing system models to detect emissions and inaccuracies in them.

Walkthrough should also be carried out on the new logical design to detect flows, weaknesses, errors and omissions in the proposed design.

How are Walkthroughs Carried Out ?

The procedure followed in a walkthrough is shown in figure ahead :

Before the walkthrough begins, the producer should ensure that obvious problems have been eliminated from the models. A walkthrough team is brought together to apply the benefits of its combined knowledge to the whole system and to detect the less obvious system problems. One should use the checklist on a structured model before the

Walkthroughs and Review

documents of a walkthrough are submitted. The checklist includes the common kinds of errors that often occur in modeling and serves as a guide for detecting such errors.

Once the producers are satisfied with the model, it is time for the walkthrough. Two outcomes are possible from the walkthrough. One is that no errors are found in the model and it is accepted. In that case, review documents are prepared for a subsequent project review.

The other outcome is where errors are detected in the model. In that case, an action list is produced. The model is then amended and later submitted to another walkthrough.

The outcome of the walkthrough is always documented. Usually only two documents are produced. One is a summary that describes the walk through outcome and the other is an action list. The action list shows all the issues raised during the walkthrough and, more importantly, who is to be responsible for resolving these issues.

Database Design

All information system create, read, update and delete data. This data is stored in files and databases. A file is a collection of similar records. e.g., customer file. A database is a collection of interrelated files. The records in each file must allow for relationships to the records in other files. e.g., A sales database night contain order records that are linked to their corresponding CUSTOMER and PRODUCT records.

Conventional File Based System

In most organizations, many existing information systems and applications are built around conventional files.

Conventional files are relatively easy to design and implement because they are normally designed for use with a single application or information system such as accounts receivable or payroll.

If one understand the user’s output requirements for a system, the data that have to be captured and stored to produced these outputs can be determined and the best file organization for those requirements can be defined.

Another advantage of conventional file has been processing speed. They can be optimized for the access of the application.


Databases possesses the ability to share the same data across multiple applications and systems. Database technology offers the, advantage of storing data in flexible formats. It also provide superior scalibility, meaning that the database and the systems use it can be grown or expanded to meet the changing needs of the organization. It provides better technology for client/server and network computing architecture.

If the database is well designed, different combinations of the same data can be easily accused to fulfill future report and query needs.

Group Based Approaches


Information system design is defined as those tasks that focuses on the specification of a detailed computer based solution. It is also called physical design. Thus, whereas system analysis emphasized the business problem, systems design focusses on the technical or implementation concerns of the system.

There are many strategies or techniques performing system design. They include modern structured design, information engineering, prototyping, JAD, RAD and object-oriented design that streamline and improve the system analysis and design process.

Prototyping Traditionally, physical design has been a paper and pencil process. Analysts drew pictures that depicted the layout or structure of outputs, inputs or databases and the flow of dialogue and procedures. This is a time consuming process that is prove to considerable errors and emissions.

Today, many analysts prefer prototyping, a modern engineering-based approach to design. The prototyping is an interactive process involving a close working relationship between the designers and users. This approach has several advantages :

  • Prototyping encourages and requires active end-user participation. This increases end-user morale and support for the project.
  • Prototypes are an active model that end users can see, touch, feel and experience.
  • Prototyping can increase creativity because it allows for quicker user feedback, which can lead to better solutions.
  • An approved prototype is a working equivalent to a paper design specification, with one expectation e., errors can be detected much earlier.

Prototyping is often used in system development to clarify user requirements in imprecise systems. A decision to user prototyping is usually made in the feasibility phase.

Prototyping in Systems Development

Prototyping is used to gain a better understanding of possible solutions and the prototype then becomes a requirements model in the system specification phase. The dotted line indicates that some parts of the prototype may eventually become parts of the new system.

Ideally, the prototype serves as a mechanism for identifying software requirements. If a working prototype is built, the developer attempts to use existing program fragments or applies tools that enables working programs to be generated quickly.

RAD (Rapid Application Development) Model The RAD (Rapid Application Development Model) is proposed when requirements and solutions can be modularized as independent system, each of which. can be developed by different teams. After these smaller system components are developed, they are integrated to produce the large software system solution. The modularization could be on a functional, technology, or architectural basis, such as end-back-end, client side-sever side and so on.

RAD becomes faster if the software engineer uses components technology such that the components are really available for reuse. Since the development is distributed into component development teams, the teams work in tandem and total development is completed in a short period (i.e., 60 to 90 days) figure below shows the RAD Model :

The RAD Model SAD

1. Business Modeling : It covers the following functions :

  • Where does information come from and go ?
  • Who processes it ?
  • What information driven the business process ?
  • What information is generated ?

2. Data Modeling : The information flow defined as part of the business-modeling phase is refined into a set of data objects that are needed to support to business. The characteristics of each object are identified and the relationships between these objects are defined.

3. Process Modeling : In this model, information flows from object to object to implement a business function. To add, modify delete or retain a data object, there is a need of description which is done in this phase.

4. Application Generation : RAD assumes the user of fourth generation techniques, the RAD process works to sense existing program components or create reusable components. To facilitate the construction of the software using above cases, automated tools are used.

5. Testing and Turnover : In this phase, the programs are tested, but some already existing programs which are already tested are used due to which the time involved in testing is less. Only the new program or components must be tested.

RAD process enables a development team to create ‘fully functionally system’ within very short time period.

Joint Application Development(JAD)

In the late 1970s, the system development personnel at IBM developed a new process for collecting information system requirements and reviewing system designs. The process is called JAD (Joint Application Design). The idea behind JAD is to structure the requirements determination phase of analysis and the reviews that occur as the part of design. Users, managers and system developers and brought together for a series of intensive structured meetings run by a JAD session leader. By gathering the people directly affected by an IS in one room at the same time to work together to agree on system requirements and design details, time and oragnizational resources are better managed. Group members are more likely to develop a shared understanding of what the Information system is supposed to do. JAD has become common in certain industries such as insurance and in specific companies such as CIGNA.

Following is the list of typical JAD participants :

  • JAD session leader – Organizes and runs the JAD.
  • Users – The key users of the system.
  • Managers
  • Sponders – Due to its expense, a JAD must be sponsored by someone at relatively high level in the company.
  • System Analysts.
  • Scribe – Scribe takes notes during JAD sessions usually on PC or laptop.
  • IS Staff – such as programmers, database analysts, data center personnel may attend the session. Their purpose is to learn from the discussions and possible td contribute their ideas on the technical feasibility of proposed ideas or on theytechnical limitations of current systems.

Joint Application Development (JAD) is a popular fact-finding technique that brings users into the development process as active participants.

The JAD process is based on four simple ideas :

  1. People who actually do a job have the best understanding of that job.
  2. People who are trained in information technology have the best understanding of the possibilities of that technology.
  3. Information systems and business processes rarely exist in isolation — they transcend the confines of any single system or office and affect work in related

departments. People working in these related areas have valuable insight on the role of a system within a larger community.

  1. The best information systems are designed when all of these groups work together on a project as equal partners.

Typical Session Agenda

Project leader :

  1. Introduce all JAD team members
  2. Discuss ground rules, goals, and objectives for the JAD sessions
  3. Explain methods of documentation and use of CASE tools, if any Top management (sometimes called the project owner or sponsor) : Explain the reason for the project and express top management authorization and support.

Project Leader :

  1. Provide overview of the current system and proposed project scope and constraints.
  2. Present outline of specific topics and issues to be investigated.

Open discussion session, moderated by project leader :

  1. Review the main business processes, tasks, user roles, input, and output
  2. Identify specific areas of agreement or disagreement
  3. Break team into smaller groups to study specific issues and assign group leaders.

JAD team members working in smaller group sessions, supported by IT staff:

  1. Discuss and document all system requirements
  2. Develop models and prototypes.

Group leaders :

  1. Report on results and assigned tasks and topics
  2. Present issues that should be addressed by the overall JAD team

Open discussion session, moderated project leader :

  1. Review reports from small group sessions
  2. Reach consensus on main issues
  3. Document all topics

Project leader :

  1. Present overall recap of JAD session
  2. Prepare report that will be sent to JAD team members

Advantages and disadvantages

Compared with traditional methods, JAD may seem more expensive and can be cumbersome if the group is too large relative to the size of the project. Many companies find, however, that JAD allows key users to participate effectively in the requirements modeling process. When users participate in the systems development process, they are more likely to feel a sense of ownership in the results, and support for the new system. When properly used, JAD can result in a more accurate statement of system requirements, a better understanding of common goals, and a stronger commitment to the success of the new system.

A drawback of JAD is that it opens up a lot of scope for inter-personal conflict.

Feasibility Analysis


Feasibility is the measure of how beneficial or practical the development of an information system will be to an organization.

Feasibility analysis is the process by which feasibility is measured. Feasibility should be measured throughout the life cycle. The scope and complexity of an apparently feasible project can change after the initial problems and opportunities are fully analyzed or after the system has been charged.

The first feasibility analysis is conducted during the scope definition phase. At this early stage of the project, feasibility is rarely more than a measure of the urgency of the problem and the first cut estimate of development cost.

After estimating the benefits of solving the problems and opportunities, analyst estimate the costs of developing the expected system.

Feasibility analysis usually considers a number of alternative solution to develop an information system, one of which is chosen as the most satisfactory solution. Feasibility analysis commences once the project goal is set.

Feasibility analysis involves three key considerations. These are :

  • Economic Feasibility
  • Technical Feasibility
  • Behavioural Feasibility
  • Economic Feasibility : As the name suggest, it deals with the term of money. It is the most frequent method for evaluating the effectiveness of candidate system. Cost Benefit Analysis is done to determine the benefits and savings that are expected from the. candidate system and compare them with cost.
  • Technical Feasibility : The possibility that organization has or can procure the necessary resources. This is demonstrated if the needed hardware and software are available in the market place or can be developed by the time of implementation.
  • Behavioural Feasibility : People are inherently resistant to change, and computers have been known to facilitate change. So, it is understandable that introduction of candidate system requires special effort to educate, sell and train the staff on new ways.

A feasibility analysis is conducted to select the Best System that meet performance requirements. This entails the identification description, an evaluation of candidate system, and the selection of best system for the job.

A systems required performance is defined by a statement of constraints, the identification of the specific system objective and a description of outputs. The analyst is then ready to evaluate the feasibility of candidate system to produce these outputs.

Feasibility is the determination of whether or not a project is worth taking up. The process followed in making this decision is called a feasibility study. This type of study determines if a project can and should be taken. Once it has been determined that a project is feasible the analyst can go ahead and prepare the project specification which finalizes project requirements.

Feasibility Study ;s carried out to select the best system that meets performance requirements.

Feasibility. It is a measure of how beneficial the development of an information system would be to an organisation.

Feasibility Analysis

It is a process by which we measure feasibility. It is an on going evaluation of feasibility in the life cycle.

Feasibility Focuses on :

  1. What are the user’s demonstrable needs, how does a candidate system meet them ?
  2. What resources are available for given system. Is the problem worth solving ?
  3. What the likely impact of the systeM on the organisation.? How well does it fit within theorganisation’s ?

Each of these questions must be answered carefully. They revolve around investigation and evaluation of the problem, identification and description of system, specification of performance and the cost of each system, and final selection of the best system

The objective of feasibility study is not to Solve the problem but to acquire a sense of its scope. During the study, the problem definition in crystallized and aspects of the problem to be included in the system are determined. Consequently, costs and benefits are estimated at this stage.

Categories or Considerations of Feasibility Study  .

  1. Technical Feasibility : Technical feasibility is the measure of how much practicable the solutions are and whether the technology is already available to the firm and to what extent it can support the proposed system. It also looks at whether it can be The analyst must find out whether current technical resources which are available in the organisation are capable of handling the user’s requirements.
  2. Economic Feasibility : It is the most frequent used method for evaluating the effectiveness of system. It is a measure of whether a solution was .pay for itself or how profitable a solution will be.

Economic or financial feasibility is the determination of the resources. The resources


  • Management time
  • Time spent by the system analysis team
  • Cost of doing the full systems study        •
  • Estimated cost of hardware.
  • Estimated cost of software/or software development.


  1. Operational Feasibility : Once it is determined that the system is both technically and economically feasible then it has to be seen if it is operationally feasible. It is the measure of solution acceptability. It is the measure of how the end users and managers feel about the problems or solution.
  2. Social Feasibility : It is the determination of whether a proposed project will be acceptable to the people or not. This determination examines the probability of the project being accepted by the group directly.
  3. Management Feasibility : It is the determination of whether a proposed project will he acceptable to the management people or not. If the management does not accept or gives a negligible support to it, the analyst will tend to view the project as non-feasible.
  4. Legal Feasibility : It determines whether the proposed. project infringes on known Acts and Legislations etc.
  5. Time Feasibility : It determines whether the proposed project can be implemented fully within a stipulated time frame. It a project takes too much time it is likely to be
  6. Behavioural Feasibility : It determines the reaction the user staff will have towards the development of the computerized system.

It determines how much effort will go into educating, selling and training the user staff on the system

Steps in Feasibility Analysis

Feasibility analysis involves 7 steps :

  1. Form a project team and appoint a project leader : System study requires project team, which consists of “analysis and user staff’, where senior system analyst ;s appointed as project leacher. Sometimes outside consultant and information specialist also join. Meetings are held to accomplish the mission and to select the best candidate Progress records are kept of each meeting.
  2. Prepare System Flowcharts : Here the generalized system flowcharts are Information oriented charts of first phase (System study) provide inputs and outputs in existing system.
  3. Enumerate Potential Candidate System
  • Candidate system is identified which is capable or producing output.
  • Transformation of logical to physical system model occurs.
  • Hardware is considered here.
  1. Describe and Identify ‘Characteristics of Candidate System : Since with the technical knowledge and expertise in H/W & S/W, it is difficult to judge what a candidate system can and cannot do.

So, from the considered candidate system, the team begins a preliminary evaluation, to reduce it to manageable form.

  1. Determine and Evaluate Performance and Cost Effectiveness of each candidate System :
  • System Performance is evaluated against-the system performance requirement. (req. which were collected before feasibility study.
  • In Performance the


  • — qualitative measures are taken
  • — quantitative measures are taken
  • Qualitative—On the basis of system accuracy, growth potential.
  • Quantitative— On the basis of designing, installing, user training, updating, physical facilities.
  1. Weight System Performance and Cost Data :
  • Sometimes it is difficult to determine the best candidate system by measuring the performance and cost thereof.
  1. Select the Best Candidate System :
  • The system with the highest total spore is judged the best system and is finally
  1. Feasibility Report :
  • Termination of feasibility study is the feasibility report
  • Format is prepared—may depend on user and system
  • Most formats begin with the summary of findings and recommendations followed by documents details.

Cost/Benefit Analysis

From the analysis, system design requirements are identified and alternative systems are evaluated. The analysis of the costs and benefits of each alternative guides the selection process. Therefore, a knowledge of cost and benefit categories and their evaluation methods is important. Costs/Benefits analysis gives a picture of various costs, benefits and rules associated with each alternative system.

Cost fall in two categories :

  • Costs associated with developing the system : Costs which are associated with developing the system, can be estimated from the outset of a project and should be reviewed at the end of each phase of the project.
  • Costs associated with operating system : Costs which are associated with operating a system, can be estimated only once specific computer-based solutions have been defined (during the selection phase or later).

Cost and Benefit Categories

In developing cost estimates for a system, we consider several cost elements_such as

  • Facility Costs : These are expenses incurred in the preparation of the physical site where the application or the computers will be in operation.
  • Hardware : Costs related to the actual purchase or lease of the computer and peripherals (e.g., printer, disk drives, tape unit).

(3). Supply Costs : These are variable costs that increase with increased use of paper, ribbons, disks. They should be estimated and included in the overall cost of the system. This includes the equipment costs also.

  • Training Costs : If the computer personnel or end-users have to .be trained, the training courses may be charged out on a flat fee per site, a student fee, or an hourly fee.
  • Operating Costs : It includes all costs associated with the day-to-day operation of the system. The amount depends on the number of shifts, the ‘nature of the applications, and the caliber of the operating staff.
  • Supply Usage Cost : Computer time will be used for one or more of the following activities : programming, testing, conversion, word processing, maintaining a project dictionary, prototyping, loading new data files etc.
  • Personnel Costs : It includes EDP staff salaries and benefits (health insurance, vacation time, sick pay, etc). as well as pay for those involved in developing the system. The salaries of systems analysts, programmers, consultants, data entry personnel, computer operator, secretaries, and the like who work on the project make up the personnel costs.


The two major benefits are :

  • Improving performance : The performance category emphasizes improvement in the accuracy of or access to information and easier access to the system by authorized
  • Minimizing• the cost of processing : Minimizing costs through an efficient system-error control or reduction of staff is a benefit that should be measured and included in Cost Benefit Analysis.

Procedure for Cost/Benefit Determination

Costs are incurred throughout its Life cycle. Benefits are realized in the form of reduced operating costs, improved corporate image, staff efficiency or revenues.

Cost/Benefit analysis is a procedure that gives a picture of the various costs, benefits and rules associated with a system. The determination of costs and benefits entails the following step :

  1. Identify the costs and benefits overtraining to a given project.
  2. Categorise the various costs and benefits for analysis.
  3. Select a method of analysis.
  4. Interpret the results of the analysis.
  5. Take action.

Cost and Benefit Identificaiion

Some costs and benefits are easily identified, e.g., direct costs, i.e., price of hard disk. Direct benefits often relate one-to-one to direct costs, e.g., savings from reducing costs.

Another category of cost and benefit that is not easily discernable is opportunity cost/benefit. A cost that measures the opportunity which is cost or sacrificed, when choice of one course of action requires that a on alternative choice of action be given up. It is the benefit foregone by not choosing the next best alternative in a given decision making situation.

When one course of action is taken, the other possible course is left out. As a result, the benefits that would accrue are given up. To the extent the benefits forgone can be quantified they represent the opportunity costs. Opportunity costs are hypothetical costs and therefore they do not enter accounting records. They are relevant for decision-making.

For example, suppose the company owns a building which can be used in the business or rented out. If the company chooses to use the building for business purposes, the rent forgone by not letting it out is the opportunity cost of using the building for business purposes.

This cost losses its importance or significance once decisions are mad. During decision making process, these costs provide a comparable base to evaluate alternatives.

Classification of Costs/Benefits

Next step in Cost/benefit determination is to categorize costs and benefits. They may be tangible or intangible, direct or indirect, fixed or variable.

  • Direct or Indirect Costs and benefits

Direct Costs : Are those which can be directly identified with a product, process or department. All those costs incurred in producing a product or offering a service which can be directly “identified” with or “traced” to that product or service are called of direct costs.

Direct costs are those with which can be directly associated in a project. They are applied directly to the operation, e.g., cost of sugarcane in the manufacture of sugar, cost of timber hi manufacture of furniture, salaries of product manager.

Indirect Cost : Those costs which cannot be easily identified with or traced to a product or service, are called indirect costs, or they may also be called as “Overhead” costs.

e.g, depreciation of machinery, Cost of Lubricants used for smooth running of machines, wages paid to all work force who supervise production of more than one product.

Direct benefits : The benefits which can be specifically attributable to a given project e.g., a new system that can handle 25% more transaction per day is direct benefit.

Indirect Benefits : The benefits that are realized as a by-product of another activity or system.

  • Fixed or Variable Cost/Benefits

Behaviour of cost in relation with the level of activity (usually production activity) forms the basis for the distinction between fixed and variable costs.

Variable Cost : All those costs that vary in direct proportibn to the volume of activate are called variable costs.

Variable costs vary in proportion to tile change in the volume of production. This states that per unit cost remains relatively constant but the total cost increases with increase in production and decreases with decrease in production.

When there is no production, no variable ‘ost is incurred e.g., raw materials,•wages, fuel, power, packing expenses, carriage, etc.

Fixed Costs : Fixed Costs are those that remain the same within a certain range in the level of activity. They have to be incurred even if there is no production and therefore are also called shutdown or start by costs.

Example of fixed costs are— insurance, depreciation, rent, rates etc. Within the production capacity established the fixed costs remain the same irrespective of the level of activity. Therefore, while the Cost total fixed costs remain the same, the fixed cost per unit changes with change in output level. With the increase in production level, the fixed cost open unit decreases because it gets distributed over a larger number of units.

Fixed and Variable Cost

Variable benefits : These are realized on a regular bads.

Fixed benefits: These are constant and do not change, e.g., decrease in number of personnel by 20% resulting from. the use of a new computer. The benefit of personnel savings may recur every month.

(c) Tangible or Intangible Costs/Benefits

Tangibility refers to the ease with which .costs and benefits can be measured.

Tangible Cost : An outlay of cash for an specific item or activity is called tangible cost. They can be identified and measured. e.g., I-1/W and S/W cost.

Intangible Cost : Costs that are known to exist but whose financial value cannot be accurately measured. It is easy to identify but difficult to measure. e.g., lowered company’s image.

Tangible Benefits : Those which are quantifiable.

Intangible Benefits : Those which are not easily quantified.

Select the Evaluation Method

When all financial data have been identified and broken down into cost categories, the analyst must select a method of evaluation.

Evaluation methods are

  1. Net Benefit Analysis
  2. Present Value Analysis
  3. Net Present Value
  4. Payback Analysis
  5. Break-even Analysis
  6. Cash-flow Analysis


1. Net benefit Analysis : It involves subtracting total costs from total benefits.

2. Present Value Analysis : It calculates costs/benefits of the system in terms of today’s value of the investment and then comparing across alternatives.

To compute the present value, we use the formula P= F/(l+i)n

3. Net Present Value : The net present value is represented as a percentage of investment.

4. Payback Analysis : Where there is not profit; no loss condition occurs:

Payback Period = Investment/Cash inflow

5. Break-Even Analysis : Where there is no profit, no foss condition occurs.

Break-Even Point =  Fixed Cost/Sales Per Unit — Variable Cost Per unit

6. Cash-flow Analysis : It is total revenue minus the total expenses on a period-by-period basis.

Risk Analysis


Risk analysis and management are a series of steps that help a project team to understand and manage uncertainty. “A risk is an unwanted event that has negative effect on the project.”

Identifying risk and draWing up plans to minimize their effect on the project is called Risk Management.

Proper risk management will require addition planning to evaluate difficulties of achieving project goals. Where there is the potential of risk, it may be necessary to spend more time in planning to assess the risk and reduce it

Categories of Risk

When risk are analyzed, it is important to quantify the level of uncertainty and the degree of loss associated with each risk. To accomplish this, different categories of risks are considered :

  • Project Risk : Project risk threaten the project plan. That is, if project risks become real; it is likely that project schedule will slip and that cost will increase. Project risk identify potential budgetary, schedule, personnel, resources, customers and requirements problems and their impact on a software project.
  • Technical Risk : Technical risk threaten the quality and timelines of the system to be produced. If the technical risk becomes a reality, implementation may become difficult or impossible. Technical risk identify potential design, impletimitation, interface, verification and maintenance problems.
  • Business Risks : Business risk threaten the viability of the system to be built. Candidates for top five business risk are :
  • building on excellent product or system that no one really wants.
  • building a product that no longer fits into an overall business strategy for the
  • building a product that the sales force does not understand how to sell.
  • losing the support of senior management due to change in focus or change in
  • losing budgetary or personnel commitments.

Risk item and recommends risk management techniques to address them :

  • Personnel Shortfalls : Job matching, team, building, staffing with top talent, morale building, prescheduling key people, cross training.
  • Shortfalls in externally performed tasks : Reference checking, award fee contracts, competitive design.
  • Developing the wrong user interface : Task analysis, prototyping, scenarios.
  • Unrealistic Schedules : Schedule estimation, design to cost.
  • Straining Computer Science Capabilities : Cost benefits analysis, reference checking, technical analysis.

Risk Management Activities.

There are so many activities which are involved in risk management. All these activities are shown in figure below :

Risk Management Activities

From all of these activities, some of which are as follows :

(a) Risk Identification : In this activity, the different type of risk such as projeCt, product and business type are identified, it is the first step of risk management. It discovers the all possible risk to the project.

After risk identification, risk prioritization is being done and the risk having very low probability are usually not considered.

Risk identification is carried out as a team process.

(b) Risk Analysis : In risk analysis, we analyse `fie seriousness of the identified risk and its probability of occurring. Risk analysis relies on the judgement and experience of the project manager. After analyzing the risk, a judgement must be made about the important risk which must be considered during the project.

(c) Risk Planning : After identifying and analyzing the risk, we have to solve it, for which we need some method or strategies. All the strategies are divided into three categories :

  • Avoidance Strategy : In this strategy, the probability that the risk will arise will be reduced.
  • Minimization Strategy : The main aim of these strategy is to reduce the impact of the risk.
  • Contingency Strategy : There strategies means that, if the worst happens, we are prepared for it and have a strategy to deal with it.

(d) Risk Monitoring : Risk monitoring involves regular monitoring of the identified risk to check whether or not that risk is becoming more or less probable. The project manager monitors factors that may provide an indication of whether the risk is becoming more or less likely. The following factors can be monitored :

  • General attitude of team members based on project preserves.
  • Interpersonal relationships among team members.
  • Potential problems with compensation and benefits.
  • The availability of jobs within the company and outside it.

The project manager should also monitor documents carefully to ensure that each can stand on its own.

Types of Interviews


There are two types of interviews, unstructured and structure. Unstructured interviews are characterized as involving general questions that allow the interviewee to direct the conversely. This type of interview frequently gets off track. Unstructured interview usually don’t work well for System Analysis and Design.

Structured interviews involves the interviewer asking specific questions designed to elicit specific information from the interviewee. Depending upon the response, the interviewer will direct additional questions to obtain clarification.

The Interview Plan


Most interview search procedures require all information sources to be examined to ensure that all information about the system is gathered. They suggest that this information be sought in a top-down way to gradually build up the system model.

The interview plan specifies :

  • the user to be interviewed.
  • the sequence in which the users are interviewed; and
  • the interview plan for each user.

The first step in developing an interviewing plan is to identify the users to be interviewed. An organization chart can be used to identify the users. This chart describes the organizations units, the positions in these units and each positions occupant.

It is usually wise to begin interviewing at the top levels of the organizational areas, in order to get support and cooperation from management before beginning to look into particular organizational activities or suggesting new solutions.

The interview process follows a fairly structured path. Usually, the analyst begins with an initial interview to meet the users. This fast interview is then followed by a number of fact gathering interviews to gather all the major facts known to the user. Then there may be one or more follow-up interviews to verify these facts and any models developed by the analyst and to gain additional information to complete the analyst’s study.

The interview Structure

It is necessary to proceed in an orderly manner to get the best out of interview. Figure below illustrates a procedure that has been found effective over time.

A typical Interview

For e.g., An analyst will have to introduce themselves at the first interview. Then some interview criteria may be identified. These include the length of the interview and what you expect to get from it, as well as obtaining permission to take any notes or make recordiligs.

Once the preliminaries are over, the main part of interview can begin. The interview should be concluded by summarizing what is found out in interview and confirming it. Finally, it is usually a good idea to arrange time for next interview if this is considered necessary.

The Art of Interviewing

Interviewing is an art. Few analyst learn it in school, but most of them develop expertise through experience. The interviewer’s art consist of creating a perceiye situation in which the answers offered are.reliable. Respondents opinions are offered with no fear of being criticized by others. Primary requirements for a successful interview are to create a friendly atmosphere and to put the respondent at ease. Then the interview proceeds with asking questions properly, obtaining reliable responses, and recording them accurately and completely.

Arranging the Interview

The interview should be arranged so that the physical location time of the interview, and order of interviewing assure privacy and minimal interruption. Appointments should be made well in advance and a fixed time period adhered to as closely as possible. Interview schedules generally begins at the top of the organization structure and work down – so as not to offend anyone. A successful interview will involve selecting appropriate individuals to interview, preparing extensively for the interview, conducting the interview properly and following up on the interview. Following are the steps :

  • Select interviewees
  • Prepare for the interview
  • Conduct the interview
  • Follow up on the interview

Guides to a Successful Interview

In an interview, the following steps should be taken :

  • Set the stage for the interview : The analyst conduct the interview by focussing on (a) the purpose of the interview (b) why the subject was selected (c) the confidential nature of the interview. During stage setting, the interviewer evaluates the cooperation of the interviewee. Both the content and tone of the responses are evaluated.
  • Establishing rapport, put the interviewee at ease : Assuring interviewee’s confidentiality that no information they offer will be released to unauthorised personnels.
  • Phrase questions clearly and succinctly : (Asking the questions) It is important that each question is asked exactly as it is worded. The questions must also be asked in the same order as they appear on the interview schedule.
  • Obtaining and recording the response : (Be a good listener, avoid argument) Interviewer’s must be prepared to coax respondents to elicit further information when For e.g., I seen what you mean could you elaborate further on that ?
  • Evaluate the outcome of the interview : Many system studies fail because of poor data recording. Care must be taken to record the data, their sources and the time of If there is no record of a conversation, the analyst runs the risk of not remembering enough details, attributing them to the wrong source, or otherwise distorting the data.


Interview is generally recognized as the most important fact finding technique. Interview involves eliciting requirements through direct, face-to-face interaction. Interviewing can be used to achieve goals such as find facts, verify facts, clarify facts, generate enthusiasm, get the end user involved. There are two roles assumed in an interview : the system analyst is the interviewer, responsible for organizing and conducting the interview. The system user is the interviewee who is asked to respond to a series of questions.

Advantages –

(1 ) Interviews give the analyst an opportunity to motivate the interviewee to respond freely and openly to questions.

  • Interview allows the system analyst to probe for more feedback from the
  • Interviews permit the system analyst to adapt or reward questions for each
  • Interviews give the analyst an opportunity to observe the interviewee’s non-verbal communication.


  • Interviewing is very time consuming and therefore a costly, fact finding
  • Success of interviews is highly dependent on the system analyst’s human relations skills.
  • Interviewing may be impractical due to the location of interviewees.



Interviewing is the main approach used to analyze large structuredsystems. It is used by analysts to gradually build a subject world model and to understand any system problems. There are many important factors of successful interviewing. The first is to choose people to interview. This is important, as the analyst must ensure that all key people within the study boundary are considered. The next important factor is finding the right way to conduct an individual interview. Good interpersonal relationship must be considered and the interviewer must establish some rapport with the interviewe to ensure the cooperation necessary to get all the relevant facts.

Information gathering through interviewing for a large and complex systems can be an onerous task. Information must be gathered in an organized way to ensure that nothing is oveelooked and that all system detail is eventually captured. All users must be consulted to ensure that every system problem and each user requirement is identified and that useful objectives are proposed.

By studying the organization chart, the analyst can confidently schedule interviews with key personnels involved with the system.

Interviews help gather vital facts about existing problems, such as lack of quality control or sufficient security, but they also allow the analyst to involve people in change, easing them into it.