Software Engineering Teaching Facility
Bug tracking
Bugzilla
Continuous testing, continuous integration and continuous delivery
Jenkins
Git service
Gitea - Git a cup of tea
Assignment submission
The Lab Report Repository (LRR) developed by graduate student Mohamed Nor.
Incubator projects
LRR - Lab Report Repository - a case study on development, maintenance, bug reporting, bug fixes and continuous improvement
Cloud Software Engineering
Ping Ren
Software Engineering Online Course
OAPS - open access publishing service (Python implementation, JSP/Servlet implementation)
EnglishPal - learning English in a smart way
WordFriend - word frequency and word familarity
AITA - artificial intelligence teaching assistant
PhotoStream - simple personal photo albums
SmartDoc - a documentation tool for linking code with requirements
Category-specific scatterplot - for correlation analysis
OMG (Oh My Genes) - for identifying differentially expressed genes given two samples
Online Code Contest
Signature as password
Course objective satisfaction, analyze.py>, README
Important Literature on Software Engineering
Note: the number of asterisks indicates our strength of recommendation.
Journal articles
-
***** D L Parnas and P C Clements. 1986. A rational design process: How and why to fake it. IEEE Trans. Softw. Eng. 12, 2 (February 1986), 251-257. A Chinese version is available as TXT and as HTML.
-
**** Brooks, Frederick P., "No Silver Bullet: Essence and Accidents of Software Engineering," IEEE Computer, Vol. 20, No. 4 (April 1987) pp. 10-19.
-
***** Yamaura, Tsuneo. "How to Design Practical Test Cases." IEEE Software (November/December 1998): 30-36.
-
**** Les Hatton. Does OO Sync with How We Think? IEEE Software (May/June 1998): 46-54.
-
***** Johanna Rothman. 1998. Of Crazy Numbers and Release Criteria.
-
***** Dr. Ralph R. Young. Recommended Requirements Gathering Practices. CrossTalk The Journal of Defense Software Engineering (April 2002). Vol. 5. No. 4. [PDF pages 9-12]
-
***** Leishman and Cook. "Requirements Risks Can Drown Software Projects." Computer (November 2001). [PDF pages 4-7]
-
***** Lawrence, Brian, Karl Wiegers, and Christof Ebert. The Top Risks of Requirements Engineering. IEEE Software (November/December 2001): 62-63.
-
**** Johanna Rothman. 2002. Release Criteria: Is This Software Done?
-
***** Li, Paul Luo, Andrew J. Ko, and Jiamin Zhu. 2015. “What Makes a Great Software Engineer.” In 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, 1:700–710.
-
**** Fucci, D., Erdogmus, H., Turhan, B., Oivo, M., & Juristo, N. (2017). A Dissection of the Test-Driven Development Process: Does It Really Matter to Test-First or to Test-Last? IEEE Transactions on Software Engineering, 43(7), 597-614. [7592412]. https://doi.org/10.1109/TSE.2016.2616877
Blog posts
-
**** Max Kanat-Alexander. (2020). The Definition of Simplicity.
-
***** Martin Fowler. Is High Quality Software Worth the Cost?
-
**** Agile Requirements Modeling
-
***** Scott W. Ambler. Class Responsibility Collaborator (CRC) Models: An Agile Introduction.
Books
-
**** Craig Larman. 2004. A book chapter on iterative, evolutionary and agile development.
-
***** Karl Fogel. Producing Open Source Software: How to Run a Successful Free Software Project. Second Edition.
-
***** Winters, T. D., Manshreck, T, & Wright, H. (2020). Software Engineering at Google: Lessons Learned from Programming Over Time. O'Reilly Media.
Contact
For more information about the facility, please contact Lanhui for help. Last modified on 15 June 2022.