Presentation on theme: "System Analysis and Design: System Analysis Approaches"— Presentation transcript:
1System Analysis and Design: System Analysis Approaches Shikuku S.Eric MunyiriVitalis Odinga
2System AnalysisSystems 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.
3System AnalysisSystem 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.
4System AnalysisThis 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.
5When to use system analysis and design To correct problem in existing systemTo improve existing systemUsher in a new systemOutside group may mandate changeCompetition can lead to change
6System Project Overview Scope DefinitionIs the project worth looking at?Problem AnalysisIs a new system worth building?Requirements AnalysisWhat do the users need and want from the new system?Logical DesignWhat must the new system do?Decision AnalysisWhat is the best solution?
8SWOT Analysis for System Project Possible IT StrengthsExcellent Web design staffLow systems analyst turnoverRecently upgraded networkPossible IT WeaknessesStill using several legacy systemsBudget increase was turned downDocumentation needs updatingPossible IT OpportunitiesWell-position for expansionCan be first with new softwareHigh potential for B2B growthPossible IT ThreatsAggressive new Web competitionImpact of new government rulesOther firms offer better benefits
9System Analysis Techniques Logical data modelingThis 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 ModelingThis 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 ModelingThis is the process of identifying, modeling and documenting the events that affect each entity and the sequence in which these events occur.
10Reasons for systems projects Improved serviceBetter performanceMore informationStronger controlsReduced cost
11Factors that affect systems projects Internal FactorsStrategic planTop managersUser requestsInformation technology departmentExisting systemsExternal FactorsTechnologySupplierCustomersCompetitorsThe economyGovernment
12Systems Development Life Cycle Feasibility Study Measure of how suitable system development will be to the company
14Systems 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.
16Systems Development Life Cycle Phase 1. Planning Review project requestsPrioritize project requestsAllocate resourcesIdentify project development teamIdentifying business valueAnalyze feasibilityDevelop work planStaff the projectControl and direct project
17Systems 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 systemDetermine user requirementsRecommend solutionAnalysis strategyGathering business requirementsRequirements definitionProcess modelingData modeling
18Systems Development Life Cycle Phase 3. Design Assesses feasibility of each alternative solutionHow system will be developedRecommends the most feasible solutionDesign selectionArchitecture designInterface designData storage designProgram design
19Systems Development Life Cycle Phase 4. Implementation ConstructionProgram building Develop programsInstall and test new systemProgram and system testingInstallationConversion strategyTraining planConvert to new systemSupport plan
20Systems Development Life Cycle Phase 5. Support and Maintenance Conduct post-implementation system reviewIdentify errors and enhancementsMonitor system performance
21Requirements Analysis Information Discovery The process of collecting information about system problems, opportunities, solution requirements, and priorities
22Information Discovery Review and sampling of existing documentation, reports, forms, databases, etcInterviewJoint-application design (JAD) sessionJoint requirement planning (JRP)Research of relevant literatureObservation of the current systemQuestionnaires and surveys
23Product Information Discovery References from vendorTalk to current users of productProduct demonstrationsTrial version of softwareBenchmark test measures performance
24Information 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.
25Benefits of JRP/JADSaves 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.
26Systems Development Life Cycle StrengthsControl.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.WeaknessesIncreased development time.Increased development cost.Systems must be defined up front.Rigidity.Hard to estimate costs, project overruns.User input is sometimes limited.
29WaterfallA 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.
30Waterfall Benefits Misunderstandings are detected at early stages Identifies systems requirements long before programming beginsThe user will notice any missing functions, incomplete or inconsistent requirements.Minimizes changes to requirements as project progresses.Can be built quickly to demonstrate systemsIt can be used for training before the system is finished
31Waterfall Shortcoming Design must be specified on paper before programming beginsLong time between system proposal and delivery of new systemThe 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.
32Rapid Application Development (RAD) Utilizes prototyping to delay producing system design until after user requirements are clearPhased developmentA series of versions developed sequentiallyPrototypingSystem prototypingThrow-away prototypingDesign prototyping
34Prototyping Building a scaled-down working version of the system A small-scale, incomplete, but working sample of a desired system.Working model of proposed systemBuilding a scaled-down working version of the systemAdvantages:Users are involved in designCaptures requirements in concrete form
37Prototyping Benefits Users interact with prototype very quickly Users can identify needed changes and refine real requirementsShortcomingTendency to do superficial analysisInitial design decisions may be poor
43Agile Benefits Fast delivery of results Works well in projects with undefined or changing requirementsShortcomingRequires disciplineWorks best in small projectsRequires much user input
44Selecting the Appropriate Methodology Clear user requirementsFamiliarity with technologyComplexity of systemReliability of systemTime scheduleSchedule visibility
45ReferencesSystems 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, MayDeMarco, T. (1978). Structured Analysis and System Specification, Prentice-HallSystems Analysis and Design, by Wiley