Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System implementation and deployment Updated: December 2016 Outline System implementation System testing Software versioning Data porting and conversion System deployment 3510 Systems Analysis & Design * Bob Travica 2 of 14 Implementation and deployment activities 3510 Systems Analysis & Design * Bob Travica 3 of 14 Implementation Implementation = software development or assembling according to previously created design. Don’t confuse the term with “system deployment” Modularized design (objects and packages; components) – interaction among system components must be implemented using certain standard (SOAP/XML, CORBA, COM) 3510 Systems Analysis & Design * Bob Travica 4 of 14 Testing Testing = a process of identifying system defects Develop test cases and test data A test case specifies starting & ending state, and events to which the software must respond Test data – data in the defined starting state, which must reach a defined ending state after being exposed to certain event (input). Modern approach: build to predefined test (Agile Methodology) 3510 Systems Analysis & Design * Bob Travica 5 of 14 Kinds of system tests Unit testing - individual methods, classes, or components before they are integrated with other software Defect example: A method for calculating taxes outputs incorrect results. Integration testing - evaluates the behavior of a group of methods or classes (interface compatibility, unexpected parameter values or state interaction, run-time exceptions) Applied to system or sub-system Defect example: Results of retrieving a record significantly differ when real database as opposed to when dummy database is retrieved 3510 Systems Analysis & Design * Bob Travica 6 of 14 Kinds of system tests (cont.) Usability testing – system works but fails some of the usability requirements (easy to learn, use & navigate, task efficiency); user interface focus. Can be part of Acceptance testing. Acceptance testing – overall test involving all parties and system requirements (performance of functions, stress resistance, security, recovery) 3510 Systems Analysis & Design * Bob Travica 7 of 14 Software testers Programmers Unit testing Testing buddies can test other’s programmer’s code Quality assurance personnel Integration and Usability Users Acceptance testing Volunteers for testing beta version of software 3510 Systems Analysis & Design * Bob Travica 8 of 14 Software versioning Alpha version Beta version Test version that is incomplete but ready for some level of testing; dummy data used Test version that is stable enough to be tested by end users for an extended period of time; real data used Production version System version that is formally released to users or made operational for long-term use 3510 Systems Analysis & Design * Bob Travica 9 of 14 System deployment Activities for making a new system operational Include: Installation and configuration User training Porting and Converting data Deployment strategy 3510 Systems Analysis & Design * Bob Travica 10 of 14 Data porting & converting 3510 Systems Analysis & Design * Bob Travica 11 of 14 Deployment strategy Can be defined more clearly with the structured methodology than with rapid methodologies of system development With rapid methodologies deployment is gradual, module by module Agile approach: IT Staging - shuffling between build testing, development and deployment. Finally deployed parts are said to be in production. 3510 Systems Analysis & Design * Bob Travica 12 of 14 Deployment strategy Structured methodology Direct deployment (“Cold Turkey”) Parallel deployment 3510 Systems Analysis & Design * Bob Travica 13 of 14 Deployment strategy Phased deployment a) New system replaces gradually N old systems in whole organization (below) b) New system replaces old system one by one org. unit Direct model Parallel model 3510 Systems Analysis & Design * Bob Travica 14 of 14
© Copyright 2026 Paperzz