Presentation on theme: "System Analysis and Design: System Analysis Approaches Shikuku S. Eric Munyiri Vitalis Odinga."— Presentation transcript:
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 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 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. 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 This is a process used in the design of new systems. Systems analysis follows stages of investigation, design and implementation. 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 To correct problem in existing system To improve existing system Usher in a new system Outside group may mandate change Competition can lead to change
System Project Overview Scope Definition Is the project worth looking at? Problem Analysis Is a new system worth building? Requirements Analysis What do the users need and want from the new system? Logical Design What must the new system do? Decision Analysis What is the best solution?
SWOT Analysis for System Project Possible IT Strengths - Excellent Web design staff - Low systems analyst turnover - Recently upgraded network Possible IT Weaknesses - Still using several legacy systems - Budget increase was turned down - Documentation needs updating Possible IT Opportunities - Well-position for expansion - Can be first with new software - High potential for B2B growth Possible IT Threats - Aggressive new Web competition - Impact of new government rules - Other firms offer better benefits
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 Better performance More information Stronger controls Reduced cost
Factors that affect systems projects Internal Factors Strategic plan Top managers User requests Information technology department Existing systems External Factors Technology Supplier Customers Technology Competitors The economy Government
Systems Development Life Cycle Feasibility Study Measure of how suitable system development will be to the company The four feasibility tests Operational feasibility Schedule (Time) feasibility Economic feasibility (cost- benefit analysis) Technical feasibility
Systems Development Life Cycle (SDLC) 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 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 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 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 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 Identify errors and enhancements Monitor system performance
Requirements Analysis Information Discovery The process of collecting information about system problems, opportunities, solution requirements, and priorities
Information Discovery Review and sampling of existing documentation, reports, forms, databases, etc Interview Joint-application design (JAD) session Joint requirement planning (JRP) Research of relevant literature Observation of the current system Questionnaires and surveys
Product Information Discovery References from vendor Talk to current users of product Product demonstrations Trial version of software Benchmark test measures performance
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 Saves Time: It reduces the number of interviews 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 Control. Monitor large projects. Detailed steps. Evaluate costs and completion targets. Documentation. Well defined user input. Ease of maintenance. Development and design standards. Tolerates changes in MIS staffing. Weaknesses Increased development time. Increased development cost. Systems must be defined up front. Rigidity. Hard to estimate costs, project overruns. User input is sometimes limited.
System Analysis Methodologies Lifecycle/waterfall approach, CASE tools, Prototype, RAD/RSD, JAD, Object-oriented methodology.
A sequence of stages in which the output of each stage becomes the input for the next. 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. It is therefore critical that the analysts and the programmers understand the end-users’ requirements. This can be quite difficult with the waterfall model.
Waterfall Benefits Misunderstandings are detected at early stages Identifies systems requirements long before 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 Design must be specified on paper before programming begins Long time between system proposal and delivery of new system 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. 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 requirements are clear Phased development A series of versions developed sequentially Prototyping System prototyping Throw-away prototyping Design prototyping
Prototyping A small-scale, incomplete, but working sample of a desired system. Working model of proposed system Building a scaled-down working version of the system Advantages: Users are involved in design Captures requirements in concrete form
Benefits Users interact with prototype very quickly Users can identify needed changes and refine real requirements Shortcoming Tendency to do superficial analysis Initial design decisions may be poor
Benefits Risks are minimized Important issues are understood before the real system is built Shortcoming May take longer than prototyping
Joint Application Design (JAD) Users, Managers and Analysts work together for several days System requirements are reviewed Structured meetings
Agile method 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.
Benefits Fast delivery of results Works well in projects with undefined or changing requirements Shortcoming Requires discipline Works best in small projects Requires much user input
Selecting the Appropriate Methodology Clear user requirements Familiarity with technology Complexity of system Reliability of system Time schedule Schedule visibility
References 1. Systems development life-cycle. From Wikipedia, the free encyclopedia Project management. From Wikipedia, the free encyclopedia Boehm, B. W. (1988). A Spiral Model of Software Development and Enhancement, Computer, May 4. DeMarco, T. (1978). Structured Analysis and System Specification, Prentice- Hall 5. Systems Analysis and Design, by Wiley