CS556 Large Scale Software Development

Download Report

Transcript CS556 Large Scale Software Development

CS565 Advanced Software Development
Lecture 23, 2006
CASE
Documentation
Legacy of analysis and design decisions - offer traceability back to
requirements.
Documents should be allowed to evolve together with the product
releases.
What?



requirements, analysis, design, implementation
end user manual(s)
planning/management reports, etc.
A traceability matrix can match design elements with requirements.
Writing Tools
Document production/ desktop publishing tools
CASE/ Self-documenting systems
Library support - access
Writing Documentation Guidelines (from Bahrami, OOSD, p139)





Common cover sheet - doucument id., version, author(s)
Make document accessible
Use familiar vocalulary
Make documents as short as possible
Organise e.g. Chicago manual of style/ Struck Jr. style guidelines
Computer Aided Software Engineering



Computer tool to assist developrers
Modelling and documentation
Sometimes can generate system implementation
In the mid-1980s a number of separate tools became prominent for
analysis and design (Entity Relationship diagrams, Data Flow Diagrams,
and Program Design).
This often entailed manual conversion of the output of one tool to provide
the input of another. This lead to CASE tool integration.
Horizontal integration - tools connected at the same stage of the software
development lifecycle (SDLC).
Vertical integration - tools connected at different stages of the SDLC.
Degree of Support
Many CASE tools simply act as repositories of models and
documents. They so not assist in the creative part of modelling.
Some CASE tools attempt to provide more assistance, ranging from
simple prompts through to syntax/model checking.
Ways to use CASE


As independent toolkits to be utilized in a way decided by
development team.
As part of a methodology
UML-supported CASE tools
Commercial (license cost per concurrent user, approx 2-6K each)






Rational/IBM XDE Java Edition 2002/XDE .NET Edition 2002
Borland’s Together (acquired TogetherSoft)
Telelogic’s System Architect 10 (acquired Popkin Software)
Microsoft’s Enterprise Architect 2002
Ilogix’s Rhapsody
Gentleware’s Poseidon for UML
Free



Tigris ArgoUML (Open Source)
EclipseUML (Open Source)
StarUML (Open Source)
System Architect 10
Telelogic (acquired Popkin Software in 2005)
Types of modelling supported:

Business Process Modelling

Object/Component Modelling

Data Modelling

Structured Analysis and Design
Interface:

Drawing Workspace

Browser - hierarchical navigation (of diagrams and definitions)

Definition dialogues

Matrix Editor
Import/Export Formats

Comma Separated Vale (csv), XML
System Architect 10
Reporting:

Proprietary, MS Word templates, HTML Generation
Object Modelling

UML and old methods (Booch, OMT, etc.)
Code Generation

C++ (+ reverse engineering), Java (+ reverse engineering), Visual
Basic, CORBA IDL, Javascript
Schema Generation

Data Defintion Language of SQL, e.g. Access, ORacle, etc.
GUI

screen painter
Together





“comprehensive, multi-language modeling platform for software
practitioners who design, develop, and/or communicate
software architectures”
Two versions Together 2006 Release 2 for Eclipse (3.2) and
Together 2006 for Visual Studio
support for UML 2.0, OCL, XMI, Design Patterns, Java 5, and
CORBA/IDL
Language Support: Eclipse Version – Java and C++
 Visual Studio Version – C# and VB.NET
Database Support – SQL Server, Oracle, DB2 and Sybase
Together