You are on page 1of 1

Syntax & semantics Syntax and semantics are terms used in relation to aspects of language.

Syntax is concerned with the structure of language. Syntax is a matter of the logical or grammatical form of sentences, rather than what they refer to or mean. Semantics is concerned with the meaning of words and sentences. Semantics is a matter of the content or meaning of sentences, often in relation to their truth and falsehood. 'Moths speak ravenously' is syntactically correct as it has a valid 'noun verb adverb' structure, but it is senseless (semantically null). 'Boys play roughly' has both proper syntax and a clear semantic content.

Syntax is the grammar. It describes the way to construct a correct sentence. For example, this water is triangular is syntactically correct. Semantics relates to the meaning. this water is triangular does not mean anything, though the grammar is ok. Talking about the semantic web has become trendy recently. The idea is to enhance the markup (structural with HTML) with additional data so computer could make sense of the web pages more easily. Use cases are a very effective method of modeling a software system. It builds a mutual vision of the problem at hand by bridging the gap between the people who understand the problem and the people who understand how to build a solution. It helps to identify all the actors as well as the external systems interacting with the system to be designed and also the behaviors of the system. When developing the use case, it is always advisable to first go through the requirements in multiple iterations, helps a lot in developing a better understanding of the system. Following are some of the main benefits of Use Case Modeling: 1. The use case diagram provides a comprehensive summary of the whole software system in a single illustration. 2. The use cases are mainly composed of narrative text. Hence, unlike many other modeling techniques, the non technical stake holders (e.g. customers, end users, salesperson etc) are also able understand the model for the software system. This means that feedback can be obtained at a very early stage of the development from the customers and the end users. 3. Another major advantage of use case modeling is that it requires the identification of exceptional scenarios for the use cases. This helps in discovering subtle alternate requirements in the system. 4. The use case model can be utilized in several other aspect of software development as well, e.g. Cost Estimation, Project Planning, Test Case Preparation and User Documentation. Following are some of the disadvantages of Use Case Modeling: 1. They do not capture the non-functional requirements easily. 2. There might be a learning curve for the developer and/or specially, the client in using these use cases. In sum, a well-prepared use case is worth its effort. Once the client has agreed to the use cases, the project managers can plan their schedule, and the developers have a clear understanding of what they must develop. From personal experience, I can say that while a use case is very beneficial, they are rarely perfect, but they always serve a useful purpose.

You might also like