ACM Transactions on Programming Languages and Systems (TOPLAS)
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
The unified software development process
The unified software development process
Programmers use slices when debugging
Communications of the ACM
Aspect-oriented programming: Introduction
Communications of the ACM
ACM Transactions on Software Engineering and Methodology (TOSEM)
Agile modeling: effective practices for extreme programming and the unified process
Agile modeling: effective practices for extreme programming and the unified process
Verification of Reactive Systems Using DisCo and PVS
FME '97 Proceedings of the 4th International Symposium of Formal Methods Europe on Industrial Applications and Strengthened Foundations of Formal Methods
Incremental introduction of behaviors with static software architecture
Computer Standards & Interfaces - Special issue: Adaptable software architectures
A Practical Theory of Reactive Systems: Incremental Modeling of Dynamic Behaviors (Texts in Theoretical Computer Science. An EATCS Series)
Extreme Programming Explained: Embrace Change (2nd Edition)
Extreme Programming Explained: Embrace Change (2nd Edition)
Aspect-oriented software development
Aspect-oriented software development
Experiences on developing and using a tool support for formal specification
Ada-Europe'03 Proceedings of the 8th Ada-Europe international conference on Reliable software technologies
ACM SIGSOFT Software Engineering Notes
Hi-index | 0.00 |
Agile software development approaches have gained interest by leveraging goals such as small initial investment, incremental development, and rapid feedback. In contrast, application of formal specification methods has typically implied extensive initial investment, relatively fixed requirements on top of which a formalization can be established, and relatively slow feedback due to the effort needed for formal modeling. In this paper, we challenge this view of formal methods, and describe how the agile software development approach can be applied with formal methods. We back the discussion on formal method DisCo, which has been intended as a formalization tool for a programmer rather than for a mathematician. Towards the end of the paper, we also give a small example where agility is demonstrated.