%% This BibTeX bibliography file was created using BibDesk.
%% http://bibdesk.sourceforge.net/


%% Created for Conrad Cunningham at 2014-03-07 20:42:29 -0600 


%% Saved with string encoding Unicode (UTF-8) 



@inproceedings{britton-etal-1981,
	Annote = {This classic paper by Parnas and his colleagues
                  builds on the concept of information hiding
                  \cite{parnas-1972}. It describes the concept of an
                  abstract interface as a mechanism for hiding the
                  details of a low-level interface from the other
                  modules of the software system. It uses a two-phase
                  design method for such modules.},
	Author = {Kathryn Henninger Britton and R. Alan Parker and David L. Parnas},
	Booktitle = {Proceedings of the 5th International Conference on Software Engineering},
	Date-Modified = {2014-03-08 02:35:23 +0000},
	Month = {March},
	Pages = {195--204},
	Title = {A Procedure for Designing Abstract Interfaces for Device Interface Modules},
	Year = {1981}}

@inproceedings{cunningham-etal-2004,
	Author = {H. Conrad Cunningham and Cuihua Zhang and Yi Liu},
	Booktitle = {Proceedings of the International Conference on
                  Software Engineering Research and Practice (SERP)},
	Month = {June},
	Pages = {712--718},
	Publisher = {CSREA Press},
	Title = {Keeping Secrets Within a Family: Rediscovering {Parnas}},
	Year = {2004}}

@article{cunningham-etal-2005,
	Author = {H. Conrad Cunningham and Pallavi Tadepalli and Yi Liu},
	Journal = {Journal of Computing Sciences in Colleges},
	Month = {June},
	Number = {6},
	Pages = {118--124},
	Title = {Secrets, Hot Spots, and Generalization: Preparing
                  Students to Design Software Families},
	Volume = {20},
	Year = {2005}}

@article{parnas-1972,
	Annote = {This classic paper by Parnas is the first
                  publication of the design concept known as
                  information hiding.  The key idea is to design
                  software modules around a single design decision
                  that may change over time or among versions of the
                  system. The module hides this design decision, known
                  as the secret of the module, behind an interface
                  that is unlikely to change.  },
	Author = {David L. Parnas},
	Date-Modified = {2014-03-08 02:36:54 +0000},
	Journal = {Communications of the ACM},
	Number = {12},
	Pages = {1053--1058},
	Title = {On the Criteria to Be Used in Decomposing Systems into Modules},
	Volume = {15},
	Year = {1972}}

@article{parnas-1976,
	Annote = {This classic paper by Parnas introduces the design
                  concept known as program (or software) families,
                  often called software product lines today.  This
                  means that the designers of a software system should
                  seek to design the system to exist in multiple
                  versions from the beginning.  New versions may be
                  created for different customers or platforms or
                  perhaps just over time as improvements are made to
                  the original system.  },
	Author = {David L. Parnas},
	Journal = {IEEE Transactions on Software Engineering},
	Month = {March},
	Number = {1},
	Pages = {1--9},
	Title = {On the Design and Development of Program Families},
	Volume = {SE-2},
	Year = {1976}}

@incollection{parnas-1978,
	Author = {David L. Parnas},
	Booktitle = {Infotech State of the Art Report on Structured Analysis and Design},
	Note = {Reprinted in Software Fundamentals: Collected Papers
                  by David L. Parnas, Daniel M. Hoffman and David
                  M. Weiss, editors, Addison Wesley, 2001.},
	Pages = {10 pages},
	Publisher = {Infotech International},
	Title = {Some Software Engineering Principles},
	Year = {1978}}

@article{parnas-1979,
	Author = {David L. Parnas},
	Journal = {IEEE Transactions on Software Engineering},
	Month = {March},
	Number = {1},
	Pages = {128--138},
	Title = {Designing Software for Ease of Extension and Contraction},
	Volume = {SE-5},
	Year = {1979}}

@article{parnas-etal-1985,
	Author = {D. L. Parnas and P. C. Clements and D. M. Weiss},
	Journal = {IEEE Transactions on Software Engineering},
	Month = {March},
	Number = {3},
	Pages = {259--266},
	Title = {The Modular Structure of Complex Systems},
	Volume = {SE-11},
	Year = {1985}}

@incollection{weiss-2001,
	Author = {David M. Weiss},
	Booktitle = {Software Fundamentals: Collected Papers by David L. Parnas},
	Editor = {Daniel M. Hoffman and David M. Weiss},
	Pages = {143--144},
	Publisher = {Addison-Wesley},
	Title = {Introduction: On the Criteria to Be Used in
                  Decomposing Systems into Modules},
	Year = {2001}}
