The Role of Iteration in the Early Phases of a Traceability-Oriented Software Development Process

Borislava I. Simidchieva, Stefan C. Christov, Thomas A. Bullinger

msra(2007)

引用 23|浏览5
暂无评分
摘要
According to the recent Standish Group’s CHAOS reports, the “software crisis” persists. The Waterfall Model correctly identified the phases of software development (requirements capture, problem analysis, design, implementation, and testing), but did not accommodate iteration between phases. Many later methodologies attempt to facilitate iteration (e.g., the Spiral Model, RUP, etc.), including Agile methodologies like eXtreme Programming (XP), which claim to “embrace” iteration by rework primarily at the code level. However, techniques for embracing iteration during earlier phases, focusing on artifacts created only during these phases, remain relatively untouched. Few methodologies explicitly demonstrate how iteration may actually be achieved in specific types of applications. This paper reviews existing iteration strategies, noting their focus on the design/implementation level – principally, “code refactoring”. It then explores the Software Engineering Effectiveness Model, (SEEMTM) and its unique focus on ensuring accurate and obvious traceability. SEEMTM advocates using certain principles to create a precise, unambiguous analysis model for applications that have a GUI front-end and a database back-end. It then uses standard design patterns to map from the technology-independent analysis model to the implementation technologyspecific design/implementation models. The paper demonstrates this process using a detailed case study of a “Journal Maintenance System”. It then focuses on techniques for evaluating the quality of the analysis and design models. A high-quality analysis model should enable the programmer to systematically map it to later phase models. If this mapping is not easily achievable, the paper shows how a developer can reexamine the analysis model, attempting to improve it. Thus, the developer effectively iterates at the analysis/design phases, improving quality and correctness early.
更多
查看译文
关键词
traceability,software development,formal methodologies,software engineering,iteration
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要