Ch. 5-1: The Systems Development Lifecycle

8 September 2022
4.7 (114 reviews)
28 test answers

Unlock all answers in this set

Unlock answers (24)
question
[5.1.1] Systems Development Lifecycle
answer
The Systems development lifecycle (SDLC) is the process of developing software or information systems from start to finish.
question
[5.1.1.1] SDLC Phases
answer
SDLC has seven main phases: Planning, Analysis, Design, Development, Testing, Implementation, and Maintenance.
question
[5.1.1.1.1] Planning
answer
1. Main actors: project manager, project sponsor (usually a VP or other high-level manager who pushed this project into approval), senior analysts 2. Planning is exactly what it sounds like: the systems development team makes a plan for the systems development project. During this phase, it is vital to conduct several types of feasibility analyses, in order to assess whether developing the system is a good idea. (see other terms) 3. An end result of the planning phase is a formal approval (usually signed off by management) that the project will move forward and high-level requirements matrix: a list of approved features and key characteristics of the new system that are required for success
question
[5.1.1.1.1.1] Technical Feasibility
answer
Is the system realistic, and de we have the expertise to develop it?
question
[5.1.1.1.1.2] Economic Feasibility
answer
Do benefits exceed costs? (e.g. ROI)
question
[5.1.1.1.1.3] Legal Feasibility
answer
Does the system meet all regulations and laws?
question
[5.1.1.1.1.4] Operational Feasibility
answer
Will our organization be able to operate the system?
question
[5.1.1.1.1.5] Scheduling Feasibility
answer
Is the project timeline realistic given our resources?
question
[5.1.1.1.2] Analysis
answer
1. Main actors: systems analysts, business analysts 2. One of the key tasks during the analysis phase is determining user requirements (i.e., what do they want the system to be able to do). Users might be customers, clients, our own organization, or other stakeholders. This is called requirements gathering, or requirements elicitation. These requirements are then compiled in a requirements definition document: a more detailed version of the requirements matrix
question
[5.1.1.1.3] Design
answer
1.Main actors: project manager, system architects, programmers (in a support role; not programming), users (to give input and advice) 2.During this phase, the system is laid out using "mockups" (if graphical) and the basic modules and logic for the software portion of the system are outlined. This means that example screens and windows are developed (sort of like storyboarding in cinema) to illustrate the basic flow and feel of the system. Hardware requirements are also determined during this phase.
question
[5.1.1.1.4] Development (Construction)
answer
1. Main actors: programmers, testers 2.This is where the actual programming takes place. The primary deliverable during this phase is a prototype or "alpha" system that can then be tested for quality assurance. 3. The testing phase, listed next, will actually begin during the development phase and much of these two phases are performed together
question
[5.1.1.1.5] Testing
answer
1.Main actors: testers, programmers 2. This is exactly what it sounds like: users try out the system, find bugs, see if they can break it, and provide feedback to the development team in order to refine the system. Don't think that this is a boring job! This is not like some of those video game testing jobs that students sometimes fill where you simply execute a set of pre-specified sequences in order. Testers have to be creative; their job is to find ways to break the system. This also includes what we call system penetration testing, or "white hat" hacking, which is designed to see if the system can be easily hacked for sensitive data or external control 3. Although there are many types of testing, you should be generally familiar with the following types: (see other terms)
question
[5.1.1.1.5.1] Unit Testing
answer
do individual components of the code work properly? E.g. If I click the Submit button, does my information get stored as it should
question
[5.1.1.1.5.2] Integration Testing
answer
higher-level than unit testing, integration testing will test whether individual units work together properly
question
[5.1.1.1.5.3] System Testing
answer
does the entire system of groups of units work properly? This occurs after integration testing and makes sure that all requirements have been met in an integrated system.
question
[5.1.1.1.5.4] User Acceptance Testing
answer
this is arguably the most ignored, yet most important, of all types of testing: does the end user actually use this system the way it is intended, in a manner that allows them to perform their job successfully, and will be continually followed by the user after nobody is looking over their shoulder. Many expensive systems have been scrapped after implementation because they were not properly user acceptance tested
question
[5.1.1.1.6] Implementation
answer
1. Implementation is when the system is ready to be delivered to the users/customers to "go live" - handle real transactions. It is during this phase that the development team must train users how to use the new system. There are a handful of different approaches to implementation. We discuss the four most common approaches below: (see other terms)
question
[5.1.1.1.6.1] Direct Conversion
answer
Switch from the old system to the new one "overnight"
question
[5.1.1.1.6.2] Parallel Conversion
answer
Continue to run the old system until the new one is activated and working
question
[5.1.1.1.6.3] Phased Conversion
answer
Activate the new system one module at a time
question
[5.1.1.1.6.4] Pilot Conversion
answer
Activate and test the new system in one branch of an organization, then implement it in other branches once the pilot branch has figured out all the bugs.
question
[5.1.1.1.7] Maintenance
answer
1. Maintenance includes continued support for the system even after implementation. If an error is discovered, the development team will fix it. If new features are requested, the development team can negotiate for developing the new features. This phase is consistently the most expensive phase of the SDLC. Eventually, as maintenance costs get high enough, that is a signal that a new system should be built
question
[5.1.1.2] Make/Build/Buy Decision
answer
Make means that the organization will write the software code—or some portion of it—themselves using their own programmers. Build means that the organization will hire an external consulting company to build the system—or some portion of it—for them. Buy means that the organization will buy some off-the-shelf software to meet their needs.
question
[5.1.1.3] SDLC Methodologies
answer
There are many different methodologies for carrying out an IT project. These approaches fall along varying spectrums of flexibility and agility.
question
[5.1.1.3.1] Commercial off the shelf (COTS)
answer
Buy a ready made solution
question
[5.1.1.3.2] Waterfall
[5.1.1.3.2] Waterfall
answer
"Cascades" linearly through the 7 phases moves through each of the seven phases above in linear, step-order fashion in which each phase is executed only once in its entirety
question
[5.1.1.3.3] Agile
[5.1.1.3.3] Agile
answer
i.e. "quick" & "flexible" Small projects delivered quickly & frequently; daily collaboration with users •Rapid Application Development (RAD) Rapid prototyping; interactive user involvement •Extreme Programming (XP) Methodology Tiny manageable phases; iterate with user feedback
question
[5.1.1.4] Quality Constraints
[5.1.1.4] Quality Constraints
answer
Time/Cost/Scope One major consideration throughout the SDLC is the project quality constraint triangle shown below. These three variables are interdependent. You cannot change one without changing the others. Project management during the SDLC is the science of making intelligent trade-offs among time, cost, and scope.