1 / 36

Lecture 12

Lecture 12. SYSTEMS DEVELOPMENT. DEVLOPING SOFTWARE. Software that is built correctly can transform as the organization and its business transforms Software that effectively meets employee needs will help an organization become more productive and enhance decision making

lynde
Télécharger la présentation

Lecture 12

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 12 SYSTEMS DEVELOPMENT

  2. DEVLOPING SOFTWARE • Software that is built correctly can transform as the organization and its business transforms • Software that effectively meets employee needs will help an organization become more productive and enhance decision making • Software that does not meet employee needs may have a damaging effect on productivity and can even cause a business to fail

  3. DEVELOPING SOFTWARE • As organizations’ reliance on software grows, so do the business-related consequences of software successes and failures including: • Increase or decrease revenue • Repair or damage to brand reputation • Prevent or incur liabilities • Increase or decrease productivity

  4. THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC) • Systems development life cycle (SDLC) – the overall process for developing information systems from planning and analysis through implementation and maintenance

  5. THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC) • Planning phase – involves establishing a high-level plan of the intended project and determining project goals • Analysis phase – involves analyzing end-user business requirements and refining project goals into defined functions and operations of the intended system • Business requirement – detailed set of business requests that the system must meet in order to be successful

  6. THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)) • Design phase – involves describing the desired features and operations of the system including screen layouts, business rules, process diagrams, pseudo code, and other documentation • Development phase – involves taking all of the detailed design documents from the design phase and transforming them into the actual system

  7. THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC) • Testing phase – involves bringing all the project pieces together into a special testing environment to test for errors, bugs, and interoperability and verify that the system meets all of the business requirements defined in the analysis phase • Implementation phase – involves placing the system into production so users can begin to perform actual business operations with the system

  8. THE SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC) • Maintenance phase – involves performing changes, corrections, additions, and upgrades to ensure the system continues to meet the business goals

  9. SOFTWARE DEVELOPMENT METHODOLOGIES • There are a number of different software development methodologies including: • Waterfall: a sequential, activity-based process • Rapid application development (RAD): extensive user involvement in the rapid and evolutionary construction of working prototypes • Extreme programming breaks a project into tiny phases • Agile: a form of XP, aims for customer satisfaction through early and continuous delivery of useful software components

  10. Waterfall Methodology • Waterfall methodology – really low success rate – 1 in 10… What happens when plans or needs change?

  11. Rapid Application Development Methodology (RAD) • RAD is a more popular route for system development projects and has a much higher success rate • The fundamentals of RAD include: • Focus initially on creating a prototype that looks and acts like the desired system • Actively involve system users in the analysis, design, and development phases • Accelerate collecting the business requirements through an interactive and iterative construction approach • Prototype – a smaller-scale representation or working model of the users’ requirements or a proposed design for an information system

  12. Extreme Programming Methodology • Extreme programming (XP) methodology – The primary difference between the waterfall and XP methodologies is that XP divides its phases into iterations with user feedback

  13. Agile Methodology • Agile methodology – • Welcome changing requirements, even late in development, but keep scope small • Business people and developers must work together daily throughout the project • Build projects around motivated individuals • The best architectures, requirements, and designs emerge from self-organizing teams • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly

  14. DEVELOPING SUCCESSFUL SOFTWARE • Primary principles for successful agile software development include: • Slash the budget • If it doesn’t work, kill it • Keep requirements to a minimum • Test and deliver frequently • Assign non-IT executives to software projects

  15. SDLC • Large, complex IT systems take teams of architects, analysts, developers, testers, and users many years to create • The systems development life cycle is the foundation for many systems development methodologies such as RAD and agile • Systems development life cycle – the overall process for developing information systems from planning and analysis through implementation and maintenance

  16. SDLC

  17. PHASE 1: PLANNING • Planning phase – involves establishing a high-level plan of the intended project and determining project goals • Primary planning activities include • Identify and select the system for development • Assess project feasibility • Develop the project plan

  18. SOFTWARE PROBLEMS ARE BUSINESS PROBLEMS • Find errors early: the later in the SDLC an error is found - the more expensive it is to fix

  19. Assess Project Feasibility • Feasibility study – determines if the proposed solution is feasible and achievable from a financial, technical, and organizational standpoint • Different types of feasibility studies • Economic feasibility study • Operational feasibility study • Technical feasibility study • Schedule feasibility study • Legal and contractual feasibility study

  20. PHASE 2: ANALYSIS • Analysis phase – involves analyzing end-user business requirements and refining project goals into defined functions and operations of the intended system • Primary analysis activities include: • Gather business requirements • Create process diagrams • Perform a buy vs. build analysis

  21. Gather Business Requirements • Business requirements – the detailed set of business requests that the system must meet in order to be successful • Different ways to gather business requirements • Joint application development (JAD) session – where employees meet to define or review the business requirements for the system • Interviews • Questionnaires • Observations • Review business documents

  22. Perform a Buy vs. Build Analysis • An organization faces two primary choices when deciding to develop an information system • Buy the information system from a vendor • Commercial off-the shelf (COTS) – software package or solution that is purchased to support one or more business functions and information systems • SCM, CRM, and ERP solutions are typically COTS • Build the information system itself

  23. Perform a Buy vs. Build Analysis • Organizations must consider the following when making a buy vs. build decision: • Are there any currently available products that fit the needs? • Are there features that are not available and important enough to warrant the expense of in-house development? • Can the organization customize or modify an existing COTS to fit its needs? • Is there a justification to purchase or develop based on the acquisition cost?

  24. Perform a Buy vs. Build Analysis • Three key factors an organization should also consider when contemplating the buy vs. build decision • Time to market • Availability of corporate resources • Corporate core competencies

  25. PHASE 3: DESIGN • Design phase – involves describing the desired features and operations of the system including screen layouts, business rules, process diagrams, pseudo code, and other documentation • Primary design activities include: • Design the IT infrastructure • Design system models

  26. Design the IT Infrastructure • Sample IT infrastructure

  27. Design System Models • Modeling – the activity of drawing a graphical representation of a design • Different modeling types include: • Graphical user interface (GUI) • GUI screen design • Data model • Entity relationship diagram (ERD)

  28. Design System Models • Sample entity relationship diagram (ERD)

  29. PHASE 4: DEVELOPMENT • Development phase – involves taking all of the detailed design documents from the design phase and transforming them into the actual system • Primary development activities include: • Develop the IT infrastructure • Develop the database and programs

  30. PHASE 5: TESTING • Testing phase – involves bringing all the project pieces together into a special testing environment to test for errors, bugs, and interoperability, in order to verify that the system meets all the business requirements defined in the analysis phase • Primary testing activities include: • Write the test conditions • Perform the system testing

  31. PHASE 6: IMPLEMENTATION • Implementation phase – involves placing the system into production so users can begin to perform actual business operations with the system • Primary implementation activities include: • Write detailed user documentation • Determine implementation method • Provide training for the system users

  32. Determine Implementation Method • Four primary implementation methods • Parallel implementation • Plunge implementation • Pilot implementation • Phased implementation

  33. PHASE 7: MAINTENANCE • Maintenance phase – involves performing changes, corrections, additions, and upgrades to ensure the system continues to meet the business goals • Systems spend the majority of their life in the maintenance phase • Primary maintenance activities include: • Build a help desk to support the system users • Perform system maintenance • Provide an environment to support system changes

  34. Support System Changes • An organization must modify its systems to support the business environment • It typically accomplishes this through change management systems and change control boards • Change management system – a collection of procedures to document a change request and define the steps necessary to consider the change based on the expected impact of the change • Change control board (CCB) – responsible for approving or rejecting all change requests

  35. SOFTWARE PROBLEMS ARE BUSINESS PROBLEMS • Primary reasons for project failure include • Unclear or missing business requirements • Skipping SDLC phases • Failure to manage project scope • Scope creep – occurs when the scope increases • Feature creep – occurs when extra features are added • Failure to manage project plan • Changing technology

  36. In Class Discussion • How would you used the SDLC to plan and complete a course paper…Write out each of the seven steps and tell me which activities would occur at each…

More Related