Determining requirements



Similar documents
Phase 2 Systems Analysis. Dr. Feng-Jen Yang

CHAPTER 3 Requirements Modeling (Phase 2: Systems Analysis)

Department of Industrial Engineering. Sharif University of Technology

Software Engineering. Requirements elicitation - Facts finding. Software Engineering Requirements Elicitation Slide 1

SAULTCOLLEGE OF APPLIED ARTS AND TECHNOLOGY SAULT STE. MARIE, ONTARIO COURSE OUTLINE

LECTURE 3 REQUIREMENTS GATHERING

LECTURE 1. SYSTEMS DEVELOPMENT

Business Analysis with Financial concepts

D6 INFORMATION SYSTEMS DEVELOPMENT. SOLUTIONS & MARKING SCHEME. June 2013

CHAPTER 3 : AGILE METHODOLOGIES. 3.3 Various Agile Software development methodologies. 3.4 Advantage and Disadvantage of Agile Methodology

Chapter 6 Determining System Requirements

CHAPTER 13. Acquiring Information Systems and Applications

Fundamentals of Information Systems, Fifth Edition. Chapter 8 Systems Development

5/19/ Professor Lili Saghafi

Introduction to Systems Analysis and Design

Chapter 1 System Development Environment

Foundations for Systems Development

Unit Title: Personnel Information Systems Unit Reference Number: F/601/7510 Guided Learning Hours: 160 Level: Level 5 Number of Credits: 18

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.

Subject : System Analysis and Design BCA -II UNIT 1

CSC 342 Semester I: H ( G)

ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN

IT2404 Systems Analysis and Design (Compulsory)

CHAPTER 13. Acquiring Information Systems and Applications

Assuming the Role of Systems Analyst & Analysis Alternatives

COURSE TITLE: (OLS 207) INFORMATION SYSTEMS ANALYSIS, DESIGN AND EVALUATION

How To Design An Information System

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.

Chapter 1 The Systems Development Environment

Becoming a Business Analyst

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal

A Review of an MVC Framework based Software Development

Chapter 8 Approaches to System Development

SELF STUDY DIPLOMA IN BUSINESS ANALYSIS

Test Cases Design for Software Database Provisioning Development

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design

Requirements Engineering

Fourth generation techniques (4GT)

MAHATMA GANDHI UNIVERSITY SCHOOL OF DISTANCE EDUCATION (MGU CBCSS UG SDE 2012)

UNIVERSITY OF SURREY. BSc Programmes in Computing. Level 1 Examination. CS183: Systems Analysis and Design. Time allowed: 2 hours Spring Semester 2006

Time Management. Part 2 Work Breakdown Structure (WBS) Review. Richard Boser

A system is a set of integrated components interacting with each other to serve a common purpose.

1. Process Modeling. Process Modeling (Cont.) Content. Chapter 7 Structuring System Process Requirements

Systems Analysis and Design Life Cycle

REQUIREMENTS SPECIFICATION AND MANAGEMENT. Requirements Analysis and Specification

BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 4 Certificate in IT. September 2013 EXAMINERS REPORT

(Refer Slide Time 00:56)

How To Model Software Development Life Cycle Models

Chapter 13 BUILDING INFORMATION SYSTEMS. How does building new systems produce organizational change?

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

BPMN Fundamentals. BPMI Meeting #12. London, United Kingdom May 13-14, Stephen A. White, IBM Notation Working Group Chair

SOFTWARE REQUIREMENTS

EMC PERSPECTIVE. Adopting an Agile Approach to OSS/BSS Development

[1] [2]

Basic Unified Process: A Process for Small and Agile Projects

The Business Process Model

4.4 What is a Requirement? 4.5 Types of Requirements. Functional Requirements

Agile Processes and Methodologies: A Conceptual Study

AN OVERVIEW OF SYSTEMS ANALYSIS: SYSTEMS ANALYSIS AND THE ROLE OF THE SYSTEMS ANALYST. Lecture , Tuesday

Course Outline. Foundation of Business Analysis Course BA30: 4 days Instructor Led

SIX-STEP PROBLEM SOLVING MODEL

CHAPTER 11 REQUIREMENTS

Chapter 13: Program Development and Programming Languages

Requirements Engineering Process

New York City College of Technology/CUNY Computer Systems Technology Department

INFS 2603 BUSINESS SYSTEMS ANALYSIS

Software Development Life Cycle (SDLC)

Business Process Modeling Across the Life Cycle

Object-Oriented Systems Analysis and Design

