scispace - formally typeset
Search or ask a question
Proceedings ArticleDOI

Using high-level tools to implement software engineering projects

18 Oct 2000-Vol. 1
TL;DR: Students were encouraged to interface high-level languages such as Java and C++ with application software such as Microsoft Access and Excel, supporting the concepts of reuse and object-oriented design while providing a valuable experience in integration.
Abstract: Describes a one-semester software engineering course that takes advantage of the high-level programming tools that are becoming increasingly available. It has always been difficult to include necessary theoretical material as well as a complete software project in a one-semester course. In most traditional computer science degree programs, many students do not have room to take more than one semester of software engineering. A solution to this problem is to concentrate on the analysis and design phases of a project and to use high-level programming tools to develop a rapid prototype or to implement only part of the design. This paper describes student projects that used tools such as Visual Basic and ColdFusion in developing their projects. Projects involving Internet applications were particularly adaptable to this approach. Students were also encouraged to interface high-level languages such as Java and C++ with application software such as Microsoft Access and Excel, supporting the concepts of reuse and object-oriented design while providing a valuable experience in integration. This approach further introduces students to important software development planning and management issues, such as the proper choice of platform for the project, risk assessment, and assessment and utilization of team members' expertise and talents.
Citations
More filters
Journal Article
TL;DR: Universities need access to software engineering tools that can be incorporated into the computer science curriculum to ensure the successful employment of computer science graduates.
Abstract: Computer science graduates of most university programs are knowledgeable of computer science concepts and theories. Most graduates experience a variety of languages and associated programming techniques. Few graduates are exposed to software engineering industrial strength analysis and design tools. The growth of outsourcing is primarily prompted by financial criteria, but there are some indicators that U.S. software professionals don't have sufficient experience with tools that support the first half of the software engineering life cycle. In order to counteract this situation, universities need access to software engineering tools that can be incorporated into the computer science curriculum. This is necessary to ensure the successful employment of computer science graduates.

9 citations

Proceedings ArticleDOI
01 Oct 2007
TL;DR: This paper will describe a software engineering class project that involved a client from another academic department to develop a non-trivial internet based software application, which supported the department's scheduling of faculty to classes, using an internet based web service to solve the linear programming problem that resulted from the constraints of the problem.
Abstract: For a computer science program in which students are required to complete one course in Software Engineering, it is impossible to create a polished finished product for a project of any significant size that can demonstrate all the phases of the project. This can be solved by requiring students to complete a full set of requirements and specifications. Develop design documents for only a subset of the requirements and an even more limited implementation of the design documents. The artifacts from such a class can then be used as the foundation for a senior capstone design course. This allows for the development of skills that are directly needed in the real world, in which a team is given a set of requirements to implement, or is assigned to an existing project to continue its development, or is assigned to a project team that maintains existing code. Anticipated skills developed by the student by such a capstone project are: the ability to read and understand requirements and specifications, the ability to understand preexisting designs and the design decisions that contributed to the design, the ability to understand existing code, the ability to enhance the code to complete a project based on the requirements, and the ability to evaluate preexisting documentation. This paper will describe such a software engineering class project that involved a client from another academic department to develop a non-trivial internet based software application, which supported the department's scheduling of faculty to classes, using an internet based web service to solve the linear programming problem that resulted from the constraints of the problem. The paper will then discuss the subsequent senior design project and implementation that followed.

5 citations


Cites methods from "Using high-level tools to implement..."

  • ...Projects have varied from Tennis Tournament Management Software [6]-[7], Intramural Sports Management Software, Online shopping software, and the project used for this paper, Course Scheduling of Faculty to Classes [8]....

    [...]

References
More filters
Book
01 Jan 1982
TL;DR: Software Engineering A Practitioner's Approach recognizes the dramatic growth in the field of software engineering and emphasizes new and important methods and tools used in the industry.
Abstract: From the Publisher: Well-suited for both the student and the working professional,Software Engineering A Practitioner's Approach recognizes the dramatic growth in the field of software engineering and emphasizes new and important methods and tools used in the industry.

8,224 citations


"Using high-level tools to implement..." refers background or methods in this paper

  • ...The description of the project also became part of the Detailed Software Management Plan [7] [8]....

    [...]

  • ...A formal technical review of the requirements specification was scheduled with the instructor and one other team who served as the Software Quality Assurance (SQA) team [7]....

    [...]

