System Analysis and Design System Analysis Approaches Shikuku

  • Slides: 45
Download presentation
System Analysis and Design: System Analysis Approaches Shikuku S. Eric Munyiri Vitalis Odinga

System Analysis and Design: System Analysis Approaches Shikuku S. Eric Munyiri Vitalis Odinga

System Analysis Systems analysis defines the problems to be solved and provides the architecture

System Analysis Systems analysis defines the problems to be solved and provides the architecture of the proposed system. The terms analysis and synthesis come from Greek where they mean respectively "to take apart" and "to put together". Analysis is defined as the procedure by which we break down an intellectual or substantial whole into parts. Synthesis is defined as the procedure by which we combine separate elements or components in order to form a coherent whole.

System Analysis n System analysis is an explicit formal inquiry carried out to help

System Analysis n System analysis is an explicit formal inquiry carried out to help a decision maker identify a better course of action and make a better decision than he might otherwise have made. n Systems analysis is a problem-solving technique that decomposes a system into its component pieces for the purpose of studying how well those component parts work and interact to accomplish their purpose.

System Analysis n This is a process used in the design of new systems.

System Analysis n This is a process used in the design of new systems. Systems analysis follows stages of investigation, design and implementation. n Each stage should involve close consultation with potential users, in the various functional areas of the organisation, to ensure that their information and operational requirements are met.

When to use system analysis and design n To correct problem in existing system

When to use system analysis and design n To correct problem in existing system n To improve existing system n Usher in a new system n Outside group may mandate change n Competition can lead to change

System Project Overview n Scope Definition Is the project worth looking at? n Problem

System Project Overview n Scope Definition Is the project worth looking at? n Problem Analysis Is a new system worth building? n Requirements Analysis What do the users need and want from the new system? n Logical Design What must the new system do? n Decision Analysis What is the best solution?

SWOT Analysis for System Project Possible IT Strengths Possible IT Weaknesses - Excellent Web

SWOT Analysis for System Project Possible IT Strengths Possible IT Weaknesses - Excellent Web design staff - Still using several legacy systems - Low systems analyst turnover - Budget increase was turned down - Recently upgraded network - Documentation needs updating Possible IT Opportunities Possible IT Threats - Well-position for expansion - Aggressive new Web competition - Can be first with new software - Impact of new government rules - High potential for B 2 B growth - Other firms offer better benefits

System Analysis Techniques Logical data modeling This is the process of identifying, modeling and

System Analysis Techniques Logical data modeling This is the process of identifying, modeling and documenting the data requirements of the system being designed. The data are separated into entities (things about which a business needs to record information) and relationships (the associations between the entities). Data Flow Modeling This is the process of identifying, modeling and documenting how data moves around an information system. Data Flow Modeling examines processes (activities that transform data from one form to another), data stores (the holding areas for data), external entities (what sends data into a system or receives data from a system), and data flows (routes by which data can flow). Entity Behavior Modeling This is the process of identifying, modeling and documenting the events that affect each entity and the sequence in which these events occur.

Reasons for systems projects Improved service n Better performance n More information n Stronger

Reasons for systems projects Improved service n Better performance n More information n Stronger controls n Reduced cost n

Factors that affect systems projects n Internal Factors n Strategic plan n Top managers

Factors that affect systems projects n Internal Factors n Strategic plan n Top managers n User requests n Information technology department n Existing systems n External Factors n Technology n Supplier n Customers n Technology n Competitors n The economy n Government

Systems Development Life Cycle Feasibility Study Measure of how suitable system development will be

Systems Development Life Cycle Feasibility Study Measure of how suitable system development will be to the company Technical feasibility Operational feasibility The four feasibility tests Economic feasibility (cost-benefit analysis) Schedule (Time) feasibility

Participants

Participants

Systems Development Life Cycle (SDLC) n The SDLC in system analysis and design aims

Systems Development Life Cycle (SDLC) n The SDLC in system analysis and design aims to produce a high quality system that meets or exceeds customer expectations, reaches completion within time and cost estimates, works effectively and efficiently in the current and planned Information Technology infrastructure, and is inexpensive to maintain and cost-effective to enhance.

