Page 9 - 10.1.1.135.5516
P. 9
shape of Java software. In W. Cook, editor, ACM SIG- [22] V. P. Ranganath. Object-flow analysis for optimizing finite-
PLAN International Conference on Object-Oriented Pro- state models of java softw are. Master’s thesis, Kansas State
gramming, Systems, Languages, and Applications, pages University, 2002.
397–412, Portland, OR, U.S.A, Oct. 2006. [23] A. J. Riel. Object-Oriented Design Heuristics. Addison-
[3] K. Beck. Smalltalk: best practice patterns. Prentice-Hall, Wesley Longman Publishing Co., Inc., Boston, MA, USA,
Inc., Upper Saddle River, NJ, USA, 1997. 1996.
[4] F. P. Brooks. The Mythical Man-Month (Anniversary ed.). [24] D. C. Schmidt, A. Gokhale, and B. Natarajan. Leveraging
Addison-Wesley Longman Publishing Co. Inc., Boston, application frameworks. Queue, 2(5):66–75, 2004.
MA, USA, 1995. [25] W. P. Stevens, G. J. Myers, and L. L. Constantine. Structured
[5] M. Fowler. Inversion of control containers and the depen- design. IBM Syst. J., 13(2):115–139, 1974.
dency injection pattern. http://martinfowler.com/ [26] J. Stylos and S. Clarke. Usability implications of requir-
articles/injection.html, Jan. 2004. ing parameters in objects’ constructors. In ICSE ’07: Pro-
[6] M. Fowler. Inversion of control. http: ceedings of the 29th International Conference on Software
//www.martinfowler.com/bliki/ Engineering, pages 529–539, Washington, DC, USA, 2007.
InversionOfControl.html, Jan. 2005. IEEE Computer Society.
[7] E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design [27] R. E. Sweet. The Mesa programming environment. In Pro-
patterns: elements of reusable object-oriented software. ceedings of the ACM SIGPLAN 85 symposium on Language
Addison-Wesley Longman Publishing Co., Inc., Boston, issues in programming environments, pages 216–229, New
MA, USA, 1995. York, NY, USA, 1985. ACM Press.
[8] A. Hellesoy and J. Tirsen. Picocontainer introduc- [28] D. Thomas and A. Hunt. Mock objects. IEEE Software,
tion. http://www.picocontainer.org/ 19(3):22–24, 2002.
introduction.html. Accessed October 2007., [29] R. Vall´ee-Rai, L. Hendren, V. Sundaresan, P. Lam,
2007. E. Gagnon, and P. Co. Soot - a Java optimization frame-
[9] Preparing daos with manual dependency injection. work. In Proceedings of CASCON 1999, pages 125–135,
http://www.hibernate.org/328.html#A5 Red 1999.
Hat Middleware, LLC. Accessed October 2007, 2006. [30] H. Y. Yang, E. Tempero, and R. Berrigan. Detecting indirect
[10] IEEE standard glossary of software engineering terminol- coupling. In Proceedings of the 2005 Australian Software
ogy. IEEE Std 610.12-1990. Engineering Conference, pages 212–221, 2005.
[11] Indus project site. http://indus.projects.cis.ksu.edu/.
[12] R. E. Johnson and B. Foote. Designing reusable classes.
Journal of Object-Oriented Programming, 1(2):22–35,
1988.
[13] B. Jose. The spring framework. http:
//javaboutique.internet.com/tutorials/
spring frame/article.html. Accessed October
2007, 2007.
[14] J. Lakos. Large-scale C++ software design. Addison Wes-
ley Longman Publishing Co. Inc., Redwood City, CA, USA,
1996.
[15] T. Mackinnon, S. Freeman, and P. Craig. Endo-testing: Unit
testing with mock objects. In eXtreme Programming and
Flexible Processes in Software Engineering - XP2000, 2000.
[16] R. C. Martin. The Dependency Inversion Principle. C++
Report, 8(6):61–66, June 1996.
[17] R. C. Martin. Granularity [object-oriented design]. C++
Report, 8(10):57–62, Nov.-Dec. 1996.
[18] H. Melton and E. Tempero. The CRSS metric for package
design quality. In G. Dobbie, editor, Australasian Com-
puter Science Conference, pages 201–210, Ballarat, Aus-
tralia, Jan. 2007. Australian Computer Science Communi-
cations. Published as CRPIT 62.
[19] H. Melton and E. Tempero. An empirical study of cycles
among classes in Java. Empirical Software Engineering,
12(4):389–415, Aug. 2007.
[20] D. L. Parnas. On the criteria to be used in decomposing
systems into modules. Commun. ACM, 15(12):1053–1058,
1972.
[21] Qualitas Research Group. Qualitas corpus. http://www.
cs.auckland.ac.nz/ ewan/corpus/, Oct. 2007.
∼