FSD Lab Manual 2020-21 final PDF

Title FSD Lab Manual 2020-21 final
Course Computer Networks
Institution Indian Institute of Technology Gandhinagar
Pages 82
File Size 2.3 MB
File Type PDF
Total Downloads 135
Total Views 369

Summary

LABORATORY MANUAL####### DEPARTMENT####### OF####### COMPUTER ENGINEERING####### Fundamentals of Software Development####### (3341603)4 ​th​SEMESTERName : _________________________________Enrolment Number:______________________GOVERNMENT POLYTECHNIC, GANDHINAGARDEPARTMENT OF COMPUTER ENGINEERINGCERT...


Description

FSD (3341603)

Computer Engineering

LABORATORY MANUAL DEPARTMENT OF COMPUTER ENGINEERING Fundamentals of Software Development (3341603)

4th SEMESTER Name : _________________________________ Enrolment Number:______________________

pg. 1

FSD (3341603)

Computer Engineering

GOVERNMENT POLYTECHNIC, GANDHINAGAR DEPARTMENT OF COMPUTER ENGINEERING

CERTIFICATE This is to certify that Mr/Ms _______________________________ Enrolment No. __________________of Computer Engineering 4TH Semester has completed his/her term work of Fundamentals of Software Development (3341603) within the four walls of the institute.

Date of Submission:

Signature of Faculty:

pg. 2

Signature of H.O.D:

Fundamentals of Software Development

Course Code: 3341603

GUJARAT TECHNOLOGICAL UNIVERSITY, AHMEDABAD, GUJARAT COURSE CURRICULUM

COURSE TITLE: FUNDAMENTALS OF SOFTWARE DEVELOPMENT (Code: 3341603) Diploma Programmes in which this course is offered

Semester in which offered 4th Semester

Information Technology, Computer Engineering 1.

RATIONALE

Software is the single most important technology on the world stage. Software’s are used by almost all peoples for various purposes such as withdrawing payments from ATM machines, paying bills of electricity, telephone using ECS systems. Airline, railway tickets reservation online etc. People can work with computers flawlessly over a long period of time. One can also easily modify, upgrade the software without any problem or error. This course helps the students to develop, design, analyze, test & implement the software project during the courses in higher semesters of diploma programme.

COMPETENCY

2.

The course content should be taught and implemented with the aim to develop different types of skills so that students are able to acquire following competency: Identify and analyze problems in the field of S/W development



3.

COURSE OUTCOMES:

The theory should be taught and practical should be carried out in such a manner that students are able to acquire different learning out comes in cognitive, psychomotor and affective domain to demonstrate following course outcomes. i. Explain Software and Software Engineering ii. Distinguish various Software Process Models (Approach of Software Development). iii. Analyze gather and prepare Software Requirement Specification for given project. iv. Draw use case diagrams for given modules and design user interface v. Apply code standard and Identify Software Testing Techniques.

4.

Teaching and Examination Scheme Teaching Scheme (In Hours)

Total Credits (L+T+P)

Examination Scheme Theory Marks Practical Marks

L

T

P

C

ESE

PA

ESE

PA

3

0

2

5

70

30

20

30

Total Marks 150

Legends: L-Lecture; T – Tutorial/Teacher Guided Theory Practice; P - Practical; C – Credit ESE - End Semester Examination; PA - Progressive Assessment.

GTU/ NITTTR Bhopal/13-14

Gujarat State

Fundamentals of Software Development

5.

Course Code: 3341603

COURSE DETAILS Unit

Major Learning Outcomes

Topics and Sub-topics

(in cognitive domain) Unit-I Software Development Process

1a Explain Software and Software Engineering.

1b Compare various project process models and use in project planning.

Unit-II

2a Identify software requirement

Software Analysis and Design

2b Analyze and design requirement

2c Develop Activity and use-case diagram

GTU/ NITTTR Bhopal/13-14

1.1 Software  Definition  Characteristics 1.2 Software Myths 1.3 Software Engineering –  A layered Technology approach  Definition  Need 1.4 Software development 1.5 Generic Framework activities, Umbrella activities 1.6 Software Development Models

    

Waterfall Model Incremental Model RAD Model Prototyping Model Spiral Model

