Sie sind auf Seite 1von 6

System Development and Testing

System development is the process of defining, designing, testing, and implementing a new software application or program. It converts a design into complete information system. It could include the internal development of customized systems, the creation of database systems, or the acquisition of third party developed software. Objective: To transform programs internal specifications into program code using a computer language. System Development Life Cycle The SDLC typically consists of three major stages: definition, development, and installation and operation. These three major stages can be divided into 10 phases. Figure 1: The Ten Phases of the System Development Life Cycle Definition Stage To initiate a project and conduct cost/benefit 1. Service Request or Project analysis as well as a feasibility study. Viability Assessment To define project scope, analyze the existing 2. System Requirements Definition system, and define information requirements, data attributes, and system objectives. To identify and evaluate alternate system designs 3. System Design Alternatives and prepare initial project schedules. Development Stage To specify data flow, user/system interface, system 4. System External Specifications controls, and manual supporting procedures. To specify processing logic, file structure, module 5. System Internal Specifications interfaces, and system architecture. To transform programs internal specifications into 6. Program Development program code using a computer language. To verify and validate the system being developed 7. Testing throughout the SDLC. Installation and Operation Stage To convert the data formats and procedures for the 8. Conversion new system. To install the hardware and software for the new 9. Implementation system, and cutover the system into production. To monitor and maintain the quality and 10. Post Implementation Review or performance of the new system. Maintenance

Computer programming (often shortened to programming) is the comprehensive process that leads from an original formulation of a computing problem to executable programs. The purpose of programming is to find a sequence of instructions that will automate performing a specific task or solve a given problem. Quality Requirements:
1.

Reliability. How often the results of a program are correct. This depends on conceptual correctness of algorithms, and minimization of programming mistakes, such as mistakes in resource management (e.g., buffer overflows and race conditions) and logic errors (such as division by zero or off-by-one errors). Robustness. How well a program anticipates problems not due to programmer error? This includes situations such as incorrect, inappropriate or corrupt data, unavailability of needed resources such as memory, operating system services and network connections, and user error. Usability. The ergonomics of a program; the ease with which a person can use the program for its intended purpose or in some cases even unanticipated purposes. Portability. The range of computer hardware and operating system platforms on which the source code of a program can be compiled/interpreted and run. Maintainability. The ease with which a program can be modified by its present or future developers in order to make improvements or customizations, fix bugs and security holes, or adapt it to new environments. Efficiency/performance. The amount of system resources a program consumes (processor time, memory space, slow devices such as disks, network bandwidth and to some extent even user interaction): the less, the better.

2.

3.

4.

5.

6.

Readability of source code refers to the ease with which a human reader can comprehend the purpose, control flow, and operation of source code. Unreadable code often leads to bugs, inefficiencies and duplicated code. Modern Programming Languages: COBOL for corporate data center FORTRAN for engineering applications SCRIPTING LANGUAGES for web development C - for embedded applications

New languages with new functionality added: C++ - adds object-oriented to C Java adds memory management and byte code to C++ Few basic instructions in a programming language:

Input: Gather data from the keyboard, a file, or some other device. Output: Display data on the screen or send data to a file or other device. Arithmetic: Perform basic arithmetical operations like addition and multiplication. Conditional Execution: Check for certain conditions and executes the appropriate sequence of statements. Repetition: Perform some action repeatedly, usually with some variation.

System testing of software or hardware is testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. It seeks to detect defects both within the "inter-assemblages" and also within the system as a whole. System testing tests not only the design, but also the behavior and even the believed expectations of the customer. Software testing validates and verifies if a software program or application or product: 1. 2. 3. 4. Meets the requirements that guides its design and development; Work as expected; Can be implemented with the same characteristics; and Satisfies the needs of the stakeholders.

Figure 2: Structural and Functional System Tests Type of Test Structural Testing: Compliance Test Configuration Test Documentation Test Maintainability Test Operations Test To determine whether the system developed is in accordance with standards and procedure. To determine whether the system work under minimum and maximum configurations. Whether the user documentation is accurate Whether the system is easy to maintain and the internal logic documentation is accurate Whether the system be executed in a normal Test purpose

operational status Performance Test Whether the system achieves desired levels of performance or efficiency under certain workload and configurations Whether the system is compatible, installable and maintainable Whether the system can be returned to an operational status after a failure Whether the system meets the reliability objective Whether the system is protected in accordance with its level of importance to the organization Whether the system have enough main and secondary storage Whether the system performs with peak load over a short span of time

Portability Test Recovery Test Reliability Test Security Test Storage Test Stress Test Functional System Testing Auditability Test Control Test Error-handling Test Inter-systems Test Manual Support Test Parallel Test Regression Test

Whether the system provides an audit trail and meets other auditing standards Whether the controls reduce the system risk to an acceptable level Whether errors can be prevented or detected the corrected Whether data can be correctly passed from one system to another Whether the people-computer interaction works Whether there are unplanned differences between the old and the new system Whether the unchanged system components still perform correctly with the changed component

Requirement Test Usability Test

Whether the system performs as specified Whether the system and documentation are user-friendly

Testing tools Program testing and fault detection can be aided significantly by testing tools and debuggers. Testing/debug tools include features such as:
1.

Program monitors, permitting full or partial monitoring of program code including:

Instruction set simulator, permitting complete instruction level monitoring and trace facilities Program animation, permitting step-by-step execution and conditional breakpoint at source level or in machine code

2. 3. 4. 5.

Code coverage reports Formatted dump or symbolic debugging, tools allowing inspection of program variables on error or at chosen points Automated functional GUI testing tools are used to repeat system-level tests through the GUI Benchmarks, allowing run-time performance comparisons to be made Performance analysis (or profiling tools) that can help to highlight hot spots and resource usage.

Mariano Marcos State University COLLEGE OF BUSINESS, ECONOMICS AND ACCOUNTANCY City of Batac

SYSTEM DEVELOPMENT AND TESTING

Submitted by:
Policarpio, Bradley R. Ramos, Kimberly S.
BS in Accountancy IV

August 2013

Das könnte Ihnen auch gefallen