Software Development - System Implementation PDF
Document Details
Uploaded by Deleted User
Tags
Summary
This document is a lesson on System Implementation in Software Development. The lesson describes the purpose and activities involved in the implementation phase, along with coding, testing, and installation. It also covers concepts such as network building, database testing, installation, and testing of new software.
Full Transcript
Lesson #8 Software Development Lesson title: System Implementation Learning Targets: At the end of the module, students will be able to: 1. Explain the purpose of the implementation phase in the system development life cycle and activities involved 2. Identify tasks involved during...
Lesson #8 Software Development Lesson title: System Implementation Learning Targets: At the end of the module, students will be able to: 1. Explain the purpose of the implementation phase in the system development life cycle and activities involved 2. Identify tasks involved during coding activity in system implementation 3. Apply four types of testing in the system development Introduction: System implementation is the development, installation and testing of system components and delivery of that system into production (Bentleyet. al., 2007). The purpose of system implementation is to build a system, install it, replace and old systems, preparing system and user documentation and train users. During this phase, it’s also involved closedown the entire project. System implementation has several major activities. There are five major tasks in this phase; coding, testing, installation, documentation and training as seen in the figure below. The purpose of this phase is to convert the physical system specifications into working and reliable software and hardware, document the work that have been done and provide help for current and future users. Fig. Software Development Phases Lesson #8 Software Development CODING Coding is the process whereby the physical specifications created in the previous phases are turned into working computer codes by the programmer team. Coding is an activity where all the designed during the previous phases will be programmed using a software that have been defined before. There are several sub activities involved during coding activity: Network building and testing In many cases, new or enhanced system is building around existing networks. If so, just skip this task. But, if the system develops require a new or enhanced networks, it should be implemented before building and testing the database, coding and installing computer program. Today, most of the systems are developed in a web-based environment, or atleast intranet. Database building and testing We can say that a database is compulsory for any system. Database is a place where we kept all the data. So, this task must be leading other programming activities because database is shared by the computer program. If the system develop require a new or enhanced database, this task is required. Install and test new software Not all, but most of the system development requires the organization to purchase or lease a new software package. If required, this software should be installed and tested once the previous task is completed. Write and test new programs This is the major task in coding activity. Once we have completed all the previous tasks; we can start to develop the system. Today, most of the organizations prefer to use prototyping approach when developing the system. SYSTEM TESTING After coding, a programmer must conduct a test. Each program will be tested in order to make sure it functions correctly. Later, programs are tested in groups, followed by testing with the entire system. The first step in testing is to compile the program to detect any syntax errors. If there is an error, the programmers need to correct it until the program executes correctly. Then, the next step is to do a testing, includes unit testing, integration testing and system testing. Unit Testing Unit testing is a testing done at the individual level of program or module. Sometimes, it refers to module testing. The purpose of unit testing is to identify and reduce execution errors that cause the program to terminate abnormally, and logic errors that could have been missed during desk checking. During unit testing, programmers must check programs that interact with other programs and files individually. But, since Lesson #8 Software Development the modules exists and work together with other modules in the system, they must be tested together in a larger group. This is referred to integration testing. Integration Testing After finishing the unit testing, the programmer will do the integration testing. Integration testing is a testing where it involves two or more modules that link each other. It’s a process of bringing together all of the modules that a program comprises for testing purposes. First, we need to test he root module and only one of the subordinates. After that, we need to test another two subordinates module from the same level. The same process goes until for the next level. We continued this testing until the whole system is tested as a unit. This is referred to system testing. System Testing After completing the integration testing, we must perform system testing, which involves the entire system. It’s similar with an integration testing. The different is, in system testing, we integrate programs into system. After the system testing is completed, we can assume that the system is fully tested and are free any errors or bugs. So, now, it’s ready to be installed in the organizations. INSTALLATION Installation is the process of moving from the current system to the new or enhanced system. This is also refer to conversion activity; converting an old system to a new system. At this stage, all users must give up their reliance on the current system and begin to rely on a new system. There are four approaches of installation; direct, parallel, single-location and phased installation. Which approaches will be used is depends on the organizations and the system’s scope and complexity. Direct Installation Direct installation is also referring to abrupt cut-over installation. Direct installation is where by the old system is turned off and the new system turned on. It’s plan as on this date at this time, the old system is terminated and the new system will take over. This approach is a high risk approach because there may still be major problems that won’t be uncovered until the system has been in operation. Parallel Installation Parallel installation is when both system; old and new system are operating at the same time until the management decide that the old system can be turned off. This approach is known as riskless approach because all major problems have been solved before the old system is turned off. This approach is an opposite approach with direct installation. Although it’s riskless, but it required high costs since the organization needs to run two systems at the same time. Single-location Installation Single location also refers to location or pilot installation. This approach is where the organization is trying out to use a new system at one location and use this experience in deciding how the entire system should be deployed throughout the organization. Single location can be referring as branch office, or one department. As Lesson #8 Software Development soon as the location approved the system, it will be install to the other location. At this stage, the installation at other site can be direct installation since all the major errors have been fixed at the first test location. Phased Installation Phase installation is similar with single-location but the difference is the new system is installed in functional components. It’s an incremental approach where a new system is brought by module. Different modules of the new and old system are used together until the whole system is installed. DOCUMENTING THE SYSTEM Every system development is unique and need unique documentation. There are two basic types of documentation; system documentation and user documentation. System Documentation System documentation is prepared for maintenance person who will in charge the system operating in the future. System documentation can be divided to internal and external documentation. o Internal documentation Internal documentation is part of the program source code or is generated at compile time. o External documentation External documentation is a system documentation that includes the outcome of structured diagramming techniques such as data flow and entity- relationship diagrams. Although it don’t cover the code itself, but it can provide useful information to the primary users of system documentation-maintenance programmer. User Documentation As stated earlier, system documentation is intended for system maintenance programmer; user documentation is intended for system users. User documentation consists of written and visual information about the system, such as what its function, how its function and how to use it. There are few types of user documentations; o Reference guide - consist of exhaustive list of system functions and commands o Quick reference guide - provide essential information about operating a system in a short, concise format o User’s guide - provide information on how users can use a computer system to perform specific tasks. TRAINING Training can be one to one; however train a group of people is preferred. Group training can reduce the time and cost spend to conduct the training, and also encourage the group participates and feedback towards the system. There are few things that need to be considering during the training session. The content of the training session should be an introduction to the system, and system manual.