2.1 Requirement Gathering and Analysis 2.2 Software Requirement Specification(SRS)  Characteristic  Customer requirement  Functional Requirement 2.3 Design Process  Classification of Design Activities  Classification of Design Methodology 2.4 Cohesion and Coupling 2.5 Data Modeling Concepts  Data Objects  Data Attributes  Relationships  Cardinality and Modality 2.6 Data-Flow Diagrams  Primitive Symbols of DFD  Develop DFD Model of System  Shortcoming of DFD Model 2.7 Scenario-Based Modeling  Writing Use-Cases  Developing an Activity Diagram 2.8 Architectural design decisions  Architectural views Gujarat State

Fundamentals of Software Development

Course Code: 3341603

 

Architectural patterns Application architectures

Unit-III Software Project Management

3a Prepare and manage Schedule for different software development activities

3.1 Responsibility of software project Manager  Job responsibility  Required skill to manage software project 3.2 Metrics for Size Estimation  Line of Code  Function Points 3.3 Project Estimation Technique  Empirical Estimation Technique  Heuristic Technique  Analytical Estimation Technique 3.4 Scheduling  Work breakdown structure  Activity network and critical path Method  Gantt Chart  Project Monitoring and control 3.5 Risk Management  Risk Identification  Risk Assessment  Risk Containment

4a Prepare software Documentation

4.1 Code review  Code Work through  Code Inspection 4.2 Software Documentation  Internal Documentation  External Documentation

4b Prepare test cases and test the software

4.3 Testing  Unit Testing  Black-box Testing  White-box testing 4.4 Test Documentation

Unit-IV Software Coding and testing

6.

SUGGESTED SPECIFICATION TABLE WITH HOURS & MARKS (THEORY)

Unit No. I II III IV

Unit Title

Software Development Process Software Analysis and Design Software Project Management Software Coding and testing

GTU/ NITTTR Bhopal/13-14

Teaching Hours 10 14 10 08

Distribution of Theory Marks R U A Total Level Level Level Marks 10 08 00 18 04 08 10 22 04 08 06 18 02 02 08 12

Gujarat State

Fundamentals of Software Development

Unit No.

Unit Title

Total

Course Code: 3341603

Teaching Hours 42

Distribution of Theory Marks R U A Total Level Level Level Marks 20 26 24 70

Legends: R = Remembrance; U = Understanding; A = Application and above levels (Revised Bloom’s taxonomy)

Note: This specification table shall be treated as a general guideline for students and teachers. The actual distribution of marks in the question paper may vary slightly from above table. 7.

SUGGESTED LIST OF EXERCISES/PRACTICALS

The practical/exercises should be properly designed and implemented with an attempt to develop different types of skills (outcomes in psychomotor and affective domain) so that students are able to acquire the competencies/programme outcomes. Following is the list of practical exercises for guidance. Note: Here only outcomes in psychomotor domain are listed as practical/exercises. However, if these practical/exercises are completed appropriately, they would also lead to development of certain outcomes in affective domain which would in turn lead to development of Course Outcomes related to affective domain. Thus over all development of Programme Outcomes (as given in a common list at the beginning of curriculum document for this programme) would be assured. Faculty should refer to that common list and should ensure that students also acquire outcomes in affective domain which are required for overall achievement of Programme Outcomes/Course Outcomes.

8.

S. No.

Unit No.

1

I

2 3 4 5 6 7 8 9 10

II II II II II II II III IV

Practical Exercises (Outcomes’ in Psychomotor Domain) Identify the development model for software with proper explanation Gather requirement for software. Prepare SRS Document for Software Design Activity Diagram for system Design Use-case Diagram for system Design Data Dictionary of system Prepare E-R Diagram of System Design Data Flow Diagram of system Prepare Gantt chart of system Prepare suitable test case for system testing. Total

Hrs. required 02 04 04 02 02 04 02 04 02 02 28

SUGGESTED LIST OF STUDENT ACTIVITIES Following is the list of proposed student activities like: i.Prepare charts for various models, SDLC life cycles, UML notations etc. ii.Prepare SRS documents based on case study. iii.Discuss various case studies available on internet.

GTU/ NITTTR Bhopal/13-14

Gujarat State

Fundamentals of Software Development

Course Code: 3341603

9.

SPECIAL INSTRUCTIONAL STRATEGIES (if any) Application for practical will be assigned to the students by the subject faculty and students will work in a group of 3 – 5

10.

SUGGESTED LEARNING RESOURCES

A)

List of Books

