Presentation is loading. Please wait.

Presentation is loading. Please wait.

BUSINESS DRIVEN TECHNOLOGY

Similar presentations


Presentation on theme: "BUSINESS DRIVEN TECHNOLOGY"— Presentation transcript:

1 BUSINESS DRIVEN TECHNOLOGY
Business Plug-In B9 Systems Development

2 LEARNING OUTCOMES Summarize the activities associated with the planning phase in the SDLC Summarize the activities associated with the analysis phase in the SDLC Summarize the activities associated with the design phase in the SDLC Summarize the activities associated with the development phase in the SDLC 1. Summarize the activities associated with the planning phase in the SDLC Primary planning activities include: Identify and select the system for development Assess project feasibility Develop the project plan 2. Summarize the activities associated with the analysis phase in the SDLC Primary analysis activities include: Gather business requirements Create process diagrams Perform a buy vs. build analysis 3. Summarize the activities associated with the design phase in the SDLC Primary design activities include: Design the IT infrastructure Design system models 4. Summarize the activities associated with the development phase in the SDLC Primary development activities include: Develop the IT infrastructure Develop the database and programs

3 Summarize the activities associated with the testing phase in the SDLC
LEARNING OUTCOMES Summarize the activities associated with the testing phase in the SDLC Summarize the activities associated with the implementation phase in the SDLC Summarize the activities associated with the maintenance phase in the SDLC 5. Summarize the activities associated with the testing phase in the SDLC Primary testing activities include: Write the test conditions Perform the system testing 6. Summarize the activities associated with the implementation phase in the SDLC Primary implementation activities include: Write detailed user documentation Determine implementation method Provide training for the system users 7. Summarize the activities associated with the maintenance phase in the SDLC Primary maintenance activities include: Build a help desk to support the system users Perform system maintenance Provide an environment to support system changes

4 Introduction 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 Have your students review the different systems development methodologies discussed in detail in the text in Chapter 19

5 Introduction Walk the students through the systems development life cycle: 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 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 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 Implementation phase – involves placing the system into production so users can begin to perform actual business operations with the system Maintenance phase – involves performing changes, corrections, additions, and upgrades to ensure the system continues to meet the business goals 9-5

6 Systems Development Life Cycle - 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 Ask your students if any of them have ever been involved in the planning phase for a systems development effort Ask them to list additional activities they might have performed during the planning phase Remind your students that this plug-in walks through the main activities performed during each phase Ask your students to keep in mind that there are literally hundreds of different additional activities that could be performed during each phase

7 PLANNING 1: Identify and Select the System for Development
Organizations use different forms of evaluation criteria to determine which systems to develop Critical success factor (CSF) – a factor that is critical to an organization’s success Discuss each of the evaluation criteria discussed in Figure B9.3 Value chain analysis – systems with greater value are given priority over systems with less value Strategic alignment – projects that are in line with the organization's strategic goals and objectives are given priority over projects not in line with the organization's strategic goals and objectives Cost/benefit analysis – determines which projects offer the organization the greatest benefits with the least amount of cost Resource availability – determine the amount and type of resources required to complete the project and determine if the organization has these resources available Project size, duration, and difficulty – determine the number of individuals, amount of time, and technical difficulty of the project Classroom Activity: Break your students into groups and ask them to rank the five evaluation criteria in order of most important to least important in terms of determining and prioritizing software development projects Write each of the five evaluation criteria on the board Once each group has its ranking, ask it to present its list and reasons to the class, be sure each group has solid business reasons supporting their decisions After each group has spoken, have the entire class reassign priority to the five evaluation criteria, this makes for an interesting classroom debate

8 PLANNING 2: 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 Economic feasibility study – (cost-benefit analysis) – identifies the financial benefits and costs associated with the systems development project Operational feasibility study – examines the likelihood that the project will attain its desired objectives Technical feasibility study – determines the organization’s ability to build and integrate the proposed system Schedule feasibility study – assesses the likelihood that all potential time frames and completion dates will be met Legal and contractual feasibility study – examines all potential legal and contractual ramifications of the proposed system

9 PLANNING 3: Develop the Project Plan
Developing the project plan is a difficult and important activity The project plan is the guiding force behind on-time delivery of a complete and successful system Continuous updating of the project plan must be performed during every subsequent phase during the SDLC Explain to your students that project management and project plans are discussed in detail in Business Plug-In B10: Project Management

10 Systems Development Life Cycle – 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 Ask your students which analysis activity is the hardest Ans: Gathering business requirements is the typically one of the hardest tasks to perform on any project and is the number one reason why projects fail “Bad Business Requirements”

