Further reading
Introduction
Requirements
Design
Development
Verification and Validation
Management
  Further reading: Software Development
 

Chapter 17 Rapid Software Development

Highsmith, J.and Cockburn, A. 2001. 'Agile Software Development: The Business of Innovation'. IEEE Computer, 34 (9), September 2001.

Extreme Programming. Special issue of IEEE Software, 20 (3), May/June 2003.

Drobha, J. et al. 2004. 'Piloting XP on Four Mission-Critical Projects'. IEEE Software, 21 (6), 70-75.

The New Methodology (Martin Fowler)

The Agile Manifesto: where it came from and where it may go (Martin Fowler)

Nerur, S., Mahappatra, R. and Mangalaraj, G. 2005. 'Challenges of Migrating to Agile Methodologies'. Comm. ACM, 48 (5), 73-8.

Chapter 18 Software Reuse

Component-based Enterprise Frameworks. 2000. Special issue of the CACM, 43 (10), October 2000.

Software Product Lines. 2002. Special issue of IEEE Software, 19 (4), July/August 2002.

'A Formal Process for Evaluating COTS Software Products'. 2001.
P.K. Lawlis, K.E.Mark, D.A. Thomas, and T. Courtheyn, IEEE Computer, 34 (5), May 2001.

Torchiano, M.and Morisio, M. 2004. ' Overlooked Aspects of COTS-Based Development'.
IEEE Software, 21 (2), March/April 2004.
Discusses the many meanings of COTS product or system.

COTS Integration. 2005. Special issue of IEEE Software, 22 (4), July/August 2005.

Introduction to Aspect-oriented Programming

(Another) introduction to aspect-oriented programming

The Case for Aspects (Jacobson)

I want my AOP

Chapter 19 Component-based Software Engineering

Enterprise Components and Services. Special issue of the CACM, 45 (10), October 2002.

McKinley, P. K. et al. 2004. 'Composing Adaptive Software'. IEEE Computer, 37 (7), 56-64.

Building Enterprise Applications for the Net with EJB,CORBA, and XML

J2EE Tutorial (Sun)

EJB tutorial (Sun)

Containers: A sign components are growing up

From component infrastructure to component-based development (Alan Brown)

The flexible factory (SDMagazine - registration required)

Picking a winner: .NET vs J2EE (SDMagazine)

Trusted components for the software industry. (Meyer et al)

Design by Contract: A conversation with Bertrand Meyer

iContract: Design by contract in Java

Design by Contract: The Lessons of Ariane

Chapter 20 Critical Systems Development

Candea, G. et al. 2004. 'Recovery-oriented Computing: Building Multi-tier Dependability'. IEEE Computer, 37 (11), 60-67.

Programming with assertions

Java's assertion capabilities (1) Java's assertion capabilities (2)

J2SE 1.4 assertion facility

Chapter 21 Software evolution

Fairley, R.E. an Willshire, M. J. 2005. Iterative Rework: The Good, the Bad and the Ugly. IEEE Computer, 38 (9), 34-42.

A unified theory of software evolution
A presentation for a non-expert audience (in the Salon e-zine) of Lehman's theories of software evolution

Feedback, evolution and software technology (Lehman's group at Imperial College London)

Software maintenance costs

Software reengineering (SEI)

 
The material here has been included for its instructional value. Neither the author nor Pearson Education Ltd offer any warranties or representations in respect of its fitness for a particular purpose. No liability is accepted by either the author or the publisher for any loss or damage arising from its use.  The dynamic nature of the web means that it cannot be guaranteed that all links will work. Please let me know of problems and (if possible) I will try and fix them.