x Classes Start August 14, 2016!

Request Information

Fill out this brief form and an admissions advisor will contact you within the next day.

By clicking the button below you agree to be contacted by CTU about education services (including through automated and/or pre-recorded means, e.g. dialing and text messaging) via telephone, mobile device (including SMS and MMS), and/or email, even if your telephone number or email address is on a corporate, state or the National Do Not Call Registry, and you agree to our Terms of Use and Privacy Policy. You understand that your consent is not required as a condition to purchase a good or service.

Thank you!

Engineering and Computer Science

Bo I. Sandén, Ph.D.

Doctoral Professor of Computer Science

Colorado Springs, CO

Multilingual. Passionate about the art of software architecture. Lover of classical music.

  • Ph. D., Computer Science, (Teknologie Doktor, Informationsbehandling), Royal Institute of Technology, Stockholm, Sweden (1978)
  • B. A., Russian and Mathematics, Lund University, Sweden (1971)
  • M. S. and B. S., Engineering Physics, Lund Institute of Technology, Sweden (1970)

From 1971 until 1986, Dr. Sandén held positions as a software developer and project manager with UNIVAC and Philips Electronics in Sweden. In both positions he was heavily involved in the development of multithreaded software. While working for Philips, Dr. Sandén was stationed in Monterrey, NL, Mexico from 1983-1985 to support a project for the bank BANPAIS.

Dr. Sandén was a visiting Associate Professor at the Wang Institute in Tyngsboro, MA, 1986-1987 and an Associate Professor of Software Engineering at George Mason University in Fairfax, VA, 1987-1996. In 1996 he joined Colorado Technical University in Colorado Springs, taught at all levels and mentored students in the “classic” on-ground DCS program. From 2008 to 2009 he was the Interim Dean of Doctoral Computer Science. Since then he has taught exclusively in the doctoral program.

Academic Specialization/Focus at CTU

Computer Science

  • Why are YOU IN?

    My goal is to support highly qualified students in their journey to a doctorate, help them produce a high-quality dissertation and papers in high-quality journals or conferences

  • What is your teaching philosophy?

    In the Computer Science and Software Engineering courses, which I mainly teach, the emphasis is on explaining concepts that can be quite technical. You start by presenting the material in dialog with the class and then reinforce it through hands-on exercises and projects. I also emphasize the importance of good technical writing at all levels. It has been said that doctoral-level research consists of “doing good work and reporting it,” and I feel that the reporting in the form of a well-written dissertation and other publications is almost as critical as obtaining the results. When working as a mentor and reader for doctoral students I feel that my first duty is to provide substantial feedback in a timely manner. Thereby, I can challenge the students to truly understand their data and to express their results clearly and precisely.

  • Aside from higher education, what else are you passionate about?

    My efforts to contribute to the art of software architecture are not only part of my work but also a passion.  I have always been very interested in classical music both symphonic (Beethoven, Mahler) and operatic (Verdi, Wagner, Tchaikovsky).  I am quite an avid reader and try to sprinkle the occasional book in French or Russian into the usual fare in English and Swedish.  I like to take my dog(s) on hikes in the Front Range.

  • Publications
    • Wellings, A. J., Johnson, R. W., Sandén, B. I., Kienzle, J., Wolf, T., Michell, S. (2000). Integrating object-oriented programming and protected objects in Ada 95. ACM TOPLAS 22(3), 506-539. dx.doi.org/10.1145/353926.353938
    • Sandén, B. I. (2003). Entity-life Modeling: Modeling a thread architecture on the problem environment. IEEE Software 20(4), 70-78. doi.ieeecomputersociety.org/10.1109/MS.2003.1207459
    • Sandén, B. I. (2004). Coping with Java threads, IEEE Computer 37(4), 20-27. doi.ieeecomputersociety.org/10.1109/MC.2004.1297297
    • Sandén, B. I., Zalewski, J. (2006). Designing state-based systems with entity-life modeling, Journal of Systems and Software 79(1), 69-78. dx.doi.org/10.1016/j.jss.2005.02.004
    • Sandén, B. I. (2011). Design of Multithreaded Software: The entity-life modeling approach. Hoboken, NJ: IEEE Software Society Press/Wiley.
    • Yang, W., Qu, Y., Sandén, B. (2011, Aug. 3-5). Improving the Performance of the Enterprise Information System via Optimal Scheduling, Paper presented at the 12th IEEE International Conference on Information Reuse and Integration (IRI 2011), Las Vegas, NV, Aug. 3 -5 (pp 337-341). 10.1109/IRI.2011.6009570
    • Sandén, B. I. (2012). Entity-life modeling: Designing reactive software architectures to the strengths of tasks, Ada User Journal, 33(1), 54-61.
    • Davis, W. R., Laplante, P. A., Sandén, B. I. (2012). A real-time virtual machine implementation for small microcontrollers. Innovations in Systems and Software Engineering 8(3), 223-241. 10.1007/s11334-012-0188-1
    • Shebanow, A., Sandén, B., Qu, Y. (2013, March 25-28). Let’s trade futures! A novel approach for cloud computing resource planning and management. Paper presented at the 7th International Symposium on Service-Oriented Systems Engineering, San Francisco Bay, CA, 25-28 March 2013.
  • Professional memberships

    Senior member of the ACM

    Member of the IEEE Computer Society

  • Speaking Engagements

    I teach a full-day tutorial called “Design of multitask software: The entity-life modeling approach” at conferences:

    • Ada Europe 2012, Stockholm, Sweden, 15 June 2012
    • HILT 2012: High-Integrity Language Technology, Boston, MA, 2 December 2012
    • Ada Europe 2013, Berlin, Germany, 14 June 2013
  • Research interests
    • Software architecture; in particular the design of multithreaded software for reactive systems
    • Object-oriented analysis and design
    • State modeling