83
INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1

INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Embed Size (px)

Citation preview

Page 1: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN

1

Page 2: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Information System2

Page 3: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

What Is An Information System?

3

An information system is a collection of interrelated components that collect, process, store, and provide as output the information needed to complete a business task.

Page 4: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Examples of Information Systems

4

Course registration system Online order system Online banking system

Page 5: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Why Are Information Systems Important?

5

Support business functions in modern business organizations

Make business more competitive Enhance productivity and profits

Page 6: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Types of Information Systems

6

Customer Relationship Management (CRM) Supply Chain Management (SCM) Accounting and Financial Management (AFM) Human Resource Management (HRM) Manufacturing Management Knowledge Management (KM) Collaboration Support Systems (CSS) Business Intelligence System

Page 7: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

7

Information Systems and Component Parts

Page 8: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

System Analysis8

Page 9: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

What Is System Analysis About?

9

Understanding the goals and strategies of the business.

Defining the information requirements that support those goals and strategies.

It is not about programming.

Page 10: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

System Analysis Vs. System Design

10

Systems analysis is a process of understanding in detail what a system should accomplish.

Systems design is a process of specifying in detail how components of an information system should be physically implemented.

Page 11: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

System Analyst11

A business professional who uses analysis and design techniques to solve business problems using information technology.

Page 12: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

The Role of a System Analyst Investigate, analyze, design, develop,

installs, evaluate, and maintains a company’s information systems.

A business problem solver The solution to the “problem” is

generally a new information system Help translate business requirements

into IT projects.

12

Page 13: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Typical Problems System Analyst Typically Solve

13

Customers want to order product anytime of the day.

Suppliers want to minimize inventory holding costs.

Marketing want to know customer needs better.

Management want to analyzing financial information more efficiently.

Page 14: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

The Analyst as a Business Problem Solver

14

Has computer technology knowledge and programming expertise

Understands business problems Uses logical methods for solving problems Has fundamental curiosity Wants to make things better Is more of a business problem solver than

a technical programmer

Page 15: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

What is your problem solving approach?

15

Assume that you are deciding whether to buy a new laptop to replace the old one.

Page 16: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Analyst’s Approach to Problem Solving

16

1. Research and understand the problem

2. Verify benefits of solving problem outweigh the costs

3. Define the requirements for solving the problem

4. Develop a set of possible solutions (alternatives)

5. Decide which solution is best and recommend

6. Define the details of the chosen solution

7. Implement the solution

8. Monitor to ensure desired results

Page 17: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Required Skills of the Systems Analyst

17

1. Technical2. Business3. People

Page 18: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

1-Technical Knowledge and Skills

18

Computers / peripheral devices (hardware)

Communication networks and connectivity Database and database management

systems (DBMS) Programming languages (for example,

VB.NET or Java) Operating systems and utilities

Page 19: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

1-Technical Knowledge and Skills – Tools

19

Software productivity packages Integrated development environments

(IDEs) for programming languages CASE tools, testing, documentation

support, reverse engineering, configuration management

Page 20: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

1- Technical Knowledge and Skills – Techniques

20

Project planning, systems analysis Systems design, database design,

network design Construction, implementation, systems

support

Page 21: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

2- Business Knowledge and Skills

21

Business functions performed by organization

Strategies, plans, traditions, and values of the organization

Organizational structure

Organization management techniques

Functional work processes

Page 22: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

3- People Knowledge and Skills

22

Systems analysts need to understand how people

Think

Learn

React to change

Communicate

Work (in a variety of jobs and levels)

Page 23: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

3- People Knowledge and Skills (continued)

23

Interpersonal and communication skills are crucial to

Obtaining information

Motivating people

Getting cooperation

Understanding the complexity and workings of an organization in order to provide necessary support

Page 24: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Hard and Soft Skills24

Hard skills are the skills in technical areas such as database design, programming, and telecommunication.

Soft skills are the skills in nontechnical areas such as interviewing, team management, and leadership.

Page 25: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Integrity and Ethics25

Analyst has access to confidential information, such as salary, an organization’s planned projects, security systems, and so on.

Must keep information private

Any impropriety can ruin an analyst’s career

Analyst plans security in systems to protect confidential information

Page 26: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Analyst-Related Careers26

ERP software related Business Analysts in different business

functions Auditing, compliance, and security Web Development

Page 27: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

System Development27

Page 28: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

The Systems Development Lifecycle

28

SDLC provides overall framework for managing systems development process.

Two main approaches to SDLC Predictive approach – assumes project can be

