GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering#
Level: Diploma#
Branch: Information Technology
Course / Subject Code :
DI02016021
Course / Subject Name : Fundamentals of Software Development
w. e. f. Academic Year:
2024-2025
Semester:
2 nd
Category of the Course:
ESC
| Prerequisite: | Basic Computer Knowledge including logical reasoning and decision-making skills. |
|---|---|
| Rationale: | One of the important products in the field of Information Technology is a Software. The software has changed every aspect of our life and made available everything of our finger tips. It has revolutionized every area of human life like education, health, defense and security, finance and business, travel, social life, politics, entertainment and so on. Thus, a software increases the responsibilities for the developer. The software development process in the industry is also changing rapidly. This course guides the students to analyze, design, implement and test the software product with proper documentation during the courses in higher semesters of diploma program. At the end of the course, the student will develop adequate skills of documentation and will understand the application of concepts in software development. |
Course Outcome:#
After Completion of the Course, Student will able to:
| No | Course Outcomes | RBT Level |
|---|---|---|
| Explain software development activities. | Understand | 01 |
| Select appropriate software process model for software project development. | Apply | 02 |
| Prepare software requirement specification (SRS) document for a software project. | Apply | 03 |
| Organize software project development schedule. | Apply | 04 |
| Prepare a design of the software with user interface. | Apply | 05 |
| Apply testing on software product with proper test cases. | Apply | 06 |
*Revised Bloom’s Taxonomy (RBT)
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering Level: Diploma Branch: Information Technology Course / Subject Code : DI02016021
Course / Subject Name : Fundamentals of Software Development
Teaching and Examination Scheme:#
| Teaching Scheme (in Hours) | Teaching Scheme (in Hours) | Teaching Scheme (in Hours) | Total Credits L+T+ (PR/2) | Assessment Pattern and Marks | Assessment Pattern and Marks | Assessment Pattern and Marks | Assessment Pattern and Marks | Total |
|---|---|---|---|---|---|---|---|---|
| L | T | PR | C | Theory | Theory | Tutorial / Practical | Tutorial / Practical | Marks |
| ESE (E) | PA / CA (M) | PA/CA (I) | ESE (V) | |||||
| 3 | 0 | 0 | 3 | 70 | 30 | 00 | 00 | 100 |
Course Content:#
| Unit No. | Content | No. of Hours | % of Weightage |
|---|---|---|---|
| 1 | Introduction Software Development Process 1.1 Software - definition, characteristics 1.2 Characteristics of Web-based application 1.3 Software engineering - A layered technology 1.4 Software Myths 1.5 Software Process framework and umbrella activities | 03 | 06 |
| 2 | Software Life cycle models 2.1 Select Software process model for project development ● Waterfall model ● Incremental Model ● Prototyping Model ● Spiral Model ● Rapid Application Development (RAD) 2.2 Agile Development ● Agile Process & Principles | 10 | 23 |
| 3 | Software Requirement Analysis 3.1 Identify software requirements ● Requirement gathering - collect requirements from stakeholders ● Analyze the requirements 3.2 Prepare Software Requirement Specifications (SRS) ● Importance of SRS ● Users of SRS ● Characteristics of good & bad SRS 3.3 Types of Requirements in SRS | 8 | 17 |
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering#
Level: Diploma#
Branch: Information Technology
Course / Subject Code :
DI02016021
Course / Subject Name : Fundamentals of Software Development
| ● Functional Requirements ● Non-functional Requirements | |||
|---|---|---|---|
| 4 | Software Project Management 4.1 Responsibility of software project Manager ● Job responsibility ● Necessary skill to manage software projects 4.2 Scheduling ● Work breakdown structure ● Activity network and critical path Method ● PERT chart ● Gantt chart 4.3 Risk Management ● Risk Identification: Project, Technical, Business | 8 | 17 |
| 5 | ● Risk Mitigation Software Design 5.1 Software design process ● Design activities ● Design methodologies 5.2 Introduction of Cohesion 5.3 Introduction of Coupling 5.4 Data Flow Diagram (DFD) Model ● Primitive Symbols of DFD ● Levels of DFD ● Design DFD Model of System ● Shortcomings of DFD Model 5.5 Introduction of Data dictionary 5.6 User Interface design ● Characteristics of good UI ● Types of UI: command-based, menu-based Software Testing | 10 | 23 |
| 6 | 6.1 Introduction of Testing 6.2 Test cases and test suit 6.3 Introduction to Verification and Validation | 06 | 14 |
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering Level: Diploma#
Branch: Information Technology#
Course / Subject Code :
DI02016021
Course / Subject Name : Fundamentals of Software Development
| 6.4 | Unit testing | ||
|---|---|---|---|
| 6.5 | Black-box testing | ||
| 6.6 | White-box testing | ||
| Total | Total | 45 | 100 |
Suggested Specification Table with Marks (Theory):#
| Distribution of Theory Marks | Distribution of Theory Marks | Distribution of Theory Marks | Distribution of Theory Marks | Distribution of Theory Marks | Distribution of Theory Marks |
|---|---|---|---|---|---|
| R Level | U Level | A Level | N Level | E Level | C Level |
| 16 | 28 | 26 | - | - | - |
Where R: Remember; U: Understanding; A: Application, N: Analyze and E: Evaluate C: Create (as per Revised Bloom’s Taxonomy)
References/Suggested Learning Resources:#
(a) Books:#
| Sr. No. | Title of Book | Author | Publication with place, year and ISBN |
|---|---|---|---|
| 1 | Software Engineering: A Practitioner’s Approach | Roger S. Pressman | Tata McGraw Hill, New Delhi 978-9353165710 |
| 2 | Fundamentals of Software Engineering | Rajib Mall | PHI Learning Private Limited, New Delhi 978-9388028028 |
| 3 | Software Engineering | Ian Sommerville | Pearson Education, India 978-9332582699 |
| 4 | Object - Oriented Modeling and Design With UML, 2e | Michael Blaha, James Rumbaugh | Pearson Education, India 978-8131711064 |
(b) Open-source software and website:#
- https://nptel.ac.in/courses/106101061/
- https://www.mhhe.com/engcs/compsci/pressman/student/olc/cases.mhtml
- http://www.foreui.com/ (for User interface)
- https://www.smartdraw.com/ (for all types of diagrams)
Suggested Project List:#
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering#
Level: Diploma#
Branch: Information Technology
Course / Subject Code :
DI02016021
Course / Subject Name : Fundamentals of Software Development
The project could be industry application based, internet-based, workshop-based, laboratory-based or field-based. Each project should encompass two or more COs which are in fact, an integration of UOs and ADOs. Each student will have to maintain a dated work diary consisting of individual contributions in the project work and give a seminar presentation of it before submission. The total duration of the project should not be less than 16 (sixteen) student engagement hours during the course. The student ought to submit a project by the end of the semester to develop the industryoriented COs.
A suggestive list of projects is given here. This has to match the competency and the COs. Similar projects could be added by the concerned course teacher:
- Study the SRS document of project from any software company and enlist functional as well as non-functional requirements.
- Prepare the user interface using online tools of the known system.
- Design DFD (context, level-1/2) and data dictionary of the selected Project.
- Search any automated test case generator and prepare test suits for the system.
Suggested Activities for Students:#
Other than the classroom learning, following are the suggested student-related co-curricular activities which can be undertaken to accelerate the attainment of the various outcomes in this course: Students should conduct following activities in group and prepare reports of about 5 pages for each activity, also collect/record physical evidences for their (student’s) portfolio which will be useful for their placement interviews:
- a) Give a seminar on any relevant topics.
- b) Suggest a small existing software/website to students and discuss on betterment of its user-interface design.
- c) Visit a software company and observe their documents and discuss their practices adopted for software development.
- d) Prepare SRS documents based on Case studies.

