Posts

MS - Sem1 - OO Analysis and Design - post 3

v   Agile software development Agile software development is a group of software development methods based on iterative and incremental development , where requirements and solutions evolve through collaboration between self-organizing , cross-functional teams . It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change. It is a conceptual framework that promotes foreseen interactions throughout the development cycle. The Agile Manifesto introduced the term in 2001. Agile Manifest o: We are uncovering better ways of developing software by doing it and helping others does it. Through this work we have come to value: ü   Individuals and interactions over processes and tools ü   Working software over comprehensive documentation ü   Customer collaboration over contract negotiation ü   Responding to change over following a plan That is, while there is value in the items

MS - Sem1 - OO Analysis and Design - post 2

v   Development Methods §   Waterfall method o     Requirements à Analysis à Design à Implementation à Unit testing à integration à Integration testing à maintenance o     Problems – 1.        Difficult to complete one phase of a software product's lifecycle 2.      Clients may not be aware of exactly what requirements. they want before they see a working prototype 3.      Designers may not be aware of future implementation 4.      Difficulties when writing a design 5.      Things become clear in the implementation phase §   Iterative and Incremental Development 1.      Neither top-down nor bottom-up 2.      Successive Refinement of the OO Architecture 3.      Apply Experience & Results to next iteration v   Unified Process o     Use-Case Driven §   What does the user want and need from the system §   Use-case o     –interaction by the user and the system’s response captures functional requirements §   Use-case Model o