Download presentation
Presentation is loading. Please wait.
Published byMariah Wilcox Modified over 9 years ago
1
Design & Development Scott Battaglia scott_battaglia@rutgers.edu Rutgers, the State University of New Jersey
2
Agenda Development Lifecycle Technologies Questions
3
Reference Applications JA-SIG Central Authentication Service Absence Reporting System Time Reporting System Switch Management Tool
4
Development Process Gather requirements High level planning Application Development System testing Release
5
Mission Statement Every application has a purpose or reason for being Clear and succinct representation of the application’s purpose Answer two questions: What are the opportunities or needs that we wish to address? What are we doing to address these needs?
6
Non-Functional Requirements Define how the software will do something, not what it will do Ex. software performance requirements, software external interface requirements, software design constraints, and software quality attributes
7
Functional Requirements Specifies a function that a system/software system or system/software component must be capable of performing. Define behavior of the system
8
Risks Every application has unknowns or risks Affect development time Document them
9
High Level Planning Iterative and incremental development Define: Milestones Release Candidates General Audience release Phase development
10
Iterative Development Develop system incrementally Allows developer to take advantage of what was being learned Start with simple implementation of subset of features Iteratively enhance the versions until product completion
11
Milestones denote reaching an identifiable stage in completion of something Implement some subset of features Generally implemented in terms of use cases
12
Milestones Generally consist of following phases Design/Analysis Unit Tests Feature implementation Milestone release Client review
13
Milestones – Design/Analysis Includes use case analysis Architecture/system design (interfaces, domain)
14
Milestones – Unit Tests Comprehensive unit tests for every interface Usually written before writing actual code
15
Milestones – Feature Implementation Coding of concrete implementations of interface
16
Milestones - Release When subset of features is complete, released to target audience Used to gather feedback
17
Milestones - Feedback Either demo milestone to clients Or give time to review Meet to discuss milestone Changes Enhancements Scrap features Etc.
18
Release Candidates Denotes feature complete Candidate for release as long as there are no show stoppers Follows iterative process
19
General Audience Generally only one Considered production release
20
Important Meetings During development lifecycle meetings are important: Kick off meetings Code Reviews Milestone Reviews Status Meetings Production Meetings After Release Party
21
Coding Standards Define Naming Conventions Formatting Standards Javadoc Standards Best Practices Leverage known libraries Coding to interfaces Logging Horizontal components …
22
Technologies - Eclipse
23
Technologies - CVS
24
Technologies – Issue Tracking
25
Technologies – Test Coverage
26
Technologies – Building
27
Technologies – Continuous Integration
28
Technologies - Mailing Lists Useful for distributed projects User support list Developer list Useful for internal projects too Discussions Questions Etc.
29
Summary Iterative design process Create common standards Maximize usage of technology
30
Questions Any questions/comments?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.