S. No.

Title of Book

Software Engineering: A Practitioner's Approach 2. Software Engineering 1.

3. 4.

5.

Fundamentals of Software Engineering Structured System analysis and Design Object Oriented Modeling and design with UML, second edition

Author

Publication

Roger S. Pressman

Tata McGraw Hill,

Ian Somerville

Pearson education PHI

Rajib Mall

PHI

Madhulika JAin

Bph Publication

Michael R Blaha and James R Rambaugh

Pearson Prentice Hall

B) List of Major Equipment/ Instrument with Broad Specifications Sufficient number of PCs are required according to number of students in the class for practicing development and maintenance of different software. C)

List of Software/Learning Websites

i. ii.

http://nptel.iitm.ac.in/ http://www.mhhe.com/engcs/compsci/pressman/student/olc/cases.mhtml iii. iii http://forum.jntuworld.com/showthread.php?3841-SOFTWARE-ENGINEERING-(SE)iv.

v.

11.

Notes- All-8-Units Ppts: www.facweb.iitkgp.ernet.in/~spp/LECT1.ppt Ppts: http://www.phindia.com/rajibmall/chapters/

COURSE CURRICULUM DEVELOPMENT COMMITTEE Faculty Members from Polytechnics  Prof. Sunil K. Paryani, Lecturer IT, Govt. Polytechnic, Ahmadabad  Prof. Bhadresh G. Prajapati, Lecturer IT, Govt. Polytechnic, Himatnagar Coordinator and Faculty Members from NITTTR Bhopal Dr. Shailendra Singh, HOD, Department of Computer Engineering and Application  Dr.K.J.Mathai, Associate Professor, Department of Computer Engineering and Application



GTU/ NITTTR Bhopal/13-14

Gujarat State

FSD (3341603)

Computer Engineering

COURSE OUTCOMES: ● Program: Diploma ● Discipline: Computer Engineering ● Semester: 4rt ● Course Name: Fundamentals of Software Development ● Course Code: 3341603 

1

pg. 8

Course Justification Outcome CO1 EXPLORE SOFTWARE ENGINEERING MODEL.

2

CO2

3

CO3

4

CO4

5

CO5

USE DIFFERENT TECHNIQUES OF REQUIREMENT GATHERING TO COLLECT REQUIREMENTS FROM CLIENT AND CHOOSE WHICH MODEL IS BEST SUITABLE FOR CLIENT AND PREPARE SRS (SOFTWARE REQUIREMENT SPECIFICATION). PRACTICE OF MAKING SOFTWARE DESIGN DOCUMENTS ACCORDING TO SOFTWARE MODEL. EXPLORE MANAGERIAL ACTIVITIES AND PREPARE AND MANAGE SCHEDULE FOR DIFFERENT SOFTWARE DEVELOPMENT ACTIVITIES. PRACTICE OF MAKING CODE REVIEW, TESTING AND MAINTENANCE PLAN FOR SOFTWARE.

FSD (3341603)

Computer Engineering

Index Sr. No

1

AIM

Explain basic terms of software engineering. To study about different SDLC models.

2

2. 1 To study about waterfall model. 2. 2 To study about spiral model. 2. 3 To study about prototype model.

3

Prepare SRS document for the system.

4

Design DFD (level 0 and 1) for a system.

5

Design use-case diagram for the system.

6

Design Activity diagram for the system.

7

To study about data modeling concepts.

8

Design Gantt chart for the given project.

9

Prepare CFG for a simple C program (Write a C program for same).

10

pg. 9

Design suitable test cases for a system.

Date

Page No

Sign

Grade / Marks

FSD (3341603)

Computer Engineering

PRACTICAL – 1 AIM:

Explain basic terms of software engineering

1. Define Software, system software and application software.

2. Explain software characteristics in brief.

pg. 10

FSD (3341603)

3. Define software engineering (IEEE definition).

4. Explain the need of software engineering.

pg. 11

Computer Engineering

FSD (3341603)

Computer Engineering

5. Define SDLC. List various software development models.

6. Draw the figure of SDLC.

Grade: _____ pg. 12

Teacher’s Sign: ___________

FSD (3341603)

Computer Engineering

PRACTICAL – 2.1 (To study about different SDLC models) AIM:

To study about waterfall model

