DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING. 2 Marks and 11 Marks for Unit - 3

Size: px
Start display at page:

Download "DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING. 2 Marks and 11 Marks for Unit - 3"

Transcription

1 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Subject Name: Subject Code: Staff name: Software Engineering CS T55 Dr K. Shantha Kumari 2 Marks and 11 Marks for Unit - 3 Software Design and Function Oriented Software Design: Outcome of a Design Process Characteristics of a Good Software Design Coupling and Cohesion Approaches to Software Design Object Oriented Vs Function Oriented Software Design approaches Structured Analysis Data Flow Diagrams Applying DFD to Real time systems Structured and Detailed Design. 1

2 PART A 1. List the characteristics of a good software design [April 2016] Correctness: A good design should correctly implement all the functionalities identified in the SRS document. Understandability: A good design is easily understandable. Efficiency: It should be efficient. Maintainability: It should be easily amenable to change 2. Compare object-oriented and function oriented system[april 2016] Function Oriented Design In function-oriented design, the system is comprised of many smaller sub-systems known as functions. These functions are capable of performing significant task in the system. The system is considered as top view of all functions. Function oriented design inherits some properties of structured design where divide and conquer methodology is used. Object Oriented Design Object oriented design works around the entities and their characteristics instead of functions involved in the software system. This design strategy focuses on entities and its characteristics. The whole concept of software solution revolves around the engaged entities. 3. Define coupling [Nov 2015] Coupling between two modules/classes/components is a measure of the degree of interdependence or interaction between the two modules or mutual interdependence between modules. The lower the coupling, the better the program. Two modules are said to be highly coupled when: -function calls between two modules involve & shared large chunk of data. -interaction occurs through shared data. 4. What is cohesion? [Nov 2015] Cohesion is a measure that defines the degree of intra-dependability within elements of a module. The greater the cohesion, the better is the program design. When function of one module cooperates with another to perform single objective then module is said to be good cohesion. 5. Enumerate the different types of cohesion that a module might exist. Give examples of each There are seven types of cohesion, namely Co-incidental cohesion - It is unplanned and random cohesion, which might be the result of breaking the program into smaller modules for the sake of modularization. Because it is unplanned, it may serve confusion to the programmers and is generally not-accepted. Logical cohesion - When logically categorized elements are put together into a module, it is called logical cohesion. 2

3 Temporal Cohesion - When elements of module are organized such that they are processed at a similar point in time, it is called temporal cohesion. Procedural cohesion - When elements of module are grouped together, which are executed sequentially in order to perform a task, it is called procedural cohesion. Communicational cohesion - When elements of module are grouped together, which are executed sequentially and work on same data (information), it is called communicational cohesion. Sequential cohesion - When elements of module are grouped because the output of one element serves as input to another and so on, it is called sequential cohesion. Functional cohesion - It is considered to be the highest degree of cohesion, and it is highly expected. Elements of module in functional cohesion are grouped because they all contribute to a single well-defined function. It can also be reused. 6. Enumerate the different types of coupling that might exist between two modules. Give examples of each There are five levels of coupling, namely - Content coupling - When a module can directly access or modify or refer to the content of another module, it is called content level coupling. Common coupling- When multiple modules have read and write access to some global data, it is called common or global coupling. Control coupling- Two modules are called control-coupled if one of them decides the function of the other module or changes its flow of execution. Stamp coupling- When multiple modules share common data structure and work on different part of it, it is called stamp coupling. Data coupling- Data coupling is when two modules interact with each other by means of passing data (as parameter). If a module passes data structure as parameter, then the receiving module should use all its components. 7. What is meant by functional independence in the context of software design? (What are the advantages of functional independence?) (How can functional independence in a software design be achieved?)* A module that is highly cohesive and also has low coupling with other modules is said to be functionally independent of the other modules. Advantages of functional independence o Error isolation o Scope of reuse o Understandability 8. What is meant by decomposition in the context of software design? In this technique, a complex problem is divided into several smaller problems and then the smaller problems are solved one by one. The primary characteristics of neat module decomposition are high cohesion and low coupling. 3

4 The problem has to be decomposed such that each component of the decomposed problem can be solved independently and then the solution of the different components can be combined to get the full solution. 9. What is meant by abstraction in the context of software design? The function-oriented design mechanism divides the whole system into smaller functions, which provides means of abstraction by concealing the information and their operation. These functional modules can share information among themselves by means of information passing and using information available globally. 10. Define top-down decomposition in the context of function-oriented design Top-down design starts with a generalized model of system and keeps on defining the more specific part of it. Top-down design takes the whole software system as one entity and then decomposes it to achieve more than one sub-system or component based on some characteristics. Top-down design is more suitable when the software solution needs to be designed from scratch and specific details are unknown. 11. Define DFD Data flow diagram is a graphical representation of data flow in an information system. It is capable of depicting incoming data flow, outgoing data flow and stored data. The DFD does not mention anything about how data flows through the system. 12. What is functional cohesion & Logical cohesion? A module is said to possess functional cohesion, if different functions of the module cooperate to complete a single task. A module is said to be logically cohesive, if all elements of the module perform similar operations such as error handling data input, data output, etc. 13. What is Procedural cohesion? A module is said to possess procedural cohesion, if the set of functions of the module are executed one after that other, though these functions may work towards entirely different purposes and operate on very different data. 14. List the classification of coupling.(nov 2015) The classification of coupling are o Data Coupling o Stamp Coupling o Control Coupling o Common Coupling o Content Coupling 4

5 15. What is data coupling & control coupling? Two modules are data coupled, if they communicate using an elementary data item that is passed as a parameter between the two, e.g an integer, a float, a character, etc. Control coupling exists between two modules, if data from one module is used to direct the order of instruction execution in another. 16. What is Stamp coupling & content coupling? Two modules are stamp coupled, if they communicate using a composite data item such as a record in PASCAL or structure in C. Content coupling exists between two modules, if they share code. That is, a jump from ne module into the code of another module can occur. 17. Define coupling. (Nov 2013) The coupling between two modules indicates the degree of interdependence between them. The degree of coupling between two modules depends on their interface complexity and based on the data they share among them. 18. List the concepts and terminologies associated with a layered design. Super ordinate and subordinate modules Visibility Control abstraction Depth and width Fan-out Fan-in 19. What is Fan-out & Fan-in? Fan-out is a measure of the number of modules that are directly controlled by a given module. In fig, the fan-out of module M1 is 3. Fan-in indicates the number of modules that directly invoke a given module. The fan-in of the module M1 is 0, that of M2 is 1, and that of M5 is What is object-oriented design?(nov 2015) In the object-oriented design approach, the system is viewed as a collection of objects (i.e. entities). The system state is system state is decentralized among the objects and each object manages its own state information. 5

