|
Home
Update: Jul 28,
2004
Research Interest
After some experiences on network security and system
design, now I focus on software engineering issues. Read the following
quotes, you may have the same feeling as mine: software engineering is
as interesting as life.
Adding manpower to a late software project makes
it later.
--- Brook's Law, Frederick Brooks, "The Mythical Man-month"
(Compared to software, ) The brain alone is intricate
beyond mapping, powerful beyond imitation, rich in diversity, self-protecting,
and self-renewing. The secret is that it is grown, not built.
--- Fredirick Brooks, "The Mythical Man-month", "No
Silver Bullet"
Loneliness is often at the heart of job dissatisfaction.
--- Ken Beck, "Extreme Programming Explained"
Everybody in a business unit has exactly the same
... job description, and that is to ship products. Your job is not to
write code, your job is not to test, your job is not to write specs. Your
job is to ship products ... You're trying not to write code. If we could
make all this money by not writing code, we'd do it.
--- Cusumano and Selby, "Microsoft Secrets"
Production speed is severely slowed down if one works
with half-time people who have other obligations as well. This is at least
a factor of four; probably it is worse.
--- Edsger W. Dijkstra
All quotes >>
Search For Documents
I will not post PDF files on my web any more, since
there is no need, like an old Chinese saying "putting feet on a snake".
(David L. Parnas ever worried about that the software engineering is to
"put feet on a snake").
Most of the documents can be found via the following
links or, in the worse case, in library.
Ongoing Work
1. Reasoning About Aspect-Oriented Programming
Publications
Jia Xu, Hridesh Rajan, Kevin Sullivan, Understanding Aspects via Implicit
Invocation, IEEE Automated Software Engineering, September 2004
Jia Xu, Hridesh Rajan, Kevin Sullivan, Aspect Reasoning by Reduction
to Implicit Invocation, Foundations of Aspect-Oriented Languages 2004
in conjunction with Aspect-Oriented Software Development 2004, March
2004
Related Links
Reading List
Aspect Oriented Programming
-
[Kiczales97] Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris
Maeda, Cristina Videira Lopes, Jean-Marc Loingtier, John Irwin, "Aspect-Oriented
Programming", Proceedings European Conference on Object-Oriented
Programming, 1997
Formalizing AOP
-
[Wand02] Mitchell Wand, Gregor Kiczales, Christopher
Dutchyn, "A Semantics for Advice and Dynamic Join Points in Aspect-Oriented
Programming", 2002
Apply Model Checking directly to AOP
-
[Ubayashi02] Naoyasu Ubayashi , Tetsuo Tamai, "Aspect-oriented programming
with model checking", Proceedings of the 1st international conference
on Aspect-oriented software development, April 22-26, 2002, Enschede,
The Netherlands
Fisler etl.al's approach to verify cross-cutting features
-
[Fisler01] Kathi Fisler , Shriram Krishnamurthi, "Modular verification
of collaboration-based software designs", Proceedings of the 8th European
software engineering conference held jointly with 9th ACM SIGSOFT
international symposium on Foundations of software engineering, September
10-14, 2001, Vienna, Austria
-
[Li02] Harry Li , Shriram Krishnamurthi , Kathi Fisler, "Verifying
cross-cutting features as open systems", Proceedings of the tenth
ACM SIGSOFT symposium on Foundations of software engineering, November
18-22, 2002, Charleston, South Carolina, USA
Dingel, Garlan, Bradbury et.al 's work on reasoning about
Implicit Invocation Systems
-
[Dingel98] J. Dingel, D. Garlan, S. Jha, D. Notkin, "Reasoning about
implicit invocation", Proceedings of the 6th ACM SIGSOFT international
symposium on Foundations of software engineering, November 1998
-
[Garlan03] David Garlan, Serge Khersonsky, and Jung Soo Kim, "Model
Checking Publish-Subscribe Systems", Proceedings of The 10th International
SPIN Workshop on Model Checking of Software (SPIN 03), Portland, Oregon,
May 2003.
- [Bradbury03] J. S. Bradbury, J. Dingel. "Evaluating and Improving
the Automatic Analysis of Implicit Invocation Systems", In Proc. of
the European Software Engineering Conference and the ACM SIGSOFT International
Symposium on the Foundations of Software Engineering (ESEC/FSE 2003),
Helsinki, Finland, Sept. 2003.
Use Slicing to reason about AOP
-
[Blair03] Lynne Blair, Mattia Monga, "Reasoning on AspectJ Programmes",
GI-AOSDG 2003 Essen, Germany
Related to Superimposition Validation
-
[Sihman] Marcelo Sihman, Shmuel Katz, "Model Checking Applications
of Aspects and Superimpositions"
Past Work
Misc. Reading List
General
-
Anthony Finkelstein & Jeff Kramer , "Software Engineering:
a Roadmap", in The Future of Software Engineering, special volume,
A. Finkelstein, Ed., 22nd International Conference on Software Engineering,
June, 2000.
-
"Building
a better bug-trap", The Economist, Jun 19th 2003
- Daniel M. Hoff, David M. Weiss, Software Fundamentals: Collected
Papers by David L. Parnas, Addison-Wesley Pub Co; 1st edition (April
9, 2001)
Software Process
-
Mills, H. "Chief programmer teams, principles, and procedures,"
IBM Federal Systems Division Report FSC 715198, Gaithersburg, MD.,
1971
-
DeMarco, T., and T. Lister, Peopleware: Productive Projects and
Teams. New York: Dorset House, 1987
-
B. W. Boehm, "A spiral model of software development and enhancement."
IEEE Computer, pp. 61-72, May 1988
-
Frederick
P. Brooks (1999-Turing Award-winner ), Jr. The Mythical Man-Month
2nd ed., Addison Wesley, 1995
-
M.
A. Cusumano, Microsoft secrets : how the world's most powerful
software company creates technology, shapes markets, and manages people,
1995
-
M. A. Cusamano and R.Selby, "How Microsoft builds software",
Communication of the ACM, June 1997.
-
Kent Beck, Extreme Programming Explained, Addison Wesley,
2000
-
Windows
Server 2003: The Road To Gold, from Paul Thurrott's supersite
for windows. A good story about the histroy from Windows NT to Windows
2003 Server. Part two is remarkably interesting.
Software Economics
-
Boehm, B. W., Software Engineering Economics, Englewood Cliffs,
N. J.: Prentice-Hall, 1981
-
Sullivan, K.J., Software Design: The Options Approach, Proceedings
of the 2nd International Software Architecture Workshop, Joint Proceedings
of the SIGSOFT '96 Workshops, San Francisco, CA, October, 1996, pp.
15--18.
-
Withey, J., "Investment Analysis of Software Assets for Product
Lines," Software Engineering Institute, Carnegie Mellon University,
Technical Report CMU/SEI-96-TR-10, 1996
-
Favaro, J. M., K. R. Favaro and P. F. Favaro, "Value-based software
reuse investment," Annals of Software Engineering 5, 1998, pp.
5-52
-
Boehm B., Egyed, A., Kwan, J., Port, D., Shah, A., and Madachy, R.,
"Using the WinWin Spiral Model: A Case Study," IEEE Computer,
July 1998, pp. 33-44
-
Sullivan, K.J., P. Chalasani, S. Jha and V. Sazawal, "Software
Design as an Investment Activity: A Real Options Perspective",
in Real Options and Business Strategy: Applications to Decision Making,
L. Trigeorgis, consulting editor, Risk Books, December 1999
-
Baldwin, C. Y. and Clark, K. B. Design Rules: The Power of Modularity,
MIT Press, 2000
-
B. Boehm and K.J. Sullivan, "Software Economics: A Roadmap",
in The Future of Software Engineering, special volume, A. Finkelstein,
Ed., 22nd International Conference on Software Engineering, June,
2000
-
Kevin Sullivan, Yuanfang Cai, Ben Hallen, and Willam Griswold, "The
Structure and Value of Modularity in Software Design, " Joint
8th ESEC & 9th FSE, Sep 2001, Vienna, Austria
Design & Architecture
-
Burks, A. W, H. H. Goldstine, and J. von Neumann (1946), "Preliminary
Discussion of the Logical Design of an Electronic Computing Instrument,"
reprinted in C. G. Bell and A. Newell, eds. (1971), Computer Structures:
Readings and Examples. New York: McGraw-Hill, pp. 92-119
-
Alexander, C. Notes on the Synthesis of Form, Harvard University
Press, 1964
-
Simon, H. A. The Sciences of the Artificial. MIT Press, 1969
-
Bell, C. G., and A. Newell, eds. Computer Structures: Reading
and Examples, McGraw-Hill, 1971
-
Parnas, D. L. "On the criteria to be used in decomposing system
into modules," Communications of the ACM, Vol. 15, No. 12, Dec
1972, pp. 1053-1058
-
Steward, D. V. "The Design Structure System: A Method for Managing
the Design of Complex Systems," IEEE Trans. in Engineering Management,
Vol. 28, no. 3, 1981, pp. 71-84
-
Haanstra, J. W., B. O. Evans, J. D. Aron, F. P. Brooks, Jr., J. W.
Fairclough, W. P. Heising, H. Hellerman, W. H. Johnson, M. J. Kelly,
D. V. Newton, B. G. Oldfield, S. A. Rosen, and J. Svigals, "Final
Report of the SPREAD Task Group, December 28, 1961", Annals of
the History of Computing 5(1): 6-26, 1983
-
Parnas, D. L. "Software aspects of strategic defense systems,"
Communications of the ACM, 28, 12 (Dec, 1985), pp. 1326-1335
-
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design
Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley,
1995
-
M. Shaw and D. Garlan, Software Architecture, Prentice Hall,
1996
-
Eppinger, S. D. "A Planning method for integration of large-scale
engineering systems," Int'l Conf. on Engineering Design, 1997
-
Carliss Y. Baldwin, Kim B. Clark, Design Rules Vol 1: The Power
of Modularity, The MIT Press, 1999
Testing & Analysis
-
Mary Jean Harroad, "Testing: A Roadmap", in The Future
of Software Engineering, special volume, A. Finkelstein, Ed., 22nd
International Conference on Software Engineering, June, 2000.
-
Daniel Jackson, Martin Rinard, MIT, , "Software Analysis: A
Roadmap", in The Future of Software Engineering, special volume,
A. Finkelstein, Ed., 22nd International Conference on Software Engineering,
June, 2000.
Modularity: Formal Models
-
D. Jackson and K.J. Sullivan, "COM Revisited: Tool-Assisted
Modelling of an Architectural Framework," SIGSOFT 2000, ACM SIGSOFT
International Symposium on the Foundations of Software Engineering,
November, 2000.
-
Daniel Jackson, "Alloy: A Lightweight Object Modelling Notation
", ACM Transactions on Software Engineering and Methodology (TOSEM)
, Volume 11, Issue 2 (April 2002), pp. 256-290
-
Daniel Jackson, Ian Schechter and Ilya Shlyakhter, "Alcoa: the
Alloy Constraint Analyzer ", Proc. International Conference on
Software Engineering, Limerick, Ireland, June 2000
Life, Economics & Politics
-
Schumacher, E. F., Small Is Beautiful: Economics as if People
Mattered, Perennial Library Edition. New York: Harper and Row,
1973
-
Pugh, E.W., Building IBM: Shaping an Industry and Its Technology,
Cambridge, Mass., MIT Press, 1995
Links
General
- The
future of Software Engineering, part of 22nd International Conference
on Software Engineering, June, 2000
Organizations, Conferences & Literature
Top
Home
|