Book
01 Jan 1983
TL;DR: Software Engineering with Ada, Third Edition is a complete reference for creating large-scale Ada systems and understanding the software engineering aspects of these systems.
Abstract: From the Publisher: Grady Booch, a renowned authority in software development, and Doug Bryan combined their Ada programming and software engineering expertise for the new edition of this best-selling book. Their up-to-date introduction to Ada programming provides a foundation for using the language with software engineering and object-oriented design. Programmers will find Software Engineering with Ada, Third Edition to be a complete reference for creating large-scale Ada systems and understanding the software engineering aspects of these systems. Features of the third edition include techniques for combining object-oriented design principles and software engineering to maximize the potential of Ada; extensive examples of small-sized code that will benefit new Ada programmers; six chapters devoted to design; five new large-scale programming exercises that build upon the software engineering principles developed in the design chapters; design projects on topics such as environment monitoring, database systems, and generic tree packages; an introduction to up-to-date object-oriented design methodology; and a new appendix on the Ada 9X program.

531 citations

Book
01 Dec 1998
TL;DR: Comprehensive and up-to-date coverage of advanced topics including: input and output object serialization multithreading network programming distributed objects databases native methods Java BeansPut Java to work on real problems!
Abstract: “Core Java is the best choice for experienced programmers. It is unmatched for technical depth, yet remains highly readable.” -K.N. King, Computer ReviewsComprehensive and up-to-date coverage of advanced topics including: input and output object serialization multithreading network programming distributed objects databases native methods Java BeansPut Java to work on real problems!Written for serious programmers who have mastered the fundamentals of the Java language, Core Java 1.1, Vol. II thoroughly explains the more advanced features and libraries you need to build real programs.New chapters on Java Beans, Advanced AWT, Security, and Internationalization focus on the features and functions added to Java with the release of JDK 1.1. Updated chapters on multithreading and networking include extensive examples and thoroughly tested sample code that illustrate some of the most powerful features of Java.Volume II also provides in depth coverage of the Java Enterprise API-JDBC, RMI, Native Methods-that demonstrates what objects everywhere can be realistically used for.The CD-ROM includes all Java source code examples from the book, the latest version of JDK 1.1.x and useful shareware as well as all of the example code from Core Java 1.1, Volume I.

70 citations

Proceedings ArticleDOI
27 Jun 1999
TL;DR: A new approach of software development teaching which is called "Docware", which is a documentation centered process: the software product is no longer regarded as a source file that is documented afterwards, but as a set of documents whose source file is one product among others.
Abstract: The software engineering teaching is a true challenge. Indeed software engineering technology is only justified for large projects or long-term applications maintenance ; aspects impossible to show at the time of introductory course.In order to circumvent these difficulties, we propose a new approach of software development teaching which we called "Docware". It is a documentation centered process: the software product is no longer regarded as a source file that is documented afterwards, but as a set of documents whose source file is one product among others.After having specified our teaching objectives, we describe this approach which uses new tools that we developed and used for several years. A report of the use of this approach concludes this paper.

11 citations


"Using high-level tools to implement..." refers background in this paper

  • ...0-7803-6424-4/00/$10.00 © 2000 IEEE October 18 - 21, 2000 Kansas City, MO 30th ASEE/IEEE Frontiers in Education Conference T2C-13 1 Pearl Brazier, University of Texas - Pan American, Department of Computer Science, Edinburg, TX 78539 brazier@panam.edu...

    [...]

Proceedings ArticleDOI
05 Nov 1997
TL;DR: The introduction of risk management in an undergraduate software engineering course requires students to work in teams of 5-6 persons to develop a software application in a one-semester time frame following a systematic development process.
Abstract: Risk management is one of the key practices of the Software Engineering Institute capability maturity model. The effective management of risk is crucial to the success of software projects. Much has recently been written concerning risk management in an industrial environment. One of the most useful documents is a risk management questionnaire developed by the Software Engineering Institute. The questionnaire consists of 194 questions that a software development team can use to identify risks in their project. Unfortunately very little has been written about the risks faced by undergraduate software development teams and how they might manage them. This paper describes the introduction of risk management in an undergraduate software engineering course. The course requires students to work in teams of 5-6 persons to develop a software application in a one-semester time frame following a systematic development process. An academic version of the Software Engineering Institute risk management questionnaire suitable for undergraduate teams is described. This questionnaire addresses the real risks that an undergraduate software development team is likely to face and is based on years of the authors' experience and that of others teaching these types of classes. The questionnaire and related risk forms and materials are described in detail as well as the authors' experience in using these materials with two classes.

8 citations


"Using high-level tools to implement..." refers background in this paper

  • ...0-7803-6424-4/00/$10.00 © 2000 IEEE October 18 - 21, 2000 Kansas City, MO 30th ASEE/IEEE Frontiers in Education Conference T2C-13 1 Pearl Brazier, University of Texas - Pan American, Department of Computer Science, Edinburg, TX 78539 brazier@panam.edu...

    [...]