Different Approaches To Sys Bldg

916 views
852 views

Published on

MOdule 10 report

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
916
On SlideShare
0
From Embeds
0
Number of Embeds
89
Actions
Shares
0
Downloads
74
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Different Approaches To Sys Bldg

  1. 1. DIFFERENT APPROACHES TO SYSTEMS BUILDING
  2. 2. System Lifecycle <ul><li>The traditional systems lifecycle is a formal methodology for managing the development of systems and is still the principal methodology for medium and large projects. </li></ul><ul><li>It is the process by which an existing system is replaced with another. </li></ul><ul><li>Why a new System? </li></ul><ul><ul><ul><ul><li>The current may no longer suitable to its purposes. </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Technological developments may have made the current system redundant or outdated. </li></ul></ul></ul></ul><ul><ul><ul><ul><li>The current system may be too inflexible or expensive to maintain. </li></ul></ul></ul></ul>
  3. 3. System Lifecycle <ul><li>The SYSTEMS LIFE CYCLE  is a term used to describe the stages in an IT project.  These are: </li></ul><ul><ul><ul><ul><ul><li>Definition of the problem </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Feasibility Study </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Investigation and Analysis </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Design </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Development (programming) </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Testing </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Implementation </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Evaluation </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Maintenance </li></ul></ul></ul></ul></ul>
  4. 4. System Lifecycle
  5. 5. System Lifecycle <ul><li>Definition of the Problem </li></ul><ul><ul><li>Some formal effort is made to define exactly what is the problem. </li></ul></ul><ul><ul><li>Methods of Defining a Problem </li></ul></ul><ul><ul><li>Interview employees about their issues with the current system. </li></ul></ul><ul><ul><li>Analyzing the total costs of the current system. </li></ul></ul><ul><ul><li>Key external factors that may point towards developing a new system. </li></ul></ul><ul><ul><li>Performance of the existing system. </li></ul></ul>
  6. 6. System Lifecycle <ul><li>Feasibility Study Phase </li></ul><ul><ul><li>In this phase, alternative solutions are examined.  The costs benefits are compared in order to see which would best suit the company taking into consideration their requirements and the funds available.  In order to arrive at a final decision, sometimes a trade-off has to be accepted e.g. less functionality for less cash. </li></ul></ul><ul><li>Investigation and Analysis </li></ul><ul><ul><li>The investigation part confirms that the true cause of the problem has been correctly defined. </li></ul></ul><ul><ul><li>The next part is to carefully analyze how the existing system works: Not necessarily the hardware or software - but more about how information is handled and how people interact with it. </li></ul></ul>
  7. 7. System Lifecycle <ul><li>Design Phase </li></ul><ul><ul><li>The data inputs and outputs. </li></ul></ul><ul><ul><li>Screen layouts. </li></ul></ul><ul><ul><li>Any documents that are printed out. </li></ul></ul><ul><ul><li>What happens to the data as it flows through the system (procedures). </li></ul></ul><ul><ul><li>The operating system to be used. </li></ul></ul><ul><ul><li>The hardware to be used. </li></ul></ul>
  8. 8. System Lifecycle <ul><li>Development (Programming) </li></ul><ul><ul><li>The development stage is about taking the design forward and putting it into practice. </li></ul></ul><ul><ul><li>At this stage the following things may take place(depending on the how extensive the project is) : </li></ul></ul><ul><ul><li>The software developers write code . </li></ul></ul><ul><ul><li>The hardware people develop equipment. </li></ul></ul><ul><ul><li>The testing team develop test plans. </li></ul></ul><ul><ul><li>The user-testing groups follow the test plans and check that the system works as expected.  If not an error report is sent to the developers and corrections are made.  The test is then performed again. </li></ul></ul>
  9. 9. System Lifecycle <ul><li>Implementation </li></ul><ul><ul><li>The system has been developed and tested.  It is working correctly and doing everything that was agreed during the design stage.  </li></ul></ul><ul><ul><li>The key events in this stage are: </li></ul></ul><ul><ul><li>Data Conversion </li></ul></ul><ul><ul><li>Data stored in files on the old system are now converted into the correct format for the new system. </li></ul></ul><ul><ul><li>System-Change Over </li></ul></ul><ul><ul><li>Switch off the old system and turn on the new. </li></ul></ul>
  10. 10. System Lifecycle <ul><li>Evaluation </li></ul><ul><ul><li>In this stage, two key questions are considered: </li></ul></ul><ul><ul><ul><li>Does the finished solution meet its requirements? </li></ul></ul></ul><ul><ul><ul><li>Does it solve the problem? </li></ul></ul></ul><ul><li>Maintenance </li></ul><ul><ul><li>At this stage the following takes place: </li></ul></ul><ul><ul><ul><li>Problems are cleared as they arise. </li></ul></ul></ul><ul><ul><ul><li>Data is backed up and kept safe. </li></ul></ul></ul><ul><ul><ul><li>Printers, Monitors and other equipment are replaced as required. </li></ul></ul></ul>
  11. 12. <ul><li>Prototyping </li></ul><ul><li>Application Software Packages </li></ul><ul><li>End-user Development </li></ul><ul><li>Outsourcing </li></ul>
  12. 13. Prototyping process of building experimental system to demonstrate, evaluate approach. an iterative process best for design of end-user interface
  13. 14. Steps in Prototyping: Prototyping <ul><li>Identify User’s Requirements </li></ul>3. Use Prototype 2. Develop Prototype 4. Revise & Enhance Prototype
  14. 15. Application Software Packages prewritten, precoded application software, commercially available for sale/lease customization geared to common requirements
  15. 16. Modifying Software Package to meet organization’s unique requirements without destroying the integrity of package Application Software Packages Customization Raises Development Cost
  16. 17. Effects of Customizing Software on Total Implementation Costs Application Software Packages 0 2 4 6 8 10 0.5 1 2 3 4 5 % LINES OF CODE CONVERTED TOTAL IMPLEMENTATION COSTS
  17. 18. <ul><li>DESCRIPTION (PRESENT, PROPOSED) </li></ul><ul><li>RELIABILITY </li></ul><ul><li>BACKUP </li></ul><ul><li>SERVICES </li></ul><ul><li>SYSTEM SPECIFICATIONS </li></ul><ul><li>CRITERIA </li></ul><ul><li>DEMONSTRATION (PROTOTYPE) </li></ul><ul><li>SCHEDULE (BENCH MARKS) </li></ul><ul><li>PRICE (PENALTIES) </li></ul><ul><li>SPECIFIC QUESTIONS </li></ul><ul><li>PROCEDURES FOR RESPONSE </li></ul>Request For Proposal (RFP) Application Software Packages
  18. 19. End-User Development end-users develop information system with little help from technical specialists using 4 th generation tools
  19. 20. End-User Development <ul><li>Improved requirements determination </li></ul><ul><li>Increased user involvement and satisfaction </li></ul><ul><li>Reduced Application backlog </li></ul>Weaknesses Strengths <ul><li>Relatively inefficient </li></ul><ul><li>Slow transaction processing </li></ul><ul><li>Large files can degrade performance </li></ul><ul><li>Nonprocedural approach may hamper logic & updating requirements </li></ul>
  20. 21. Information Center <ul><li>Special facility within organization </li></ul><ul><li>Provides training, support for end-user-computing </li></ul>End-User Development Managing End-User Development
  21. 22. “ Outsourcing”
  22. 23. Outsourcing <ul><ul><li>is the process of turning over an organization’s computer center operations, telecommunications networks, or applications development to external vendors who provide these service. </li></ul></ul>
  23. 24. When to Outsource? <ul><ul><li>To reduce costs or offload some of the work of the information systems department </li></ul></ul><ul><ul><li>When the firm’s existing information system capabilities are limited </li></ul></ul><ul><ul><li>To improve the contribution of information technology to business performance </li></ul></ul>
  24. 25. System Building Methodologies
  25. 26. Structured Methodologies <ul><li>is used to structure, plan, and control the process of developing an information system </li></ul>
  26. 27. Structured Analysis <ul><li>is a set of techniques and graphical tools used by the analyst for applying a systematic approach to systems analysis </li></ul><ul><li>Data flow diagram </li></ul><ul><ul><li>- graphical display of component processes, flow of data </li></ul></ul><ul><li>Data dictionary </li></ul><ul><ul><li>- controlled definitions of descriptions of all data, such as variable names & types of data </li></ul></ul>
  27. 28. Structured Design <ul><ul><li>Design rules / techniques to design system </li></ul></ul><ul><ul><ul><li>Discipline to organize, code programs </li></ul></ul></ul><ul><ul><ul><li>Simplifies control paths </li></ul></ul></ul><ul><ul><ul><li>Easy to understand, modify </li></ul></ul></ul><ul><ul><ul><li>Module has one input, one output </li></ul></ul></ul>Structured Programming
  28. 29. PROGRAM FLOWCHART SYMBOLS: BEGIN OR END DIRECTION PROCESS DECISION INPUT OR OUTPUT SUBROUTINE MANUAL OPERATION CONNECTOR
  29. 30. PROGRAM FLOWCHART: PROCESS A PROCESS B SEQUENCE PROCESS C PROCESS D R TRUE SELECTION PROCESS E S TRUE ITERATION
  30. 31. This flowchart shows the software development cycle. You basically design the system, code it and test it. When an error is found, it must be determined whether the error is a design error or not. Coding errors can quickly be fixed, but design errors may take longer. 
  31. 32. OBJECT – ORIENTED SOFTWARE DEVELOPMENT <ul><li>Includes </li></ul><ul><ul><ul><li>OOA ( Object Oriented Analysis ) </li></ul></ul></ul><ul><ul><ul><li>OOD ( Object Oriented Design ) </li></ul></ul></ul>
  32. 33. OBJECT – ORIENTED SOFTWARE DEVELOPMENT <ul><li>Practical method of developing a software system which focuses on the objects of a problem throughout development. </li></ul>
  33. 34. COMPUTER-AIDED SOFTWARE DEVELOPMENT <ul><li>meant to result in HIGH-QUALITY, DEFECT FREE, and maintainable software products. </li></ul><ul><li>together with automated tools that can be used in the software development process. </li></ul>
  34. 35. <ul><li>TOOLS: </li></ul><ul><li>Configuration Management Tools </li></ul><ul><li>Data Modeling Tools </li></ul><ul><li>Model Transformation Tools </li></ul><ul><li>Program Transformation Tools </li></ul><ul><li>Refactoring Tools </li></ul><ul><li>Source Code Generation Tools </li></ul><ul><li>Unified Modeling Tools </li></ul>COMPUTER-AIDED SOFTWARE DEVELOPMENT
  35. 36. SOFTWARE REENGINEERING <ul><li>A practical solution for the problem of evolving existing computing systems. </li></ul><ul><li>Reverse Engineering </li></ul><ul><li>- often involves taking something apart and analyzing its workings in detail to be used in maintenance. </li></ul><ul><li>Forward Engineering </li></ul><ul><li>- it starts with the initial conditions and designing a solution that produces the desired results. </li></ul>
  36. 37. SOFTWARE REENGINEERING <ul><li>-“The examination and alteration of the system to reconstitute it in a new form.” </li></ul><ul><li>-To enable developers to construct systems that operate reliably despite this complexity. </li></ul><ul><li>=) </li></ul>

×