Department of Collegiate and Technical Education Week -6 Requirement Engineering & Modeling Software Engineering Principles and Practices Computer Science and Engineering Session 01 Computer Science & Engineering – 20CS44P
Computer Science & Engineering – 20CS44P Overview The process of collecting the software requirement from the client then understand, evaluate and document it is called as requirement engineering. The goal of requirement engineering is to develop and maintain sophisticated and descriptive ‘System Requirements Specification’ document.
Computer Science & Engineering – 20CS44P What Is Requirement ? Requirement is a condition or capability possessed by the software or system component in order to solve a real world problem. The requirements for a system are the descriptions of what the system should do - the services that it provides and the constraints on its operation. Requirements convey the expectations of users from the software product.
Computer Science & Engineering – 20CS44P Importance The requirement engineering provides a vision of the final software Requirement engineering also helps in defining the scope of the software It also helps in perceiving the cost of the final software It also helps in perceiving the schedule up to which the software will be delivered to the customer.
Computer Science & Engineering – 20CS44P Business Requirements Business requirements specify the software’s business demand. The business requirement identifies why the software is required, who will be the end-users of the software, how the software will benefit its end users. The business requirement does specify the technicality of the software i.e. how it should be implemented it focuses only on what software must do for them.
Computer Science & Engineering – 20CS44P Users Requirements User requirements are statements, in a natural language plus diagrams, of what services the system is expected to provide to system users and the constraints under which it must operate. User requirements reflect the specific needs or expectations of the software's customers.
Computer Science & Engineering – 20CS44P Software Requirements Functional : Describe what the software must deliver and what it must not. Non-Functional : Describe the non-behavioural aspects of the system such as its scalability, reliability, performance, security, its portability, reusability and flexibility. Domain Requirements : Describes the realm, area, group for which the software is to be developed. Such as for college, office, military, hospital, students, teachers, patients
Computer Science & Engineering – 20CS44P Sources Of Requirements
Computer Science & Engineering – 20CS44P Stakeholders/Buyers : They are the persons responsible for accepting and executing the software. They can be individual individuals, organizations, trusts or even the government or public of a country. User/Beneficiaries: These are the users of the product for which the product is intended. Operators : They are the persons who work on the software to make the services of the software available to its beneficiaries or the end users.
Computer Science & Engineering – 20CS44P Domain Experts : They are professionals with experience and expertise of the domain in which the software provides its services, viz. insurance, financials, banking, communication, data transfer, networking, etc. Developer: They are responsible for software design, prototype development, and technical feasibility. They work closely with the end-users, buyers, and application experts.
Computer Science & Engineering – 20CS44P Past Experience/Case Studies : An organization working in the similar or same domain may provide its past experience or even documented case studies Connected People/Machine/Environment : People associated with software or environmental factors and IT domain may give a lot of provide information about constraints involved in development, development, its and environment implications on software.
Computer Science & Engineering - 20CS44P Automated : In the new generation of information technology and software development paradigm, many automated and semi-automated tools are available that allow for the affirmation and management of the need for building the system. Tester : Testers are a good source of information about the user’s behaviour or the predictive behaviour of the system’s condition. continuous contact with real users for their input
Thank you Computer Science & Engineering – 20CS44P Chairperson: Smt. Usha D 136-Government Polytechnic, Bagepalli Moderator : Smt. Sunandadevi V K 109-136-Government Polytechnic, Kalaburagi Subject Rewiever Smt. Suvarna Mahadev V M 136-Government Polytechnic, Bagepalli Content Developers 1. LOHITH S Y 173-gpt, Harapanahalli 2. Raghavendra M 131 School of Mines KGF 3.Poornima Kebbepura R C 112, Gpt, Tumkur 4. O K MANJUNATHA 156 GPT MULBAGAL 5. JYOTHI B.K 177 GPT SIDDAPUR. 6. PALLAVI H S 169 GPT KGF 7. A V RADHIKA 149, GPT ,CHITRADURGA