Software Engineering Syllabus – MSBTE Diploma (Course Code: 315323) | All Clear Engineers

Software Engineering Syllabus – MSBTE Diploma (Course Code: 315323)

Programmes: Computer Technology/ Computer Engineering/ Computer Science & Engineering/ Computer Hardware & Maintenance/ Computer Science & Information Technology/ Computer Science
Programme Code: CM/ CO/ CW/ HA/ IH/ SE
Semester: Fifth | Credits: 9 | Total Marks: 175

The Software Engineering syllabus (Course Code: 315323) under MSBTE K Scheme equips diploma students with skills to develop high-quality software. For example, students learn to apply disciplined approaches to design, develop, and test software, ensuring reliability and maintainability. Additionally, this course covers essential principles and tools for professional software development. Learn more at GeeksforGeeks.

I. Rationale

Software Engineering is the foundation for professional processes to be followed for designing, developing, testing and maintaining software involving principles, different techniques, and practices for software development. Therefore, this course enables students to develop requisite abilities to follow systemic and disciplined approach to software development that aims to create high quality, reliable and maintainable software.

II. Industry / Employer Expected Outcome

Apply software engineering principles to develop software product.

III. Course Outcomes for Software Engineering

Software Engineering prepares students to achieve specific outcomes. Consequently, the following course outcomes outline the skills students will demonstrate.

Code Learning Outcome
CO1 Select suitable software development process model
CO2 Prepare software requirement specification.
CO3 Construct different Software design models
CO4 Apply different planning and cost estimation techniques for a software product
CO5 Apply project management techniques in software development.
CO6 Use quality assurance principles in software development

IV. Detailed Software Engineering Syllabus

Unit I: Software Development Process

Topics:

  • Software characteristics, Types of software.
  • The Process: Software Engineering: A Layered approach -Process, Methods and Tools
  • Software development framework.
  • Software Process Model: Waterfall Model
  • Incremental Process Model: RAD Model
  • Evolutionary Process Models: Prototyping model, Spiral model
  • Agile Process Model: Extreme Programming, Adaptive Software Development (ASD), Scrum, Dynamic System Development Method (DSDM), CRYSTAL. Agile Unified Process (AUP)

Learning Outcomes:

  • TLO 1.1 Select the attributes that match with standards for the given software application.
  • TLO 1.2 Suggest the relevant software solution for the given problem.
  • TLO 1.3 Select the relevant software process model for the given problem.
  • TLO 1.4 Suggest the relevant activities in Agile Development Process.

Suggested Pedagogies: Presentations, Lecture Using Chalk-Board

Unit II: Software Requirement Engineering

Topics:

  • Software Engineering core principles.
  • Software Practices: Communication, Planning, Modelling, Construction, Software deployment (Statement and meaning of each principles for each practice).
  • Requirement Engineering: Requirement Gathering and Analysis, Types: Functional, Product, organizational, External Requirements, Eliciting Requirements, Developing Use-cases, Building requirement models, Negotiation, Validation.
  • Software Requirement Specification: Need, Format, and its Characteristics.

Learning Outcomes:

  • TLO 2.1 Apply principles of software engineering for the given problem.
  • TLO 2.2 Select the relevant requirement engineering steps for the given problem.
  • TLO 2.3 Construct the Requirement Engineering model for the given problem.
  • TLO 2.4 Prepare SRS for the given problem.

Suggested Pedagogies: Lecture Using Chalk-Board, Presentations, Case Study

Unit III: Software Modelling and Design

Topics:

  • Translating Requirement model into design model: Data Modelling.
  • Analysis Modelling: Elements of Analysis model.
  • Design modelling: Fundamental Design Concepts (Abstraction, Information hiding, Structure, Modularity, Concurrency, Verification, Aesthetics).
  • Design notations: Data Flow Diagram (DFD), Structured Flowcharts, Decision Tables.
  • UML Modelling :Use-Case ,Class Diagrams, Sequence Diagrams.
  • Testing – Meaning and purpose, testing methods – Black-box and White-box, Static and Dynamic testing, Level of testing, V-model.

Learning Outcomes:

  • TLO 3.1 Identify the elements of analysis model for the given software requirements.
  • TLO 3.2 Apply the specified design concepts for software requirements modeling.
  • TLO 3.3 Construct software design using standard design notation.
  • TLO 3.4 State the purpose of software testing.
  • TLO 3.5 Draw Use-Case ,Class Diagrams, Sequence Diagrams for software project.
  • TLO 3.6 Explain basic types of software testing.

