Advanced Systems Delivery
Advanced Systems Delivery with Objects, Components, Patterns and Middleware
Are you ready for Client Server, UML, Web applications, Component Models (COM+, CORBA, Java Beans/EJB), Web Services (.net, etc.), Workflow, Business Reengineering, Leveraging Patterns?
Objectives
This course is intended to rapidly bring commercial developers up to speed on the practical use of advanced system delivery techniques including business process re-engineering, facilitation, prototyping, client server, graphical user interfaces (GUI), distributed objects, relational and object databases, internet deployment and state of the art development tools: all set against the pervasive theme of leveraging object/component technology at the business (as well as technical) level. Legacy considerations are addressed, and advanced delivery vehicles including object request brokers, server side components, transaction monitors, workflow and inter/intranet technology are considered.
Briefly, we will cover:
- Understanding the business issues, requirements and problem domain through modeling
- Understanding the object and component environment in terms of technology, standards and architectures
- Managing the lifecycle and deliverables to ensure a seamless integration from business requirement to implementation design
The primary focus is on enterprise commercial systems (including web applications)
Prerequisites
You should have had experience as a commercial software developer, business analyst or system knowledgeable user. The latter would be advised to attend the course with professional system development colleagues. Exposure to information engineering and structured techniques and methods is an advantage.
Course Format
The course is
run over five full time intensive days. Usual hours are from 8.30 on
the first day and nine on subsequent days till 5 pm each day. The
course normally finishes around 3 pm on the Friday. Between each
session, participants are expected to complete between one and two
hours of assignment work, often in teams. Pre-course reading may be
assigned before the course begins. Supplementary readings complement
each day.
The in-class sessions use lectures, facilitated
sessions, individual and team assignments, hands on machine work
(facilities permitting), presentations and demonstrations to convey the
topics in an enjoyable, challenging and memorable way. The maximum
number of participants is limited to 16 to enhance interaction.
Content Overview
The following outline indicates the topics addressed and approximate timing. Actual timing may vary depending upon number of delegates and background. The course is under frequent revision and Inspired reserves the right to deviate from this program in the interests of improvement and currency:
The OO Lifecycle
- Review of System Development Processes
- Simulation vs.. Translation
- Prototyping and Iteration
- Business Partner Involvement
- Assembling from Components vs. Making
- Repository Based Development
- Reusability
Object Orientation Concepts
- Objects, Identity, Attributes, Methods
- Messages
- Encapsulation
- Containment
- Classes
- Inheritance
- Collections
- Polymorphism
- Components, Widgets and Business Objects
- Patterns
Modeling Business Domain Objects
- Entity Modeling Review
- Reaching Abstractions
- Modeling Inheritance and Class Hierarchies
- Modeling Embedding
- Reference Relationships
- Adding Attributes
- Building the Repository
- CASE Tools
- Types of Business Objects
- Abstract Data Types
Enterprise Modeling and BPR
- Stakeholder & Value Chain Analysis
- Business Process Reengineering
- Continuous Business Improvement
- Convergent Engineering
- Business Process Modeling Notation and Tools
- Project Scoping
Modeling Business Events
- External (Business) Events and Use Cases
- Event Modeling
- Object State Transitions
Enhancing Models with Rules
- Declarative vs. Procedural
- Rule-based environments
- Rules notation
Prototyping and User Interfaces
- Choice of interface style
- Graphical User Interfaces (GUIs)
- User Interface Guidelines
- Prototyping
- Joint Application Development (JAD)
The Design Environment and Application Architecture
- Strong, weak and no typing
- Complex objects
- Graphics and Multimedia
- Interface File Types
- Languages and Environments
- Class Libraries and Frameworks
- Components, DLL's
- Client Server
- Object Database
- Model, View and Controller (Layered Design Model)
- Web application options
Advanced Delivery Options
- Object CASE and round trip engineering
- Object Linking and Embedding
- Distributed Objects/COM+/CORBA
- Server side components/Java Beans, Enterprise Java Beans and CORBA Beans
- Web services, J2EE, .net
- Internet/Intranet/IIOP
- Workflow
- WorkGroup Technologies
- Advanced Human Computer Interfaces
Responsibility Based Design
- Application ("Model") Classes
- Business Logic ("Controller") Classes
- View Objects
- Adapting System Classes (altering, inheriting)
- Adapting Components (properties, inheriting)
- Interfacing with Legacy systems and data
- Inter-operability and standards
- Allocating Responsibilities to Classes
- Mapping Business Logic to Controller Sequences
- Transaction Management
- Packaging and subsystems
- Collaboration / Contracts
Management, Measurement, Scaling Up
- Managing the OO lifecycle
- Measurement, Reuse
- Multi-User and Multi-Project Issues
- Object Transaction Monitors
- Strategic Environment choice