planned out in advance Adaptive approach – more flexible, assumes

project cannot be planned out in advance All projects use some variation of SDLC

Page 29: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

29

Choosing the Predictive vs. Adaptive Approach to the SDLC

Page 30: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Traditional Predictive Approach to the SDLC

30

Project planning – initiate, ensure feasibility, plan schedule, obtain approval for project

Analysis – understand business needs and processing requirements

Design – define solution system based on requirements and analysis decisions

Implementation – construct, test, train users, and install new system

Support – keep system running and improve

Page 31: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

31

Information System Development Phases

Page 32: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

SDLC and Problem Solving32

Organization recognizes problem (project planning)

Project team investigates, understands problem and solution requirements (analysis)

Solution is specified in detail (design) System that solves problem is built and

installed (implementation) System used, maintained, and enhanced to

continue to provide intended benefits (support)

Page 33: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Waterfall Model33

Waterfall model is an SDLC approach that assumes the various phases of a project can be completed sequentially – one phase leads into the next phase.

Page 34: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

34

“Waterfall” Approach to the SDLC

Page 35: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

35

Modified Waterfall Approachwith Overlapping Phases

Page 36: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Newer Adaptive Approaches to the SDLC

36

Based on spiral model Project cycles through development activities over and

over until project is complete Prototype created by end of each cycle Focuses on mitigating risk

Iteration – Work activities are repeated

Each iteration refines previous result

Approach assumes no one gets it right the first time

There are a series of mini projects for each iteration

Page 37: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

37

The Spiral Life Cycle Model

Page 38: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Activities of Each SDLC Phase

38

Predictive or adaptive approach use SDLC

Activities of each “phase” are similar Phases are not always sequential Phases can overlap

Page 39: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Activities of Planning Phase of SDLC

39

Define business problem and scope

Produce detailed project schedule

Confirm project feasibility

Economic, organizational, technical, resource, and schedule

Staff the project (resource management)

Launch project official announcement

Page 40: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Activities of Analysis Phase of SDLC

40

Gather information to learn problem domain

Define system requirements

Build prototypes for discovery of requirements

Prioritize requirements

Generate and evaluate alternatives

Review recommendations with management

Page 41: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Activities of Design Phase of SDLC

41

Design and integrate the network

Design the application architecture

Design the user interfaces

Design the system interfaces

Design and integrate the database

Prototype for design details

Design and integrate system controls

Page 42: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Activities of Implementation Phase of SDLC

42

Construct software components

Verify and test

Convert data

Train users and document the system

Install the system

Page 43: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Activities of Support Phase of SDLC

43

Maintain system Small patches, repairs, and updates

Enhance system Small upgrades or enhancements to expand

system capabilities Larger enhancements may require separate

development project Support users

Help desk and/or support team

Page 44: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Approaches to System Development

44

Page 45: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Two Approaches to System Development

45

Traditional (Structured) approach Also called structured system development Structured analysis and design technique

(SADT) Includes information engineering (IE)

Object-oriented approach Also called OOA, OOD, and OOP Views information system as collection of

interacting objects that work together to accomplish tasks

Page 46: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

1- Traditional (Structured) approach

46

Page 47: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Structured System Development

47

Structure Programming Top-down Programming Structured Design Structured Analysis

Page 48: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Structured Programming48

Improves computer program quality Allows other programmers to easily read

and modify code Each program module has one beginning

and one ending Three programming constructs

(sequence, decision, repetition)

Page 49: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

49

Three Structured Programming Constructs

Page 50: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Top-Down Programming50

Divides complex programs into hierarchy of modules

The module at top controls execution by “calling” lower level modules

Modular programming

Similar to top-down programming

One program calls other programs to work together as single system

Page 51: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

51

Top-Down or Modular Programming

Page 52: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Structured Design52

What the set of programs should be What each program should accomplish How the programs should be organized

into a hierarchy

Page 53: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Main Principles of Structured Design

53

Loosely coupled – module is independent of other modules

Highly cohesive – module has one clear task

Page 54: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

54

Structure Chart Created Using Structured Design Technique

Page 55: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Structured Analysis55

Define what system needs to do (processing requirements)

Define data system needs to store and use (data requirements)

Define inputs and outputs Define how functions work together to

accomplish tasks Data flow diagrams (DFD) and entity

relationship diagrams (ERD) show results of structured analysis

Page 56: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

56

Data Flow Diagram (DFD)

Page 57: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

57

Entity-Relationship Diagram (ERD)

Page 58: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

58

