Engineering Log
Home Eclipse Schedule Tools Prime Directives Engineering Log Coding Standards Resources

 

From lessons learned by previous ICS 413/613 students:

Write down any ideas that come to mind.  Sometimes you may forget a brilliant idea because you believe that you  will remember later. Often times, later may be a few days down the road. 
An engineering log is a great place to jot down new ideas or solutions to problems you may come up with at times you aren't at your computer.

Objective

Two major problems in software development are: (1) Developing a system requires managing many dependencies, both past, current and future, and (2) software development occurs over weeks and months and is interspersed with other activities (meetings, eating, sleeping, and having a life).  These problems can result in significant "startup" time during each development session while you try to reconstruct where you were, where you are now, and where you want to go.

The goal of the engineering log is to improve the efficiency of your software development by developing a written record of (1) what you are currently working on (the top tasks of the moment), and (2) design rationales, design issues, questions, and other information of later use.  By regularly writing down this information, you will find that you can get to work more quickly and accomplish more in a limited period of time.  It also provides a mechanism for you to quickly record thoughts that occur to you when away from the computer.

Format

There are many possible formats for an engineering log.  The format required for this class is one that has been developed over the course of several semesters as most effective for almost all students who have used it.  Many students have experimented with PDAs, HTML files, and so forth, only to discover that the overhead involved with the technology inhibited their use of the log and decreased its effectiveness.

The log is hard-copy, written with pen or pencil.
Record the date at the top of the page.
Start a new log on a new page each day.
Begin each programming session (and each log entry) with a list of the 3-4 most important tasks you want to accomplish next. 
If you use loose leaf notebook paper, then put your log entries into a binder in reverse chronological order.  If you use a lab notebook or spiral bound notebook, then chronological order is fine. (I prefer loose leaf paper and a binder, because I can create log entries where ever I am and add them to the binder later.)

I will be checking your engineering log in class. You must bring your log to every class session.

Regular use of an engineering log is important in a professional context as well.  For example, patent applications require documentation regarding when the idea was first thought of and the process of its further development.  Engineering logs can provide this "intellectual audit trail".

The most important reason to use an engineering log is because it will help you develop software faster.