● It is also called ‘traditional waterfall model’ or ‘conventional waterfall model’ or ‘linear sequential life cycle model’. ● It’s just a theoretical way of developing s/w. All other life cycle models are essentially derived from it. Figure of waterfall model:

pg. 13

FSD (3341603)

pg. 14

Computer Engineering

FSD (3341603)

pg. 15

Computer Engineering

FSD (3341603)

Grade: _____ pg. 16

Computer Engineering

Teacher’s Sign: ___________

FSD (3341603)

Computer Engineering

PRACTICAL – 2.2 AIM: ●

To study about spiral model This model is proposed by Boehm in 1986. Figure of spiral model

● Each loop of the spiral represents a phase of the software process: the innermost loop might be concerned with system feasibility, the next loop with system requirements definition, the next one with system design, and so on ● Number of phases is not fixed in this model. ● This model is more flexible compared with other models. ● Each loop in the spiral is split into four sectors (quadrants)

pg. 17

FSD (3341603)

Computer Engineering

Explain four quadrants of spiral model. Also write its advantages, disadvantages and applications.

pg. 18

FSD (3341603)

pg. 19

Computer Engineering

FSD (3341603)

pg. 20

Computer Engineering

FSD (3341603)

Computer Engineering

Q. Justify: Spiral model can be viewed as a Meta model.

Grade: _____ pg. 21

Teacher’s Sign: _________

FSD (3341603)

Computer Engineering

PRACTICAL – 2.3 AIM:

To study about prototype model

● Prototype is a working physical system or subsystem. Prototype is nothing but a toy implementation of a system. ● In this model, before starting actual development, a working prototype of the system should first be built ● A prototype is actually a partial developed product. ● Compared to the actual software, a prototype usually have o limited functional capabilities o low reliability o inefficient performance ● Prototype usually built using several shortcuts, and these shortcuts might be inefficient, inaccurate or dummy functions. ● Prototype model is very useful in developing GUI part of system. ● A prototype usually turns out to be a very crude version (અપરપકવ, કાુ) of the actual system. Draw the figure of prototype mode

pg. 22

FSD (3341603)

Computer Engineering

Explain working of prototype model and also write its advantages, disadvantages and applications.

pg. 23

FSD (3341603)

Computer Engineering

Q. Differentiate between program and software product.

Grade: _____ pg. 24

Teacher’s Sign: ___________

FSD (3341603)

Computer Engineering

PRACTICAL – 3 AIM:

Prepare SRS document for the system

● SRS is the output of requirement gathering and analysis activity which is created by system analyst. ● SRS is a detailed description of the software that is to be developed. It describes the complete behaviour the system. ● SRS describes ‘what’ the proposed system should do without describing ‘how’ the software will do (what part, not how). ● The SRS document is known as black-box specification, because: i. In SRS, internal details of the system are not known (as SRS doesn’t specify how the system will work). ii. Only its visible external (i.e. input/output) behavior is documented.

Benefits of SRS (Features of SRS) ● It works as an input to the design phase. ● It enhances communication between customer and developer because user requirements are expressed in natural language. ● Developers can get the idea what exactly the customer wants. ● Format of forms and rough screen prints can also be represented in SRS. ● As it is working as an agreement between user and developer, we can get the partial satisfaction of the end user for the final product.

Contents of the SRS document ● An SRS should clearly document the following three things: i.

Functional requirements of the system

ii. Non-functional requirements of the system iii. Constraint (restriction) on the system Characteristics of a good SRS: It should be concise, complete, consistent, structured, conceptual integrity, black box view,verifiable, adaptable, maintainable, portable, unambiguous and traceable. As we have seen, there are three main contents of SRS, but here in practical purpose, we will . concentrate only on ‘Functional requirements’ of the system, and we will ignore the ‘nonfunctional requirements and constraints’. pg. 25

.

FSD (3341603)

Computer Engineering

 Example of SRS: operations at ATM Functional requirements (likely) of ATM system ฀ Withdraw cash ฀ Deposit cash ฀ Check balance ฀ Link aadhaar card ฀ Print mini statement ฀ Change pin number Etc. These all are the Functional Requirements for SRS.

฀Note: SRS is very much important and it should be key point for your project development in designing side, because then after we can draw diagrams like DFD, Use case, Activity etc. For example here we are considering requirement as withdraw cash. R1: withdraw cash Description: this function first determines the type of operation that user wants to d...


Similar Free PDFs