Suggested Pedagogies: Lecture Using Chalk-Board, Presentations, Demonstration

Unit IV: Software Project Cost Estimation

Topics:

  • The Management Spectrum – 4P’s.
  • Metrics for Size Estimation: Line of Code (LoC), Function Points (FP).
  • Project Cost Estimation Approaches: Overview of Heuristic, Analytical, and Empirical Estimation.
  • COCOMO (Constructive Cost Model), COCOMO II.
  • Risk Analysis and Management: Risk identification, Risk assessment, Risk management and monitoring, Risk Refinement and Mitigation, RMMM Plan.

Learning Outcomes:

  • TLO 4.1 Explain the management spectrum for software project.
  • TLO 4.2 Estimate size of software product.
  • TLO 4.3 Estimate cost of software product using the empirical method.
  • TLO 4.4 Compute size of the given software using COCOMO model.
  • TLO 4.5 Apply RMMM strategy in Identified risks for any software development problem.

Suggested Pedagogies: Lecture Using Chalk-Board, Presentations, Case Study, Flipped Classroom

Unit V: Software Project Management

Topics:

  • Project Scheduling: Basic principles, Work breakdown structure, Activity network
  • Project Tracking: Timeline charts, Earned Value Analysis, Gantt Charts.
  • Scheduling techniques: Critical Path Method(CPM), Program Evaluation Review Technique(PERT)

Learning Outcomes:

  • TLO 5.1 Apply CPM/PERT scheduling technique for software project.
  • TLO 5.2 Construct timeline chart/ Gantt chart to track progress of the given software project.

Suggested Pedagogies: Lecture Using Chalk-Board, Presentations, Demonstration

Unit VI: Software Quality Assurance

Topics:

  • Software Quality Management vs. Software Quality Assurance.
  • Phases of Software Quality Assurance: Planning, activities, audit, and review.
  • Quality Evaluation standards: Six Sigma, CMMI: Levels, Process areas.

Learning Outcomes:

  • TLO 6.1 Differentiate between Software Quality Management and Software Quality Assurance.
  • TLO 6.2 Apply the phases of Software Quality Assurance in software development project
  • TLO 6.3 Apply software quality evaluation standards.

Suggested Pedagogies: Lecture Using Chalk-Board, Presentations, Case Study

V. Teaching-Learning & Assessment Scheme

Understanding the structure of the Software Engineering course is crucial for effective learning. Consequently, the following scheme outlines the contact hours, credits, and assessment methods.

Course CodeCourse TitleAbbrCourse Category/sLearning SchemeCreditsAssessment Scheme
Actual Contact Hrs./WeekSLHNLHPaper DurationTheoryBased on LL & TLBased on SLTotal Marks
CLTLLLPracticalFA-THSA-THTotalFA-PRSA-PRSLA
315323SOFTWARE ENGINEERINGSTEDSC441933070100251025102510175

Total IKS Hrs for Sem. : 0 Hrs

Abbreviations: CL- ClassRoom Learning, TL- Tutorial Learning, LL- Laboratory Learning, SLH- Self Learning Hours, NLH- Notional Learning Hours, FA – Formative Assessment, SA – Summative assessment, IKS – Indian Knowledge System, SLA – Self Learning Assessment

Legends: @ Internal Assessment, # External Assessment, *# On Line Examination, @$ Internal Online Examination

Note:

  • FA-TH represents average of two class tests of 30 marks each conducted during the semester.
  • If candidate is not securing minimum passing marks in FA-PR of any course then the candidate shall be declared as “Detained” in that semester.
  • If candidate is not securing minimum passing marks in SLA of any course then the candidate shall be declared as fail and will have to repeat and resubmit SLA work.
  • Notional Learning hours for the semester are (CL+LL+TL+SL)hrs.* 10 Weeks
  • 1 credit is equivalent to 30 Notional hrs.
  • * Self learning hours shall not be reflected in the Time Table.
  • * Self learning includes micro project / assignment / other activities.

VI. Laboratory Learning Outcomes and Practical Experiences

Practical exercises in Software Engineering reinforce theoretical concepts. For instance, students apply tools to create diagrams and test cases, enhancing their skills. Explore practical tools at Diagrams.net.