6 21. What is data abstraction? Any entity external to the object have no knowledge about how data is exactly stored, organized, and manipulated inside the object. The entities external to the object can access the data internal to an object only by calling certain well-defined methods supported by the object. 22. Write Object-oriented Vs Function-oriented design approaches? Object-oriented design approach The state information distributed among several objects of the system It group functions together on the basis of the data they operate on. The basic unit of designing objectorineted programs is objects. Objects appear as nouns Function-oriented design approach The state information in a centralized shared data store. It group functions together that constitute a high level function The basic unit of procedural design is functions. Function appear as verbs. 23. What is top-down decomposition? The top-down decomposition used to denote the successive decomposition of a set of high-level functions into more detailed functions. A function create-new-library member is refined into the following sub functions: o Assign-membership-number o Create-member-record o Print-bill 24. What is the role of Structured analysis(sa) and Structured design(sd)? During structured analysis, the SRS document is transformed into a DFD (Data Flow Diagram) model; functional decomposition of the system is achieved and capture the detailed structure of the system as perceived by the user. During structured design, the DFD model is transformed into a structure chart and all functions identified during structured analysis are mapped to a module structure that is suitable for implementation in some programming language. 25. What are the principles followed in structured analysis technique? Top-down decomposition approach Applications of divide and conquer principle. Through this, each high-level function is independently decomposed into detailed functions. Graphical representation of the analysis results using Data Flow Diagrams (DFDs). 6

7 26. What are the primitive symbols used for constructing DFDs? Function (process or bubble) symbol A function is represented using a circle. External entity symbol Physical entities which interact with the system by inputting data to the system or consuming data produced by the system. This is represented by rectangle. Dataflow symbol - The data flow occurring between two processes or between an external entity and a process in the direction of the data flow arrow. It is represented by directed arc(arrow). Data store symbol It is referred to either a data structure or a physical file on disk. It is represented by two parallel lines. Output symbol the output symbol is used when hard copy is produced. 27. What are synchronous and asynchronous operations? If two bubbles are directly connected by a data flow arrow, then they are synchronous. It means that they operate at the same speed. If two bubbles are connected through a data store then the speed of operation of the bubbles is independent called asynchronous operations. 27. Define Data dictionary. A data dictionary lists the purpose of all data items and the definition of all composite data items in terms of their component data items. A set of information describing the contents, format, and structure of a database and the relationship between its elements, used to control access to and manipulation of the database. 28. What is context diagram (Level 0 DFD)? The context diagram establishes the context in which the system operates. That is who are users, what data do they input to the system, and what data they received by the system. A context diagram (SCD) in software engineering and systems engineering is a diagram that defines the boundary between the system, or part of a system, and its environment, showing the entities that interact with it. 7

8 29. What are the aspects considered in design review? After a design is complete, the design is required to be reviewed. The review team checks the design documents especially for the following aspects: o Traceability o Correctness o Maintainability o Implementation 30. What are the strategies involved in structured design? Structured design provides two strategies to guide transformation of a DFD into a structured chart o Transform analysis o Transaction analysis Normally, one would start with the level 1 DFD, transform it into module representation using either the transform or transaction analysis and then proceed toward the lower level DFDs. 31. Differentiate between structured analysis and structured design in the context of function-oriented design STRUCTURE ANALYSIS The SRS Document is transformed into a DFD model Structured analysis focuses on the following High-level functions of the systems Data-flow among the identified high-level functions The Graphical representation used is the Data flow diagram (DFD) STRUCTURED DESIGN The DFD model is transformed into a structure chart Structured Design focuses on the following: Various modules making up the system Module dependency (Control Flow) Parameters that are passed among various modules The Graphical representation used is the Structure Chart 32. Differentiate between structure chart and a flow chart as design representation techniques STRUCTURE CHART A structure chart represents the software architecture, i.e. the various modules making up the system, the dependency (which module calls which other modules), and the parameters that are passed among the different modules. The procedural aspects (e.g. how a particular functionality is achieved) are not represented. Sequential ordering of tasks is suppressed in a structure chart. FLOW CHART Flow chart is a convenient technique to represent the flow of control in a program. Data interchange among different modules is not represented in a flow chart. Sequential ordering of tasks is available in a flow chart. 8

9 33. What is meant by balancing a DFD? The data that flow into or out of a bubble must match the data flow at the next level of DFD. This is known as balancing a DFD. The concept of balancing a DFD has been illustrated in the following diagram. In the level 1 of the DFD, data items d1 and d3 flow out of the bubble 0.1 and the data item d2 flows into the bubble 0.1. In the next level, bubble 0.1 is decomposed. The decomposition is balanced, as d1 and d3 flow out of the level 2 diagram and d2 flows in. 9

10 PART -B 1. Explain in detail Cohesion in Object Oriented Systems. (May 2014)(Nov 2015) Cohesion is a measure of functional strength of a module. o A cohesive module performs a single task or function. Coupling between two modules a measure of the degree of interdependence or interaction between the two modules. A module having high cohesion and low coupling functionally independent of other modules. A functionally independent module has minimal interaction with other modules. Advantages of Functional Independence Better understandability and good design. Complexity of design is reduced, Different modules easily understood in isolation: o modules are independent Functional independence reduces error propagation. o Degree of interaction between modules is low. o An error existing in one module does not directly affect other modules. Reuse of modules is possible. A functionally independent module: o Can be easily taken out and reused in a different program. o each module does some well-defined and precise function o The interfaces of a module with other modules are simple and minimal. Classification of Cohesiveness Classification is often subjective,yet gives us some idea about cohesiveness of a module. By examining the type of cohesion exhibited by a module: o We can roughly tell whether it displays high cohesion or low cohesion. 10

11 Coincidental cohesion The module performs a set of tasks which relate to each other very loosely, if at all. The module contains a random collection of functions. Functions have been put in the module out of pure coincidence without any thought or design. Logical cohesion All elements of the module perform similar operations: o e.g. error handling, data input, data output, etc. An example of logical cohesion: o a set of print functions to generate an output report arranged into a single module. Temporal cohesion The module contains tasks that are related by the fact that all the tasks must be executed in the same time span. Example: o The set of functions responsible for initialization, Start-up, shut-down of some process, Procedural cohesion The set of functions of the module: o all part of a procedure (algorithm) o certain sequence of steps have to be carried out in a certain order for achieving an objective, e.g. the algorithm for decoding a message. Communicational cohesion All functions of the module reference or update the same data structure. 11

12 Example: o The set of functions defined on an array or a stack. Sequential cohesion Elements of a module form different parts of a sequence, output from one element of the sequence is input to the next. o Example: Functional cohesion Different elements of a module cooperate: o to achieve a single function, o e.g. managing an employee's pay-roll. When a module displays functional cohesion,we can describe the function using a single sentence. Determining Cohesiveness Write down a sentence to describe the function of the module o If the sentence is compound, it has a sequential or communicational cohesion. o If it has words like first, next, after, then, etc. it has sequential or temporal cohesion. o If it has words like initialize, it probably has temporal cohesion. 2. Explain Coupling in Object Oriented Systems.(May 2014) Coupling Coupling indicates: o The degree of coupling between two modules depends on their interface complexity. o There are no ways to precisely determine coupling between two modules: o Classification of different types of coupling will help us to approximately estimate the degree of coupling between two modules. o Five types of coupling can exist between any two modules. Classes of coupling 12

