© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 1XVI. System DesignXVI. System DesignWhat is System Design?The Outputs of System DesignThe (Global) System ArchitectureClassification of ApplicationsState of the Market© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 2Surveyprojectscope &feasibilityStudycurrentsystemDefineend userreqs.SelectfeasiblesolutionDesignnewsystemSelect &AcquirenewS&H/WConstructnewsystemDelivernewsystemMaintain& improvesystemprojectrequestfeasibilitystudyproblemstatementinitialrequirementsdetailedrequirementsdesign specconfigurationS/WnewsystemdeliveredsystemThe Information System Lifecycle,The Information System Lifecycle,AgainAgainSystem Design© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 3Major Concerns of System DesignMajor Concerns of System Design Identify major subsystems and components. Identify (usage, control or data) dependencies amongsubsystems. Decide on a hardware and software platform for the new system,I.e., the hardware and network(s) on which it will run, the operatingsystem and other off-the-shelf software (e.g., DBMSs) it will use. Allocate subsystems to hardware nodes (for a possibly distributedsystem.) Decide on a data management strategy. Choose a strategy and standards for human-computer interfaces.© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 4Other Elements of System DesignOther Elements of System Design(...Not discussed in this course….) Plan control aspects of the application. Produce test plans. Specify code development standards. Set priorities for design trade-offs. Identify implementation requirements (e.g., data conversion)© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 5Outputs of the Design PhaseOutputs of the Design Phase Hardware, networking and software platform for the newsystem. A (global) system architecture, which describes the hardwarenodes and communication connections among them. A software architecture for the new system, showing thehierarchy of subsystems and their inter-dependencies. An allocation of subsystems and data to hardware nodes. A detailed description of interactions between differentelements of the design (through sequence, collaboration, stateand activity diagrams.) A database design, consisting of a database schema for thedata managed by the new system. User interfaces for different groups of users.© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 6(Global) System Architecture(Global) System Architecture Describes the collection of inter-connected hardware nodes onwhich the system will eventually run. A (global) system architecture consists of: Hardware nodes, where components of the new system will run;for each node select a hardware configuration and operatingsystem platform that will run; for example, hardware platform:486, 2MB RAM, 100MB disk OS: DOS Windows. The connectivity among hardware nodes, defined by length ofconnection, type of connection, product used for the connection;for example,length: <100ft, 100milestype: twisted pair, fiber optic, ethernetproduct: Novell 386 LAN, PC3270 The location of users, inputs and outputs for the new system;Key concern: Minimize data communicationKey concern: Minimize data communication© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 7ExampleExample To each hardware node, associate users (external entities)and network interconnectionsAccounts Receivable486, DOS Win100MB disk<200ft, Ethernet,Novell 386 LANBusiness Administrator1,500ft, Twistedpair SNAPurchasing Department486, DOS Win100MB disk486, DOS Win100MB disk<100ft, Twistedpair PC3270OS/400, 5 ter5GB diskIBM 3090, MVS25 terminalsFinancial Managers VP Finance1mi fiber opt.TCP/IP<100mi, modem28800, PC3270Accounts Payable386 notepadsDOS 80MB disk486 DB serverDOS, 2GBdisk<100ft, Tokenring, Novell386© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 8Distribution IssuesDistribution IssuesBatch mode Batch mode -- process a batch of inputs/outputs together;sometimes most appropriate solutione.g., incoming mail (purchase orders), outgoing mail(invoices, cheques)ννOn-line mode On-line mode -- process inputs/outputs as they becomeavailable; can save data entry time, particularly if end user cando the input, clearly the way of the future, because on-linedata entry can be done on PCsννRemote batch Remote batch -- data are input on-line on several machines,then fed in a batch mode to a centralized database© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 9New Technologies for I/O andNew Technologies for I/O andNew Standards for Data InterchangeNew Standards for Data InterchangeKeyless data entryKeyless data entry -- bar coding, optical character recognition,special keyboards -- very appropriate for large volumes of I/OPen inputPen input -- several products in the market, with mixed successrate for different types of dataElectronic data interchange (EDI)Electronic data interchange (EDI) -- data are transferred throughtelephone lines from one location to anothere.g., credit card chargingImage and Document InterchangeImage and Document Interchange -- like electronic datainterchange, but now whole documents, including images, arepassed arounde.g., law enforcement, bank applicationsHTML/XML/SGML -- markup languages for documents; SGML is ageneral markup languages for documents; HTML is a specialversion used for WWW documents; XML is something in between.© 2003 Jaelson Castro and John MylopoulosCSC340Information Systems Analysis and DesignSystem Design -- 10Choosing a System ArchitectureChoosing a System ArchitectureHere is a series of issues that need to be addressed: Establish batch and on-line computer processes; key consideration:data communication and response timee.g., on-site conference registration Determine process cycles, i.e., when does each process need to rune.g., end-of-month, end-of-project Establish processing locations -- identify user locations (andnumbers),
View Full Document