SYSTEMS ANALYSIS AND DESIGN What is a System? The word System is derived from Greek word Systema, which means an organized relationship between any set of components to achieve some common cause or objective. A system is “an orderly grouping of interdependent components linked together according to a plan to achieve a specific goal.” Constraints of a System A system must have three basic constraints − A system must have some structure and behavior which is designed to achieve a predefined objective. Interconnectivity and interdependence must exist among the system components. The objectives of the organization have a higher priority than the objectives of its subsystems. For example, traffic management system, payroll system, automatic library system, human resources information system. Properties of a System A system has the following properties − Organization Organization implies structure and order. It is the arrangement of components that helps to achieve predetermined objectives. Interaction It is defined by the manner in which the components operate with each other. For example, in an organization, purchasing department must interact with production department and payroll with personnel department. Interdependence Interdependence means how the components of a system depend on one another. For proper functioning, the components are coordinated and linked together according to a specified plan. The output of one subsystem is the required by other subsystem as input. Integration Integration is concerned with how a system components are connected together. It means that the parts of the system work together within the system even if each part performs a unique function. Central Objective The objective of system must be central. It may be real or stated. It is not uncommon for an organization to state an objective and operate to achieve another. C 1 The users must know the main objective of a computer application early in the analysis for a successful design and conversion. 10.1 Elements of information systems Information systems are interrelated components working together to collect, process, store, and disseminate information to support decision making, coordination, control, analysis, and viualization in an organization. The components that make up an information system and the role that those components play in an organization are: TECHNOLOGY Technology can be thought of as the application of scientific knowledge for practical purposes. From the invention of the wheel to the harnessing of electricity for artificial lighting, technology is a part of our lives in so many ways that we tend to take it for granted. As discussed before, the first three components of information systems – hardware, software, and data – all fall under the category of technology. Hardware Information systems hardware is the part of an information system you can touch – the physical components of the technology. Computers, keyboards, disk drives, iPads, and flash drives are all examples of information systems hardware. Software Software is a set of instructions that tells the hardware what to do. Software is not tangible – it cannot be touched. When programmers create software programs, what they are really doing is simply typing out lists of instructions that tell the hardware what to do. There are several categories of software, with the two main categories being operating-system software, which makes the hardware usable, and application software, which does something useful. Examples of operating systems include Microsoft Windows on a personal computer and Google’s Android on a mobile phone. C 2 Data The third component is data. You can think of data as a collection of facts. For example, your street address, the city you live in, and your phone number are all pieces of data. Like software, data is also intangible. By themselves, pieces of data are not really very useful. But aggregated, indexed, and organized together into a database, data can become a powerful tool for businesses. In fact, all of the definitions presented at the beginning of this chapter focused on how information systems manage data. Organizations collect all kinds of data and use it to make decisions. These decisions can then be analyzed as to their effectiveness and the organization can be improved. Networking Communication: A Fourth Technology Piece? Besides the components of hardware, software, and data, which have long been considered the core technology of information systems, it has been suggested that one other component should be added: communication. An information system can exist without the ability to communicate – the first personal computers were stand-alone machines that did not access the Internet. However, in today’s hyper-connected world, it is an extremely rare computer that does not connect to another device or to a network. Technically, the networking communication component is made up of hardware and software, but it is such a core feature of today’s information systems that it has become its own category. PEOPLE When thinking about information systems, it is easy to get focused on the technology components and forget that we must look beyond these tools to fully understand how they integrate into an organization. A focus on the people involved in information systems is the next step. From the front-line help-desk workers, to systems analysts, to programmers, all the way up to the chief information officer (CIO), the people involved with information systems are an essential element that must not be overlooked. PROCESS The last component of information systems is process. A process is a series of steps undertaken to achieve a desired outcome or goal. Information systems are becoming more and more integrated with organizational processes, bringing more productivity and better control to those processes. But simply automating activities using technology is not enough – businesses looking to effectively utilize information systems do more. Using technology to manage and improve processes, both within a company and externally with suppliers and customers, is the ultimate goal. Technology buzzwords such as “business process reengineering,” “business process management,” and “enterprise resource planning” all have to do with the continued improvement of these business procedures and the integration of technology with them. Businesses hoping to gain an advantage over their competitors are highly focused on this component of information systems. 10.2 Systems theory The view of organizations as open social systems that must interact with their environments in order to survive is known as the systems theory approach. Organizations depend on their C 3 environments for several essential resources: customers who purchase the product or service, suppliers who provide materials, employees who provide labor or management, shareholders who invest, and governments that regulate. The open-systems approach was first applied by Katz and Kahn, who adapted General Systems Theory to organizational behavior. This approach identifies organizational behavior by mapping the repeated cycles of input, throughput, output, and feedback between an organization and its external environment. Systems receive input from the environment either as information or in the form of resources. The systems then process the input internally, which is called throughput, and release outputs into the environment in an attempt to restore equilibrium to the environment. The system then seeks feedback to determine if the output was effective in restoring equilibrium. As can be seen, the systems approach focuses on the means used to maintain organizational survival and emphasize long-term goals rather than the short-term goals of the goal-attainment approach. Theoretically, systems can be considered either open or closed. Open organizations exchange information, energy, or resources with their environments, whereas closed systems do not. In reality, because no social systems can be completely closed or open, they are usually identified as relatively closed or relatively open. The distinction between closed and open systems is determined by the level of sensitivity to the external environment. Closed systems are insensitive to environmental deviations, whereas open systems are responsive to changes in the environment. The systems approach is an external standard that measures effectiveness based on long-term growth or sustainability. 10.3 Types of information systems Major Types of Information Systems A typical organization has six information systems with each supporting a specific organizational level. These systems include transaction processing systems (TPS) at the operational level, office automation systems (OAS) and knowledge work systems (KWS) at the knowledge level, management information systems (MIS) and decision support Systems (DSS) at the management level and the executive support systems (ESS)at the strategic level. 1. Transaction Processing Systems Every firm needs to process transactions in order to perform its daily business operations. A transaction refers to any event or activity that affects the organization. Depending on the organization’s business, transactions may differ from one organization to another. In a manufacturing unit, for example, transactions include order entry, receipt of goods, shipping, etc., while in a bank, transactions include deposits and withdrawals, cashing of cheques, etc. However, some transactions, including placing orders, billing customers, hiring employees, employee record keeping, etc., are common to all organizations. To support the processing of business transactions, transaction processing systems (TPS) are used in organizations. 2. Office Automation Systems An office automation system (OAS) is a collection of communication technology, computers, and persons to perform official tasks. It executes office transactions and supports official activities at every organizational level. These activities can be divided into clerical and managerial activities. C 4 Clerical activities performed with the help of an office automation system include preparing written communication, typesetting, printing, mailing, scheduling meetings, calendar keeping. etc. Under managerial activities, an office automation system helps in conferencing, creating reports and messages, and controlling the performance of the organization. Many applications like word processing, electronic filing, and e-mail are integrated into office automation systems. Word Processing Word processing is used for the preparation of documents like letters, reports, memos, or any type of printable material by electronic means. The text is entered by the keyboard and displayed on the computer’s display unit. This text can be edited, stored, and reproduced with the help of commands present in the word processor. Word processors have facilities for spell checking, grammar checking, counting (character, lines, pages, etc.), automatic page numbering, index creation, header, and footer, etc. Email E-mail or electronic mail facilitates the transfer of messages or documents with the help of computers and communication lines. This helps in the speedy delivery of mails and also reduces the time and cost of sending paper mail. E-mail supports not only the transfer of text messages but also has options for sending images, audio, video, and many other types of data. Voice Mail Voice mail, an important call service, allows the recording and storing of telephone messages into the computer’s memory. The intended person can retrieve these messages at any time. 3. Knowledge Work Systems A knowledge work system (KWS) is a specialized system built to promote the creation of knowledge and to make sure that knowledge and technical skills are proper integrated into the business. It helps the knowledge workers in creating and propagating new information and knowledge by providing them the graphics, analytical, communications, and document management tools. The knowledge workers also need to search for knowledge outside the organization. Thus, the knowledge work system must give easy access to external databases. In addition, knowledge work systems should have a user-friendly interface to help users to get the required information quickly and easily. Some examples of knowledge work systems are computer-aided design (CAD)systems, virtual reality systems, and financial workstations. Computer-aided design (CAD) systems: These systems are used for automating the creation and revision of designs using computers and graphics software. The CAD software has the capability to provide design specifications for the tooling and manufacturing process. This saves much time and money while making a manufacturing process. Virtual Reality System: These systems have more capabilities than CAD systems for visualization, rendering, and simulation. They make use of interactive graphics software to build computer-generated simulations which almost look real. They can be used in educational, scientific, and business work. C 5 Financial Workstations: They are used to combine a wide range of data from internal as well as external sources. This data includes contact management data, market data, and research reports. Financial workstations help in analyzing trading situations and large amounts of financial data within no time. It is also used for portfolio management. 4. Management Information Systems Management information systems are specially developed to support the planning, controlling, and decision-making functions of middle managers. A management information system (MIS) extracts transaction data from underlying TPSs, compiles them, and produces information products in the form of reports, displays, or responses. These information products provide information that conforms to the decision-making needs of managers and supervisors. Management information systems use simple routines like summaries and comparisons which enable managers to take decisions for which the procedure of reaching a solution has been specified in advance. Generally, the format of reports produced by MIS is pre-specified. A typical MIS report is a summary report, such as a report on the quarterly sales made by each sales representative of the organization. Another type of management information system report is an; for example, exception report that specifies the exception conditions the sales made by some sales representative is far below than expected. Usually, management information systems are used to produce reports on a monthly, quarterly, or yearly basis. However, if managers want to view the daily or hourly data, MIS enables them to do so. In addition, they provide managers online access to the current performance as well as past records of the organization. 5. Decision Support Systems A decision support system (DSS) is an interactive computer-based information system that, like MIS, also serves at the management level of an organization. However, in contrast to MIS, it processes information to support the decision-making process of managers. It provides middle managers with the information that enables them to make intelligent decisions. A decision support system in a bank, for example, enables a manager to analyze the changing trends in deposits and loans in order to ascertain the yearly targets Decision support systems are designed for every manager to execute a specific managerial task or problem. Generally, they help managers to make semi-structured decisions, the solution to which can be arrived at logically. However, sometimes, they can also help in making complex decisions. To support such decisions, they use the information generated by OASs and TPSs. Decision support systems have more analytical power as compared to other information systems. They employ a wide variety of decision models to analyze data or summarize a vast amount of data into a form (usually the form of tables or charts) that makes the comparison and analysis of data easier for managers. They provide an interactive environment so that the users could work with them directly, add or change data as per their requirements, and ask new questions. 6. Executive Support Systems An executive support system (ESS) – an extension of MIS – is a computer-based information system that helps in decision-making at the top level of an organization. The decisions taken C 6 with the help of an executive support system are non-routine decisions that affect the entire organization and, thus, require judgment and sight. As compared to DSSs, ESSs offer more general computing capabilities, better telecommunications, and efficient display options. They use advanced graphics software to display critical information in the form of charts or graphs that help senior executives to solve a wide range of problems. To make effective decisions, they use summarized internal data from MIS and DSS as well as data from external sources about events like new tax laws, new competitors, etc. They filter, compress, and track data of high importance and make it available to the strategic-level managers. Executive support systems help to monitor performance, track activities of competitors, identify opportunities, and forecast trends. They also assist senior managers in answering the following question: • What business should we do? • How are our competitors doing the business? • Which units can be sold and which new units are to be bought? 10.4 Personnel involved in systems analysis and design People are involved in information systems in just about every way you can think of: people imagine information systems, people develop information systems, people support information systems, and, perhaps most importantly, people use information systems. The Creators of Information Systems: The first group of people we are going to look at play a role in designing, developing, and building information systems. These people are generally very technical and have a background in programming. Identification of the personnel at each stage and brief description of their roles: client, systems analyst, project manager, programmer and independent test group The client awards the contract to a software house, they are involved in the analysis stage to answer questions and help create the software specification. The may be used at the testing stage to perform testing on the final product. Their involvent is not required at the other stages as the software specification should give the software hues all the info they need. Systems analysist works with the client to produce the software specificatio, they are also involved with the design team to help clarify any points in the specification. The project manager is responsible for the project being delivered on time and in budget, they do not need to have programming experience although this helps. They are involved at all stages of the process. Programers are involved at the design, implementation, testing, documentation & maintance stages and are responsible for producing a working and correct program. Independant test groups are used to test the program, this is sometimes classed beta testing. Not being part of the programming teams gives them a more objective view of the program. Often these testing groups are made up of members of it he public as well as specialists. C 7 Role of System Analyst The system analyst is a person who is thoroughly aware of the system and guides the system development project by giving proper directions. He is an expert having technical and interpersonal skills to carry out development tasks required at each phase. He pursues to match the objectives of information system with the organization goal. Main Roles Defining and understanding the requirement of user through various Fact finding techniques. Prioritizing the requirements by obtaining user consensus. Gathering the facts or information and acquires the opinions of users. Maintains analysis and evaluation to arrive at appropriate system which is more user friendly. Suggests many flexible alternative solutions, pick the best solution, and quantify cost and benefits. Draw certain specifications which are easily understood by users and programmer in precise and detailed form. Implemented the logical design of system which must be modular. Plan the periodicity for evaluation after it has been used for some time, and modify the system as needed 10.5 Systems analysis and design concepts Systems development is systematic process which includes phases such as planning, analysis, design, deployment, and maintenance. Here, we will primarily focus on − Systems analysis Systems design Systems Analysis It is a process of collecting and interpreting facts, identifying the problems, and decomposition of a system into its components. System analysis is conducted for the purpose of studying a system or its parts in order to identify its objectives. It is a problem solving technique that improves the system and ensures that all the components of the system work efficiently to accomplish their purpose. Analysis specifies what the system should do. Systems Design It is a process of planning a new business system or replacing an existing system by defining its components or modules to satisfy the specific requirements. Before planning, you need to understand the old system thoroughly and determine how computers can best be used in order to operate efficiently. System Design focuses on how to accomplish the objective of the system. System Analysis and Design (SAD) mainly focuses on – Systems, Processes and Technology C 8 10.6 Systems a development life cycle System Development Life Cycle An effective System Development Life Cycle (SDLC) should result in a high quality system that meets customer expectations, reaches completion within time and cost evaluations, and works effectively and efficiently in the current and planned Information Technology infrastructure. System Development Life Cycle (SDLC) is a conceptual model which includes policies and procedures for developing or altering systems throughout their life cycles. SDLC is used by analysts to develop an information system. SDLC includes the following activities − requirements design implementation testing deployment operations maintenance What is Requirements Determination? A requirement is a vital feature of a new system which may include processing or capturing of data, controlling the activities of business, producing information and supporting the management. Requirements determination involves studying the existing system and gathering details to find out what are the requirements, how it works, and where improvements should be made. Major Activities in requirement Determination Requirements Anticipation It predicts the characteristics of system based on previous experience which include certain problems or features and requirements for a new system. It can lead to analysis of areas that would otherwise go unnoticed by inexperienced analyst. But if shortcuts are taken and bias is introduced in conducting the investigation, then requirement Anticipation can be half-baked. Requirements Investigation It is studying the current system and documenting its features for further analysis. It is at the heart of system analysis where analyst documenting and describing system features using fact-finding techniques, prototyping, and computer assisted tools. Requirements Specifications C 9 It includes the analysis of data which determine the requirement specification, description of features for new system, and specifying what information requirements will be provided. It includes analysis of factual data, identification of essential requirements, and selection of Requirement-fulfillment strategies. Information Gathering Techniques The main aim of fact finding techniques is to determine the information requirements of an organization used by analysts to prepare a precise SRS understood by user. Ideal SRS Document should − be complete, Unambiguous, and Jargon-free. specify operational, tactical, and strategic information requirements. solve possible disputes between users and analyst. use graphical aids which simplify understanding and design. There are various information gathering techniques − Interviewing Systems analyst collects information from individuals or groups by interviewing. The analyst can be formal, legalistic, play politics, or be informal; as the success of an interview depends on the skill of analyst as interviewer. It can be done in two ways − Unstructured Interview − The system analyst conducts question-answer session to acquire basic information of the system. Structured Interview − It has standard questions which user need to respond in either close (objective) or open (descriptive) format. Advantages of Interviewing This method is frequently the best source of gathering qualitative information. It is useful for them, who do not communicate effectively in writing or who may not have the time to complete questionnaire. Information can easily be validated and cross checked immediately. It can handle the complex subjects. It is easy to discover key problem by seeking opinions. It bridges the gaps in the areas of misunderstandings and minimizes future problems. Questionnaires This method is used by analyst to gather information about various issues of system from large number of persons. There are two types of questionnaires − C 10 Open-ended Questionnaires − It consists of questions that can be easily and correctly interpreted. They can explore a problem and lead to a specific direction of answer. Closed-ended Questionnaires − It consists of questions that are used when the systems analyst effectively lists all possible responses, which are mutually exclusive. Advantages of questionnaires It is very effective in surveying interests, attitudes, feelings, and beliefs of users which are not co-located. It is useful in situation to know what proportion of a given group approves or disapproves of a particular feature of the proposed system. It is useful to determine the overall opinion before giving any specific direction to the system project. It is more reliable and provides high confidentiality of honest responses. It is appropriate for electing factual information and for statistical data collection which can be emailed and sent by post. Review of Records, Procedures, and Forms Review of existing records, procedures, and forms helps to seek insight into a system which describes the current system capabilities, its operations, or activities. Advantages It helps user to gain some knowledge about the organization or operations by themselves before they impose upon others. It helps in documenting current operations within short span of time as the procedure manuals and forms describe the format and functions of present system. It can provide a clear understanding about the transactions that are handled in the organization, identifying input for processing, and evaluating performance. It can help an analyst to understand the system in terms of the operations that must be supported. It describes the problem, its affected parts, and the proposed solution. Observation This is a method of gathering information by noticing and observing the people, events, and objects. The analyst visits the organization to observe the working of current system and understands the requirements of the system. Advantages C It is a direct method for gleaning information. It is useful in situation where authenticity of data collected is in question or when complexity of certain aspects of system prevents clear explanation by end-users. It produces more accurate and reliable data. 11 It produces all the aspect of documentation that are incomplete and outdated. Joint Application Development (JAD) It is a new technique developed by IBM which brings owners, users, analysts, designers, and builders to define and design the system using organized and intensive workshops. JAD trained analyst act as facilitator for workshop who has some specialized skills. Advantages of JAD It saves time and cost by replacing months of traditional interviews and follow-up meetings. It is useful in organizational culture which supports joint problem solving. Fosters formal relationships among multiple levels of employees. It can lead to development of design creatively. It Allows rapid development and improves ownership of information system. Secondary Research or Background Reading This method is widely used for information gathering by accessing the gleaned information. It includes any previously gathered information used by the marketer from any internal or external source. Advantages It is more openly accessed with the availability of internet. It provides valuable information with low cost and time. It act as forerunner to primary research and aligns the focus of primary research. It is used by the researcher to conclude if the research is worth it as it is available with procedures used and issues in collecting them. Feasibility Study Feasibility Study can be considered as preliminary investigation that helps the management to take decision about whether study of system should be feasible for development or not. It identifies the possibility of improving an existing system, developing a new system, and produce refined estimates for further development of system. It is used to obtain the outline of the problem and decide whether feasible or appropriate solution exists or not. The main objective of a feasibility study is to acquire problem scope instead of solving the problem. The output of a feasibility study is a formal system proposal act as decision document which includes the complete nature and scope of the proposed system. Steps Involved in Feasibility Analysis The following steps are to be followed while performing feasibility analysis − C Form a project team and appoint a project leader. 12 Develop system flowcharts. Identify the deficiencies of current system and set goals. Enumerate the alternative solution or potential candidate system to meet goals. Determine the feasibility of each alternative such as technical feasibility, operational feasibility, etc. Weight the performance and cost effectiveness of each candidate system. Rank the other alternatives and select the best candidate system. Prepare a system proposal of final project directive to management for approval. Types of Feasibilities Economic Feasibility It is evaluating the effectiveness of candidate system by using cost/benefit analysis method. It demonstrates the net benefit from the candidate system in terms of benefits and costs to the organization. The main aim of Economic Feasibility Analysis (EFS) is to estimate the economic requirements of candidate system before investments funds are committed to proposal. It prefers the alternative which will maximize the net worth of organization by earliest and highest return of funds along with lowest level of risk involved in developing the candidate system. Technical Feasibility It investigates the technical feasibility of each implementation alternative. It analyzes and determines whether the solution can be supported by existing technology or not. The analyst determines whether current technical resources be upgraded or added it that fulfill the new requirements. It ensures that the candidate system provides appropriate responses to what extent it can support the technical enhancement. Operational Feasibility C It determines whether the system is operating effectively once it is developed and implemented. It ensures that the management should support the proposed system and its working feasible in the current organizational environment. It analyzes whether the users will be affected and they accept the modified or new business methods that affect the possible system benefits. It also ensures that the computer resources and network architecture of candidate system are workable. 13 Behavioral Feasibility It evaluates and estimates the user attitude or behavior towards the development of new system. It helps in determining if the system requires special effort to educate, retrain, transfer, and changes in employee’s job status on new ways of conducting business. Schedule Feasibility It ensures that the project should be completed within given time constraint or schedule. It also verifies and validates whether the deadlines of project are reasonable or not. 10.6.1 Definition of systems development life cycle An effective System Development Life Cycle (SDLC) should result in a high quality system that meets customer expectations, reaches completion within time and cost evaluations, and works effectively and efficiently in the current and planned Information Technology infrastructure. System Development Life Cycle (SDLC) is a conceptual model which includes policies and procedures for developing or altering systems throughout their life cycles. 10.6.2 Phases of SDLC Phases of SDLC Systems Development Life Cycle is a systematic approach which explicitly breaks down the work into phases that are required to implement either new or modified Information System. C 14 Feasibility Study or Planning Define the problem and scope of existing system. Overview the new system and determine its objectives. Confirm project feasibility and produce the project Schedule. During this phase, threats, constraints, integration and security of system are also considered. A feasibility report for the entire project is created at the end of this phase. Analysis and Specification Gather, analyze, and validate the information. Define the requirements and prototypes for new system. Evaluate the alternatives and prioritize the requirements. Examine the information needs of end-user and enhances the system goal. A Software Requirement Specification (SRS) document, which specifies the software, hardware, functional, and network requirements of the system is prepared at the end of this phase. System Design Includes the design of application, network, databases, user interfaces, and system interfaces. Transform the SRS document into logical structure, which contains detailed and complete set of specifications that can be implemented in a programming language. Create a contingency, training, maintenance, and operation plan. Review the proposed design. Ensure that the final design must meet the requirements stated in SRS document. Finally, prepare a design document which will be used during next phases. Implementation Implement the design into source code through coding. Combine all the modules together into training environment that detects errors and defects. A test report which contains errors is prepared through test plan that includes test related tasks such as test case generation, testing criteria, and resource allocation for testing. Integrate the information system into its environment and install the new system. Maintenance/Support C Include all the activities such as phone support or physical on-site support for users that is required once the system is installing. 15 Implement the changes that software might undergo over a period of time, or implement any new requirements after the software is deployed at the customer location. It also includes handling the residual errors and resolve any issues that may exist in the system even after the testing phase. Maintenance and support may be needed for a longer time for large systems and for a short time for smaller systems. 10.6.3 Advantages and disadvantages of SDLC Starting with the advantages 1. Formal review is created at the end of each stage allowing maximum management control. 2. This approach creates considerable system documentation. 3. This documentation ensures that system requirements can be traced back to stated business requirements. 4. It produces many intermediate products that can be reviewed to see whether they meet the user’s needs and conform to standards. These can be further worked on if they require tweaks to be made, ensuring that the business gets exactly what it needs. There are always disadvantages with everything… 1. What may be seen as a major problem for some, end-user does not see the solution until the system is almost complete. 2. Users get a system that meets the need as understood by the developers; this may not be what was really needed for them. There may be a loss in translation. 3. Documentation is expensive and time-consuming to create. It is also difficult to keep current. What may be current this month may not be the same this time next year! 4. Users cannot easily review intermediate products and evaluate whether a particular product (e.g., data flow diagram) meets their business requirements. 5. Another disadvantage of a program or software that follows the SDLC program is it encourages stiff implementation instead of creativity. There are requirements that must be met and that is all that developers complete. Although both sides have been weighed up here, it is clear that the advantages are far greater than the disadvantages 10.7 Requirements elicitation 10.7.1 Stakeholder analysis Stakeholder analysis is an effective three-step process for identifying, prioritizing and understanding your stakeholders. Stakeholder Analysis is the first step in Stakeholder Management, an important process that successful people use to win support from others. C 16 Managing stakeholders can help you, too, to ensure that your information systems projects succeed where others might fail. Why Use Stakeholder Analysis? A stakeholder-based approach gives you four key benefits: 1. Getting Your Projects Into Shape You can use the opinions of your most powerful stakeholders to help define your projects at an early stage. These stakeholders will then more likely support you, and their input can also improve the quality of your project. 2. Winning Resources Gaining support from powerful stakeholders can help you to win more resources, such as people, time or money. This makes it more likely that your projects will be successful. 3. Building Understanding By communicating with your stakeholders early and often, you can ensure that they fully grasp what you’re doing and understand the benefits of your project. This means that they can more actively support you when necessary. 4. Getting Ahead of the Game Understanding your stakeholders means that you can anticipate and predict their reactions to your project as it develops. This allows you to plan actions that will more likely win their support. How to Conduct a Stakeholder Analysis There are three steps to follow in Stakeholder Analysis. First, identify who your stakeholders are. Next, work out their power, influence and interest, so that you know who you should focus on. Finally, develop a good understanding of the most important stakeholders, so that you know how they are likely to respond, and how you can win their support. When you’ve completed your analysis, you can move on to use stakeholder management to work out how you’ll communicate with each stakeholder. Let’s explore the three steps of Stakeholder Analysis in more detail: 1. Identify Your Stakeholders Start by brainstorming who your stakeholders are. As part of this, think of all the people who are affected by your work, who have influence or power over it, or have an interest in its successful or unsuccessful conclusion. The table below identifies some of the people who might be stakeholders in your job or in your projects: Your boss Shareholders Senior executives Alliance partners Trades associations Your co-workers Suppliers C Government The press 17 Your team Lenders Interest groups Customers Analysts The public Prospective customers Future recruits Your family The community Key contributors Key advisors Note: Stakeholders can be both organizations and people, but ultimately you must communicate with people. So, be sure to identify the correct individual stakeholders within a stakeholder organization. 2. Prioritize Your Stakeholders You may now have a list of people and organizations that are affected by your work. Some of these may have the power either to block that work or to advance it. Some may be interested in what you are doing, while others may not care, so you need to work out who you need to prioritize . You can map out your stakeholders, and classify them according to their power over your work and their interest in it, on a Power/Interest Grid. The position that you allocate to a stakeholder on the grid shows you the actions you need to take with them: High power, highly interested people (Manage Closely): you must fully engage these people, and make the greatest efforts to satisfy them. High power, less interested people (Keep Satisfied): put enough work in with these people to keep them satisfied, but not so much that they become bored with your message. Low power, highly interested people (Keep Informed): adequately inform these people, and talk to them to ensure that no major issues are arising. People in this category can often be very helpful with the detail of your project. Low power, less interested people (Monitor): again, monitor these people, but don’t bore them with excessive communication. Your boss, for example, likely has high power and influence over your projects and high interest in them. Your family, however, may have high interest in them, but won’t have power over them. Finding This Article Useful? You can learn another 65 project management skills, like this, by joining the Mind Tools Club. 3. Understand Your Key Stakeholders You now need to discover how your key stakeholders feel about your project. You also need to work out how best to engage them, and how to communicate with them. Questions that can help you understand your stakeholders include: C What financial or emotional interest do they have in the outcome of your work? Is it positive or negative? 18 What motivates them most of all? What information do they want from you, and what is the best way of communicating with them? What is their current opinion of your work? Is it based on good information? Who influences their opinions generally, and who influences their opinion of you? Do some of these influencers therefore become important stakeholders in their own right? If they aren’t likely to be positive, what will win them around to support your project? If you don't think that you’ll be able to win them around, how will you manage their opposition? Who else might be influenced by their opinions? Do these people become stakeholders in their own right? You can ask your stakeholders these questions directly. People are often quite open about their views, and asking for their opinions is often the first step in building a successful relationship with them. A simple way to summarize the level of backing you have from your stakeholders is to colorcode them. For example, show advocates and supporters in green, blockers and critics in red, and those who are neutral in orange. See the diagram, below. In figure 2, you can see that a lot of effort needs to be put into persuading Piers and Maureen of the benefits of the project, while Janet and Amanda also need to be managed effectively as powerful supporters. Example of a Stakeholder Analysis You can create your own example of Stakeholder Analysis at work – whether for your current role, a job you want to do, or a new project. Conduct a full stakeholder analysis. Ask yourself whether you are communicating as effectively as you should be with your stakeholders. What actions can you take to get more from your supporters or win over your critics? Key Points As the work you do and the projects you run become more important, you will affect more and more people. Some of these people have the power to undermine your projects and your position. Others may be strong supporters of your work. Stakeholder Management is the process by which you identify your key stakeholders and win their support. Stakeholder Analysis is the first stage of this, where you identify and start to understand your most important stakeholders. The first stage of this is to brainstorm who your stakeholders are. The next step is to prioritize them by power and interest, and to plot this on a Power/Interest grid. The final stage is to get an understanding of what motivates your stakeholders and how you need to win them around. 10.7.2 Need for requirements gathering A requirement is a vital feature of a new system which may include processing or capturing of data, controlling the activities of business, producing information and supporting the management. C 19 Requirements determination involves studying the existing system and gathering details to find out what are the requirements, how it works, and where improvements should be made. Major Activities in requirement Determination Requirements Anticipation It predicts the characteristics of system based on previous experience which include certain problems or features and requirements for a new system. It can lead to analysis of areas that would otherwise go unnoticed by inexperienced analyst. But if shortcuts are taken and bias is introduced in conducting the investigation, then requirement Anticipation can be half-baked. Requirements Investigation It is studying the current system and documenting its features for further analysis. It is at the heart of system analysis where analyst documenting and describing system features using fact-finding techniques, prototyping, and computer assisted tools. Requirements Specifications It includes the analysis of data which determine the requirement specification, description of features for new system, and specifying what information requirements will be provided. It includes analysis of factual data, identification of essential requirements, and selection of Requirement-fulfillment strategies. 10.7.3 Process for requirements gathering It is a four step process, which includes – Feasibility Study Requirement Gathering Software Requirement Specification Software Requirement Validation 10.7.4 Requirement gathering tools and techniques Techniques describe how tasks are performed under specific circumstances. A task may have none or one or more related techniques. A technique should be related to at least one task. The following are some of the well-known requirements gathering techniques − Brainstorming C 20 Brainstorming is used in requirement gathering to get as many ideas as possible from group of people. Generally used to identify possible solutions to problems, and clarify details of opportunities. Document Analysis Reviewing the documentation of an existing system can help when creating AS–IS process document, as well as driving gap analysis for scoping of migration projects. In an ideal world, we would even be reviewing the requirements that drove creation of the existing system – a starting point for documenting current requirements. Nuggets of information are often buried in existing documents that help us ask questions as part of validating requirement completeness. Focus Group A focus group is a gathering of people who are representative of the users or customers of a product to get feedback. The feedback can be gathered about needs/opportunities/ problems to identify requirements, or can be gathered to validate and refine already elicited requirements. This form of market research is distinct from brainstorming in that it is a managed process with specific participants. Interface analysis Interfaces for a software product can be human or machine. Integration with external systems and devices is just another interface. User centric design approaches are very effective at making sure that we create usable software. Interface analysis – reviewing the touch points with other external systems is important to make sure we don’t overlook requirements that aren’t immediately visible to users. Interview Interviews of stakeholders and users are critical to creating the great software. Without understanding the goals and expectations of the users and stakeholders, we are very unlikely to satisfy them. We also have to recognize the perspective of each interviewee, so that, we can properly weigh and address their inputs. Listening is the skill that helps a great analyst to get more value from an interview than an average analyst. Observation By observing users, an analyst can identify a process flow, steps, pain points and opportunities for improvement. Observations can be passive or active (asking questions while observing). Passive observation is better for getting feedback on a prototype (to refine requirements), where active observation is more effective at getting an understanding of an existing business process. Either approach can be used. Prototyping Prototyping is a relatively modern technique for gathering requirements. In this approach, you gather preliminary requirements that you use to build an initial version of the solution - a prototype. You show this to the client, who then gives you additional requirements. You change the application and cycle around with the client again. This repetitive process continues until the product meets the critical mass of business needs or for an agreed number of iterations. Requirement Workshops C 21 Workshops can be very effective for gathering requirements. More structured than a brainstorming session, involved parties collaborate to document requirements. One way to capture the collaboration is with creation of domain-model artifacts (like static diagrams, activity diagrams). A workshop will be more effective with two analysts than with one. Reverse Engineering When a migration project does not have access to sufficient documentation of the existing system, reverse engineering will identify what the system does. It will not identify what the system should do, and will not identify when the system does the wrong thing. Survey/Questionnaire When collecting information from many people – too many to interview with budget and time constraints – a survey or questionnaire can be used. The survey can force users to select from choices, rate something (“Agree Strongly, agree…”), or have open ended questions allowing free-form responses. Survey design is hard – questions can bias the respondents. 10.7.5 Gap analysis Gap analysis work should be based on a clear understanding of what needs correction, as well as identification of those issues that hinder improvement, and use of a direct process that addresses those improvements. Gap analysis can be seen as a process that measures the distance (i.e., the gap) between where a particular item currently stands and where it should be, to better meet the organization’s needs. The steps required to make the process work include: identification of the gap analysis goals analysis of the current process hurdles that preclude reaching the desired goal development of a plan to close the gap between the process’s current status and attainment of the desired goal a review of the proposed gap analysis plan by members of the IT department and the business units responsible for the processes to be analyzed, in order to secure agreement and commitment to the plan an audit at the completion of the process; the audit should determine if the goals have been met, and if those who used the process now understand it, making its future use more productive After defining the business needs, the current state (e.g. current business processes, business functions, features of a current system and services/products offered and events that the system must respond to) must be identified to understand how people, processes and technology, structure and architecture are supporting the business by seeking input from IT staff and other related stakeholders including business owners. 10.7.6 Prioritization of requirements Requirements prioritization goals at eliciting which requirements of software need to be covered in a particular release. The key point is which requirement will be selected in the next iteration and which one will be delayed to other iterations for minimizing risk during development and meeting stakeholders' needs. There are many existing techniques for C 22 requirement prioritization, but most of these techniques do not cover continuous growth and change of requirements or cover requirements dependencies. So, most of these prioritization techniques need to be more continuous, scalable, implemented merely and integrated with software development life cycle and not work separately. There is a framework to prioritize requirements in agile software development. This framework tries to find solutions for the challenges facing this prioritization process such as how to make this prioritization continuous and scalable and how to deal with rapidly requirement changes and its dependencies. The release planning process consists of the sub processes: 1. Prioritize requirements 2. Select requirements 3. Define release requirements 4. Validate release requirements 5. Prepare launch C 23