Agile Projects 7. Agile Project Management 21

Akhil Kumar 1, Bindu Goel 2

Introduction to BPMN

Determining System Requirements

THE BCS PROFESSIONAL EXAMINATIONS Diploma. April 2006 EXAMINERS REPORT. Systems Design

General Problem Solving Model. Software Development Methodology. Chapter 2A

MEASURING SOFTWARE FUNCTIONAL SIZE FROM BUSINESS PROCESS MODELS

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

Applying Agile Methods in Rapidly Changing Environments

Chapter 3. Technology review Introduction

DATABASE DESIGN. - Developing database and information systems is performed using a development lifecycle, which consists of a series of steps.

Process Analysis. Work Process Documentation Guidelines. Purpose

Field Guide to Consulting and Organizational Development. Table of Contents

Chapter 1 - From Beginning to End: An Overview of Systems Analysis and Design Lecture Notes

How To Understand And Understand The Software Development Process In Korea

Advancing Your Business Analysis Career Intermediate and Senior Role Descriptions

How To Design A System

A Project Based Approach for Teaching System Analysis, Design, and Implementation Courses

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Modeling Guidelines Manual

Listening to the Customer s Voice 1

Chapter 7 Conducting Interviews and Investigations

Comparison of Various Requirements Elicitation Techniques

Requirements Analysis Concepts & Principles. Instructor: Dr. Jerry Gao

Transcription:

Systems Analysis Determining requirements ผ สอน ดร.สล ล บ ญพราหมณ ITM-631 Information System Development

... การจะพ ฒนาท กส งท กอย างให เจร ญน น จะต องสร างและเสร ม ข นจากพ นฐานเด มท ม อย ก อนท งส น ถ าพ นฐานไม ด หร อคลอน แคลนบกพร องแล ว ท จะเพ มเต มเสร มต อให เจร ญข นไปอ กน น ยากน กท จะท าได จ งควรจะเข าใจให แจ งช ดว า นอกจากจะ ม งสร างความเจร ญแล ว ย งต องพยายามร กษาพ นฐานให ม นคง ไม บกพร องพร อมๆก นไปด วย พระบรมราโชวาทของพระบาทสมเด จพระเจ าอย ห วในพ ธ พระราชทาน ปร ญญาบ ตร ณ จ ฬาลงกรณ มหาว ทยาล ย ๑๐ กรกฎาคม ๒๕๒๓

Phase Description 3 Systems analysis is the second of five phases in the systems development life cycle (SDLC) Will use requirements modeling, data and process modeling, and object modeling techniques to represent the new system Will consider various development strategies for the new system, and plan for the transition to systems design tasks

Chapter Objectives 4 Describe systems analysis phase activities Explain joint application development (JAD), rapid application development (RAD), and agile methods Use a functional decomposition diagram (FDD) to model business functions and processes

Chapter Objectives 5 Describe the Unified Modeling Language (UML) and examples of UML diagrams List and describe system requirements, including outputs, inputs, processes, performance, and controls Explain the concept of scalability

Chapter Objectives 6 Use fact-finding techniques, including interviews, documentation review, observation, questionnaires, sampling, and research Conduct a successful interview Develop effective documentation methods to use during systems development

Introduction 7 This chapter describes requirements modeling techniques and team-based methods that systems analysts use to visualize and document new systems The chapter then discusses system requirements and factfinding techniques, which include interviewing, documentation review, observation, surveys and questionnaires, sampling, and research

Overview: Systems Analysis Phase 8 The overall objective of the systems analysis phase is to understand the proposed project, ensure that it will support business requirements, and build a solid foundation for system development You use models and other documentation tools to visualize and describe the proposed system

Overview: Systems Analysis Phase Systems Analysis Activities Requirements modeling Outputs Inputs Processes Performance Security

Overview: Systems Analysis Phase 10 Systems Analysis Activities Data and process modeling Object Modeling Development Strategies System requirements document (overall design of new system)

Overview: Systems Analysis Phase 11 Systems Analysis Skills Analytical skills Systematic thinking Interpersonal skills Team-Oriented Methods and Techniques Joint application development (JAD) Rapid application development (RAD) Agile methods

Joint Application Development (JAD) 12 Popular fact-finding technique that brings users into the development process as active participants

JAD 13 User Involvement Users have a vital stake in an information system and they should participate fully Successful systems must be user-oriented, and users need to be involved One popular strategy for user involvement is a JAD team approach

JAD 14 JAD Participants and Roles

JAD Typical agenda for JAD session

