Unit 1 of 1 · BCA Sem 3

Unit 1: End-to-end software engineering practice

Software Engineering Laboratory notes · PTU syllabus (UGCC2515)

3 min read4 topics9 exam questions
On this page
  1. Unit summary
  2. Scope, objectives and SRS
  3. UML models
  4. DFD model and data dictionary
  5. Scheduling, process models and metrics
  6. Key terms
  7. Quick revision
  8. Important questions

Unit summary

In this lab you apply software engineering to a mini project of your choice — for example a library, hostel or online shopping system. You define scope, write an SRS, draw UML and DFD models, schedule the project, choose a process model and measure the software with metrics.

After this unit you can

  • Define project scope and write an SRS
  • Draw use case, class, sequence and DFD models with a data dictionary
  • Represent a schedule as a Gantt chart and derive a structured design
  • Calculate LOC, function points and cyclomatic complexity

PTU syllabus topics

  • Project scope and objective identification
  • software requirements specification
  • UML use case model
  • class diagrams
  • project scheduling representation
  • DFD model (level-0, level-1, data dictionary)
  • sequence diagram
  • structured design from the DFD
  • waterfall/prototype/spiral model development
  • LOC/FP/Cyclomatic Complexity metrics
ProcessDocumenting a project in the lab
  1. 1Scope and objectives
  2. 2SRS document

    Functional and non-functional requirements

  3. 3UML models

    Use case, class and sequence diagrams

  4. 4DFDs

    Level 0 and level 1 with data dictionary

  5. 5Metrics

    LOC, function points, cyclomatic complexity

1

Topic 1

Scope, objectives and SRS

Start with a one-paragraph problem statement, the objectives, and what is in and out of scope. The SRS (IEEE 830 style) contains: introduction (purpose, scope, definitions), overall description (users, constraints, assumptions), specific requirements (functional and non-functional), and interface requirements.

2

Topic 2

UML models

  • Use case model: actors (Student, Librarian, Admin) connected to use cases (Search, Issue, Return, Fine).
  • Class diagram: classes with attributes and methods, and associations with multiplicity (one Member borrows 0..* Books).
  • Sequence diagram: a time-ordered flow of messages, for example Student → System: searchBook(); System → Database: query(); Database → System: result.
3

Topic 3

DFD model and data dictionary

ProcessBuilding DFDs
  1. 1Level 0 (context)

    The whole system as one process with external entities

  2. 2Level 1

    Main processes, data stores and flows

  3. 3Data dictionary

    Define every data flow and store

  4. 4Structured design

    Map DFD processes to modules (structure chart)

DFD symbols: circle/bubble = process, rectangle = external entity, open rectangle (parallel lines) = data store, arrow = data flow.

4

Topic 4

Scheduling, process models and metrics

  • Represent the project schedule as a Gantt chart (tasks against weeks) and identify the critical path.
  • Justify a process model for the project: waterfall for fixed requirements, prototype if the UI is unclear, spiral for high risk.
MetricHow to calculate
LOCCount non-blank, non-comment source lines
Function pointsFP = UFP × [0.65 + 0.01 × Σ(complexity adjustment factors)]
Cyclomatic complexityV(G) = E − N + 2 = number of decision points + 1

Example

A function with two if statements and one while loop has V(G) = 3 + 1 = 4, so four independent paths must be tested.

Key terms

Context diagram
A level-0 DFD showing the system as one process
Data dictionary
Definitions of all data items in the DFDs
Structure chart
A hierarchy of modules derived from DFDs
Unadjusted function points
FP before applying complexity adjustment

Quick revision

  • SRS = intro + overall description + specific requirements.
  • DFD: process, external entity, data store, data flow.
  • FP = UFP × (0.65 + 0.01 × ΣFi).
  • V(G) = decisions + 1.

Important exam questions

Practice questions written to the PTU exam pattern for this unit's syllabus: short answers (Section A style) and long answers (Sections B and C style).

Short-answer questions

  1. Q1.What is a context diagram?
  2. Q2.List the symbols used in a DFD.
  3. Q3.What does a data dictionary contain?
  4. Q4.How is cyclomatic complexity calculated?
  5. Q5.What is the formula for function points?

Long-answer questions

  1. Q1.Prepare an SRS for a library management system.
  2. Q2.Draw the level-0 and level-1 DFDs for an online shopping system with a data dictionary.
  3. Q3.Draw use case, class and sequence diagrams for a hostel management system.
  4. Q4.Calculate the function points of a project from given counts and complexity factors.

Stuck on this unit?

Message SBS on WhatsApp for help with Software Engineering Laboratory, or to ask about studying BCA at Synetic.

WhatsApp us