Software Engineering Tools
Practical / Tutorial / Laboratory Learning Outcome (LLO)Sr NoLaboratory Experiment / Practical Titles / Tutorial TitlesNumber of hrs.Relevant COs
LLO 1.1 Use software tool to Write problem statement and identify scope of the project1*Write problem statement to define the project title with bounded scope of the project.2CO1
LLO 2.1 Use appropriate process model and activities related to project.2Select relevant process model to define activities and related tasks set2CO1
LLO 3.1 Apply the principles of requirement engineering.3*Gather application specific requirements for assimilate into RE (Requirement’s engineering) model.2CO2
LLO 4.1 Create SRS document for the project.4*Prepare broad SRS (software requirement software) for the project.2CO2
LLO 5.1 Construct use case diagram for software models.5*Write use-cases and draw use-case diagram.2CO3
LLO 6.1 Design activity diagram for the project.6Draw the activity diagram to represent flow from one activity to another for software development.2CO3
LLO 7.1 Draw data flow diagram for the project.
LLO 7.2 Create Decision tables and E-R diagram.
7*Create DFDs (data flow diagram), Decision tables and E-R (entity-relationship) diagram.2CO3
LLO 8.1 Represent software project by class diagrams.8Draw class diagram and Sequence diagram, State Transition Diagram.2CO3
LLO 9.1 Prepare decision table for the project9* Create decision table for a project.2CO3
LLO 10.1 Design test cases by referring SRS document.10*Write test cases to validate requirements from SRS document.2CO3
LLO 11.1 Write test cases for Blackbox testing.11Prepare test cases for Black Box Testing.2CO3
LLO 12.1 Identify risk involved in the project
LLO 12.2 Prepare RMMM Plan.
12* Identify risks involved in the project and prepare RMMM (RMMM-Risk Management, Mitigation and Monitoring) plan.2CO4
LLO 13.1 Estimate size of project using function point matrix13* Calculate size of the project using Function point metric.2CO4
LLO 14.1 Estimate size of project using COCOMO approach.14*Calculate cost of the project using COCOMO (Constructive Cost Model) / COCOMO II approach.2CO4
LLO 15.1 Prepare project schedule using CPM/PERT technique.15*Create software project scheduling charts using CPM (Critical Path Method) / PERT (Project Evaluation and Review Technique)2CO5
LLO 16.1 Monitor the progress of project using timeline/Gantt chart16Track progress of the project using Timeline charts/ Gantt charts.2CO5
LLO 17.1 Prepare SQA plan to ensure various quality processes.17Prepare SQA plan that facilitates various attributes of quality of process.2CO6
LLO 18.1 Prepare SQA plan to ensure quality product.18*Prepare SQA plan that facilitates various attributes of quality of product.2CO6

Note:

  • Out of above suggestive LLOs –
  • ‘*’ Marked Practicals (LLOs) Are mandatory.
  • Minimum 80% of above list of lab experiment are to be performed.
  • Judicial mix of LLOs are to be performed to achieve desired outcomes.

VII. Suggested Micro Project / Assignment / Activities for Specific Learning

Self-learning activities enhance Software Engineering skills. Moreover, students can work on projects or assignments to apply their knowledge practically.

Micro project

  • Apply the principles of software engineering for Portfolio website for showcasing Skills and Work, Searchability and Online Presence, Demonstrating Growth and Progress, Career Advancement and Networking and Prepare complete technical document.
  • Apply the principles of software engineering for Chatbot Application to create an intelligent chatbot to enhance customer support processes, providing efficient and personalized assistance and Develop technical document.
  • Apply the principles of software engineering for Online Chat Application Project that enables users to exchange messages and communicate with each other in real-time. It allows individuals or groups to have conversations, share information, and collaborate instantly over the Internet. Online Chat Application is designed to provide a responsive and interactive experience, where messages are delivered and displayed immediately as they are sent and Prepare complete technical document.

Assignment

  • Estimate Cost of software using any tool and risk involved in the library Management System
  • Create DFDs, Activity Diagram, ER-Diagrams for Student Management System.
  • Visit any medical shop and collect requirements from shop keeper and create SRS document

Other

  • Complete the course basic of software engineering on Infosys Springboard or any MOOCs platforms.

Note:

  • Above is just a suggestive list of microprojects and assignments; faculty must prepare their own bank of microprojects, assignments, and activities in a similar way.
  • The faculty must allocate judicial mix of tasks, considering the weaknesses and / strengths of the student in acquiring the desired skills.
  • If a microproject is assigned, it is expected to be completed as a group activity.
  • SLA marks shall be awarded as per the continuous assessment record.
  • For courses with no SLA component the list of suggestive microprojects / assignments/ activities are optional, faculty may encourage students to perform these tasks for enhanced learning experiences.
  • If the course does not have associated SLA component, above suggestive listings is applicable to Tutorials and maybe considered for FA-PR evaluations.

