1 / 33

Software Engineering

Software Engineering. Lecture 1 ASPI8-4 Anders P. Ravn, Feb 4, 2004. Overview. The development process Documents OAD in Requirements Analysis. Problem Domain Analysis System Definition Class, Association, Dependency Behaviour, Event. The project mainstays.

rhys
Télécharger la présentation

Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Engineering Lecture 1 ASPI8-4 Anders P. Ravn, Feb 4, 2004

  2. Overview • The development process • Documents • OAD in Requirements Analysis • Problem Domain Analysis • System Definition • Class, Association, Dependency • Behaviour, Event

  3. The project mainstays • Journal – Agendas, Minutes, Notes • Report – Work Items • Schedule – Milestones, Activities

  4. Organization - Players • Customer – has the problem and has to be satisfied with the solution • Project Team – works to find a solution • Boss – defines the resources and monitors progress • Consultant – contributes ideas and expertise

  5. Team - roles • Designer – develops solutions • Developer – develops components • Integrator (tester) – ensures consistent releases • Documenter – ensures documentation • Organizer (planner) – keeps orderly progress

  6. Planning – why bother? The solution space Project progress Customer expectations

  7. Planning – why! • To be able to act rationally when – forseeable - events happen. Livet forstås baglæns, men må leves forlæns Søren Kierkegaard

  8. Planning – how? Deadline Activity Time Milestone

  9. Gant Chart Activity A B C …

  10. Pert Diagram C 10 G 5 A 14 D 13 H 6 E 14 I 24 B 7 F 7

  11. Status WP1

  12. Literature (incomplete) • Fred. P. Brooks: The Mythical Man-month • G. Weinberg: The Psychology of Programming • N.E. Andersen, et al.: Professionel Systemudvikling • H. Mills: Chief Programmer Teams • D. Gibbs: Extreme Programming

  13. A Development Process (V-model) Requirements Spec --------------------------- Accpt. Test Report Acceptance Test Spec Architectural Spec ------------------------ Integr. Test Report Integration Test Spec Module Interface Spec Module Spec ------------------- Module Test Report Module Test Spec Program Source text A rational Design Process – or how to fake it Heninger & Parnas, 1979

  14. Your Report! • Requirements Specification • 1.1 System Definition • 1.2 Problem Domain Structure • 1.3 Application Domain Structure • 1.4 Acceptance Test Specification • Architecture • Modules • Implementation • 5. Test

  15. Example: Computer Vison based implement guidance in row crops A rich picture

  16. System Definition A concise description of a computerized system expressed in natural language Example: A computer system which guides an implement through crops in rows. The system must not be slower than the traditional guidance methods, and must relieve human operators of local monitoring and control tasks.

  17. Example:The prototype software

  18. FACTOR A concise description of a computerized system expressed in natural language • FACTOR: • Functionality for end use • Application Domain of end use • Conditions for success • Technology to be used • Object System • Realization conditions

  19. Example: FACTOR A computer system which guides an implement through crops in rows. (Application Domain). The system must not be slower than traditional guidance methods (Conditions), and must relieve human operators of local monitoring and control tasks (Functionality). The final system must be implemented on a TriMedia TRS8XX with a simple display and button user interface (Technology and Object System) The system shall be very dependable and inexpensive to produce (Realization Constraints).

  20. Problem Domain Description • Class Diagrams (things and their relations) • Selected Behaviours (events and their sequence) • Notes - text (interpretation of concepts)

  21. Example: Problem Domain Structure

  22. Example: Tractor Behaviour In row Outside row Manual Auto start stop

  23. lower Example: Interaction of Tractor and Row Weeder :Tractor :RowWeeder engage no_row

  24. Summary: Problem Domain Analysis • Rich Picture • System definition - FACTOR • Structure - Class Diagrams • Behaviour - Statechart Diagrams • Interaction - Sequence Diagrams • Notes

  25. Your Report - 1! • Requirements Specification • 1.1 System Definition • 1.2 Problem Domain Structure • 1.3 Application Domain Structure • 1.4 Acceptance Test Specification • Architecture • Modules • Implementation • 5. Test

  26. UML Notation • Class • Object • Association • Dependency • Package

  27. Class and Object Class name Object: Class name attributes Association methods 1 *

  28. Generalization Superclass Subclass

  29. Aggregation the whole [arity] the part

  30. Association [arity] [arity] [name]

  31. Dependency ”uses”

  32. Package (cluster) <<cluster>> name related classes

  33. Summary: Diagrams • Class and Object • Generalization • Aggregation • Association • Dependency • Package • Statechart Diagram • Sequence Diagram

More Related