13 Data coupling Two modules are data coupled,if they communicate via a parameter,an elementary data item, e.g an integer, a float, a character, etc. o The data item should be problem related: Not used for control purpose. Stamp coupling Two modules are stamp coupled, if they communicate via a composite data item such as a record in PASCAL or a structure in C. Control coupling Data from one module is used to direct order of instruction execution in another. Example of control coupling: o a flag set in one module and tested in another module. Common Coupling Two modules are common coupled, if they share some global data. Content coupling Content coupling exists between two modules: o if they share code, o e.g, branching from one module into another module. The degree of coupling increases from data coupling to content coupling. 3. Explain about DFD in detail. (Nov 2014) DATA FLOW DIAGRAMS (DFDs) The DFD (also known as the bubble chart) is a simple graphical formalism that can be used to represent a system in terms of the input data to the system. Various processing carried out on these data, and the output data generated by the system. The main reason why the DFD technique is so popular is probably because of the fact that DFD is a very 13

14 simple formalism. It is simple to understand and use. A DFD model is uses a very limited number of primitive symbols to represent the functions performed by a system and the data flow among these functions with a set of high level functions that a system performs. A DFD model hierarchically represents various sub-functions. External entity Process Data store output Data flow Simple to understand any hierarchical model of a system, different details of the system can be slowly introduced through different hierarchies. The data flow diagramming technique also follows a very simple set of initiative concepts and rules. We now first explain the different symbols and then elaborate the various concepts associated with building a DFD model of a system. PRIMITIVE SYMBOLS USED FOR CONSTRUCTING DFDs: Functional symbol: A functional symbol is represented using a circle. This symbol is called a process or a bubble. Bubbles are annotated with the names of the corresponding functions. External entity set: An external entity such as a librarian, a library member, etc. is represented by a rectangle. The external entities are essential those physical entities external to the software system which interact 14

15 with the system by inputting data to the system or by consuming the data produced by the system. In addition to the human users, the external entity symbols can be used to represent external hardware and software such as another application software. Data flow symbol: A directed arc or arrow is used as a data flow symbol. A data flow symbol represents the data flow occurring between two process, or between an external entity and a process in the direction of the data flow arrow. Data flow symbols are usually annotated with the corresponding data names. Data store symbol: A data store represents a logical file. It is represented using two parallel lines. A logical file can represent either a data store symbol which can represent either a data structure or a physical file on disk. Each data store is connected to a process by means of a data flows symbol. The direction of data flow arrow shows whether data is being read from or written into a data store. An arrow flowing in or out of a data store implicitly represents the entire data of the data store and hence arrows connecting to a data store need not be annotated with the name of the corresponding data items. Output symbol: The output symbol is used when a hard copy is produced and the user of the copies cannot be clearly specified or there are several users of the output. For example, the data store may look like a box with one end closed. Some Important Concepts Associated with Designing DFDs Before we describe how to construct the DFD model of a system, let us discuss some important concept associated with DFDs. Synchronous and asynchronous operations If two bubbles are directly connected by a data flow arrow, then they are synchronous. This means that they operate at the same speed. 15

16 However, if two bubbles are connected through a data store, then the speeds of operations of the bubbles are independent. The data produced by a producer bubble gets stored in the data store. The producer may store several pieces of data items in the data store before the consumer bubble consumes any of them. Data dictionary Every DFD model of the system must be accompanied by a data dictionary. A data dictionary lists all data items appearing in the DFD model of the system. The data items listed include all data flows and content of all data stores appearing on all DFDs in the DFD model of the system. It may be recalled that the DFD model of the system typically consists of several DFDs, namely level 0 DFD, level 1 DFD, level 2 DFDs, etc. However a single data dictionary should capture all the data appearing in all the DFDs constituting the DFD model of the system. A data dictionary lists the purpose of all data items and the definitions of all composite data items in terms of their component data items. Data definition: Composite data items can be defined in terms of primitive data items using the following data definition operators. +: denotes composition of two data items, e.g. a+b represents data a and b [,,]: represents selection, i.e. any one of the data items listed inside the square bracket can occur. For example, [a,b] represents either a occurs or b occurs. (): the content inside the bracket represent optional data which may or may not appear a+(b) represents that either a occurs or a+b occurs. {}: represents iterative data definition, e.g. {name}5 represents five name data, {name} * represents zero or more instances of name data. Context diagram = represents equilance, e.g. a=b+c means that a represents b and c / */: anything appearing within /* and */ is considered as commend The context diagram is the most abstract data flow representation of the system. 16

17 It represents the entire system as a single bubble. This bubble is labeled according to the main function of the system. The various external entities with which the system interacts and the data flows occurring between the system and external entities are also represented. The data input to the system and the data output from the system are representing as incoming and outgoing arrows. The data flow across should be annotated with the corresponding data name. the name context diagram is well justified because it represent the context in which the system is to exist. The bubble in the context diagram is annotated with the name of the software system being developed (usually a noun). This is in contrast with the bubbles in all other level which are annotated with the verbs. This is to be expected since the purpose of the context diagram is to capture the context of the system rather than its functionality. Level 1 DFD To develop the level 1 DFD, examine the high-level functional requirements. If there are between three to seven high-level functional requirements, then these can be directly represented as bubbles in the level 1 DFD. Decomposition: 4. Explain in detail about various approaches to Software Design.(Apr 2015) Design Approaches Two fundamentally different software design approaches: o Function-oriented design o Object-oriented design These two design approaches are radically different. o Each technique is applicable at different stages of the design process. Function-Oriented Design A system is looked upon as something o that performs a set of functions. Starting at this high-level view of the system: o each function is successively refined into more detailed functions. 17

18 o Functions are mapped to a module structure. Example The function create-new-library member: o creates the record for a new member, o assigns a unique membership number o prints a bill towards the membership Create-library-member function consists of the following sub-functions: o assign-membership-number o create-member-record o print-bill Function-Oriented Design o Each subfunction is split into more detailed sub functions and so on. The system state is centralized: o accessible to different functions, o member-records: available for reference and updation to several functions: create-new-member delete-member update-member-record Object-oriented design System is viewed as a collection of objects (i.e. entities). System state is decentralized among the objects: o each object manages its own state information. Object-Oriented Design Example Library Automation Software: o each library member is a separate object With its own data and functions. o Functions defined for one object: Cannot directly refer to or change data of other objects. Objects have their own internal data: defines their state. Similar objects constitute a class each object is a member of some class. 18

19 Classes may inherit features from a super class. Conceptually, objects communicate by message passing. Object-Oriented versus Function-Oriented Design Unlike function-oriented design, o in OOD the basic abstraction is not functions such as sort, display, track, etc., o but real-world entities such as employee, picture, machine, radar system, etc. In OOD: o software is not developed by designing functions such as: update-employee-record, get-employee-address, etc. o but by designing objects such as: employees, departments, etc. Grady Booch sums up this fundamental difference saying: o Identify verbs if you are after procedural design and nouns if you are after object-oriented design. In OOD: o state information is not shared in a centralized data,but is distributed among the objects of the system. Example: In an employee pay-roll system, the following can be global data: o names of the employees, o their code numbers, o basic salaries, etc. Whereas, in object oriented systems: o data is distributed among different employee objects of the system. Objects communicate by message passing. o one object may discover the state information of another object by interrogating it. Of course, somewhere or other the functions must be implemented: o the functions are usually associated with specific real-world entities (objects) o directly access only part of the system state information. Function-oriented techniques group functions together if: 19

