4710 Bellaire Boulevard
Bellaire, TX 77401
6:30 p.m. Thursday, Jan. 31, 2013
Presented byChris Chedgey The principles of modularity have been applied to engineering projects since Gorak built the wheel, and Thag the barrow of the world’s first wheelbarrow. Thag’s barrow didn’t care that the wheel was first hewn from rock, and later upgraded to a lighter, wooden one, and Gorak’s wheel design was reused for the world’s first chariot. This is how humans make sense of complexity – we divide and conquer.Analogous principles of modularity are taught in Software Engineering 101 – information hiding, interfaces, clear responsibility, high internal cohesion, low external coupling, etc., and we apply these routinely as we develop, and continuously refactor the code encapsulated within classes.However when the number of classes reaches some threshold, higher level abstractions are needed in order to manage the complexity of the growing codebase. This limit is usually overshot and the team is soon drowning in an ocean of classes. At this point it is time to restructure the code-base into a hierarchy of modules above the class level, or watch the team’s frustration continue to rise, and productivity plummet.This talk proposes a measurement framework for assessing the quality of a modular structure, identifying regions of poor modularity, and for assessing the impact of restructuring or refactoring actions. Based on this framework, the talk introduces strategies for retro-fitting modularity to an existing codebase, with minimum impact on the code logic itself.This material is based on experience gained while helping many development teams through the restructuring process. The concepts will be illustrated by examples.Chris Chedgey holds an MSc. from Trinity College Dublin, and has 28 years’ experience in Software Engineering, on both the process and product sides of development. After graduation he worked as a researcher in tools to support the application of formal methods to the development of software. He joined the $1bn Canadian Space Station Project in 1990 where he was a member of the team that defined the software development processes and tools for the program, and then technical lead on the Remote Manipulator System control software. In 1994 he joined the $1.5bn Iris program which replaced the entire communications systems for the Canadian armed forces, first on the process/toolsmithing side, and then the product development side. In 2000 he returned to Ireland and founded Headway Software to address the lack of large-scale modularity that he saw as pervasive in software industry. For 12 years Chris has designed tools such as Restructure101 for retrofitting a modular structure to large tangled code-bases, and Structure101 for the definition, communication, and enforcement of architecture. These tools are characterized by major advances in visualization technology, Chris’s passion. Today he helps organizations that need to restructure their code-bases, and is a lively speaker on the need for modularity, and the strategies to refactor in the large. He lives on the south coast of Ireland, where he likes to sail when it’s windy, and walk the dog when it’s not.Meeting Location: Improving Enterprises4710 Bellaire Blvd Suire 205
Bellaire, TX 77401
Directions to the Improving Enterprises officesSuggested Parking:Turn onto 1st N. St. and turn right into the Pin Oak Office Park parking garage. Park on the 3rd floor (or above) of the parking garage. Do not park in any spots marked RESERVED.Meeting Sponsor: Headway SoftwareSponsor Website: http://www.headwaysoftware.comAbout Headway SoftwareAccording to the US Dept of Defense, well structured software is delivered in half the time, at half the cost, and with 8x less bugs.
Developed by Headway Software, Structure101 makes software structure (design, architecture and packaging) easy to understand, define, communicate, control and keep simple.
While Restructure101 lets you refactor the architecture of the largest and most complex codebases.
Structure101 and Restructure101 support C/C++, Java, Pascal, PHP, Python, SQL and UML.
Structure101 won the 2008 Dr Dobb's Jolt Productivity Award in the Architecture & Design category.
Restructure101 won the 2011 Dr Dobb's Jolt Productivity Award in the Architecture & Design category and the 2012 JAX most innovative Java technology award.About our venue sponsor: Improving EnterprisesImproving Enterprises is an advanced software development professional services firm. We challenge the basic assumptions of traditional technology service models. Our people are senior, seasoned professionals who bring years of real-world enterprise development experience to the table in the form of Agile software development process & principles.Our mission is to offer an esteemed level of quality IT training by using real world solutions, supported by a dynamic, energized team focused on providing excellence in and outside the classroom.Specialties
Certified Consulting, Mentoring, Agile, Applied Training, Rural Sourcing, Microsoft, .Net, Java, Networked Recruiting, Room Rentals, Project Management, Quality Assurance Door Prizes and Giveaways! - must RSVP on Eventbrite to winJetBrains has donated one IntelliJ license to be raffled off at this month's HJUG meeting if we have 30 attendees, two if we have 50 or moreHello2Morrow has donated a SonarGraph Personal license to be raffled off at this month's HJUG meetingZeroTurnaround has donated a license of JavaRebel to be raffled off this monthHeadway Software has donated a license of Structure101 and a license of Restructure101