Software Engineering and the Processes Involved: A Case Study on ACI Development and their Techniques of Software Testing
Strecker, Stephen J.
MetadataShow full item record
In working at ACI Development, I found an interest in the development of computer software. Looking into this topic further, I realized that development is just one of the important subjects within software engineering. These topics include software design, documentation, development, quality assurance, testing, maintenance, and finally the role of the software engineer itself. Each of these processes are equally important, and they fit together like pieces of a puzzle. If one isn't done properly, the rest will also be skewed. Before anything else, computer software must be thought up and designed. The software design is comparable to the blueprint of a house. There are many possible ways to do the same thing, but how can something be built if there are no documented plans to follow. This leads to the importance of documentation. It is necessary to let all persons involved in a project know exactly where the project came from, what changes have been made, and where it is heading. After the software has been designed, the next phase is that of development. In this phase, it is necessary to decide how we will handle the different things we want a project to do (e.g. what type of data structures will we use in different functions). These decisions are not set in stone, but it is once again important to document any that are made. The next major phase is quality assurance and software testing. These may be the most important and time consuming steps throughout the software engineering process. In these phases, the software is checked to see if the implementation is consistent with the design. Numerous steps are taken to test the software, and in most cases this causes a series of regressive tests. After bugs are found, the application is fixed and re-tested. It is not until after this phase that a product is ready to be put on the market. The final phase of software engineering, maintenance, is a continuous one. During the software maintenance phase many tasks can be completed. These tasks include: the bugs found by the user being documented, tested, and addressed, updates of the product being made and shipped. Throughout the rest of this project I will address all of these processes in some depth, and give examples of some good techniques for producing a software product. I will then relate these examples to examples of how ACI Development addressed and dealt with each phase. Each process has many different options, or ways of doing things, and I intend to show a variety of these options and techniques.
Showing items related by title, author, creator and subject.
Gardner, Matt (2003)There is a difference between engineering and programming software. These differences are explored in the context of a summer internship at FactSet Research Systems. During this exploration, C++, Java, Perl, PHP, and ...
Hedlich, Kirk (1990)The paper consists of three main sections. The first section presents background material from my internship project that I worked on during my SIP. The internship project will serve as the case study. The second ...
Larsen, Bradley M.; Segal, Michael Z. (1993)For our senior project, we worked as interns at a Kalamazoo software development company, I/Net, Inc. Owned in part by IBM, I/Net was developing a product which had been in the development stages for over a year. At the ...