20 o as a group, they constitute a higher level function. On the other hand, object-oriented techniques group functions together: o on the basis of the data they operate on. To illustrate the differences between object-oriented and function-oriented design approaches, o let us consider an example --- o An automated fire-alarm system for a large building. Fire-Alarm System: The fire alarm system should: o Flash an alarm message on the computer console, fire fighting personnel man the console round the clock. After a fire condition has been successfully handled, the fire alarm system should let fire fighting personnel reset the alarms. Function-Oriented Approach: /* Global data (system state) accessible by various functions */ BOOL detector_status[1000]; int detector_locs[1000]; BOOL alarm-status[1000]; /* alarm activated when status set */ int alarm_locs[1000]; /* room number where alarm is located */ int neighbor-alarms[1000][10];/*each detector has at most*/ /* 10 neighboring alarm locations */ The functions which operate on the system state: interrogate_detectors(); get_detector_location(); determine_neighbor_alarm(); determine_neighbor_sprinkler(); ring_alarm(); activate_sprinkler(); reset_alarm(); reset_sprinkler(); report_fire_location(); 20

21 Object-Oriented Approach: class detector attributes: status, location, neighbors operations: create, sense-status, get-location, find-neighbors class alarm attributes: location, status operations: create, ring-alarm, get_location, reset-alarm class sprinkler attributes:locations, status operations: create, activate-sprinkler, get_location, reset-sprinkler In the object oriented program, o appropriate number of instances of the class detector and alarm should be created. In the function-oriented program : o the system state is centralized o several functions accessing these data are defined. In the object oriented program, o the state information is distributed among various sensor and alarm objects. Use OOD to design the classes: o then applies top-down function oriented techniques to design the internal methods of classes. Though outwardly a system may appear to have been developed in an object oriented fashion, o but inside each class there is a small hierarchy of functions designed in a top-down manner. 5. Design DFD for hospital management system. Context Flow Diagram:- o A context flow diagram is a 0 th level DFD. o It only contains one process node that generalizes the functions of the entire system in relationship to external entities. 21

22 Level 0: 22

23 Level 1(1.4) Level 1 (1.5) 6. Design trading house automation software. 23

24 A trading house wants us to develop a computerized system that would automate various bookkeeping activities associated with its business. The following are the silent features the system to be developed: The trading house has a set of regular customers The customers of orders with it various kinds of commodities. The tradition house maintains the names with and address of its regular customers. Each of these regular customers should be assigned a unique customer identification number (CIN) by the computer. The customers quote their CN on every order they place. Once an order is placed, as per current practice, the accounts department of the trading house first checks the credit worthiness of the customer. The credit worthiness of the customer is determined by analysis the history of its payments to different bills sent to him in the past. After automation, this task has to be done by the computer. If a customer is not credit-worthy, his orders are not processed any further and an appropriate order rejection message is generated for the customer. If a customer is credit worthy, the items that he has ordered has checked against a list of items that the trading house deals with. The items in the order which the trading house does not deal with, are not processed any further and an appropriate apology message to the customer for these it is generated. The items in the customer s order that the trading house deals with are checked for available in the inventory. If the items are available in the inventory in desired quantity,then A bill with the forwarding address of the customer is printed. A material issue slip is printed. The customer can produce the material issue slip at the storehouse and take delivery of the items. Inventory data is adjusted to reflect the sale to the customer. If any of the ordered items are not available in the inventory in sufficient quantity to satisfy the order,then these out of stock items along with the quantity ordered by the customer and its 24

25 CIN are stored in a pending order file for further processing to be carried out when the purchase department issues the generate indent command. The purchase department should be allowed to periodically issue commands to generate indents. When a command to generate indent is issued, the system should be examine the pending order file to determine the order that are pending and to determine the quantity required for each of the items. It should find out the addresses of the vendors who supply these items by examining the file containing vendor details and them should print out indents to those vendors. The system should also answer managerial queries regarding the statistics of different items sold over any given period of time and the corresponding quantity sold and the prize realized. The context diagram for the trading house automation problem is shown in figure 6.10 and the level 1 DFD in figure Data dictionary for the DFD model response: [bill + material-issue-slip, reject-message] 25

26 query: period /* query from manager regarding sales statistics*/ date: year + month +day year: month: integer integer day: integer order: customer-id + {items + quantity}* + order# accepted-order: order /* ordered items available in inventory */ reject-message: order + message /* rejection message*/ pending-orders: customer-id +..etc 7. Design DFD and Structure chart for Personal library software? Level 0 DFD (context diagram) +3 Level 1 DFD 26

27 Level 2 DFD Data dictionary 27

28 Software Engineering CS T55 June 2016 V-Semester Structure Chart 8. Draw DFD for call center management. The Call Center Management system automates the operations of a call center by giving automatic replies to the customer queries. It is achieved by adding more entries to the data base store, the application can respond to more number of queries from the customers. CONTEXT LEVEL DIAGRAM Customer Call center management system View customer transaction details View Report Admin 28

29 Software Engineering CS T55 June 2016 V-Semester LEVEL 0 DATA FLOW DIAGRAM LEVEL 1 DATA FLOW DIAGRAM 1. Registration: Registration of new customer Customer Already exist Registered successfully Checking availability Customer details database 2. Authentication: 29

30 Software Engineering CS T55 June 2016 V-Semester Authentication Customer Valid user Customer details database 3. Query: Enter mobile number and password Customer Invalid login Verify mobile number & password Post Query database Query is stored Customer details database Post Query 4. Response: Enter user id and password Login request Login request customer Employee post query View query Query database Response query 30

31 Software Engineering CS T55 June 2016 V-Semester 5. Feedback and Report: Feedback database View Feedback Write Feedback customer View feedback View Report Admin Response feedback Employee Report database 31

Darshan Institute of Engineering & Technology for Diploma Studies

Darshan Institute of Engineering & Technology for Diploma Studies REQUIREMENTS GATHERING AND ANALYSIS The analyst starts requirement gathering activity by collecting all information that could be useful to develop system. In practice it is very difficult to gather all

More information

Software Design. Software design is a blueprint or a plan for a computerbased solution for system

Software Design. Software design is a blueprint or a plan for a computerbased solution for system Software Design Software Design Software design is a blueprint or a plan for a computerbased solution for system Software design deals with transforming the customer requirements, as described by the SRS

More information

Module 5. Function-Oriented Software Design. Version 2 CSE IIT, Kharagpur

Module 5. Function-Oriented Software Design. Version 2 CSE IIT, Kharagpur Module 5 Function-Oriented Software Design Lesson 12 Structured Design Specific Instructional Objectives At the end of this lesson the student will be able to: Identify the aim of structured design. Explain

More information

SE Assignment III. 1. List and explain primitive symbols used for constructing DFDs. Illustrate the use of these symbols with the help of an example.

