In Requirements Evaluation, we're going to consider four main areas. These include Inconsistency Management, Risk Analysis, Evaluation of Alternatives, and Prioritization. Let's first start though by considering Goals and Use Cases. This allow us to come up with alternative proposals, and then use this alternative proposals for evaluation and negotiation. Begin looking into Goals and Use Cases during elicitation and continue remembering this throughout the requirements engineering process. In requirement elicitation, we get domain understanding and perform the requirement elicitation. This allows us to understand the system as it is in context. Identify the problems with that current system as it is. And think about new opportunities. You're also exploring objectives, requirements, and assumptions regarding the system to be. The preliminary phase involves a great deal of knowledge acquisition about the surrounding organization, the domain in which the problem world is rooted, and the problem world itself. This phase often needs to be repeated as evaluation, documentation, analysis, and evolution phases raise new issues. Eliciting the right objectives, requirements, and assumptions is inherently difficult and there will be many sources like you're considering. There will be documents, there will be people, some of those information maybe partial or inconsistent. Aim for an optimal balance between utility or acquired knowledge and also the cost of the acquisition itself. In the elicitation course, we talk about requirements in a kind of abstract sense. To make these requirements more complete, one way we can capture the core abstraction for requirements engineering is through the concept of Goals. Goals are prescriptive statements about the intents of the system that should be satisfied by the cooperation of the system's agents. It's good to look at requirements in this lower level to really identify who the main agents are, what they need to do, considering your current knowledge. Goal statements are prescriptive and are written in optative mood. Optative mood means that you're saying something shall or should or must do something. These statements include wishes or hopes for the overall system. For example, if we were creating a library system, you might require that loan periods for a book should be limited to two weeks. If you were creating a train system, one goal that you might have is that train doors should be closed when the train is moving. That sounds like a good goal, right? If you're creating a project for say the United States Department of Defense, a goal might be the system must only be accessible to those with permission to be on the SIPR network. Where SIPR is Secret Internet Protocol Router network. Your goals are stated in terms of real problems. State desirable properties about the system that may hold or may not hold depending on how the system behaves. These statements are formulated in terms of phenomena that are shared amongst the agents. They may be controlled by some, they may be monitored by others. When we talk about a system, the system can refer to the system as it is or the system to be and it includes both software and environment. Agents within a goal are any active system components that are responsible for that goal satisfaction. Agent are not just people, they may also include things like databases, networks, servers, and much more. Agents define the scope of the system. Human agents may play specific roles, such as operators or end users. Non-human agents include things like sensors, actuators, communication media, measurement instruments, existing software components. And also new software components that are going to form the system-to-be. Basically, if it's something that can monitor, control, or impact the actions needed to accomplish the goals that you're stating, it's an agent. Goals are intended to be satisfied by agents of the system, and any goal may include multiple agents. Goals begin with words, such as maintain or achieve. For example, in a library system, we're loaning out books, we could have a goal of putting the returned book copies back on shelves. So if we think about it, our agents would include patrons, staff, the library software, and we can state the goal is that putting books back on the shelves should be done. In the train system that just mentioned, we may have the goal to maintain safe transportation. In reality, it's not we may say that, it is actually a full requirement, but we want to maintain safe transportation. We would begin by writing it as a goal statement before delving deeper into how we actually make that happen. Safe transportation would rely on things like the on-board train controller, tracking systems, station computers, the passengers, the trains themselves, the drivers, and other things within the system.