Systems Development Life Cycle (SDLC)

Systems Development Life Cycle (SDLC)

Systems Development Life Cycle Phase 1. Planning ØReview project requests ØPrioritize project requests ØAllocate

Systems Development Life Cycle Phase 1. Planning ØReview project requests ØPrioritize project requests ØAllocate resources ØIdentify project development team ØIdentifying business value ØAnalyze feasibility ØDevelop work plan ØStaff the project ØControl and direct project

Systems Development Life Cycle Phase 2. Analysis Ø Conduct preliminary investigation. Ø Determine exact

Systems Development Life Cycle Phase 2. Analysis Ø Conduct preliminary investigation. Ø Determine exact nature of problem or improvement and whether it Ø Ø Ø Ø is worth pursuing. Findings are presented in feasibility report (feasibility study) Perform detailed analysis activities: Study current system Ø Determine user requirements Ø Recommend solution Analysis strategy Gathering business requirements Requirements definition Process modeling Data modeling

Systems Development Life Cycle Phase 3. Design Ø Assesses feasibility of each alternative solution

Systems Development Life Cycle Phase 3. Design Ø Assesses feasibility of each alternative solution Ø How system will be developed Ø Recommends the most feasible solution Ø Design selection Ø Architecture design Ø Interface design Ø Data storage design Ø Program design

Systems Development Life Cycle Phase 4. Implementation Ø Construction Program building Develop programs ü

Systems Development Life Cycle Phase 4. Implementation Ø Construction Program building Develop programs ü Install and test new system ü Program and system testing Ø Installation ü Conversion strategy ü Training plan ü Convert to new system ü Support plan ü

Systems Development Life Cycle Phase 5. Support and Maintenance Ø Conduct post-implementation system review

Systems Development Life Cycle Phase 5. Support and Maintenance Ø Conduct post-implementation system review Ø Identify errors and enhancements Ø Monitor system performance

Requirements Analysis Information Discovery The process of collecting information about system problems, opportunities, solution

Requirements Analysis Information Discovery The process of collecting information about system problems, opportunities, solution requirements, and priorities

Information Discovery n Review and sampling of existing documentation, reports, forms, databases, etc n

Information Discovery n Review and sampling of existing documentation, reports, forms, databases, etc n Interview n Joint-application design (JAD) session n Joint requirement planning (JRP) n Research of relevant literature n Observation of the current system n Questionnaires and surveys

Product Information Discovery References from vendor n Talk to current users of product n

Product Information Discovery References from vendor n Talk to current users of product n Product demonstrations n Trial version of software n Benchmark test measures performance n

Information Discovery Joint requirements planning (JRP) The use of facilitated workshops to bring together

Information Discovery Joint requirements planning (JRP) The use of facilitated workshops to bring together all of the system owners, users, and analysts, and some systems designer and builders to jointly perform systems analysis. JRP is generally considered a part of a larger method called joint application development (JAD), a more comprehensive application of the JRP techniques to the entire systems development process.

Benefits of JRP/JAD n Saves Time: It reduces the number of interviews n n

Benefits of JRP/JAD n Saves Time: It reduces the number of interviews n n needed to gather the requirements and reduces discrepancies. Everyone is in the room. Saves Money: Fewer change requests, eliminates re works. Increased user buy in: users participation creates ownership of the system. Better Requirements Documentation: Higher Customer Satisfaction: Customer knows at what stage the product is. The system meets customer needs.

Systems Development Life Cycle Strengths n Control. n Monitor large projects. n Detailed steps.

Systems Development Life Cycle Strengths n Control. n Monitor large projects. n Detailed steps. n Evaluate costs and completion targets. n Documentation. n Well defined user input. n Ease of maintenance. n Development and design standards. n Tolerates changes in MIS staffing. Weaknesses n Increased development time. n Increased development cost. n Systems must be defined up front. n Rigidity. n Hard to estimate costs, project overruns. n User input is sometimes limited.

System Analysis Methodologies n Lifecycle/waterfall approach, n CASE tools, n Prototype, n RAD/RSD, n