Framework of Structured Development

Page 59: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Information Engineering (IE)59

Refinement to structured development

Methodology with strategic planning, data modeling, automated tools focus

More rigorous and complete than SADT

Industry merged key concepts from structured development and information engineering approaches into traditional approach

Page 60: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

2- Object Oriented Approach

60

Page 61: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Object-Oriented Approach61

Completely different approach to information systems

Views information system as collection of interacting objects that work together to accomplish tasks Objects – things in computer system that can

respond to messages Conceptually, no processes, programs, data

entities, or files are defined – just objects OO languages: Java, C++, C# .NET,

VB .NET

Page 62: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Object-oriented Analysis anddesign (OOAD) OOAD essential for creating well-

designed, & maintainable software system using

All Software Analysis and Design is preceded by the analysis of requirements.

62

Page 63: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Terminologies of O-O Approach

63

Object-oriented analysis (OOA) Object-oriented design (OOD) Object-oriented programming (OOP)

Page 64: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

OOA - OOD - OOPAnalysis

Design

Implementation

“Baseball Model”

64

Page 65: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Object-oriented analysis (OOA)

65

Defines types of objects users deal with Shows use cases are required to complete tasks How to get understanding of what we want to

build investigation of the problem (rather than how a solution is defined)

During OOD, there is an emphasis on finding and describing the objects (or concepts) in the problem domain.

For example, concepts in a Library Information System include: Book, and Catalog.

Page 66: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

66

Class Diagram Created During OO Analysis

Page 67: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Ex: Use Case (Analysis)

Start from requirements Describe response of system to events

– Normal flow of action– Error and exception handling

Can implement tests to check use cases

Can be quite formal– UML diagrams

67

Page 68: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Use Case Summary

Create use cases from requirements– Response of system to events– Normal and errors/exceptions

Leads to tests– Map use cases to tests

Use cases are not designs– That's how you manage to satisfy the

tests derived from use cases

68

Page 69: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Object-oriented design (OOD)

69

Defines object types needed to communicate with people and devices in system

Shows how objects interact to complete tasks

Refines each type of object for implementation with specific language of environment

UML is used in this phase

Page 70: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

OOD: Object Oriented Design

• Emphasizes a conceptual solution that fulfils the

requirements specified in the analysis.

• Need to define software objects and how they

collaborate to fulfill the requirements.

• For example, in the Library Information System, a

Book object may have a title attribute and a

display() method.

• Designs are implemented in a programming

language.

•In the example, we will have a Book class in Java.

70

Page 71: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Analysis vs. Design

– Discovery - Invention– What? - How?– Physical - Logical

71

Page 72: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Object-oriented programming (OOP)

72

Writing statements in programming language to define what each type of object does

OO Programming Language (e.g. C++, Java,

smalltalk, …)

Page 73: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

OOP: Object-Oriented Programming

• During Implementation, or Object-Oriented Programming, design objects are implemented, such as a book class in Java.

• Implementation is also known as Coding or Construction.

73

Page 74: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Objects

concepts, concrete or abstract, with meaning derived from the problem domain “the real world”

provide a basis for implementation encapsulation of state (data values) and

behavior (operations)

74

Page 75: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Objects (cont.)

Exhibit behavior by invoking a method in response to a message

instances of classes an object-oriented program is a

collection of autonomous interacting and collaborating objects

75

Page 76: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Classes objects sharing common

characteristics dictate the behavior of the object contain

state: attributes, fields, variables, data member

behavior: functions, methods, function member

76

Page 77: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

3 Pillars of Object-Orientation encapsulation

inheritance

polymorphism

77

Page 78: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Encapsulation

combination of state and behavior implementation details are hidden

internally internal mechanisms can change while

public interfaces remain stable state may be retrieved using public

methods behavior consists of methods activated

by receipt of messages

78

Page 79: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Inheritance organization of classes into a hierarchical

inheritance tree data and behavior associated with

classes higher in the tree are accessible to those classes lower in the tree

terminology ancestor/descendant superclass/subclass generalization/specialization

79

Page 80: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Another Inheritance Diagram

80

Page 81: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Polymorphism

polymorphism: many forms localizes responsibility for behavior object automatically uses correct

implementation for a method many objects can respond to the same

message minimizes interface parameter passing

81

Page 82: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Polymorphism

treat many types (all derived from the same type) as if they were all one type

single piece of interface works on all these types

82

Page 83: INTRODUCTION TO SYSTEM ANALYSIS AND DESIGN 1. Information System 2

Polymorphism Example83