Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 10 Information Systems Development. Learning Objectives Upon successful completion of this chapter, you will be able to: Explain the overall process.

Similar presentations


Presentation on theme: "Chapter 10 Information Systems Development. Learning Objectives Upon successful completion of this chapter, you will be able to: Explain the overall process."— Presentation transcript:

1 Chapter 10 Information Systems Development

2 Learning Objectives Upon successful completion of this chapter, you will be able to: Explain the overall process of developing a new software application Explain the differences between software development methodologies Understand the different types of programming languages used to develop software Understand some of the issues surrounding the development of websites and mobile applications Identify the four primary implementation policies

3 Programming Needed to take ideas or business solutions and bringing them to reality. Small changes can be implemented in a short timeframe with a streamlined process Larger changes will require a software development methodology to guide and manage the process: – Systems development life cycle (SDLC) – Rapid application development (RAD) – Agile methodologies – Lean methodology

4 Systems Development Life Cycle (SDLC) Developed in 1960s to manage large software development projects Still in wide use today and called waterfall methodology Very structured – each phase has an end deliverable requiring approval to next phase – each phase must be completed before the next phase can start Phases: 1.Preliminary Analysis 2.Systems Analysis 3.Systems Design 4.Programming 5.Testing 6.Implementation 7.Maintenance

5 SDLC Phases 1.Preliminary Analysis – requests are reviewed – Deliverable - feasibility analysis document 2.Systems Analysis – if approved, determine the system requirements for new system – Deliverable – systems requirement document 3.Systems Design – converts system analysis requirements into system design document deliverable 4.Programming – coding commences using design documents 5.Testing – ensures that the code functions according to requirements 6.Implementation – converting from old system to new system – Training, documenting functions, and data conversion 7.Maintenance – support for reporting prioritizing, and fixing bugs

6 Rapid Application Development (RAD) Overall requirements are defined, team formed, and feasibility determined Design the system in JAD sessions Go live and placed in production As the user design is being created, programs are being created with the ability to still make changes Focuses on quickly building a working model and getting feedback from users to update the working model for smaller projects and giving users the ability to provide feedback during the process Phases: Overall requirements are defined, team formed, and feasibility determined

7 Agile Methodologies Group of methodologies for incremental changes focused on quality and attention to detail Each increment is released with very specific objectives Characteristics: – Small cross-functional teams are used – Daily status meetings are held – Short timeframe increments for each change – A working project is completed at end of each iteration and demonstrated to stakeholders

8 Lean Methodology Takes an initial idea and develops a minimal visible product (MVP) – Has just enough functionality to demonstrate the idea behind the project Works best in entrepreneurial environment While moving through the phases, feedback is key and is generated in 2 forms: 1.Direct observation and discussion with users 2.Usage statistics gathered from the software itself Usually requires several iterations as the team uses the feedback to determine whether to continue in same direction or pivot in a new direction or MVP

9 Quality Triangle Decisions are made during development that affect 3 factors – time, cost, and quality Only 2 can be addressed requiring compromise/tradeoffs Spend more or less money on the project? Spend more or less time on project? Meets or doesn’t meet requirements? Minimal or no bugs at implementation?

10 Programming Languages Used to develop new systems Multiple generations: Machine Code Zeros and Ones Machine dependent 1st Assembly Language Used some English like phrases Machine dependent 2nd Similar to spoken languages Machine independent E.g., JAVA 3rd Fast development Use developer environments that help generate the code Machine independent E.g., SQL and SPSS 4 th

11 Software Development Decisions Development DecisionAdvantagesDisadvantages Purchasing Software Less expensive Available more quickly Tested already Bugs worked out Same software may be used by competitors Fewer/none customizations Building Yourself Customized to your businesses’ needs Would not be used by your competitors to maintain your competitive edge More expensive Not available quickly Requires testing and bugs being worked out Every new development project should decide whether to create it themselves using in-house personnel or buy one that has already been developed Web Services – purchase functions from vendors – For Example, using Google

12 End User Computing Others (non-IT) develop their own solutions that are not trained in programming or software development Needs to be managed and guidelines established Advantages: – Development is closer to those that will use them – May receive it sooner than from IT Disadvantages: – Several applications may perform the same functions which may or may not have same results – May not be fully tested and bug-free – Data is not always backed up

13 Testing Critical part of any development project to detect and fix bugs before the system is implemented Process: Unit Test Done by programmer for their standalone modules System Test Done once the individual units are bug free Integrated with other bug-free modules and tested as a whole User Acceptance Test Conducted by end users on meeting requirements Any bugs, errors, or problems are retested

14 Implementation Methodologies Several implementation methodologies exist: – Direct cutover – new system is turned on and old system turned off Riskiest but least expensive – no need to support 2 systems – Pilot implementation – a small group uses the new system Small impact on organization is something goes wrong – still have old system running – Parallel operation – all transactions are entered in new and old system Very expensive to maintain 2 systems Least risky that you can identify bugs and go back to old system if needed – Phased implementation – new functions are implemented as parts of old system are turned off Slowly move from old system to new one

15 Implementation Methodologies Support Every implementation requires support in 2 key areas: 1.Change management – All proposed changes should be communicated to all affected personnel, including IT – IT should be managing which code has been tested and signed off by the end users prior to implementation 2.Maintenance – Often newly implemented systems still need changes for fixing bugs – Management needs to ensure that the system continues to runs and is aligned with business priorities

16 Summary Explained the overall process of developing a new software application Explained the differences between software development methodologies Understand the different types of programming languages used to develop software Understand some of the issues surrounding the development of websites and mobile applications Identified the four primary implementation policies


Download ppt "Chapter 10 Information Systems Development. Learning Objectives Upon successful completion of this chapter, you will be able to: Explain the overall process."

Similar presentations


Ads by Google