SE Assignment III. 1. List and explain primitive symbols used for constructing DFDs. Illustrate the use of these symbols with the help of an example. SE Assignment III 1. List and explain primitive symbols used for constructing DFDs. Illustrate the use of these symbols with the help of an example. There are essentially 5 different types of symbols used

More information

Unit 3 FUNCTION-ORIENTED SOFTWARE DESIGN

Unit 3 FUNCTION-ORIENTED SOFTWARE DESIGN Unit 3 FUNCTION-ORIENTED SOFTWARE DESIGN Function-oriented design view a system as a black-box that provides a set of services to the users of the software. These services provided by a software (e.g.,

More information

UNIT II Requirements Analysis and Specification & Software Design

UNIT II Requirements Analysis and Specification & Software Design UNIT II Requirements Analysis and Specification & Software Design Requirements Analysis and Specification Many projects fail: because they start implementing the system: without determining whether they

More information

Software Engineering Prof.N.L.Sarda IIT Bombay. Lecture-11 Data Modelling- ER diagrams, Mapping to relational model (Part -II)

Software Engineering Prof.N.L.Sarda IIT Bombay. Lecture-11 Data Modelling- ER diagrams, Mapping to relational model (Part -II) Software Engineering Prof.N.L.Sarda IIT Bombay Lecture-11 Data Modelling- ER diagrams, Mapping to relational model (Part -II) We will continue our discussion on process modeling. In the previous lecture

More information

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 Failure Rate Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 SOFTWARE (What is Software? Explain characteristics of Software. OR How the software product is differing than

More information

Chapter 9. Process Modeling. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved.

Chapter 9. Process Modeling. McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 9 Process Modeling McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives Define systems modeling and differentiate logical and physical models. Define

More information

Software Metrics and Design Principles. What is Design?

Software Metrics and Design Principles. What is Design? Software Metrics and Design Principles Chapters 5,8 What is Design? Design is the process of creating a plan or blueprint to follow during actual construction Design is a problem-solving activity that

More information

06. Analysis Modeling

06. Analysis Modeling 06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches

More information

Process Modelling. Data flow Diagrams. Process Modelling Data Flow Diagrams. CSE Information Systems 1

Process Modelling. Data flow Diagrams. Process Modelling Data Flow Diagrams. CSE Information Systems 1 CSE104 - Information s 1 Process Modelling Data Flow Diagrams Process Modelling Process modelling aims to graphically represent the processes which capture, manipulate, store and distribute data. data

More information

Process Modeling. Wei-Tsong Wang 1 IIM, NCKU

Process Modeling. Wei-Tsong Wang 1 IIM, NCKU Process Modeling Based on Chapter 9 of Whitten, Bentley, and Dittman: Systems Analysis and Design for the Global Enterprise (7th Ed). McGraw Hill. 2007 Wei-Tsong Wang 1 IIM, NCKU 2 Models: Logical and

More information

DFD Symbols. Process. Data Store Data Store Data Store

DFD Symbols. Process. Data Store Data Store Data Store ? Context Diagram Level 1 Diagram Level 2 Diagram DFD Symbols External Entity Source/Sink User Data Flow Process Process Data Store Data Store Data Store Rule for naming a process: The Joe Test A process

More information

Unit-3 Software Design (Lecture Notes)

Unit-3 Software Design (Lecture Notes) Unit-3 Software Design (Lecture Notes) Prepared by Jay Nanavati, Assistant Professor, SEMCOM Topics Software Design - Introduction Design Principles Module Level concepts Overview of Structured design

More information

CS504-Softwere Engineering -1 Solved Subjective Midterm Papers For Preparation of Midterm Exam

CS504-Softwere Engineering -1 Solved Subjective Midterm Papers For Preparation of Midterm Exam CS504-Softwere Engineering -1 Solved Subjective Midterm Papers For Preparation of Midterm Exam CS504 Subjective Midterm Examination 2011 Question No: 1 ( Marks: 3 ) Define Asynchronous Messages and Synchronous

More information

CS487 Midterm Exam Summer 2005

CS487 Midterm Exam Summer 2005 1. (4 Points) How does software differ from the artifacts produced by other engineering disciplines? 2. (10 Points) The waterfall model is appropriate for projects with what Characteristics? Page 1 of

More information

9 Structured design. Overview of structured design. Transaction analysis. Transform analysis. System integration

9 Structured design. Overview of structured design. Transaction analysis. Transform analysis. System integration 9 Structured design Overview of structured design Transaction analysis Transform analysis System integration 9.3 Structured design After SSA has produced a set of DFDs, there are three steps to turn the

More information

Design Concepts and Principles

Design Concepts and Principles Design Concepts and Principles Analysis to Design Data Object Description Entity- Relationship Diagram Data Flow Diagram Process Specification (PSPEC) Component level design (or) procedural design Data

More information

Chapter : Analysis Modeling

Chapter : Analysis Modeling Chapter : Analysis Modeling Requirements Analysis Requirements analysis Specifies software s operational characteristics Indicates software's interface with other system elements Establishes constraints

More information

Software Architecture and Design I

Software Architecture and Design I Software Architecture and Design I Instructor: Yongjie Zheng February 23, 2017 CS 490MT/5555 Software Methods and Tools Outline What is software architecture? Why do we need software architecture? How

More information

Software design descriptions standard

Software design descriptions standard Tuffley Computer Services Pty Ltd Quality Management System Software design descriptions standard Version: 2.0 Date: 09/05/11 Status: Approved Copy no.: Controlled Approved by: Approver s name: Approver

More information

Software Design Fundamentals. CSCE Lecture 11-09/27/2016

Software Design Fundamentals. CSCE Lecture 11-09/27/2016 Software Design Fundamentals CSCE 740 - Lecture 11-09/27/2016 Today s Goals Define design Introduce the design process Overview of design criteria What results in a good design? Gregory Gay CSCE 740 -

More information

System Analysis & design

System Analysis & design Assiut University Faculty of Computers and Information System Analysis & design Year 2 Academic Year 2014/ 2015 Term (2) 5 A PICTURE IS WORTH A 1,000 WORDS A process model is a graphical way of representing

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

Chapter 6 Structuring System Requirements: Process Modeling 6.1

Chapter 6 Structuring System Requirements: Process Modeling 6.1 Chapter 6 Structuring System Requirements: Process Modeling 6.1 Learning Objectives Explain process modeling Discuss data-flow diagramming mechanics, definitions, and rules Discuss balancing data-flow

More information

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS SOFTWARE ENGINEERING

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS SOFTWARE ENGINEERING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 6403 - SOFTWARE ENGINEERING QUESTION BANK TWO MARKS UNIT I SOFTWARE PROCESS AND PROJECT MANAGEMENT 1. What is software engineering? Software engineering

More information

SE Notes Mr. D. K. Bhawnani, Lect (CSE) BIT

SE Notes Mr. D. K. Bhawnani, Lect (CSE) BIT Unit 3 Design concepts and principles 1 Software Design 1. Software design deals with transforming the customer requirements, as described by the SRS document, into a form that is implementable using a

More information

1. The narratives, diagrams, charts, and other written materials that explain how a system works are collectively called

1. The narratives, diagrams, charts, and other written materials that explain how a system works are collectively called CH 3 MULTIPLE CHOICE 1. The narratives, diagrams, charts, and other written materials that explain how a system works are collectively called a) documentation. b) data flows. c) flowcharts. d) schema.

