Moving to Design
The group 1 topic is all about Moving to design. That topic was the continuation of the topics discussed before in our sad 1. The group one had a theory discussion and also application sharing. In the theory discussion they discussed the issues related to managing and coordinating the design phase. They also explain the major components and levels of design. They also describe each design phase activity. They also describe the common deployment environments and matching application architectures. In this topic chapter they explained and completes the transition from analysis to design also they discusses issues related to design of new system and describes all design phase activities, lastly they describes network and architecture design. In the application sharing they told us that they went to samulco they told us about the architecture of the company system and the structure of the company network. On understanding the elements of design, the reporters discussed that design is a process of describing, organizing, and structuring system components at architectural design level and detailed design level. They also give points that in having a design we must focused on construction like developing blueprints and we always keep on mind the three questions: what components require systems design, what are inputs to and outputs of design process, how is systems design done.
Talking about moving from Analysis to Design is an interesting topic, design converts functional models from analysis into models that represent the solution. Design must focused on technical issues it requires less user involvement than analysis. Design may use structured or OO approaches, database can be relational, OO or hybrid. Systems design is the process or art of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements. One could see it as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering. System design is to deliver the requirements as specified in the feasibility report. The main objectives of the design are first practicality, second efficiency, third cost, fourth flexibility, and fifth security. System design contains Logical Design and Physical Designing; logical designing describes the structure and characteristics or features, like output, input, files, database and procedures. The physical design, are those who follows the logical design, actual software and a working system. There will be constraints like Hardware, Software, Cost, Time and Interfaces. The processing techniques are batch processing, real-time, online, and lastly the combination of all. Structured design is a data flow methodology. The graphical representation of data flow, communication and defining the modules and their relationship with each is known as Structure Chart. This method decomposes and modularizes the system so that the complexity and manageability will come down. Thus reducing the intuitive reasoning and promotes the maintainable provable systems. This type of design follows top-down and hierarchy, which will have one single entry and single exit, The advantages of this method are first critical interfaces are tested first. Second, early versions of the design, through incomplete are useful enough to resemble the real system. Third, structuring provides control and improves morale. Fourth, the procedural characteristics define the order that determines processing.
The major system design activities are first DB design, second, program design, third, system and program test preparation, fourth, system interface specification, fifth, audit consideration, and lastly audit control and documentation control. The major design process parts are O/p design, I/p design, File Design, Procedure design, Computer design, Non-computer design, and Control design. These parts are inter-dependent on each other. System Specifications is a document, which will have a result of system design process, it serves as a Blue print for the project development and maintenance. Prototype is a working system that is developed to test ideas and assumptions about a new system. Objectives of Input Design are controlling amount of I/p, avoiding delay, avoiding errors in data, avoiding extra steps, and keeping the process simple. Major concerns about the input: 1. What input is needed 2. How & where is i/p is created 3. How should source documents designed 4. What format should be used for Input 5. What medium should be used to store data. Input Verification can be done using key verification, use of self checking numbers, visual display, hash total, checking between range, reasonableness test, verification of codes, verification of data type, verify combination data. Sequence check concerns for designing a CRT i/p screen. 1. Easy to use, 2. Improved processing speed, 3. Menu driven Approach, 4. Highlighting the information on screen, 5. Usage of appropriate colors, 6. Editing thru display screens. Types of Outputs are application o/p and also operating O/p. Output devices are VDU, Printer, Computer output Microfilm (COM). Output Design Consideration are done using following points: Type of user and purpose, that has content and format. Frequency and times that has volume and sequence quality and type of stationary .
Systems are created to solve problems. One can think of the systems approach as an organized way of dealing with a problem. In this dynamic world, The subject System Analysis and Design, mainly deals with the software development activities. Assuming that a new system is to be developed, the next phase is system analysis. Analysis involved a detailed study of the current system, leading to specifications of a new system. Analysis is a detailed study of various operations performed by a system and their relationships within and outside the system. During analysis, data are collected on the available files, decision points and transactions handled by the present system. Interviews, on-site observation and questionnaire are the tools used for system analysis. Using the following steps it becomes easy to draw the exact boundary of the new system under consideration: Keeping in view the problems and new requirements. Workout the pros and cons including new areas of the system
All procedures, requirements must be analyzed and documented in the form of detailed data flow diagrams (DFDs), data dictionary, logical data structures and miniature specifications. System Analysis also includes sub-dividing of complex process involving the entire system, identification of data store and manual processes.
The main points to be discussed in system analysis are: Specification of what the new system is to accomplish based on the user requirements. Functional hierarchy showing the functions to be performed by the new system and their relationship with each other. Function network which are similar to function hierarchy but they highlight the those functions which are common to more than one procedure. List of attributes of the entities - these are the data items which need to be held about each entity (record)
Let’s talk about System Design. Based on the user requirements and the detailed analysis of a new system, the new system must be designed. This is the phase of system designing. It is a most crucial phase in the development of a system. Normally, the design proceeds in two stages : preliminary or general design; Structure or detailed design.
Preliminary or general design: In the preliminary or general design, the features of the new system are specified. The costs of implementing these features and the benefits to be derived are estimated. If the project is still considered to be feasible, we move to the detailed design stage.
Structure or Detailed design: In the detailed design stage, computer oriented work begins in earnest. At this stage, the design of the system becomes more structured. Structure design is a blue print of a computer system solution to a given problem having the same components and inter-relationship among the same components as the original problem. Input, output and processing specifications are drawn up in detail. In the design stage, the programming language and the platform in which the new system will run are also decided.
There are several tools and techniques used for designing. These tools and techniques are: Flowchart, Data flow diagram (DFDs), Data dictionary, Structured English, Decision table, Decision tree.
Points to be considered while designing a Menu, it must be first, hierarchical. Second, termination. Third, skipping Menu. Fourth, security control. Types of Forms are action, memory and report. Computer Graphics are of three types:1. Presentation graphics, 2. Decision support Graphics, 3. Graphics Hardware/software. Different types of files are master, transaction, backup, archive, table, report, dump and library. File organizations are sequential /relational, random, indexed. Major criteria for selecting a File organization are 1. Method of processing of file, 2. Size of data, 3. File inquiry capability, 4. File volatility, 5. Response time, 6. Activity ratio. A database is a set of logically related files organized to facilitate access by one or more applications programs & to minimize data redundancy. Main objectives of DB are 1. Eliminate the redundancy of data, 2. Data integrity, 3. Share data among users.
The logical design of a system pertains to an abstract representation of the data flows, inputs and outputs of the system. This is often conducted via modeling, which involves a simplistic (and sometimes graphical) representation of an actual system. In the context of systems design, modeling can undertake the following forms, including: Data flow diagrams, Entity Life Histories, Entity Relationship Diagrams.
The physical design relates to the actual input and output processes of the system. This is laid down in terms of how data is inputted into a system, how it is verified/authenticated, how it is processed, and how it is displayed as output.
Physical design, in this context, does not refer to the tangible physical design of an information system. To use an analogy, a personal computer's physical design involves input via a keyboard, processing within the CPU, and output via a monitor, printer, and the like. It would not concern the actual layout of the tangible hardware, which for a PC would be a monitor, CPU, motherboard, hard drive, modems, video/graphics cards, USB slots, and the like.
User interface issues are Network specialists establish network based on strategic plan, Project team typically integrates system into existing network, Technical requirements have to do with communication via networks, Technical issues handled by network specialists: Reliability, security, throughput, synchronization. Design the Application Architecture specify how system activities are carried out, described during system analysis as logical models, after design alternative is selected, detailed computer processing is designed as physical models such as: physical data flow diagrams, structure charts, interaction diagrams, approach varies depending on development and deployment environments. User interface quality is critical aspect of system. Design of user interface defines how user interacts with system. Interaction in GUI like windows, dialog boxes, mouse interaction, sound, video, voice commands. Systems interfaces enable systems to share and exchange information. Internal organization systems interfaces with system outside organization. New system interfacing with package application that organization has purchased and installed. System interfaces can be complex. Organization needs very specialized technical skills to work on these interfaces. System analysis data model used to create physical database model. Collection of traditional computer files, relational database, and/or object-oriented databases. Technical requirements, such as response times, determine database performance needs. Design work might involve: Performance tuning, Integration between new and existing databases. Prototypes confirm design choices, these choices are Database, Network architecture, Controls, and Programming environment. Rapid application development’s (RAD) design prototypes evolve into finished system. Final design activity to ensure system has adequate safeguards (system controls) to protect organizational assets. Controls are needed for all other design activities. User interface – limit access to authorized users. System interface – protect from other systems. Application architecture – record transactions. Database – protect from software/hardware failure. Network design – protect communications.
As project team grows – structure may change. There are coordinating Information such as; CASE tools and central repository, team communication and information coordination, track open items and unresolved issues. In deployment environment definition bridges analysis and design there are hardware, System software, and Networking. They are the common deployment environments in which system will operate and related design patterns and architectures for application software. A Single-computer architecture is a mainframe-based, it is Limited by single machine capacity. A clustered and multi-computer architecture is a group of computers to provide processing and data storage capacity and it is a cluster acts as a single system. A Multi computer hardware/OS can be less similar than clustered. Centralized and Distributed Architecture distributes system across several computers and locations, it relies on communication networks for geographic connectivity. Client-server architecture dominant model for distributed computing. Computer Networks is a set of transmission lines, specialized hardware, and communication protocols, it enables communication among different users and computer systems. Local area network (LAN) less than one kilometer long – connects computers within single building. Wide area network (WAN) over one kilometer long – implies much greater, global, distances. Router – directs information within network. Internet – Global collection of networks that use TCP/IP networking protocols. Intranets are private networks using same TCP/IP protocol as the Internet.
Intranet that has been extended outside the organization. Application Architecture consists of standards and tools used in an organization, its important components are language environment and expertise, existing CASE tools and methodologies, required interfaces to other systems, operating system environment, database management system environment. Client-Server divides programs into two types, the server and the client. Server – manages information system resources or provides well defined services for client. Client – communicates with server to request resources or services. It’s advantage is the deployment flexibility, its location also is an advantage, also the scalability, maintainability. It’s disadvantage potential performance, security, and reliability issues from network communication
There are Three-Layer Client-Server Architecture. Layers can reside on one processor or be distributed to multiple processors. The three layers are; Data layer – manages stored data in databases, business logic layer – implements rules and procedures of business processing, view layer – accepts user input and formats and displays processing results
In Internet and Web-based Application Architecture, it is given much attention that web is complex example of client-server architecture. Can use Web protocols and browsers as application interfaces. The benefits of it are accessibility, Low-cost communication, Widely implemented standards. In the Network Design they explain integrated network needs of new system with existing network infrastructure. They describe processing activity and network connectivity at each system location. Describe communications protocols and middleware that connects layers. They also told us we must ensure that network capacity is sufficient and look at data size per access type and average and Peak number of access per minute or hour.
UML stands for Unified Modeling Language. It represents a unification of the concepts. The goal is for UML to become a common language for creating models of object oriented computer software. A class icon is simply a rectangle divided into three compartments. The topmost compartment contains the name of the class. The middle compartment contains a list of attributes (member variables), and the bottom compartment contains a list of operations (member functions). In many diagrams, the bottom two compartments are omitted. Even when they are present, they typically do not show every attribute and operations. The goal is to show only those attributes and operations that are useful for the particular diagram. This ability to abbreviate an icon is one of the hallmarks of UML. Each diagram has a particular purpose. That purpose may be to highlight on particular part of the system, or it may be to illuminate the system in general. The class icons in such diagrams are abbreviated as necessary. There is typically never a need to show every attribute and operation of a class on any diagram. A peculiar triangular arrowhead depicts the inheritance relationship in UML. This arrowhead, that looks rather like a slice of pizza, points to the base class. One or more lines proceed from the base of the arrowhead connecting it to the derived classes. The weak form of aggregation is denoted with an open diamond. This relationship denotes that the aggregate class (the class with the white diamond touching it) is in some way the “whole”, and the other class in the relationship is somehow “part” of that whole. What is the difference between an aggregation and an association? The difference is one of implication. Aggregation denotes whole/part relationships whereas associations do not. However, there is not likely to be much difference in the way that the two relationships are implemented. That is, it would be very difficult to look at the code and determine whether a particular relationship ought to be aggregation or association. Sometimes the relationship between a two classes is very weak. They are not implemented with member variables at all. Rather they might be implemented as member function arguments. Use Case is set of scenarios related by a common actor and a goal. A description of sequences of actions performed by a given system to produce a result for an actor. Use cases specify the expected behavior what, and not the exact method of making it happen how. Use cases are created based on identified functional requirements but are not mapped one-to-one to requirements. Use cases once specified can be denoted using a clear and precise visual modeling language such as UML. Actors represent roles that humans, hardware devices, or external systems play while interacting with a given system. They are not part of the system and are situated outside of the system boundary. Actors may be both at input and output ends of a use case
To sum up all systems design is process of organizing and structuring components of system to allow construction (programming) of new system. Design phase of project consists of activities that relate to design of components of new system. Application architecture, user interfaces, system interfaces, database, network diagram, system controls. Prototyping may be required to specify any part or all of the design. Inputs to design activities are diagrams, or models, built during analysis. Outputs of design are also set of diagrams, or models, to describe architecture of new system and detailed logic of programming components. Inputs, design activities, and outputs are different depending on whether a structured approach or an object-oriented approach is used. Architectural design adapts to development environment and decomposes design into layers.