JAD Typical agenda for JAD session

JAD 17 JAD Advantages and Disadvantages More expensive and can be cumbersome if the group is too large relative to the size of the project Allows key users to participate effectively 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

Rapid Application Development (RAD) 18 Is a team-based technique that speeds up information systems development and produces a functioning information system Like JAD but goes much further end product of JAD = requirement model End product of RAD = new information system

RAD Relies heavily on prototyping and user involvement Interactive process continues until the system is completely developed and users are satisfied

RAD 4 RAD Phases 1) Requirement planning phase Systems planning phase + systems analysis phase (SDLC) Users, managers and IT staff members discuss and agree on Business needs Project scope Constraints Systems requirements

Rapid Application Development Requirement planning phase ends when the team agrees on key issues AND Obtain management authorization to continue

RAD 2) User design phase User interact with SA and develop models and prototypes that represent all system processes, outputs, and inputs Use combination of JAD techniques and CASE tool to translate user needs into working models Is continuous and interactive process that allow user to understand, modify and approve the working model that meets their needs

RAD 3) Construction phase Focus on application development like SDLC However, users continue to participate and still can suggest changes or improvement

RAD 4) Cutover Similar to final phase of SDLC, includes data conversion Testing changeover to the new system User training

25 RAD

RAD 26 RAD Objectives To cut development time and expenseby involving the users in every phase of systems development Successful RAD team must have IT resources, skills, and management support Helps a development team design a system that requires a highly interactive or complex user interface

RAD 27 RAD Advantages and Disadvantages Systems can be developed more quickly with significant cost savings RAD stresses the mechanics of the system itself and does not emphasize the company s strategic business needs Might allow less time to develop quality, consistency, and design standards

Agile Methods 28 Attempt to develop a system incrementally by building a series of prototypes and constantly adjusting them to user requirements As process continues, developers revise, extend, and merge early versions into final product Emphasizes continuous feedback, and incremental step is affected by what was learned in the prior steps.

Agile Methods Agilianmodeling toolset includes support for many modeling tools Some agile developers prefer not to use CASE tools at all, and rely instead on whiteboard displays and arrangements of movable sticky notes

Agile Methods 30 Scrum is a rugby term, another agile approach Agile team members play specific roles: pigs or chicken Pigs include the product owner, the facilitator, and the development team the chickens include users, other stakeholders, and managers Scrum sessions have specific guidelines that emphasize time blocks, interaction, and team-based activities that result in deliverable software

Agile Methods 31 Agile Method Advantages and Disadvantages Are very flexible and efficient in dealing with change Frequent deliverables constantly validate the project and reduce risk Team members need a high level of technical and interpersonal skills May be subject to significant change in scope

http://news.slashdot.org/story/13/05/25/139218/worlds-biggest-agile-software-project-close-to-failure

Modeling Tools and Techniques 34 Involves graphical methods and nontechnical language that represent the system at various stages of development Can use various tools Functional Decomposition Diagrams Functional decomposition diagram (FDD) Model business functions and show how they are organized into lower-level processes

Functional decomposition diagram (FDD)

Modeling Tools and Techniques 36 Business Process Modeling Business process model (BPM) Business process modeling notation (BPMN)

Pool Swim lanes

Modeling Tools and Techniques 39 Data Flow Diagrams Data flow diagram (DFD) show how the system stores, processes, and transforms data Additional levels of information and detail are depicted in other, related DFDs

Modeling Tools and Techniques 41 Unified Modeling Language Widely used method of visualizing and documenting software systems design Use case diagrams Actor

Sequence diagrams

System Requirements Checklist 45 Outputs The Web site must report online volume statistics every four hours, and hourly during peak periods The inventory system must produce a daily report showing the part number, description, quantity on hand, quantity allocated, quantity available, and unit cost of all sorted by part number

System Requirements Checklist 46 Inputs Manufacturing employees must swipe their ID cards into online data collection terminals that record labor costs and calculate production efficiency The department head must enter overtime hours on a separate screen

System Requirements Checklist 47 Processes The student records system must calculate the GPA at the end of each semester As the final step in year-end processing, the payroll system must update employee salaries, bonuses, and benefits and produce tax data required by the IRS

System Requirements Checklist 48 Performance The system must support 25 users online simultaneously Response time must not exceed four seconds System must be operational seven days a week, 365 days a year

System Requirements Checklist 49 Controls The system must provide logon security at the operating system level and at the application level An employee record must be added, changed, or deleted only by a member of the human resources department All transactions must have audit trails

