UT Dallas > Computer Science > Professor > Requirements Engineering Tools for Free

Requirements Engineering Tools for Free

From his lab at UT Dallas, Dr. Lawrence Chung is helping computer software developers, throughout the world.  He has developed a set of software tools, called “RE Tools” (Requirements Engineering Tools) to help with the requirements phase of software projects.  The toolkits are available as free, open software at:  www.sourceforge.net/projects/re-tools.   Since 2009, there have been almost 2000 downloads of the toolkits  throughout the world – 75 countries as of now.  For more details about the number of downloads by country, go to:  www.sourceforge.net/projects/re-tools/files/stats.

The RE Tools are downloaded by a variety of people for research, education, and industry, to help with the requirements for any software development project.  Feedback has been used to make improvements and additions to the RE Tools.   Over the last few years, the number of downloads has increased significantly.  In 2012, approximately 500 toolkit downloads were made.  In 2013, approximately 600 toolkit downloads were made.

It is essential to identify the requirements to guide the design and development of the project.  Before the requirements are documented, the problems in a piece of reality should be unmistakably identified, good alternative solutions explored and analyzed.  If there are no problems, then that piece of reality must be perfect and everybody in it happy, hence no need for any changes or improvements!  Dr. Chung’s expertise in non-functional requirements has helped ensure that the RE Tools include critical and initial parts of requirements engineering.   The toolkits provide an integrated set of tools to help identify and formulate both problems and solutions, in terms of non-functional requirements and functional requirements. Non-functional requirements identify how the system should work and address such issues as usability, capacity, security, performance, and style.  In contrast, functional requirements identify what the system should do.  For example, the functional requirements of most cell phones are similar (e.g. make phone calls, store contact information, calendar, etc.).  It is the non-functional requirements that differentiate the various brands of cell phones (e.g. usability, aesthetics,screen size, screen touch behavior, speed, battery power consumption, cost, etc.).

The RE Tools also encourages the development and reuse of software components.  For example, CAT/CARE is the Component Aware Requirements Engineering for the development and reuse of software components, whose research has collaboratively been carried out with Dr. Kendra Cooper.   When possible, system and software requirements should be developed through reuse of software components in order to enhance the quality and reduce the software development effort.

About seven years ago, Dr. Chung and Dr. Sam Supakkul, a PhD student back then, built the first set of RE Tools.  Although Dr. Sam Supakkul is now working in industry, he continues to help with improvements and additions to the RE Tools.   Currently, several graduate students, under the guidance of Dr. Chung, are making additions to the RE Tools.  For example, Madhavi Venkatesh is developing a tool to provide the IDEF0 standard modeling notation. Tom Hill and Eunjung Park are extending it with additional modeling notations (BPMN and an architecture modeling notation) using UML, which is already part of RE Tools. Extensions and improvements are also being made through international collaborations, including, for example, some Spanish colleagues.  The toolkits provide a variety of requirements tools to allow for differences in user preferences and project types.

Dr. Chung is an Associate Professor of Computer Science at The University of Texas at Dallas [www.utdallas.edu/~chung/ ].   He is the principal author of the research monograph “Non-Functional Requirements in Software Engineering,” which has been adopted by researchers and used by practitioners in a wide area of software engineering research and practice, including Requirements Engineering, Software Engineering, and System/Software Architecture. His research involves, among other things, the use of a conceptual modeling approach for his team’s Silverlining project for architecting cloud computing to satisfy the stakeholders’ goals and the HOPE project for developing usable and useful smartphone applications for people with communication, memory or muscular difficulties.

The Department of Computer Science at UT Dallas [www.cs.utdallas.edu] is one of the largest CS departments in the United States with more than 750 undergraduate, 500 master, and 125 PhD students.  They are committed to exceptional teaching and research in a culture that is as daring as it is supportive.