(a) Briefly, describe the following terms with respect to software design.
(i) Structured/Modular Programming
(ii) Top-Down Design & Bottom-up implementation
(iii) Flow Chart (iv) Design Team
(iv) Data Flow Diagram
(v) Software Documentation
(b) Design and draw the circuit diagram for an address decoder that provides an active low chip select for each of the two address ranges $C400-$C7FF and $C800-$CFFF. Show your working for the fixed address part leading to the circuit design.
(c) With the aid of a diagram, describe the sequence of events which take place in a microcomputer system when a DMA transfer is made between memory and input/output using a DMA Controller.
Expert Answer
i) Structural programming is also called as modular programming. in structural programming a single program is divided into indepandent modules which can be interchangeable such that each module will execute only ceratin functionality. It is a top down approach
Java, c# and ada are example of structuaral progrmming
ii)
Top down approach
also called as step wise design. is the method of decomposing the module into multiple module, where each divided module will be refined and will be written so as to perform a single task and thus combining each module the whole system will work as a whole.
top design system starts with the gernalised model of the whole system and then defining the specific part of the system
it is useful when the system is to be built from scratch
Bottom up – it is start with the basic component that is necessary for the system. The higher level of the components are created by composing the lower level components. it is usefull when we want to create a seperate system from the existing system
iii) a flowchart represents the flow of process or the workflow. Different boxes and the direction of the arrow represent the flow of the information.
iv) design team represent the team that is responsible to develop the system. They are responsible to get all the requirement of the system, and on the basis of the gathered requirements develop the design document which whill include both the database design the code flow.
the coding or the implementation team will refer the design document developed using the design document to create the implementation of the system
v) A data flow diagram (DFD) is a graphical representation of the flow of data through a system, modelling its process aspects. A DFD is often used as a preliminary step to create an overview of the system without going into great detail DFDs can also be used for the visualization of data processing.
vi) software documentation will refer to the document that explains all the components of the system , it tells how to use it ,