Future Growth, Costs, and Benefits 50 Scalability A scalable system offers a better return on the initial investment To evaluate scalability, you need information about projected future volume for all outputs, inputs, and processes

Future Growth, Costs, and Benefits Total Cost of Ownership Total cost of ownership (TCO) is especially important if the development team is evaluating several alternatives One problem is that cost estimates tend to understate indirect costs Rapid Economic Justification (REJ)

Fact-Finding 52 Fact-Finding Overview First, you must identify the information you need Develop a fact-finding plan Who, What, Where, When, How, and Why? Difference between asking what is being done and what could or should be done

Fact-Finding The Zachman Framework ZachmanFramework for Enterprise Architecture Helps managers and users understand the model and assures that overall business goals translate into successful IT projects

Interviews Step 1: Determine the People to Interview Informal structures Step 2:Establish Objectives for the Interview Determine the general areas to be discussed List the facts you want to gather

Interviews 55 Step 3: Develop Interview Questions Creating a standard list of interview questions helps to keep you on track and avoid unnecessary tangents Avoid leading questions Open-ended questions Closed-ended questions Range-of-response questions

Interviews 56 Step 4: Prepare for the Interview Careful preparation is essential because an interview is an important meeting and not just a casual chat Limit the interview to no more than one hour Send a list of topics Ask the interviewee to have samples available

Interviews 59 Step 5: Conduct the Interview Develop a specific plan for the meeting Begin by introducing yourself, describing the project, and explaining your interview objectives Engaged listening Allow the person enough time to think about the question After an interview, you should summarize the session and seek a confirmation

Interviews 60 Step 6: Document the Interview Note taking should be kept to a minimum After conducting the interview, you must record the information quickly After the interview, send memo to the interviewee expressing your appreciation Note date, time, location, purpose of the interview, and the main points you discussed so the interviewee has a written summary and can offer additions or corrections

Interviews 61 Step 7: Evaluate the Interview In addition to recording the facts obtained in an interview, try to identify any possible biases Unsuccessful Interviews No matter how well you prepare for interviews, some are not successful

Other Fact-Finding Techniques Document Review Observation Seeing the system in action gives you additional perspective and a better understanding of the system procedures Plan your observations in advance Hawthorne Effect

Other Fact-Finding Techniques Questionnaires and Surveys When designing a questionnaire, the most important rule of all is to make sure that your questions collect the right data in a form that you can use to further your factfinding Fill-in form

Questionnaire

Questionnaire Keep the questionnaire brief and user-friendly Provide clear instructions Arrange the questions in a logical order, going from simple to more complex topics Phrase questions to avoid misunderstandings, use simple terms and wording Try not to lead the response or use questions that give clues to expected answers

Questionnaire Limit the use of open-ended questions that are difficult to tabulate Limit the use of questions that can raise concerns about job security or other negative issues Include a section at the end of questionnaire for general comments Test the questionnaire whenever possible on a small test group before finalizing it

Other Fact-Finding Techniques 67 Sampling Systematic sample Stratified sample Random sample Main objective of a sample is to ensure that it represents the overall population accurately

Other Fact-Finding Techniques Research Can include the Internet, IT magazines, and books to obtain background information, technical material, and news about industry trends and developments Site visit

69 Interviews versus Questionnaires Interview is more familiar and personal Questionnaire gives many people the opportunity to provide input and suggestions Brainstorming Structured brainstorming Unstructured brainstorming

Documentation 70 The Need for Recording the Facts Record information as soon as you obtain it Use the simplest recording method Record your findings in such a way that they can be understood by someone else Organize your documentation so related material is located easily

Documentation Software Tools CASE Tools Productivity Software Word processing, spreadsheets, database management, presentation graphics, and collaborative software programs Histogram

Documentation 72 Software Tools Graphics modeling software

Personal information managers

Wireless communication devices

Preview of Logical Modeling 75 At the conclusion of requirements modeling, systems developers should have a clear understanding of business processes and system requirements The next step is to construct a logical model of the system IT professionals have differing views about systems development methodologies, and no universally accepted approach exists

Chapter Summary 76 The systems analysis phase includes three activities: requirements modeling, data and process modeling, and consideration of development strategies The main objective is to understand the proposed project, ensure that it will support business requirements, and build a solid foundation for the systems design phase

Chapter Summary 77 The fact-finding process includes interviewing, document review, observation, questionnaires, sampling, and research Systems analysts should carefully record and document factual information as it is collected, and various software tools can help an analyst visualize and describe an information system