IIT Kharagpur

Computer Sc and Engg.

Software Engineering (Undergraduate level course in Spring 2002) Updated April 16, 2002 11: 50 pm

------------

Demonstrations of the main laboratory assignment must be over by April 18, 2002. All electronic submissions of this assignment by email to me must also be done by Thursday, April 18, 2002.

April 16, 2002.

------------

Problems for Black-box testing.----

Characterize the equivalence classes for functional / black-box testing for the following problems.

(i) a function that computes solutions for the quadratic equation ax^2+bx+c=0, where a,b and c are reals.

(ii) a function that solves k linear equations in k variables simultaneously where k is a constant like 2,3 or 4.

(iii) a function that inputs the coordinates of the centres of two circles and the two radii and determines the intersection(s) of the two circles.

(iv) a function that takes in a string of a (constant) even length (say 2,4 or 6) and determines whether it is a palindrome.

-------------------------------------

Problems for White-box testing.----

(i) Show that the number of bounded areas in the planar embedding of the CFG is equal to e-n+1 where e is the number of edges of the CFG and n is the number of nodes of the CFG.

(ii) Show that the number of conditional statements is equal to the number of bounded areas as in (i).

(iii) Give an example showing that the set of independent paths that cover all nodes can be strictly lesser than the number of bounded areas.

------------------------------------------

Research Articles:

(i) Function-Class Decomposition: A Hybrid Software Engineering Method by Carl K. Chang, Shiyan Hua and Annie Kuntzmann-Combelles, IEEE Computer Magazine, pp. 87-93, Dec 2001. (Also see earlier papers of these authors or papers refered in this paper. Search in the Web for related material.)

------------ Books and References:

Apart from the general text of Prof. Rajib Mall's book (Fundamentals of Software Engineering, PHI), we will use the following texts and references.

(i) UML in a Nutshell: A Desktop Quick Reference, Sinan Si Albir, O'Reilly. ---- UML examples and guide.

(ii) Software Engineering: Theory and Practice, Second Edition, Shari Lawrence Pfleeger, LPE, Pearson Education Asia. ---- General text and reference, examples of OO Design, Service Station example.

(iii) The Unified Modeling Language User Guide, Booch, Rambaugh, Jacobson, Addison-Wesley, Object Technology Series. ---- Text and reference for UML from the original designers.

(iv) Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design, Craig Larman, Addision-Wesley, Pearson Education.

(v) Design Patterns: Elements of Reusable Object-Oriented Software, Gamma, Helm, Johnson and Vlissides, Addision-Wesley, International Student Edition.

-----------------------------------------------

We will have all the four lectures from March 25, 2002 onwards, including the 7:30 am Thursday class.

March 25, 2002

----------------------------------------------------

LABORATORY

Submissions of SRS for the main problem are due by email by Monday, March 18, 2002, FN.

March 16, 2002

-----------------------------------------------------------

The submissions of the FIRST LABORATORY assignment are due by email and due for demonstrations and evaluation. Evaluation of the first assignment may be done by March 8, 2002. Submission and demonstrations will be necessary. Whether you do only the first part or both the parts (including the GUI), you will make a single submission. You could use frames, applets, swing or other Java features. Your system should run on one machine. It is not necessary to do network programming. Submission will be by email to me with a single .tgz or .tar.gz atttachment. The archive must contain source code, makefile, readme file and a guide or manual for compiling and running your work. There must also be a file telling what specifications you have incorporated. Delayed submissions will face credit penalties.

March 5, 2002

----------------------------------------

SLIDES

  • Download slides for lecutre on "Introduction to Software Engineering"
  • Browse slides for lecutre on "Introduction to Software Engineering"
  • Download slides for lecture on "Life cycle models"
  • Browse slides for lecture on "Life cycle models"
  • Download slides for lecture on "Requirements analysis and specifications"
  • Browse slides for lecture on "Requirements analysis and specifications"
  • Download slides for lecture on "Software design "
  • Browse slides for lecture on "Software design "
  • Download slides for lecture on "Function-oriented software design "
  • Browse slides for lecture on "Function-oriented software design "
  • Download slides for lecture on "Function-oriented software design (continued) "
  • Browse slides for lecture on "Function-oriented software design (continued) "
  • Download slides for problems for the laboratory.
  • Download requirements document study for the design of a WAN simulator
  • Browse requirements study for the design of a WAN simulator.

  • Download slides for requirements analysis and specifications for a partially automated class scheduling system.
  • Browse slides for requirements analysis and specifications for a partially automated class scheduling system.

  • Download slides for requirements study for a bank computerization system.
  • Browse slides for requirements study for a bank computerization system.

  • Download slides on object orientation concepts
  • Browse slides on object orientation concepts

  • Download slides on object oriented design
  • Browse slides on object oriented design

  • Download slides on UML
  • Browse slides on UML

  • Download slides on Testing and Debugging
  • Browse slides on Testing and Debugging.

  • Download slides on Software Testing : I
  • Browse slides on Software Testing: I.

  • Download slides on Software Testing : II
  • Browse slides on Software Testing: II.

  • Download slides on Software Project Management I
  • Browse slides on Software Project Management I.

  • Download slides on Software Project Management II
  • Browse slides on Software Project Management II .

  • Download slides on Software Reliability.
  • Browse slides on Software Reliability. .

  • Download slides on Software Quality Assurance.
  • Browse slides on Software Quality Assurance. .