More information

SOFTWARE ANALYSIS & DESIGN TOOLS

SOFTWARE ANALYSIS & DESIGN TOOLS SOFTWARE ANALYSIS & DESIGN TOOLS http://www.tutorialspoint.com/software_engineering/software_analysis_design_tools.htm Copyright tutorialspoint.com Software analysis and design includes all activities,

More information

Data Flow Diagrams System Analysis ( (

Data Flow Diagrams System Analysis ( ( 7 Data Flow Diagrams System Analysis (1932475( Kendall & Kendall 7-1 Data Flow Diagrams A top down approach to diagramming data movement, it moves from general to specific. Graphically characterize data

More information

Data. Entities. Accounting Information Systems. Chapter 4: Data Management

Data. Entities. Accounting Information Systems. Chapter 4: Data Management Accounting Information Systems Chapter 4: Data Management Data Data may be defined broadly to include two interrelated components: Data Models that provide structure to data File Orientation Data-base

More information

information process modelling DFDs Process description

information process modelling DFDs Process description Process modelling IMS9300 IS/IM FUNDAMENTALS information process modelling DFDs Process description processes are the action part of businesses process modelling graphically represents the processes which

More information

Chapter 4: Data Management

Chapter 4: Data Management Accounting Information Systems: Essential Concepts and Applications Fourth Edition by Wilkinson, Cerullo, Raval, and Wong-On-Wing Chapter 4: Data Management Slides Authored by Somnath Bhattacharya, Ph.D.

More information

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS6403 SOFTWARE ENGINEERING II year/ IV sem CSE (Regulation 2013) UNIT 1- SOFTWARE PROCESS AND PROJECT

More information

Lecture Notes. Structured Systems Analysis

Lecture Notes. Structured Systems Analysis Lecture Notes Structured Systems Analysis Lecture 3 Structured Analysis & Data Flow Diagrams Written by Dr. Fred Grossman Copyright 1999 Fred Grossman All Rights Reserved Structured Systems Analysis Structured

More information

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 6403 - SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS 1. Explain iterative waterfall and spiral model for software life cycle and various activities

More information

System Analysis & design

System Analysis & design Assiut University Faculty of Computers and Information System Analysis & design Year 2 Academic Year 2014/ 2015 Term (2) Copyright 2014 Dr. Hossam Ragab 6 data model describes the data that flow through

More information

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system)

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system) Topics Overview- The UML Functional Model Use Case Diagram (essential and system) Structural Model Class/object, Component and Deployment Diagram Behavioral Models Activity, State chart, sequence /collaboration

More information

Slide 1 Welcome to Fundamentals of Health Workflow Process Analysis and Redesign: Process Mapping: Gane-Sarson Notation. This is Lecture d.

Slide 1 Welcome to Fundamentals of Health Workflow Process Analysis and Redesign: Process Mapping: Gane-Sarson Notation. This is Lecture d. WORKFLOW ANALYSIS Audio Transcript Component 10 Unit 3 Lecture D Fundamentals of Health Workflow Process Analysis & Redesign Interpreting and Creating Process Diagrams Process Mapping Gane-Sarson Notation

More information

UNIT III. Software Design

UNIT III. Software Design UNIT III Software Design Design Specification Models Data design - created by transforming the analysis information model (data dictionary and ERD) into data structures required to implement the software

More information

CS 307: Software Engineering. Lecture 9: Software Design (Coupling), Modeling Interactions and Behavior

CS 307: Software Engineering. Lecture 9: Software Design (Coupling), Modeling Interactions and Behavior CS 307: Software Engineering Lecture 9: Software Design (Coupling), Modeling Interactions and Behavior Prof. Jeff Turkstra 2017 Dr. Jeffrey A. Turkstra 1 Announcements Discuss your product backlog in person

More information

SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay. Lecture #10 Process Modelling DFD, Function Decomp (Part 2)

SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay. Lecture #10 Process Modelling DFD, Function Decomp (Part 2) SOFTWARE ENGINEERING Prof.N.L.Sarda Computer Science & Engineering IIT Bombay Lecture #10 Process Modelling DFD, Function Decomp (Part 2) Let us continue with the data modeling topic. So far we have seen

More information

Introduction to System Design

Introduction to System Design Introduction to System Design Software Requirements and Design CITS 4401 Lecture 8 System Design is a creative process no cook book solutions goal driven we create a design for solving some problem constraint

More information

SOME TYPES AND USES OF DATA MODELS

SOME TYPES AND USES OF DATA MODELS 3 SOME TYPES AND USES OF DATA MODELS CHAPTER OUTLINE 3.1 Different Types of Data Models 23 3.1.1 Physical Data Model 24 3.1.2 Logical Data Model 24 3.1.3 Conceptual Data Model 25 3.1.4 Canonical Data Model

More information

VALLIAMMAI ENGINEERING COLLEGE

VALLIAMMAI ENGINEERING COLLEGE VALLIAMMAI ENGINEERING COLLEGE SRM Nagar, Kattankulathur 603 203 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK B.E. - Electrical and Electronics Engineering IV SEMESTER CS6456 - OBJECT ORIENTED

More information

Object-Oriented Systems Analysis and Design Using UML

Object-Oriented Systems Analysis and Design Using UML 10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand

More information

(Murlidhar Group of Institutions,Bhavnagar Road, Rajkot) by:-assit. Prof. Vijay Vora (SOOADM) MCA-III

(Murlidhar Group of Institutions,Bhavnagar Road, Rajkot) by:-assit. Prof. Vijay Vora (SOOADM) MCA-III Analysis Modeling What is Analysis Modeling? Analysis modeling uses a combination of text and diagrammatic forms to depict(represent) requirements for data, function, and behavior These text and diagrammatic

More information

Lecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček

Lecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček Lecture 5 STRUCTURED ANALYSIS PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall 2015 1 Outline ² Yourdon Modern Structured Analysis (YMSA) Context diagram (CD) Data flow diagram

More information

Chapter 10 Object-Oriented Design Principles

Chapter 10 Object-Oriented Design Principles Chapter 10 Object-Oriented Design Principles Dr. Supakit Nootyaskool Faculty of Information Technology King Mongkut s Institute of Technology Ladkrabang Outline Object-oriented design: bridging from analysis

More information

Programming Logic and Design Seventh Edition Chapter 2 Elements of High-Quality Programs

Programming Logic and Design Seventh Edition Chapter 2 Elements of High-Quality Programs Programming Logic and Design Chapter 2 Elements of High-Quality Programs Objectives In this chapter, you will learn about: Declaring and using variables and constants Assigning values to variables [assignment

More information

Fundamentals of Health Workflow Process Analysis and Redesign

Fundamentals of Health Workflow Process Analysis and Redesign Fundamentals of Health Workflow Process Analysis and Redesign Unit 10.3d Process Mapping Gane-Sarson Notation Slide 1 Welcome to the Gane-Sarson Notation for Data Flow Diagrams Subunit. This is the third

More information

CHAPTER 19: Building a Preliminary Behavioral Model

CHAPTER 19: Building a Preliminary Behavioral Model 1 z 7 CHAPTER 19: Building a Preliminary Behavioral Model Things are always at their best in their beginning. Blaise Pascal Lettres Provinciales, 1656-1657, no. 4 IN THIS CHAPTER, YOU WILL LEARN: Why a

More information

From Module To Objects

From Module To Objects From Module To Objects It is very difficult to maintain a large monolithic block of code The solution is to divide the code into smaller pieces, called modules What is a Module? A small and manageable

More information

Requirements Engineering

Requirements Engineering Chapter 3: Requirements Modeling Requirements Engineering Objectives In this chapter, you will learn about: Functional requirements Modeling requirements Overview of basic modeling paradigms Gus Requirements

More information

What are the characteristics of Object Oriented programming language?

What are the characteristics of Object Oriented programming language? What are the various elements of OOP? Following are the various elements of OOP:- Class:- A class is a collection of data and the various operations that can be performed on that data. Object- This is

More information

Data Process Modeling: Context Diagrams & Data Flow Diagrams (DFDs)

Data Process Modeling: Context Diagrams & Data Flow Diagrams (DFDs) Introduction Data Process Modeling: Context Diagrams & Data Flow Diagrams (DFDs) MIS 374 When designing/building an information system for an organization, you should consider the following questions regarding

More information

Requests Charges. Librarian. University affiliated patrons students, faculty, staff. Media Center Staff

Requests Charges. Librarian. University affiliated patrons students, faculty, staff. Media Center Staff Catherine Rutan INFO 530-901 Dr. Valerie Yonker Circulation of Media Materials from University Media Center: Requests Charges Librarian Circulation Desk Attendant Inquires University ID # (Primary Key)

More information

«Computer Science» Requirements for applicants by Innopolis University

«Computer Science» Requirements for applicants by Innopolis University «Computer Science» Requirements for applicants by Innopolis University Contents Architecture and Organization... 2 Digital Logic and Digital Systems... 2 Machine Level Representation of Data... 2 Assembly

More information

Design and Implementation of an Efficient Algorithm Using Data Structures: A Recipe for the Structured Process Called Top Down Programming

Design and Implementation of an Efficient Algorithm Using Data Structures: A Recipe for the Structured Process Called Top Down Programming Design and Implementation of an Efficient Algorithm Using Data Structures: A Recipe for the Structured Process Called Top Down Programming Doi:10.5901/jesr.2013.v3n9p17 Abstract Chukwudi Igbe Elei Florence.O

More information

Topic: 1-One to Five

Topic: 1-One to Five Mathematics Curriculum Kindergarten Suggested Blocks of Instruction: 12 days /September Topic: 1-One to Five Know number names and the count sequence. K.CC.3. Write numbers from 0 to 20. Represent a number

More information

Presenter: Dong hyun Park

Presenter: Dong hyun Park Presenter: 200412325 Dong hyun Park Design as a life cycle activity bonds the requirements to construction Process of breaking down the system into components, defining interfaces and defining components

More information

System Analysis and Design. Data Flow Diagram. System Analysis and Design

System Analysis and Design. Data Flow Diagram. System Analysis and Design Data Flow Diagram 1 Data Flow diagram The dataflow diagram is a modeling tool that allows us to picture a system as a network of functional processes, connected to one another by pipelines and holding

More information

user.book Page 45 Friday, April 8, :05 AM Part 2 BASIC STRUCTURAL MODELING

user.book Page 45 Friday, April 8, :05 AM Part 2 BASIC STRUCTURAL MODELING user.book Page 45 Friday, April 8, 2005 10:05 AM Part 2 BASIC STRUCTURAL MODELING user.book Page 46 Friday, April 8, 2005 10:05 AM user.book Page 47 Friday, April 8, 2005 10:05 AM Chapter 4 CLASSES In

More information

0. Database Systems 1.1 Introduction to DBMS Information is one of the most valuable resources in this information age! How do we effectively and efficiently manage this information? - How does Wal-Mart

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-Oriented Software Engineering Practical Software Development using UML and Java Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical

More information

SYSTEM CONCEPTS. Definition of a System

SYSTEM CONCEPTS. Definition of a System 2 SYSTEM CONCEPTS A system is a group of interrelated components working together towards a common goal, by accepting inputs and producing outputs in an organized transformation process. The interrelated

More information

Lecture Chapter 2 Software Development

Lecture Chapter 2 Software Development Lecture Chapter 2 Software Development Large Software Projects Software Design o Team of programmers o Cost effective development Organization Communication Problem Solving Analysis of the problem Multiple

More information

SOFTWARE LAYERS AND MEASUREMENT

SOFTWARE LAYERS AND MEASUREMENT SOFTWARE LAYERS AND MEASUREMENT Jean-Marc Desharnais, Software Engineering Laboratory in Applied Metrics Denis St-Pierre, DSA Consulting Inc. Serge Oligny, Laboratoire de recherche en gestion des logiciels

More information

DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES

DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Outline System Architectural Design Issues Centralized Architectures Application

More information

C H A P T E R SYSTEM DESIGN

C H A P T E R SYSTEM DESIGN C H A P T E R SYSTEM DESIGN Chapter Twelve Systems Design Describe the design phase in terms of your information building blocks. Identify and differentiate between several systems design strategies. Describe

More information

4. The portion of the monthly bill from a credit card company is an example of a turn-around document.

4. The portion of the monthly bill from a credit card company is an example of a turn-around document. Chapter 2 Introduction to Transaction Processing Introduction to Accounting Information Systems, 8e Test Bank, Chapter 2 TRUE/FALSE 1. Processing more transactions at a lower unit cost makes batch processing

More information

Functional Design of Web Applications. (partially, Chapter 7)

Functional Design of Web Applications. (partially, Chapter 7) Functional Design of Web Applications (partially, Chapter 7) Functional Design: An Overview Users of modern WebApps expect that robust content will be coupled with sophisticated functionality The advanced

More information

Modelling as a Communication Tool: Introduction to Process Modelling. Modelling. Simplification in modelling. Representation in modelling

Modelling as a Communication Tool: Introduction to Process Modelling. Modelling. Simplification in modelling. Representation in modelling CSE104 - Information Systems 1 Modelling as a Communication Tool: Introduction to Process Modelling The requirements specification document Must be communicated to key stakeholders Should contain: Functions

More information

From Analysis to Design. LTOOD/OOAD Verified Software Systems

From Analysis to Design. LTOOD/OOAD Verified Software Systems From Analysis to Design 1 Use Cases: Notation Overview Actor Use case System X System boundary UCBase «extend» UCExt Actor A UCVar1 UCVar2 Extending case Generalization «include» Actor B UCIncl Included

More information

Working with Health IT Systems is available under a Creative Commons Attribution-NonCommercial- ShareAlike 3.0 Unported license.

Working with Health IT Systems is available under a Creative Commons Attribution-NonCommercial- ShareAlike 3.0 Unported license. Working with Health IT Systems is available under a Creative Commons Attribution-NonCommercial- ShareAlike 3.0 Unported license. Johns Hopkins University. Welcome to the Fundamentals of Health Workflow

More information

Requirements Engineering

Requirements Engineering Requirements Engineering Semi-Formal Specification: Structural Functional Requirements Structured Analysis Data Flow Diagrams SADT IDEF0 1 Back to the past GO/AO OO SA (DT) DFD SADT IDEF (Back to the future)

More information

Structured Analysis and Structured Design

Structured Analysis and Structured Design Structured Analysis and Structured Design - Introduction to SASD - Structured Analysis - Structured Design Ver. 1.5 Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr http://dslab.konkuk.ac.kr References Modern

More information

CS 451 Software Engineering

CS 451 Software Engineering CS 451 Software Engineering Yuanfang Cai Room 104, University Crossings 215.895.0298 yfcai@cs.drexel.edu 1 Elaboration 2 Elaboration: Building the Analysis Model An analysis model provides a description

More information

X-AFFILIATE module for X-Cart 4.0.x

X-AFFILIATE module for X-Cart 4.0.x X-AFFILIATE module for X-Cart 4.0.x Partner Interface Reference Manual Revision Date: 2004-11-22 Copyright 2001-2004 Ruslan R. Fazliev. All rights reserved. TABLE OF CONTENTS GENERAL INFORMATION...3 REGISTRATION...4

More information

Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS

Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS Previously Key features of programming languages Software Development Lifecycle Using tools to demonstrate

More information

Concept as a Generalization of Class and Principles of the Concept-Oriented Programming

Concept as a Generalization of Class and Principles of the Concept-Oriented Programming Computer Science Journal of Moldova, vol.13, no.3(39), 2005 Concept as a Generalization of Class and Principles of the Concept-Oriented Programming Alexandr Savinov Abstract In the paper we describe a

More information

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified)

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) Subject Code: 17630 Model Answer Page No: 1 /32 Important Instructions to examiners: 1) The answers should be examined by keywords and not as word-to-word as given in the model answer scheme. 2) The model

More information

PESIT Bangalore South Campus Hosur road, 1km before Electronic City, Bengaluru -100 Department of MCA

PESIT Bangalore South Campus Hosur road, 1km before Electronic City, Bengaluru -100 Department of MCA USN 1 P E PESIT Bangalore South Campus Hosur road, 1km before Electronic City, Bengaluru -100 Department of CA INTERNAL ASSESSENT TEST II Date : 20/09/2016 ax.arks: 50 Subject & Code: Software Engineering

More information

Financials Module: General Ledger

Financials Module: General Ledger The Priority Enterprise Management System Financials Module: General Ledger Contents Introduction... 2 Chart of Accounts... 2 Entry Journal... 4 Reconciliations... 7 Financial Statements... 9 Cash Flow...

More information

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/29/2015

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 09/29/2015 Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm Rao Casturi 09/29/2015 http://cs.gsu.edu/~ncasturi1 Class Announcements Grading is done for the Deliverable #2 (Requirement Elicitation)

More information

Software Service Engineering

Software Service Engineering Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language

More information

Darshan Institute of Engineering & Technology Unit : 3

Darshan Institute of Engineering & Technology Unit : 3 1) Explain design concepts. A set of fundamental software design concepts has evolved over the past four decades. Although the degree of interest in each concept has varied over the years, each has tood

