Introduction

Introduction
byAndrew Filevet al.
Wrox Press ©2002
Team FLY

To many, Visio for Enterprise Architects appears to be a mysterious diagramming tool. In conjunction with Visual Studio .NET Enterprise Architect it potential seems clear - going from design to code, and back from code to design offers the developer tremendous benefits for rapidly developing applications. Why do we say 'mysterious'? This is because Visio's range of features can daunt the user, but most importantly, many aspects of its use directly relevant to software developers are frustratingly lacking in explanation.

This book aims to address this problem - here we focus exclusively on Visio's features for developing .NET applications, encompassing:

  • UML diagrams

  • Generating code from UML diagrams

  • Reverse engineering source code into UML diagrams

  • Database modeling

Along the way, we'll see some more general applications of Visio to the software development lifecycle, and also learn about Visio's idiosyncrasies, which almost every user of Visio will have encountered, and wondered "Is it just me?"

In other words, this book will allow you to finally unmask Visio for Enterprise Architects.

What Does This Book Cover?

Chapter 1 starts us off by reviewing the key UML concepts, the main diagram types, and the role of those diagrams within the software development process. If you're quite new to UML this will serve as a practical introduction that will help you make sense of the rest of the book.

In Chapter 2 we have our first dip into Visio, and have a look around the general Visio environment. Before we hit the main feature of the book, the UML diagrams, we look at other aspects of Visio that aid software development, and make an attempt to familiarize ourselves with Visio, its pages, shapes, and connectors.

In next chapter.

Visio for Enterprise Architects can generate skeleton source code from an existing UML diagram in C#, Visual Basic .NET, or C++. Moreover, Visio provides further options that give the developer greater control over the implementation of this source code. In Chapter 4 we look at how to generate code from a UML model in Visio, the various options available for generating code, including the use of code templates to specify the structure of the source code generated by Visio. We look at a variety of UML to code mappings, typical of the situations you will encounter in more complex models.

The Visual Studio .NET Enterprise Architect and Visio for Enterprise Architects combination provides a facility for reverse engineering existing C#, VB.NET, or C++.NET source code into a Visio UML static structure model. In Chapter 5 we'll look at this reverse engineering feature and cover why reverse engineering is useful how to reverse engineer .NET source code from within the Visual Studio .NET IDE, explore the structure of a typical reverse-engineered Visio UML model, and look at the code to UML mappings for important constructs such as generalization (inheritance) and association. We finish the chapter by using reflection to reverse engineer .NET assemblies to provide .NET Framework base class models for our UML diagrams.

In Chapter 6, we take a step back from the world of diagramming, generating code, and generating more diagrams from code, and look at the role of Visio and UML in the entire software development lifecycle. In effect, we'll be discussing how we document our work at different stages of a typical development project using Visio and UML - at the end of this chapter you'll take away some deeper insight into using Visio and UML in the course of working on your own projects.

Chapter 7 sees us move on to another area of using Visio to assist with general design issues. Designing a distributed system is an iterative process from requirements analysis to modular breakdown and to packaging and deployment strategies. However, designing a distributed system is different from designing a non-distributed one. In this chapter we look at a .NET Remoting example, a Bank application. We begin with an overview of .NET Remoting, and we see how to decide which classes in our application should be .NET Remoting types, how to decide the activation mode of each .NET remoting type, and how this can be diagrammed in Visio, what code elements should be grouped in a component, how to prepare a component diagram, and how to prepare a deployment diagram.

Chapter 8 moves us on to yet another aspect of Visio directly relevant to the enterprise developer - data modeling. We take a detailed walk through database modeling and Object Role Modeling (ORM), looking at Visio's ORM Source Diagrams and Entity Relationship Source Diagrams. We then see how to generate a database schema from these models, and further tweak the design with reverse engineering of the database into ORM and ER models, and updating the database with our modifications to yield round-trip database engineering.

Team FLY


Professional UML with Visual Studio. NET. Unmasking Visio for Enterprise Architects
Professional UML with Visual Studio. NET. Unmasking Visio for Enterprise Architects
ISBN: 1440490856
EAN: N/A
Year: 2001
Pages: 85

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net