Institute Mines Telecom LOGO Telecom SudParis Logo Teaching-CSC7003 for Dr J. Paul Gibson, INFormatique (INF), Telecom SudParis, France.

Foundations Of Software Engineering

Assessment

Books

Sessions

Session 1: Wednesday 4th January (13h45, B07) - Introduction

Lecture Slides

Additional reading material

Useful Links

Sample Solution - only available at the next class

Session 2 : Tuesday 10th January (13h45, B111) - Requirements

Lecture Slides

Additional reading material

  • On Non-Functional Requirements in Software Engineering, Lawrence Chung and Julio Cesar Sampaio do Prado Leite, 2009
  • pdf

  • Requirements Engineering, Elizabeth Hull, Ken Jackson and Jeremy Dick, 2005
  • html

Sample Solution - only available at the next class

  • Requirements Engineering : lift problem - sample solution
  • pdf

Session 3 : Wednesday 11th January (13h45, B03)

Lecture Slides

  • From requirements to design
  • pdf

Additional reading material

  • On the Criteria To Be Used in Decomposing Systems into Modules, Parnas, 1972
  • pdf

  • A Rational Design Process: How and Why to Fake It, Parnas and Clements, 1986
  • pdf

  • A field study of the software design process for large systems, Curtis, B. and Krasner, H. and Iscoe, N.,1988
  • pdf

  • What is Software Design?, Jack W. Reeves, 1992
  • pdf

  • Bad smells in code, Beck and Fowler, 1999
  • pdf

  • The risks of stopping too soon, Parnas, 2011
  • pdf

Session 4 : Tuesday 17th January (13h45, B07)

    Continue with the elevator/lift design problem (Interactive Session).

    How do you judge if your design is good/correct?

    How would you change your lift design if you had to plan for changing requirements?

Sample Elevator Solution

Lecture Slides

  • Design For Requirements Creep
  • pdf

Additional reading material

  • Strategies for managing requirements creep, Jones, 1996, Computer 29.6 (1996): 92-94.
  • pdf

Session 5 : Wednesday 18th January (13h45, A02)

    Continue with requirements creep problem: integrating the new requirements into you code - does the structure/design have to change (much)?

Lecture Slides

  • Rigour and formal methods
  • pdf

  • Rigour and formal methods: answers
  • pdf

Additional reading material

  • Seven myths of formal methods, Hall, Anthony, 1990
  • pdf

  • Seven more myths of formal methods, Bowen, Jonathan P., and Michael G. Hinchey, 1995
  • pdf

  • Ten Commandments of Formal Methods, Bowen, Jonathan P., and Mike Hinchey, 2012
  • pdf

  • Formal methods: State of the art and future directions, Clarke, Edmund M., and Jeannette M. Wing, 1996
  • pdf

  • Formal methods: Practice and experience, Woodcock, Jim, et al., 2009
  • pdf

  • Model checking: algorithmic verification and debugging, Clarke, Edmund M., E. Allen Emerson, and Joseph Sifakis, 2009
  • pdf

Session 6 : Tuesday 24th January (13h45, B03)

Lectures

  • Testing - the line overlap problem
  • pdf

  • Code Documentation - the digit sum arithmetic problem
  • pdf

Additional reading material

  • Information Distribution Aspects of Design Methodology, David Lorge Parnas, 1971
  • pdf

  • Literate Programming, Donald E. Knuth, 1984
  • pdf

  • How To Comment Code, Steve Drevik, 1996
  • pdf

  • Comments Are More Important Than Code, Jef Raskin, 2005
  • pdf

  • Coding Guidelines: Finding the Art in the Science, Robert Green and Henry Ledgard, 2011
  • pdf

Useful Links

Session 6 : Tuesday 24th January (13h45, B03)

    We will spend the first half of this session reviewing and completing the previous problems; and deciding on the evaluation procedure for the module.

Lecture Slides

  • Planning Tasks: scheduling the software development process
  • pdf

Additional reading material

  • Gantt charts: A centenary appreciation, 2003, James M. Wilson.
  • pdf

Session 7 : Tuesday 31st January (13h45, B313)

  • Introduction to software process life cycle
  • pdf

  • Teams: the People In The Process
  • pdf

    We will now work on planning for your project submissions: process, team roles, tasks, etc...

Additional reading material

  • Software process: a roadmap, 2000, Alfonso Fuggetta
  • pdf

  • Stop the life-cycle, I want to get off., 1982, G. R. Gladden.
  • pdf

  • Using a defined and measured Personal Software Process, Watts S. Humphrey, 1996
  • pdf

  • New directions on agile methods: a comparative analysis, 2003, Abrahamsson, Pekka, et al.
  • pdf

  • Software development teams, 2004, Sawyer, Steve.
  • pdf

Session 8 : Tuesday 2nd February (13h45, B03)

Lectures

  • Version Control
  • pdf

Additional reading material

  • The Source Code Control System, Marc J Rochkind, 1975:
  • pdf

  • On Optimistic Methods for Concurrency Control, H.T. Kung and John T. Robinson, 1981:
  • pdf

  • Design, implementation, and evaluation of a Revision Control System, Walter F Tichy, 1982:
  • pdf

Useful Links

Session 9 : Tuesday 7th February (13h45, B03)

Lectures

  • Debugging
  • pdf

Useful Links


URL: http://www-public.telecom-sudparis.eu/~gibson/Teaching/CSC7003/

Last Revision: 7th February 2017

Contact: paul.gibson@telecom-sudparis.eu