This action might not be possible to undo. Are you sure you want to continue?
Assignment 1 for B.Sc. (IT) & M.Sc. (IT) Courses (Academic Year 2005 - II Cycle) Subject: Software Engineering Subject Code: BSIT - 44 Assignment: TA (Compulsory)
1. What is software engineering? Software engineering is a discipline, which use the existing tools and methods of software development and set them in a line to develop software. There are so many experts’ definitions but the better one is come from IEEEE. “ The application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software, that is the application of engineering to software.” 2. List the three generic phases of software engineering. Three generic phase of software engineering are listed as below : • • • The definition phase The development phase The maintenance phase
3. What is the main limitation of the waterfall model? The main weakness of Waterfall model is that it requires complete set of user’s requirements before designing of a S/W. And it is difficult to give full requirements of user because requirements keep changing according to time and needs. 4. What is the development approach followed by prototype model? The development approach followed in prototype model is quick and dirty. Means in this model the focus is on quicker development rather than on the quality. 5. Give two examples for evolutionary software process model. Examples for evolutionary software process model are , a. The Incremental model b. The Spiral model
Page 1 of 4
6. Give the IEEE definition of software requirements analysis. According to IEEE a requirement is “ 1) a condition of capability needed by a user to solve a problem or achieve; 2) a condition or a capability must be met or possessed by a system…., to satisfy a contract, standard, specification or other formally imposed document….” [ IEE87 ]. 7. What is a data dictionary? The Data Dictionary is a repository of various data flows defined in a DFD (Data flow Diagram). It states the structure of each data flow in DFD. The components in the structure of a data flow may also be specified in the data dictionary, as well as the structure of files. It used three notations to defines data structure which are given below : 1. + (plus) represents a sequence or composition. 2. | (vertical bar) represents selection means one OR the other end. 3. * represents repetition means one or more occurrences. 8. What is throwaway prototyping? Throwaway Prototyping developed by one of The Software Process Model --- The Prototype Model for overcomes the limitations of The Waterfall model. Instead of freezing the requirements before the design or coding phase this prototype build to help understand the requirements and it is developed based on the currently known requirements. 9. The design process for the software has two levels. What are they? The design process for the software has two levels :
i. System Design or Top – Level Design ii. Detailed Design or Logic Design
10. What is Fan-in and Fan-out with reference to program structure? Fan – in indicates how many modules directly control a given module. Fan – out is a measure of the number of modules that are directly controlled by another module.
11. With a neat block diagram explain the importance of waterfall model.
Page 2 of 4
The Waterfall Model is the simplest and widely used model for software developing. The Phases involved in the S/W development are organized in a order. In this model a project begins with feasibility analysis. After successfully demonstrating the feasibility of a project the requirement analysis and planning for that project begins. When this process ends design starts and after design period passed successfully coding process start working. Then the system tests this coding for any fault or error and when testing process satisfied with coding system is installed. After all these
Page 3 of 4
process the regular operation and maintenance of the system start working. In the fig given below you can see these phases in a linear order. The Phases of Software Developing of this model are : The process of S/W development consists of a linear set of distinct phases. Feasibility Analysis Requirement Analysis Project Planning System Design Detailed Design Coding and Unit Testing System Integration and Unit Testing Each phase is distinct and is mandatory for every project irrespective of project size. Every phase has a well-defined entry and exit criteria. At every phase there is provision for verification and validation that helps in reducing the errors. The importance of this model is that it allows for communication between the customer and developer and specifies what and when the product will be delivered and at what cost.
Page 4 of 4