11 ANALYSIS 1: 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 Ask your students what other methods they could use to gather business requirements Ans: Comparing different organizations’ processes with best of breed processes – for example looking at Dell’s supply chain Comparing across industries, for example reviewing CRM practices in different hotels and restaurants to apply to a utensil manufacturer Reviewing magazines, articles, and literature to determine new processes, technology, and innovation

12 ANALYSIS 1: Gather Business Requirements
The system users review the requirements definition document and determine if they will sign-off on the business requirements Requirements definition document – contains the final set of business requirements, prioritized in order of business importance Sign-off – the system users’ actual signatures indicating they approve all of the business requirements Discuss the python example on page 343 Ask your students why “sign-off” is such a big deal Ans: When someone is asked to put their actual signature on something they take it much more seriously than just a verbal OK. For this reason, asking someone to sign-off helps to ensure they are actually reading the document, understanding the document, and most importantly, in agreement with the document. Ask your students how they would treat a situation where they were asked to sign a document that details their exact net worth. Chances are they would be sure to review it inside out and upside down, as the ramifications of an inaccurate net worth can cause a myriad of issues such as bad credit and the inability to obtain a mortgage.

13 ANALYSIS 2: Create Process Diagrams
Process modeling – graphically representing the processes that capture, manipulate, store, and distribute information between a system and its environment Common process modeling diagrams include Data flow diagram (DFD) – illustrates the movement of information between external entities and the processes and data stores within the system Computer-aided software engineering (CASE) tools –automate systems analysis, design, and development Explain to your students that process diagrams are typically performed by a combination of both IT and business personnel IT personnel understand the technology, and business personnel understand the business process, and they are both required to work together to accurately model a system

14 ANALYSIS 2: Create Process Diagrams
Sample data flow diagram Discuss the sample data flow diagram with your students Explain that the entities send data or requests to processes The processes interact with the data stores

15 ANALYSIS 3: 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 Performing a buy vs. build analysis is a difficult task Classroom activity: Break your students into groups and assign each group one of the following: Buy a COTS CRM system from Siebel Build a COTS CRM system similar to Siebel Have each team find support for the decision they have been given using the Internet, textbooks, magazines, etc. Once the students have finished building a case that can support their decision, break the room into two sections – one side representing the “buy decision” and one side representing the “build decision” Let the students debate each other and determine if the ultimate decision is a buy or a build

16 ANALYSIS 3: 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 organization’s 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 cost of acquisition? Ask your students if they can determine any additional questions an organization should consider when making a buy vs. build decision Does the system support multi-currency and multi-language if the business expands globally? Can the organization upgrade if it customizes its COTS application? If the organization customizes its COTS application, will it be able to receive vendor support? If the organization builds a system, will it be able to build all of the functionality it can find a COTS application?

17 ANALYSIS 3: 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 Time to market – if time to market is a priority, then purchasing a good base technology and potentially building onto it will likely yield results faster than starting from scratch Availability of corporate resources – typically, the costs to an organization to buy systems such as SCM, CRM, and ERP are extremely high, in the multiple millions of dollars. This can make the entire concept economically unfeasible for some organizations that are resource constrained. Building these systems can also be extremely expensive, take indefinite amounts of time, and constrain resources. Corporate core competencies – the more an organization wants to build a technical core competency, the less likely it will want to buy it.

18 Systems Development Life Cycle – 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 For review, the IT infrastructure includes the hardware, software, and telecommunications equipment that, when combined, provide the underlying foundation to support the organization's goals

19 DESIGN 1: Design the IT Infrastructure
Organizations need a solid IT infrastructure to support their IT systems IT infrastructure must meet the organization’s needs in terms of time, cost, technical feasibility, and flexibility

20 DESIGN 1: Design the IT Infrastructure
Sample IT infrastructure Discuss the sample IT infrastructure with your students Point out the Internet cloud The firewall The routers, servers, workstations, and printers

21 DESIGN 2: Design System Models
Modeling – the activity of drawing a graphical representation of a design Different modeling types include: Graphical user interface (GUI) – the interface to an information system GUI screen design – the ability to model the information system screens using icons, buttons, menus, and submenus Data models – a formal way to express data relationships to a database management system (DBMS) Entity relationship diagram (ERD) – a technique for documenting the relationships between entities in a database

22 DESIGN 2: Design System Models
Sample entity relationship diagram (ERD) Discuss the sample ERD with your students

23 Systems Development Life Cycle – 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

24 DEVELOPMENT 1: Develop the IT Infrastructure
The platform upon which the system will operate must be built prior to building the actual system In the development phase, the organization purchases and implements the required equipment to support the IT infrastructure

25 DEVELOPMENT 2: Develop the Database and Programs
Once the IT infrastructure is built, the organization can begin to create the database and write the programs required for the system IT specialists perform the majority of the tasks associated with the development phase

26 Systems Development Life Cycle – 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

27 TESTING 1: Write the Test Conditions
Test condition – the detailed steps the system must perform along with the expected results of each step Explain to your students that a typical system can have tens of thousand of test conditions. Ask your students how many test conditions would be required to test Microsoft Word Cut and Paste functionality only Ask your students how many test conditions to test all the different combinations of font, font size, font style, and different lengths Here a few sample test conditions for an example: Cut Times New Roman, Font size 10, Bold, Italic, Two words Cut Times New Roman, Font size 11, Bold, Italic, Two words Cut Times New Roman, Font size 10, Bold, underline, Two words Cut Times New Roman, Font size 11, Bold, underline, Two words Cut Times New Roman, Font size 10, Bold, underline, Complete sentence Cut Times New Roman, Font size 11, Bold, underline, Two pages of text Paste Times New Roman, Font size 10, Bold, Italic, Two words Paste Times New Roman, Font size 11, Bold, Italic, Two words Paste Times New Roman, Font size 10, Bold, underline, Two words Paste Times New Roman, Font size 11, Bold, underline, Two words Paste Times New Roman, Font size 10, Bold, underline, Complete sentence Paste Times New Roman, Font size 11, Bold, underline, Two pages of text Just imagine all of the thousands of test conditions just with different fonts, per size, per type, per length, and this is just for cut and paste Imagine all of the test conditions to test the advanced mathematical formulas in Excel

28 TESTING 2: Perform the System Testing
Different types of testing: Unit testing – tests each unit of code upon completion Application (or system) testing – verifies that all units of code work together Integration testing – exposes faults in the integration of software components or units Backup and recovery testing – tests the ability of an application to be restarted after failure Documentation testing – verifies instruction guides are helpful and accurate User acceptance testing (UAT) – tests if a system satisfies its acceptance criteria

29 Systems Development Life Cycle – 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

30 IMPLEMENTATION 1: Write Detailed User Documentation
System users require user documentation that highlights how to use the system User documentation – highlights how to use the system Ask your students to discuss situations where they have used user documentation to support an issue or question they were encountering with a system How helpful was the documentation? What was wrong with documentation? What could have improved the documentation? Unfortunately, IT system documentation is notoriously difficult to understand and full of errors!! Be sure your users are just as concerned about the documentation that supports the system as they are that the system works. Using the old “Hit by a Bus” metaphor usually helps to ensure the importance of documentation

31 IMPLEMENTATION 2: Determine Implementation Method
Four primary implementation methods Parallel implementation Plunge implementation Pilot implementation Phased implementation Parallel implementation – using both the old and the new system until it is evident that the new system performs correctly Plunge implementation – discarding the old system completely and immediately starting to use the new system Pilot implementation – having only a small group of people use the new system until it is evident that the new system performs correctly and then adding the remaining people Phased implementation – implementing the new system in phases, and then implementing the remaining phases of the new system Ask your student which implementation they would want if they were involved with the implementation of a new CRM system Which method contains the least risk? Which method contains the most risk? Which method is easiest for the users? Which method is hardest for the users?

32 IMPLEMENTATION 3: Provide Training for the System Users
Organizations must provide training for system users Two most popular types of training include: Online training – runs over the Internet or off a CD-ROM Workshop training – set in a classroom-type environment and led by an instructor Ask your students to discuss situations where they have taken online or workshop training How helpful was the training? What was wrong with training? What could have improved the training?

33 Systems Development Life Cycle – PHASE 7: MAINTENANCE
Maintenance phase – involves performing changes, corrections, additions, and upgrades to ensure the system continues to meet the business goals Primary maintenance activities include: Build a help desk to support the system users Perform system maintenance Provide an environment to support system changes

34 MAINTENANCE 1: Build a Help Desk to Support the System Users
Internal system users have a phone number for the help desk they call whenever they have issues or questions about the system Help desk – a group of people who respond to internal system user questions Providing a help desk is an excellent way to provide comprehensive support for new system users

35 MAINTENANCE 2: Perform System Maintenance
Maintenance – fixing or enhancing an information system Different types of maintenance include Adaptive maintenance Corrective maintenance Perfective maintenance Preventative maintenance Adaptive maintenance – increases system functionality Corrective maintenance – repairs defective systems Perfective maintenance – enhances systems Preventative maintenance – reduces chances of system failure

36 MAINTENANCE 3: PROVIDE AN ENVIRONMENT TO 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

37 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

38 Software Problems Are Business Problems
Find errors early: the later in the SDLC an error is found - the more expensive it is to fix Explain to your students that the cost of finding errors grows exponentially the later the error is found in the systems development life cycle An error found during the analysis and design phase is relatively inexpensive to fix All that is typically required is a change to a Word document However, exactly the same error found during the testing or implementation phase is going to cost the organization an enormous amount to fix because it has to change the actual system Find errors early: the later in the SDLC an error is found - the more expensive it is to fix

39 Closing Case One Disaster at Denver International Airport
DIAs baggage system relied on 300 computers to route bags and 4,000 telecars to carry luggage across 21 miles of track Due to baggage system failures, DIA delayed its opening for 16 months, costing taxpayers roughly $1 million per day, which totaled around $500 million Case is located on page 354

40 Closing Case One Questions
One of the problems with DIA’s baggage system was inadequate testing. Describe the different types of tests DIA could have used to help ensure its baggage system’s success Evaluate the different implementation approaches and choose the one that would have most significantly increased the chances of the project’s success Explain the cost of finding errors and how more time spent in the analysis and design phase could have saved Colorado taxpayers hundreds of millions of dollars Explain why BAE could not take an existing IT infrastructure and simply increase its scale and expect it to work 1. One of the problems with DIA’s baggage system was inadequate testing. Describe the different types of tests DIA could have used to help ensure its baggage system’s success Different types of testing include Unit testing – tests each unit of code upon completion, Application (or system) testing – verifies that all units of code work together, Integration testing – exposes faults in the integration of software components or units, Backup and recovery testing – tests the ability of an application to be restarted after failure, Documentation testing – verifies instruction guides are helpful and accurate, and User acceptance testing (UAT) – tests if a system satisfies its acceptance criteria 2. Evaluate the different implementation approaches and choose the one that would have most significantly increased the chances of the project’s success The four different types of implementation methods include: Parallel implementation – using both the old and the new system until it is evident that the new system performs correctly Plunge implementation – discarding the old system completely and immediately starting to use the new system Pilot implementation – having only a small group of people use the new system until it is evident that the new system performs correctly and then adding the remaining people Phased implementation – implementing the new system in phases, and then implementing the remaining phases of the new system Student answers to the type of implementation method that would have improved the success of the system will vary 3. Explain the cost of finding errors and how more time spent in the analysis and design phase could have saved Colorado taxpayers hundreds of millions of dollars An error found during the analysis and design phase is relatively inexpensive to fix. All that is typically required is a change to a Word document. However, exactly the same error found during the testing or implementation phase is going to cost the organization an enormous amount to fix because it has to change the actual system. Find errors early: the later in the SDLC an error is found - the more expensive it is to fix 4. Explain why BAE could not take an existing IT infrastructure and simply increase its scale and expect it to work Increasing the scale increases everything. It increases the stress on the hardware, more users on the software, and greater information needs and flows throughout the system. Simply making a system bigger does not mean that the system will work. If you took Excel and increased its capacity to hold several million rows instead of only 57,000 chances are it would not function as expected since it is not built to this type of growth.

41 Closing Case Two Reducing Ambiguity in Business Requirements
The number one reason projects fail is bad business requirements Business requirements are considered “bad” because of ambiguity or insufficient involvement of end users during analysis and design A requirement is unambiguous if it has the same interpretation for all parties Case is located on page 355

42 Closing Case Two Questions
Why are ambiguous business requirements the leading cause of system development failures? Explain why the words “and” and “or” tend to lead to ambiguous requirements Research the Web and determine other reasons for “bad” business requirements What is wrong with the following business requirement: “The system must support employee birthdays since every employee always has a birthday every year” 1. Why are ambiguous business requirements the leading cause of system development failures? The most common reason systems fail is because the business requirements are either missing or incorrectly gathered during the analysis phase. The business requirements drive the entire system. If they are not accurate or complete, the system will not be successful. 2. Explain why the words “and” and “or” tend to lead to ambiguous requirements And and or have well defined meanings and ought to be completely unambiguous; yet they are often understood only informally and interpreted inconsistently. For example, consider the statement “The alarm must ring if button T is pressed and if button F is pressed.” This statement may be intended to mean that to ring the alarm, both buttons must be pressed or it may be intended to mean that either one can be pressed. 3. Research the Web and determine other reasons for “bad” business requirements Student answers to this question will vary. 4. What is wrong with the following business requirement: “The system must support employee birthdays since every employee always has a birthday every year.” Every employee does not have a birthday every year. Some employees could be born on leap year and therefore would not have a birthday every year. If you build the system with this requirement, you would find yourself in the position of having to find a work around for those employees born on leap year.


Download ppt "BUSINESS DRIVEN TECHNOLOGY"

Similar presentations


Ads by Google