VIII. Laboratory Equipment / Instruments / Tools / Software Required

Appropriate tools are essential for Software Engineering practicals. Thus, the following equipment and software are recommended. Check out tools at TutorialsPoint.

Sr.NoEquipment Name with Broad SpecificationsRelevant LLO Number
1Software Project Management Tools: Open source Software such as Jira.1,2,3,4,10,11,17,18
2Software Design tools : Projectriskmanager12
3Software Design tools :Open Project, Ganttproject 3.315,16
4Software Design tools: Free Use Case Diagram Creator5
5Software Design tools: Draw.io, Decision Table Maker, Tiny tools6,7,8,9,13,14
6Hardware: Personal computer, processor i3 and above, RAM minimum 4 GBAll
7Operating system: Windows 10 and aboveAll

IX. Suggested Weightage to Learning Efforts & Assessment Purpose

The assessment structure ensures balanced evaluation. Hence, the specification table details the weightage for each unit.

Sr.NoUnitUnit TitleAligned COsLearning HoursR-LevelU-LevelA-LevelTotal Marks
1ISoftware Development ProcessCO1726412
2IISoftware Requirement EngineeringCO2946414
3IIISoftware Modelling and DesignCO3944816
4IVSoftware Project Cost EstimationCO4822812
5VSoftware Project ManagementCO542248
6VISoftware Quality AssuranceCO632248
Grand Total4016223270

X. Assessment Methodologies/Tools

Assessments in Software Engineering are designed to evaluate both process and product. Accordingly, the following methodologies are used.

Formative assessment (Assessment for Learning)

  • Each practical will be assessed considering 60% weightage to process, 40% weightage to product.
  • Continuous assessment based on process and product related performance indicators.
  • A Continuous assessment -based term work.

Summative Assessment (Assessment of Learning)

  • End Semester Examination, Lab Performance, Viva voce

XI. Suggested COs – POs Matrix Form

The matrix aligns course outcomes with program outcomes. Thus, it ensures comprehensive skill development.

Course Outcomes (COs)Programme Outcomes (POs)Programme Specific Outcomes* (PSOs)
PO-1 Basic and Discipline Specific KnowledgePO-2 Problem AnalysisPO-3 Design/ Development of SolutionsPO-4 Engineering ToolsPO-5 Engineering Practices for Society, Sustainability and EnvironmentPO-6 Project ManagementPO-7 Life Long LearningPSO-1PSO-2PSO-3
CO1122211
CO2233211
CO322331
CO4222322
CO5232332
CO6223122

Legends: – High:03, Medium:02, Low:01, No Mapping: –
*PSOs are to be formulated at institute level

XII. Suggested Learning Materials / Books

Recommended books provide in-depth knowledge. Hence, students should refer to these resources.

  • Software Engineering: A practitioner’s approach by Roger S. Pressman & Bruce R. Maxim (McGraw Hill Higher Education, New Delhi, Ninth Edition, ISBN 93-5532-504-5)
  • Software Engineering Concepts by Richard Fairly (McGraw Hill Education New Delhi -2001, ISBN-13: 9780074631218)
  • Software Engineering: Principles and practices by Deepak Jain (Oxford University Press, New Delhi, ISBN 9780195694840)
  • Software Testing: Principles and Practices by Srinivasan Desikan, Gopalaswamy Ramesh (PEARSON Publisher: Pearson India 2007, ISBN: 978-81-7758-121-8)
  • Software Testing by Ron Patton (Sams Publishing; 2nd edition, 2005, ISBN: 0672327988)

XIII. Learning Websites & Portals

Online resources enhance learning. Therefore, students can access these portals for additional insights.

Sr.NoLink / PortalDescription
1https://www.geeksforgeeks.org/software-engineering-introduction-to-software-engineering/Software engineering tutorials from Geeksforgeeks
2https://www.tutorialspoint.com/software_engineering/index.htmSoftware Engineering Tutorials
3https://www.sei.cmu.edu/Software Engineering Institute
4https://www.youtube.com/watch?v=WjwEh15M5RwAgile Methodology
5https://app.diagrams.net/Software Design -DFDs, Class Diagrams, Use Case Diagrams

Note: Teachers are requested to check the creative common license status/financial implications of the suggested online educational resources before use by the students

Note: This syllabus is as per the Maharashtra State Board of Technical Education (MSBTE) curriculum. For detailed lab manuals and previous year questions, visit All Clear Engineers.
Shares: