bsc sem4 software engineering assignment 1 ans

5
K u v e m p u U n i v e r s i t y 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. © NIIT Page 1 of 5

Upload: mukesh-kumar

Post on 29-Nov-2014

317 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BSc Sem4 Software Engineering Assignment 1 Ans

K u v e m p u U n i v e r s i t y

Assignment 1 for B.Sc. (IT) & M.Sc. (IT) Courses(Academic Year 2005 - II Cycle)

Subject: Software EngineeringSubject 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

6. Give the IEEE definition of software requirements analysis.

© NIIT Page 1 of 4

Page 2: BSc Sem4 Software Engineering Assignment 1 Ans

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.

© NIIT Page 2 of 4

Page 3: BSc Sem4 Software Engineering Assignment 1 Ans

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

© NIIT Page 3 of 4

Page 4: BSc Sem4 Software Engineering Assignment 1 Ans

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.

© NIIT Page 4 of 4