More information

Design Process Overview. At Each Level of Abstraction. Design Phases. Design Phases James M. Bieman

Design Process Overview. At Each Level of Abstraction. Design Phases. Design Phases James M. Bieman CS314, Colorado State University Software Engineering Notes 4: Principles of Design and Architecture for OO Software Focus: Determining the Overall Structure of a Software System Describes the process

More information

PART - I 75 x 1 = The building blocks of C++ program are (a) functions (b) classes (c) statements (d) operations

PART - I 75 x 1 = The building blocks of C++ program are (a) functions (b) classes (c) statements (d) operations OCTOBER 2007 COMPUTER SCIENCE Choose the best answer: PART - I 75 x 1 = 75 1. Which of the following functions will be executed first automatically, when a C++ Program is (a) void (b) Main (c) Recursive

More information

System development, design & implementation

System development, design & implementation System development, design & implementation Design of software The following are the principle for any software design : Modularity and partitioning : Top down methods are used through out the analysis

More information

Session 2b: structured specifications Purpose and criteria Structured specification components Introduction to dataflow diagrams

Session 2b: structured specifications Purpose and criteria Structured specification components Introduction to dataflow diagrams Session 2b: structured specifications Purpose and criteria Structured specification components Introduction to dataflow diagrams COMP 320 / 420, Spring, 2018 Conrad Weisert Criteria for the ESD (from session

More information

Managing Change and Complexity

Managing Change and Complexity Managing Change and Complexity The reality of software development Overview Some more Philosophy Reality, representations and descriptions Some more history Managing complexity Managing change Some more

More information

Testing is executing a system in order to identify any gaps, errors, or missing requirements in contrary to the actual requirements.

Testing is executing a system in order to identify any gaps, errors, or missing requirements in contrary to the actual requirements. TESTING Testing is the process of evaluating a system or its component(s) with the concentrating to find whether it satisfies the specified requirements or not. Testing is executing a system in order to

More information

Chapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee

Chapter 4. Capturing the Requirements. 4th Edition. Shari L. Pfleeger Joanne M. Atlee Chapter 4 Capturing the Requirements Shari L. Pfleeger Joanne M. Atlee 4th Edition It is important to have standard notations for modeling, documenting, and communicating decisions Modeling helps us to

More information

SIF8035. Events and System Requirements

SIF8035. Events and System Requirements SIF8035 Lecture 4 DFD and PrM Events and System Requirements Events Occurrences at a specific time and place Trigger all system processing Requirement definition Determine relevant events External events

More information

SOFTWARE ENGINEERING. Lecture 6. By: Latifa ALrashed. Networks and Communication Department

SOFTWARE ENGINEERING. Lecture 6. By: Latifa ALrashed. Networks and Communication Department 1 SOFTWARE ENGINEERING Networks and Communication Department Lecture 6 By: Latifa ALrashed Outline q q q q q q q q Define the concept of the software life cycle in software engineering. Identify the system

More information

EDMS. Architecture and Concepts

EDMS. Architecture and Concepts EDMS Engineering Data Management System Architecture and Concepts Hannu Peltonen Helsinki University of Technology Department of Computer Science Laboratory of Information Processing Science Abstract

More information

We move from a general information system to a Computer Based Information System

We move from a general information system to a Computer Based Information System Introduction to Information Systems: In this section of the course we start to think of the computer as just being a component in a system which may contain one or many computers linked together. An Information

More information

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester

Lab Manual. Object Oriented Analysis And Design. TE(Computer) VI semester Lab Manual Object Oriented Analysis And Design TE(Computer) VI semester Index Sr. No. Title of Programming Assignment Page No. 1 2 3 4 5 6 7 8 9 10 Study of Use Case Diagram Study of Activity Diagram Study

More information