New phase ii-2010

451 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
451
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

New phase ii-2010

  1. 1. Mini Project-1 Phase – II Design Phase Dept. Of Computer Science and Engineering
  2. 2. Objective <ul><li>Design allows an engineer to model the system or product that is to be built </li></ul><ul><li>To produce a solution to a problem given in SRS document. </li></ul><ul><li>To tell “how” a software system works. </li></ul>
  3. 3. Case Study: Guess the site!
  4. 4. <ul><li>What is the single most important reason for this disaster? </li></ul>
  5. 5. <ul><li>Design Flaw?!!!! </li></ul>
  6. 6. Why Design Is Important ? <ul><li>Design is the place where product (software) quality is established. </li></ul><ul><li>A good design is </li></ul><ul><li>understandable </li></ul><ul><li>easy to implement </li></ul><ul><li>reliable and </li></ul><ul><li>allows smooth evolution </li></ul>Good design is key to successful product
  7. 7. Poor design results to unstable system: <ul><li>Unstable System will fail when small changes are made. </li></ul><ul><li>Unstable System will be difficult to maintain. </li></ul><ul><li>Unstable System’s quality cannot be assessed until late in the software process. </li></ul>
  8. 8. What is it ? <ul><li>Design of the system is essentially a blueprint or a plan for a solution for the system. </li></ul><ul><li>Design tells how the system is implemented. </li></ul><ul><li>The design model provides details about software data structures ,architectures, interfaces and components that are necessary to implement the system. </li></ul>
  9. 9. Conceptual to Technical design
  10. 10. How to Design ? <ul><li>A design process for software systems has two levels </li></ul><ul><li>Top – level design ( System design) </li></ul><ul><li>Detailed design ( Logic design) </li></ul>
  11. 11. Top – level design <ul><li>System is a set of modules with clearly defined behavior which interact with each other in a defined manner to produce some behavior or services for its environment </li></ul><ul><li>Decide which modules are needed for the system, the specifications of these modules, and how the modules should be interconnected. </li></ul>
  12. 12. Detailed Design <ul><li>In this level, the internal design of the modules, or how the specifications of the modules can be satisfied, is decided. </li></ul><ul><li>It specify the processing logic and data structures so that the design is sufficiently complete for coding </li></ul>
  13. 13. Output of the Design Phase <ul><li>SDD (software Design Document) contain </li></ul><ul><li>Different modules and Interfaces with each other. </li></ul><ul><li>Data structures. </li></ul><ul><li>Different classes and relationship between each other. </li></ul>
  14. 14. Deliverables : (Design documents) Top level design Detailed design <ul><li>Architecture </li></ul><ul><li>Block Diagram </li></ul><ul><li>ER diagram </li></ul><ul><li>Structure charts </li></ul><ul><li>Flowcharts/Algoriths </li></ul><ul><li>Data flow diagram </li></ul><ul><li>Students need to do the things which indicated in green </li></ul><ul><li>Class diagrams </li></ul>
  15. 15. Case study : Data flow modeling <ul><li>A restaurant owner feels that some amount of automation will help make his business more efficient . </li></ul>
  16. 16. Data flow diagram
  17. 17. Data flow Diagram <ul><li>For any known problem </li></ul>
  18. 18. Object oriented Modeling <ul><li>System is viewed as a set of objects </li></ul><ul><li>Objects interact with each other through the services they provide </li></ul><ul><li>Object oriented systems are easier to build & maintain </li></ul><ul><li>Object oriented design and implementation is easy as objects are more stable than functions </li></ul>
  19. 19. Contd.. <ul><li>UML (Unified modeling Language is used for OOM) </li></ul><ul><li>-Class diagrams </li></ul><ul><li>-Activity diagrams </li></ul><ul><li>-Sequence diagrams </li></ul><ul><li>-Deployment diagrams </li></ul><ul><li>Class diagrams are used to represent the structure of the system </li></ul>
  20. 20. Class diagrams <ul><li>Object (ask definition ) </li></ul><ul><li>Class( ask definition ) </li></ul><ul><li>Services/ methods </li></ul><ul><li>Class diagram represent a structure of the problem graphically using precise notation </li></ul>Class name attribute operations customer Name: Address: Check_balance() Credit_amt()
  21. 21. Relationship between different classes <ul><li>Generalization-specialization </li></ul><ul><li>Aggregation </li></ul><ul><li>Association </li></ul>
  22. 22. Generalization-specialization symbol is used for representation. This shows inheritance property
  23. 23. example
  24. 24. Aggregation symbol is used for representation. This represents whole-part relationship. If object is composed of many objects then aggregation is used
  25. 25. example
  26. 26. Association shows static relation ship between different objects. Can be represented in different ways
  27. 27. cardinality
  28. 28. OO Analysis Following steps are performed <ul><li>Identifying objects & classes </li></ul><ul><li>Identifying structures </li></ul><ul><li>Identifying attributes </li></ul><ul><li>Identifying associations </li></ul><ul><li>Defining services </li></ul>
  29. 29. Identifying Objects and classes <ul><li>Nouns represent entities in the problem space which will be modeled as objects </li></ul><ul><li>Structures, devices, events, locations, organizational units are modeled as objects </li></ul><ul><li>If the system does not need to keep information about some real-world entity or does not need any services from the entity, it should not considered as an object </li></ul>
  30. 30. Identify the structures <ul><li>Identify the hierarchies that exist between object classes </li></ul><ul><li>Use generalization-specialization to represent inheritance </li></ul><ul><li>Aggregation for whole – part relation ship </li></ul><ul><li>Establish a relationship between objects using association </li></ul>
  31. 31. OO design Problem description Noun identification technique Specify associations Rough classes Class Diagrams
  32. 32. Example of drug store ask the students to identify the class, attributes,services and relationships
  33. 33. How student should do ? <ul><li>Split each project batch into two sub batches in the first week. </li></ul><ul><li>Each sub batch has to do design independently. For every SRS there will be two pre final designs accordingly. </li></ul><ul><li>The design done by one sub batch will be reviewed by the other sub batch and evaluator in the second week. </li></ul><ul><li>The group arrives at the final acceptable design combining the best from both the pre final designs. </li></ul><ul><li>The final design will be evaluated in the third week. </li></ul>
  34. 34. Team Sub Batch 2 Divide Team into 2 Sub Batch es SRS Document Pre final Design 2 Pre final Design 1 Final Design
  35. 35. Deliverables <ul><li>DFD </li></ul><ul><li>Class diagram </li></ul><ul><li>Algorithem/flowchart </li></ul><ul><li>Data structures </li></ul><ul><li>Files description(data file if exists) </li></ul>
  36. 36. schedule Sl no Task Dates 1 Presentation on design phase and splitting of batches and assigning a design task Week - 27 th sept to 2 nd oct 2 Pre-final design discussion with guide and team members Week - 4 th to 9 th oct 3 Final design evaluation Week – 11 th to 16 th oct
  37. 37. Thank you

×