![]() |
Maciaszek L.A. and Liong B.L. (2005):
| ![]() |
Preface...................................................................................................................................... I
Part A - Software Projects..................................................................................................... 1
1 Software
Development Lifecycle................................................................................... 3
1.1 Software
Engineering Quintessence........................................................................... 4
1.2 Lifecycle
Phases....................................................................................................... 12
1.3 Lifecycle
Models...................................................................................................... 18
2 Software
Modeling Language...................................................................................... 33
2.1 Structured
Modeling Language............................................................................. 34
2.2 Object-Oriented
Modeling Language................................................................... 39
3 Software
Engineering Tools......................................................................................... 61
3.1 Project
Management Tools..................................................................................... 62
3.2 System
Modeling Tools........................................................................................... 73
3.3 Integrated
Development Environments................................................................ 83
3.4 Change and
Configuration Management Tools................................................... 98
4 Software Project
Planning and Tracking................................................................. 112
4.1 Project Plan
Development.................................................................................... 112
4.2 Project
Scheduling................................................................................................ 116
4.3 Project
Budget Estimation................................................................................... 126
4.4 Tracking
Project Progress.................................................................................... 138
5 Software
Process Management.................................................................................. 155
5.1 People
Management.............................................................................................. 157
5.2 Risk
Management.................................................................................................. 165
5.3 Quality
Management............................................................................................ 170
5.4 Change and
Configuration Management............................................................ 181
Part B - From Requirements via Architectural Design to
Software Release............... 196
6 Business
Object Model............................................................................................... 198
6.1 Advertising
Expenditure Measurement - The Business.................................... 199
6.2 Business
Context Diagram.................................................................................... 199
6.3 Business Use
Case Model...................................................................................... 200
6.4 Business
Glossary.................................................................................................. 204
6.5 Business
Class Model............................................................................................ 206
7 Domain Object
Model................................................................................................ 214
7.1 Contact
Management - The Domain.................................................................... 215
7.2 Domain Use
Case Model....................................................................................... 215
7.3 Domain
Glossary................................................................................................... 221
7.4 Domain Class
Model............................................................................................. 223
8 Iteration 1
Requirements and Object Model........................................................... 234
8.1 Use Case
Model...................................................................................................... 235
8.2 Use Case
Document............................................................................................... 236
8.3 Conceptual
Classes................................................................................................ 243
8.4 Supplementary
Specification............................................................................... 244
9 Architectural
Design.................................................................................................. 250
9.1 Architectural
Layers and Dependency Management........................................ 250
9.2 Architectural
Frameworks................................................................................... 280
9.3 Architectural
Patterns.......................................................................................... 287
10 Database
Design and Programming....................................................................... 303
10.1 Quick
Tutorial in Relational Databases from Software Engineering Viewpoint 304
10.2 Mapping
Transient Objects to Persistent Records............................................ 317
10.3 Database Design
and Creation for Email Management.................................... 325
11 Class and
Interaction Design..................................................................................... 333
11.1 Finding
Classes from Use Case Requirements................................................... 334
11.2 Architectural
Elaboration of Class Design......................................................... 341
11.3 Interactions............................................................................................................ 349
11.4 Interactions
for Email Management................................................................... 354
12 Programming
and Testing....................................................................................... 370
12.1 Quick
Tutorial in Java from Software Engineering Viewpoint....................... 370
12.2 Test-Driven
Development..................................................................................... 389
12.3 Acceptance
and Regression Testing.................................................................... 399
12.4 Iteration 1
Runtime Screenshots......................................................................... 408
13 Iteration 1
Annotated Code..................................................................................... 418
13.1 Code Overview....................................................................................................... 418
13.2 Package
Acquaintance.......................................................................................... 420
13.3 Package
Presentation............................................................................................ 425
13.4 Package
Control.................................................................................................... 433
13.5 Package
Entity....................................................................................................... 439
13.6 Package
Mediator.................................................................................................. 449
13.7 Package
Foundation.............................................................................................. 457
Part C - Software Refactoring and User Interface
Development.................................. 463
14 Iteration 2
Requirements and Object Model........................................................ 464
14.1 Use Case
Model...................................................................................................... 464
14.2 Use Case
Document............................................................................................... 466
14.3 Conceptual
Classes and Relational Tables......................................................... 474
14.4 Supplementary
Specification............................................................................... 476
15 Architectural
Refactoring....................................................................................... 479
15.1 Refactoring
Targets.............................................................................................. 480
15.2 Refactoring Methods............................................................................................. 480
15.3 Refactoring
Patterns............................................................................................. 485
15.4 Refactored
Class Model........................................................................................ 505
16 User
Interface Design and Programming.............................................................. 511
16.1 User
Interface Design Guidelines........................................................................ 512
16.2 User
Interface Components.................................................................................. 515
16.3 User
Interface Event Handling............................................................................ 525
16.4 Patterns and
UI...................................................................................................... 529
16.5 User
Interface For Email Management.............................................................. 533
17 Web-based
User Interface Design and Programming.......................................... 542
17.1 Enabling
Technologies for Web Client Tier....................................................... 543
17.2 Enabling
Technologies for Web Server Tier...................................................... 553
17.3 Transactions
on Stateless Internet Systems....................................................... 559
17.4 Patterns and
the Web............................................................................................ 561
17.5 Servlet
Implementation of Email Management................................................. 572
18 Iteration 2
Annotated Code..................................................................................... 584
18.1 Code Overview....................................................................................................... 584
18.2 Package
Acquaintance.......................................................................................... 586
18.3 Package
Presentation............................................................................................ 588
18.4 Control
Package.................................................................................................... 605
18.5 Package
Entity....................................................................................................... 608
18.6 Package
Mediator.................................................................................................. 611
18.7 Presentation
Layer: Applet Version.................................................................... 618
18.8 Presentation
Layer: Servlet Version................................................................... 620
Part D - Data Engineering and Business Components.................................................... 632
19 Iteration 3
Requirements and Object Model........................................................ 634
19.1 Use Case
Model...................................................................................................... 634
19.2 Use Case
Document............................................................................................... 636
19.3 Conceptual
Classes and Relational Tables......................................................... 648
19.4 Supplementary
Specification............................................................................... 652
19.5 Database
Specification.......................................................................................... 653
20 Security and
Integrity.............................................................................................. 657
20.1 Designing
Security................................................................................................. 657
20.2 Designing
Integrity................................................................................................ 673
20.3 Security and
Integrity in Email Management.................................................... 682
21 Transactions
and Concurrency............................................................................... 697
21.1 Concurrency
in System Transactions.................................................................. 698
21.2 Concurrency
in Business Transactions............................................................... 708
21.3 Transactions
and Concurrency in Email Management..................................... 719
22 Business
Components............................................................................................... 728
22.1
22.2 Business
Components for Java............................................................................. 739
23 Iteration 3
Annotated Code..................................................................................... 749
23.1 Code Overview....................................................................................................... 749
23.2 Package
Acquaintance.......................................................................................... 750
23.3 Package
Presentation............................................................................................ 752
23.4 Package
Control.................................................................................................... 769
23.5 Package
Entity....................................................................................................... 770
23.6 Package
Mediator.................................................................................................. 775
23.7 Package
Foundation.............................................................................................. 792
23.8 Database Code....................................................................................................... 796
Bibliography........................................................................................................................ 807
Index..................................................................................................................................... 813