System Analysis Methodologies n Lifecycle/waterfall approach, n CASE tools, n Prototype, n RAD/RSD, n JAD, n Object-oriented methodology.

Waterfall

Waterfall

Waterfall n A sequence of stages in which the output of each stage becomes

Waterfall n A sequence of stages in which the output of each stage becomes the input for the next. n In the waterfall model, it is possible to rework earlier stages in the light of experience gained at a later stage. Each stage is signed off and the next stage is proceeded with. However the end user is rarely involved in the development stage, even though they may well be involved in signing off. n It is therefore critical that the analysts and the programmers understand the end-users’ requirements. n This can be quite difficult with the waterfall model.

Waterfall Benefits n Misunderstandings are detected at early stages n Identifies systems requirements long

Waterfall Benefits n Misunderstandings are detected at early stages n Identifies systems requirements long before n n programming begins The user will notice any missing functions, incomplete or inconsistent requirements. Minimizes changes to requirements as project progresses. Can be built quickly to demonstrate systems It can be used for training before the system is finished

Waterfall Shortcoming n Design must be specified on paper before programming begins n Long

Waterfall Shortcoming n Design must be specified on paper before programming begins n Long time between system proposal and delivery of new system n The waterfall model has disadvantages, which can be overcome using Prototyping, in which a model of the system is developed in partnership with the end-user. n The features are worked out with the end user using a prototype, and the end user can have a considerable input into the development of a project.

Rapid Application Development (RAD) Utilizes prototyping to delay producing system design until after user

Rapid Application Development (RAD) Utilizes prototyping to delay producing system design until after user requirements are clear n Phased development Ø A series of versions developed sequentially n Prototyping Ø System prototyping n Throw-away prototyping Ø Design prototyping

Phased Development

Phased Development

Prototyping n A small-scale, incomplete, but working sample of a desired system. n Working

Prototyping n A small-scale, incomplete, but working sample of a desired system. n Working model of proposed system n Building a scaled-down working version of the system n Advantages: n n Users are involved in design Captures requirements in concrete form

Prototyping

Prototyping

Prototyping

Prototyping

Prototyping Benefits n Users interact with prototype very quickly n Users can identify needed

Prototyping Benefits n Users interact with prototype very quickly n Users can identify needed changes and refine real requirements Shortcoming n Tendency to do superficial analysis n Initial design decisions may be poor

Throwaway Prototyping

Throwaway Prototyping

Throwaway Prototyping Benefits n Risks are minimized n Important issues are understood before the

Throwaway Prototyping Benefits n Risks are minimized n Important issues are understood before the real system is built Shortcoming n May take longer than prototyping

Joint Application Design (JAD) Users, Managers and Analysts work together for several days n

Joint Application Design (JAD) Users, Managers and Analysts work together for several days n System requirements are reviewed n Structured meetings n

Agile method n The integration of various approaches of systems analysis and design for

Agile method n The integration of various approaches of systems analysis and design for applications as deemed appropriate to the problem being solved and the system being developed.

Agile

Agile

Agile Benefits n Fast delivery of results n Works well in projects with undefined

Agile Benefits n Fast delivery of results n Works well in projects with undefined or changing requirements Shortcoming n Requires discipline n Works best in small projects n Requires much user input

Selecting the Appropriate Methodology n Clear user requirements n Familiarity with technology n Complexity

Selecting the Appropriate Methodology n Clear user requirements n Familiarity with technology n Complexity of system n Reliability of system n Time schedule n Schedule visibility

References 1. Systems development life-cycle. From Wikipedia, the free encyclopedia. http: //en. wikipedia. org/wiki/Systems_development_life-cycle

References 1. Systems development life-cycle. From Wikipedia, the free encyclopedia. http: //en. wikipedia. org/wiki/Systems_development_life-cycle 2. Project management. From Wikipedia, the free encyclopedia. http: //en. wikipedia. org/wiki/Project_life_cycle#Project_development_stages 3. Boehm, B. W. (1988). A Spiral Model of Software Development and Enhancement, Computer, May 4. De. Marco, T. (1978). Structured Analysis and System Specification, Prentice. Hall 5. Systems Analysis and Design, by Wiley