About the site
This site (SoftwarePractitioner.org) is maintained by
Dr Jian Hu, a software development professional. Currently the site is mainly
used as an online notebook for Jian's personal thoughts and experience in software
design, development and education. The site is also expected to serve as a
platform for fellow software practitioners and educators to exchange their ideas
and experiences. Comments and suggestions are highly welcome.
Contact: email@example.com or
Below is a list of the translations and articles.
Meyer's software education theory and practice: inverted curriculum
This article intends to be a survey of Meyer's unique theory and practice in software education.
About Bertrand Meyer
Academia/university and industry
Development of Meyer's Software education theory
- [Meyer1993] B. Meyer. Towards an object-oriented curriculum
inverted curriculum was proposed
- [Meyer1997] B. Meyer. Object-Oriented Software Construction
more details in software education (in a dedicated chapter)
- [Meyer2001] B. Meyer, "Software Engineering in the Academy"
presented "a broad perspective on software education, argued a
software curriculum should maintain a balance between the
conceptual and the operational -- the principles and techniques"
- "The Inverted Curriculum in Practice": the introductory programming course
- [Meyer2006] B. Meyer. Touch of class
The text book (Touch of Class)
The support software (Eiffel language and library, EiffelStudio and Traffic)
- [Pedroni2006], "The Inverted Curriculum in Practice" in practice and results analysis
Parnas' software education theory and practice: software as an engineering discipline
This article is based on Parnas' article 'Software Engineering Programmes are not
Computer Science Programmes'.
- About David Parnas
- Science vs Engineering
- Software products and software engineers
- Science education and engineering education
- Scientists and engineers
- Software engineers and software engineering education
- What software engineers do
- Principles of software engineering programme
- Software engineering and computer science
- A software engineering curriculum
Notes on Meyer's and Parnas' software education
This article gives a comparison between Meyer's and Parnas' software education thoughts,
as well as some notes based on personal background and experience.
- A comparison of Meyer's and Parnas' education philosophy
Both point out the engineering nature of software systems/products
Both emphasize the importance of fundamental, long lasting concepts
- Teaching style:
Both agree that the teaching style should be "applying the theory to practice"
naturally demonstrated in Meyer's inverted curriculum)
- Teachers:Teachers should
(demonstrated by Meyer and Parnas themselves).
- have sound knowledge of the fundamental concepts,
- know how to build software systems/products, and
- be enthusiastic on teaching and paedogogy
The major differences are on some courses:
- Parnas: No to the denotational semantics of programming languages,
yes to basic engineering courses.
- Meyer: Yes to basics of denotational semantics, reservation on some engineering
courses like engineering materials.
- Notes based on personal background and experience:
- A computer science student but in an engineering department and with a
more engineering-oriented curriculum.
- worked mainly as a software engineer in a variety of application areas
- generally advocate all principles proposed by Meyer and Parnas, but more inclined
to Meyer's views on 'denotational semantics' based on personal experience in some projects.
Component-based development: a summit dialogue.
This article gives a review of a discussion/argument thread between Clemens Szyperski and
Bertrand Meyer on column "Beyond Objects" in the Software Development Magazine.
- Component Definition
- Oct 1999 Clemens Szyperski: Greetings from DLL Hell
- Nov 1999 Bertrand Meyer: The Significance of Components
- Feb 2000 Clemens Szyperski: Point, Counterpoint
- Mar 2000 Bertrand Meyer: What to compose
- Components and Contracts
- May 2000 Clemens Szyperski: Components and Contracts
- Jul 2000 Bertrand Meyer: Contracts for Components
- Oct 2000 Clemens Szyperski: Components and Architecture
- Components and Services
- Aug 2001 Clemens Szyperski: Components and Web Services
- Oct 2001 Bertrand Meyer: Product or Service
- Jan 2002 Clemens Szyperski: Services Rendered
- Component Architecture
- Aug 2002 Clemens Szyperski: Universe of Composition
- Sep 2002 Clemens Szyperski: Back to Universe