¶ … Management
Requirements engineering process is at the very core of project success. Rather than spend huge amounts of money for reworking the whole project it is prudent and cost effective to identify and rectify the problems early in the project development life cycle.
We are witnessing a paradigm shift in communication and computer technology and there is a consequent change in our business methodologies. In this automated business environment there is an ever-increasing stress on businesses to accomplish everything in an efficient and swift manner. The increasingly cutthroat completion, particularly in light of the global competition, has placed a huge stress on productivity. The need for timely completion of projects and the urgency to meet the deadlines has however cast new problems on its own with companies trying to rush in with their projects neglecting some fundamental aspects. The life of any project depends on the provisions provided with a view to future considerations. The lack in futuristic perception leads to project failure resulting in the utter loss of time, effort and money. There is an increasing realization in the corporate world as to the importance of proper requirements management for the success of any project. Let us briefly discuss the importance of requirements engineering process and how it affects all other aspects of the project life cycle.
Requirements Engineering
Requirements engineering is all about defining and describing what a software system should do to satisfy the informal requirements provided by a statement of need. The Thinking in requirements analysis is principally in terms of problem not its solution' [Davis, 1993]. Problem analysis defines the software solutions possible for a given problem. According to Yeh and Zave, Partitioning, Abstraction and Projection are the three main principles of structuring in a problem analysis. By partitioning we simplify our analysis making it easier to understand the relationship between the different objects and functions within the system. Abstraction identifies the 'generic / Specific' relationships while projection provides an overview of the structural and functional relationships between the objects and the functions. Problem analysis presents us with a clear picture and forms the base for the software requirements specification report. [James F. Peters, 120] Requirements elicitation is the process of gathering information from the stakeholders of the project. The requirements themselves differ for the different types of users. "The process for eliciting the work group and end user group requirements are premised on the notion that sound and accurate descriptions of the users and their environment is at first necessary" [Macaulay 90]
Requirements Identification
The success and applicability of any project depends on the proper assessment and understanding of the user requirements. It is imperative for companies to have long-term strategical considerations before they embark on any new project. Well-planned requirements analysis will give us a good idea as to the exact requirements of the project and it is indispensable for the proper functioning of the project. Barry Boehm, an expert developer of cost estimation models recounts that almost 50% of the project reworking costs are due to the poor requirements analysis [Ivy. F.Hooks]. A good requirements analysis would reflect all the customer needs in the requirements specification document. According to Dr. Robert Spinard, vice president of Xerox Corporation, New York, "The Biggest mistakes in any large system design are usually made on the first day." It is fairly obvious that the requirements specification document holds the key to project success and longevity and hence it is imperative upon the companies to invest all the care and effort in creating a good requirements specification.
Functional, behavioral and non-behavioral attributes are the three main aspects of a good requirements analysis. The functional description of the requirements specification report explains the main system activities. The behavioral description enables us to have a clear idea of the hierarchical structure of the different system functions and controls while the non-behavioral description is about the quality assurance. [Harel D, 1992]. The functional specification document contains the details of all the inputs, outputs and the data retained in the system. A brief overview of the audit and control requirements as well as the system acceptance criteria (testing and validation) should also be included in the report. Starting the compilation part of the project without preparing a clear-cut specification in consultation with the users is a frequently encountered problem in the software industry leading to project failures. According to a report from the Standish group more than 31% of all projects are cancelled and even more astounding is the fact that around 53% of the projects that are carried on...
Software Engineering Outline requirements for a Supermarket Checkout System -- The checkout system in a supermarket consists of a store computer to which the cash registers are connected. Each cash register is equipped with its own processor, a keypad with numeric keys and function keys, an electronic barcode scanner, a scale, a customer order receipt printer, a credit/debit card reader, a credit/debit card receipt printer and a display where item and
Software Engineering Requirements Are Volatile: Design, Resource Allocation, and Lifecyles Aren't So Flexible For the majority of software development initiatives, bad requirements are a fact of life. Even when there is a high quality elicitation process, requirement change throughout the software lifecycle model. This is expected, if not desired to build a system that the customers wants and will use. But, it's difficult to change design and resource allocation once these have
Software Engineering: What Makes it Run The Software Engineering Online Learning Center sponsored by the Institute of Electrical and Electronic Engineers (IEEE) is a wealth of useful information for anyone interested in the disciplines this organization is committed to advancing knowledge in. Divided into webcasts, DB2 tutorials, Amazon.com and eBay tutorials, Java learning tools and Linux certification tutorials, the learning center strikes a good balance between open source and proprietary software.
Software Engineering: What Makes it Run IBM and the Institute of Electrical and Electronic Engineers (IEEE) have collaborated to create the Software Engineering Online Learning Center, a portal of educational and industry information that is very useful for any student of computer science, programming or software engineering. The intent of this paper is to evaluate this portal for its applicability and value to learning. The portal is designed around IBM-centric content
Software Engineering) Statement of purpose: Software engineering M.A. Software engineering offers rapidly-expanding career opportunities and has the ability to shape our collective futures in so many critical areas, including the way we communicate, do business, and structure our lives. I am eager to sharpen my skills so I can become more competitive as an employee in this field. I currently hold a B.A. In software engineering from the College of Engineering
Working Experience Report Software engineer and project engineer are some of the most famous professions in the field of Information Technology. Given their popularity in the IT field, having experience in these professions can be considerably advantageous. The necessary experience can be obtained through working in different areas that relate to the professions after completion of an educational or training course. In most cases, people develop necessary experience through work placements
Our semester plans gives you unlimited, unrestricted access to our entire library of resources —writing tools, guides, example essays, tutorials, class notes, and more.
Get Started Now