Verified Document

Software Requirements Engineering Computer Software Technology Has Term Paper

Software Requirements Engineering Computer software technology has improved significantly over the past decade leading to more efficient and comprehensive information systems. With the innumerable computing systems there is also a corresponding increase in the complexity of these systems. Today software requirements analysis has become an indispensable part of software development. Over the years there has been a continued stress on the importance of a properly planned project evaluation, requirement specification and designing. The system development life cycle incorporates the complete analysis, design and maintenance of any software project wherein each phase of the project is meticulously planned and based on the previous phase. Let us consider the requirements engineering process in a little detail.

The software requirements engineering process is part of the analysis phase of the software development life cycle. Once the requirements are thoroughly assessed a comprehensive software requirements specification is drafted. This is a technical specification of the software requirements. Unlike the software-designing phase, which deals with the actual technicalities of implementing the software, the requirements phase just specifies what is expected of the software product. A properly developed specification is a prerequisite for the success of the software product. One of the main causes for the failure of software projects is the poor attention paid to requirements engineering. Poorly drafted requirements specification may lead to developing software that doesn't satisfy the needs of the user.

The Software Requirements Specification

The software requirements specification is a comprehensive document, which presents all the different aspects involved in the software development. This includes the product overview, data flow, functional requirements, performance requirements, methods to handle exceptions, provisions for modification etc. It is desirable that the software specification or requirements report should be correct, complete, consistent, clear, functional, verifiable, traceable and easily changeable. If the requirements are badly stated or incomplete we might end up developing software that satisfies the requirements but still way...

[Fairley, 93]
There are many models that are used in the software development life cycle. All of these models invariably generate a 'requirements specification' document as the basis of the development. The very first phase in SDLC is developing the feasibility report. The scope of the proposed project is precisely identified and the discrepancies in the current (existing) system are ascertained. Once the preliminary investigation is over and the project is found to be technically, economically and operationally feasible the next step is the requirements analysis. After understanding the system the next phase is to detail the operations to be performed by the system, in context of the objects both external and internal to the system. The inputs and outputs to the system as well as the data to be retained by the system are identified. Several control features that can be used by the user to monitor the system are specified. This detailed analysis is documented in a report form called as the 'Functional Specification'.

Once the analysis part is over the developers have a clear understanding as to the 'what is to be done'. The developers proceed with the system design based on the report of the 'Functional Specification'. The programmers use the design specification for developing the software. At this stage the actual coding of the program is done. Documentation of the program is done simultaneously as it very indispensable for testing as well as maintenance of the program in future. The software thus developed is tested with test data to check for possible errors in logic before the actual implementation process. Elicitation, solution determination, specification and maintenance are the different aspects of requirements engineering.

Languages for Requirements specification (Automated tools)

For real time software systems such as defense applications requirements specification is of utmost importance. The latest automated tools must be used in conjunction with the manual systems to arrive at a proper requirement specification.

Furthermore, a particular functional specification can be satisfied by any one of the different software structures available and hence in deciding upon a particular…

Sources used in this document:
Bibliography

Fairley Richard, "Software Engineering Concepts," Tata McgrawHill, 2000,pg 89

The Standish Group," "The Standish Group Report," Accessed on 16th February 2003, http://www.scs.carleton.ca/~beau/PM/Standish-Report.html

Thomas Bill, "Meeting the Challenges of Requirements Engineering" Accessed on 16th February 2003, http://interactive.sei.cmu.edu/Features/1999/March/Spotlight/Spotlight.mar99.pdf.
Cite this Document:
Copy Bibliography Citation

Related Documents

Software Engineering
Words: 1458 Length: 5 Document Type: Term Paper

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
Words: 878 Length: 3 Document Type: Essay

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 Processing Methodology Understanding the Problem Klyne
Words: 7750 Length: 20 Document Type: Dissertation

Software Processing Methodology Understanding the Problem Klyne Smith, DSE Candidate Dr. Frank Coyle Technical Motivation Research and Contribution Methods Software Processing Methodologies Waterfall Methodology Strengths Weaknesses Opportunity Threats Iterative Methodology Strengths Weaknesses Opportunities Threats Model Methodology Strengths Weaknesses Opportunities Threats Where do we go from here (Spring 2010)? Define measurement data points for Test Case analysis Section IV Creation and Validation of the predictive model Section V Summary Analysis Practical Usage Praxis Conclusion Books Articles / Web Information Software Processing Methodology: Understanding the Problem Section I: Introduction In this work, I examine three different Software Processing Methodologies. I start with the iterative model, followed by the spiral

Software Development Life Cycle SDLC
Words: 3695 Length: 12 Document Type: Essay

Software Development Life Cycle ( SDLC) Explain Requirement process ( in SDLC) in detail. Why is this exercise important? Requirements engineering is a fundamental activity in systems development and it is the process by which the requirements for software systems are identified, systematized and implemented and are followed through the complete lifecycle. Traditionally engineers focused on narrow functional requirements. Now it is being argued by Aurum and Wohlin (2005) that focusing only

Computer System Administrator Systems Administrator
Words: 1661 Length: 4 Document Type: Literature Review

Retrieved from http://books.google.co.ke/books?id=3Tla6d153uwC&printsec=frontcover&dq=Encyclopedia+of+computer+science+and+technology&hl=en&sa=X&ei=dZH_UNjcIcHQhAeRg4C4Bw&ved=0CCwQ6AEwAA Kizza, J.M. (2005). Computer Network Security. New York, NY: Springer. Retrieved from http://books.google.co.ke/books?id=HsawoKBLZOwC&printsec=frontcover&dq=Computer+Network+Security&hl=en&sa=X&ei=uZH_UJn-NMbNhAeWroDYCA&ved=0CCwQ6AEwAA#v=onepage&q=Computer%20Network%20Security&f=false Musumeci, G.-P. D., & Loukides, M. (2002). System performance tuning: [help for Unix system administrators]. Beijing [u.a.: O'Reilly. Retrieved from http://books.google.co.ke/books?id=L4oyNrsFBbsC&printsec=frontcover&dq=System+performance+tuning&hl=en&sa=X&ei=C5L_UKjmNonMhAen8ICoBw&ved=0CDIQ6AEwAA Adelstein, T., & Lubanovic, B. (2007). Linux system administration. Sebastopol, Calif: O'Reilly. Retrieved from http://books.google.co.ke/books?id=- jYe2k1p5tIC&printsec=frontcover&dq=Advanced+system+administration&hl=en&sa=X &ei=fpP_UM6EN8HMhAff9YC4DQ&ved=0CD0Q6AEwBA#v=onepage&q=Advanced %20system%20administration&f=false Verma, D.C. (2009). Principles of computer systems and network management. Dordrecht: Springer. Retrieved http://books.google.co.ke/books?id=dUiNGYCiWg0C&printsec=frontcover&dq=Principles+of+computer+systems+and+network+management&hl=en&sa=X&ei=i5T_UIG3IMaBhQfF2YD4Bg&ved=0CDQQ6AEwAA#v=onepage&q=Principles%20of%20computer%20systems%20and%20network%20management&f=false Whyte, E. (2004, Feb 09). Be a system

Software Engineering
Words: 2612 Length: 10 Document Type: Term Paper

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

Sign Up for Unlimited Study Help

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